Zou het niet de optie "defeature" zijn die een geometrie vereenvoudigt? (Beschrijving - 2022 - SOLIDWORKS Help)
@mdelbecq, ja deafeature stelt u in staat om een assemblage te vereenvoudigen door een vereenvoudigde kopie uit één stuk te maken.
Hier is het doel om dezelfde assemblage te behouden, met een lichtere configuratie zonder de schroeven.
Het doel is om lay-outs te maken met veel machines, en door de assemblage een beetje te verlichten dankzij deze configuratie.
Deafeature is getest en werkt, maar het duurt 's nachts of langer om iets goed te krijgen, vergeleken met verschillende machines wordt het onmogelijk.
Vandaar de vraag naar macro.
Hallo;
Waarom ga je niet door de "Smart Playlists"?
-> Geavanceerde componentselectie / Zoekcriteria instellen....
https://help.solidworks.com/2021/french/SolidWorks/sldworks/t_utilities_running_power_select.htm
Met het ISfastener Filter=1
Het is eenvoudiger, nietwaar?
Vooral omdat je meerdere filters kunt combineren, omkeren of annuleren. (En sla ze ook op...)
Vriendelijke groeten
Hallo lieve @Maclane
Dit houdt in dat de schroeven uit de gereedschapskist komen.
Meestal download ik schroeven (vaak in step overigens) en ik heb meer dan twijfels dat SW ze herkent als ringschroeven of bouten.
Hoe dit type onderdeel aan te geven zodat ze door SW herkenbaar zijn als bouten en schroeven ;-)
Ik vermoed dat @sbadenis dit soort vragen niet moet hebben;-) ;)
Vriendelijke groeten
Uw @Maclane oplossing werkt eigenlijk heel goed als alle schroeven in de kopconstructie zitten.
Het probleem is dat ik schroeven in veel subassemblages heb, en ik moet deze schroeven in de standaardconfiguratie houden zodat de (schroef)bestellingen bij het opstarten op automatisch worden gezet.
De enige manier is om deze verdomde macro te doen.
Na de macro kan de filteroplossing in overweging worden genomen.
Hallo
De Maclane-oplossing is interessant.
Ik gebruik een vergelijkbare methoïde:
-Ik maak een "Light" configuratie aan
-Ik gebruik de "S" -toets, selecteer vervolgens toolbox, ik houd "Ctrl" ingedrukt + klik met de rechtermuisknop op een schroef -> Delete
Dit geeft me 2 configuraties, waarvan er één zonder schroeven is...
A+
@Zozo_mp: het onderdeel hoeft niet uit de gereedschapskist te komen. Het hoeft alleen de eigenschap ISfastener te bevatten
Ik had dit opgezet toen we in 2005 onze schroevendatabase creëerden (totaal anders dan de Toolbox) en het werkt perfect.
Bedankt @Maclane die me in staat hebben gesteld om deze selectietool te ontdekken (of te herontdekken) die al met al ultra krachtig is.
Bedankt @froussel ik dit van dichtbij ga bekijken, heb ik het gevoel dat het me tijd gaat besparen met de nieuwe functies voor schroefmontage sinds SW2020.
Vriendelijke groeten
Zozo_mp : 2015 voor deze "nieuwe" functie (Solidworks communiceert niet erg goed over hun nieuwe functies... nuttig)
Wat betreft de vreselijke ToolBox (Bah), ik gebruik hem nooit (behalve om gaten / kranen / lichten te maken ... kan worden gebruikt met de boorwizard).
Ik heb mijn eigen aangepaste bibliotheken gemaakt (met de eigenschap IsFastener ingesteld op 0 of 1).
-> Ter info: deze eigenschap (IsFastener) wordt gebruikt voor het trekken van secties of voor botsingsdetectie (optie: Bouten uitsluiten).
sbadenis : Het gebruik van macro's lijkt inderdaad onvermijdelijk om elke "Lite"-configuratie van alle subassemblages te creëren...
(De VBA-functie is: "PowerSelec" voor Smart Selection maar voor nu weet ik niet meer -sorry-
Solidworks Help (API)- > https://help.solidworks.com/...Interop.gtswutilities.IUtilities~PowerSelect.html
Vriendelijke groeten.
Hallo allemaal,
Ik heb een macro gemaakt die een configuratie maakt zonder schroeven voor de assemblage en de subassemblages.
Om het te laten werken, is het noodzakelijk om de Document Manager-API's te gebruiken. In het bijzonder om de onzichtbare eigenschap "IsToolboxStandard" te lezen, waarmee u kunt definiëren of het onderdeel een schroef is. Bij de eerste lancering wordt een licentie aangevraagd. Om deze licentie te verkrijgen, moet u deze aanvragen via het SolidWorks-klantenportaal, volgens de volgende procedures :
Om een SOLIDWORKS Document Manager API-licentiesleutel aan te vragen:
- Log in op het SOLIDWORKS-klantenportaal.
- Klik op API-ondersteuning in Mijn ondersteuning.
- Klik op Sleutelaanvraag voor documentbeheer.
- Volg de online instructies om uw licentiecode aan te vragen .
Een SOLIDWORKS Document Manager API-licentiesleutel wordt naar u gemaild na goedkeuring van uw aanvraag.
Het werkt met Toolbox-componenten en aangepaste bibliotheken waarvan de componenten de eigenschap "IsToolboxStandard" hebben.
U kunt deze eigenschap eenvoudig toevoegen met het hulpprogramma dat voor dit doel is voorzien: "sldsetdocprop.exe" in de map: "C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\Toolbox\data utilities"
Ik nodig je uit om de macro te testen op testassemblages en me je feedback te geven.
Fijne dag.
suppression_visserie.zip
Sleutelaanvraag gedaan, u hoeft alleen nog maar te wachten op de e-mail.
Aan de andere kant weet ik niet echt het principe om een vb-project in deze vorm te lanceren (via Visual Studio)
Voor een macro in vba geen zorgen, ik begin het te weten.
Maar in deze vorm geef ik toe dat ik Visual Studio 1 of 2 jaar geleden heb geïnstalleerd zonder ooit al te veel tijd te hebben genomen om dieper te gaan.
Geen zorgen om het project te openen, maar hoe het programma te starten? Ik denk dat ik een beetje extra hulp nodig heb @remrem als je het niet erg vindt.
En als je daarnaast een helpsite hebt, zou dat geweldig zijn.
Anders lijkt de code me na een snelle lezing helemaal niet slecht, wacht maar op deze beroemde code!
Je vult de macro knop in zoals bij een bestand in .swb formaat, behalve dat je het dll formaat kiest:
Vervolgens klik je op bladeren en verander je het type door "SW VSTA Macros (*.dll)" te selecteren en kies je het bestand "Suppression_visserie.dll"
Hallo
Werkt het?
Bedankt @remrem, ik heb net getest na een paar problemen om de beroemde sleutel te krijgen.
De e-mail ging naar Spam, ik moest het in mijn persoonlijke mailbox doen en een paar dagen wachten...
Behalve de operatie, nu ik heb kunnen testen! Dit is heel dicht bij mijn behoefte, dank u voor deze zeer goede basis.
De configuraties zijn goed gemaakt voor alle assemblages.
Aan de andere kant worden in deze configuraties de schroeven niet verwijderd (zelfs niet als de optie ISFastener is ingesteld op 1)
Ik zou ook graag willen dat de configuratie alleen wordt gemaakt als de assembly schroeven bevat met ISFastener=1 en een eigenschap "Category" is "Assembly".
In subassemblages blijft de actieve configuratie standaard in plaats van bevestigingsmiddelen die zijn ingeschakeld in de bevestigingsmiddelen die de configuratie van de hoofdassemblage mogelijk maken.
Ik zou proberen een aantal aanpassingen in de code, wat een zeer goede basis is, om het op mijn eigen manier te verbeteren, maar ik heb altijd ontwikkeld via VBA-macro's (zonder door dlls te gaan) en ik weet niet hoe ik indien mogelijk moet debuggen via Visual Studio om te zien waar het vastloopt en de wijzigingen live te zien indien mogelijk.
Moet je het project samenstellen om het later te testen?
Kunnen we stap voor stap uitvoeren en kijken waar het vastloopt?
Wees voorzichtig, er is een vergissing.
De eigenschap "IsFastener" wordt alleen gebruikt om de bevestigingsmiddelen in de EP-leden te verbergen.
De macro maakt geen gebruik van deze eigenschap, maar zoals ik in mijn vorige post aangaf:
Het werkt met Toolbox-componenten en aangepaste bibliotheken waarvan de componenten de eigenschap "IsToolboxStandard" hebben.
U kunt deze eigenschap eenvoudig toevoegen met het hulpprogramma dat voor dit doel is voorzien: "sldsetdocprop.exe" in de map: "C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\Toolbox\data utilities"
De eigenschap "IsToolboxStandard" is verborgen. Daarom is het niet zichtbaar in de SolidWorks Property Editor. Daarom moest ik de bibliotheek van Document Manager gebruiken.
Inderdaad, @remrem, er was een fout, ik zal kijken hoe ik het project kan verbeteren, wat een zeer goede basis is. Kun je me antwoorden als je wat tijd hebt over de methode die wordt gebruikt om projecten te compileren en te debuggen via een dll.
Aangezien je met een beetje tijd en werk aan het hele project hebt deelgenomen, zou ik er uiteindelijk in moeten slagen dit project voor mijn nut aan te passen.
Hoi Sbadenis,
SolidWorks is alleen compatibel met Visual Studio 2015. Kijk hier.
Welke veranderingen wil je?
Ja @remrem ik zag dat ik in de tussentijd de 2019 had, ik heb hem net verwijderd en de 2015 geïnstalleerd en hij werkt nu perfect, ik kan bewerken vanuit Solidworks en dus debuggen.
Voor de gewenste veranderingen zoals vermeld in mijn vorige bericht:
- Maak de configuratie aan als en alleen als een bepaald IsToolboxStandard-onderdeel aanwezig is en als de eigenschap "Categorie" van de assembly "Assembly" is
- Verwerk de open assemblage en alle betrokken subassemblages (volgens de bovenstaande criteria)
- Wijzig alle configuraties van subassemblages door de vereenvoudigde configuratie "Bevestigingsmiddel ingeschakeld" alleen in de vereenvoudigde configuratie van de hoofdassemblage "Bevestigingsmiddel ingeschakeld", maar niet in de standaardconfiguratie die moet blijven zoals deze is.
Ik begin macro's te ontdekken via Visual Studio en het lijkt me veelbelovend, ook al begrijp ik het hele ding nog niet!
Voor punt 2 zag ik net dat ik een fout heb: De klasse heeft geen licentie om te gebruiken.
Misschien heb ik niet de juiste sleutel geplakt?
Kan het worden gewijzigd?
Wat moet er in de e-mail worden geplakt, een sleutel van dit formulier ontvangen (verander de cijfers door 0-en voor vertrouwelijkheid):
swdocmgr_general-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0,swdocmgr_previews-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000 swdocmgr_dimxpert-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0,swdocmgr_geometry-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00 swdocmgr_xml-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000 swdocmgr_tessellation-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-00000-00000-00000-0000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0
Van mijn kant heb ik dit geplakt:
swdocmgr_general-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000000 0-000000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-000-000-000 000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000000-0000000-0000000 -00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000
Ik heb de instellingen van de macro laten opslaan in een Xml-bestand in deze map: C:\Users\UserName\AppData\Local\Suppression_visserie
Het bestand is als volgt samengesteld:
<?xml version="1.0" encoding="utf-8"?>
<Parametres xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Version>1.0.0.0</Version>
<DocMgrLicence>NomEntreprise:swdocmgr_general-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000000-00000-000,swdocmgr_xml-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000</DocMgrLicence>
</Parametres>