Ik ben op zoek om de volumeconversiefunctie te integreren in een bibliotheekfunctie, maar het lijkt toch niet mogelijk in SW2016. Is er een truc om te weten of een alternatieve macro-type oplossing, die het mogelijk zou maken om met een enkele klik meerdere lichamen te combineren en de resulterende carrosserie om te zetten in plaatwerk, door automatisch te zoeken naar reeds bestaande vouwen? Bij voorbaat dank.
Kun je ons een screenshot van je toneelstuk maken, want ik weet niet zo zeker wat je bedoelt. Maar probeer de functie voor insteekvouwen; Met één klik herkent deze functie vouwen.
wow, 3 antwoorden van de top 3 bijdragers ... Sorry, ik had ze niet gezien, ik was vergeten me te abonneren op mijn eigen vraag (het is jammer dat je als vraagposter niet automatisch geabonneerd bent, maar dat is niet het debat). Dus om te illustreren, hier zijn de stappen van wat ik probeer te doen met hulp (omdat ik er veel van nodig heb bij verschillende projecten):
Ik begin met een centraal lichaam zoals een paal. Ik heb ook twee profielen van hetzelfde verdikkingsmiddel die zich op enigszins willekeurige plaatsen in de ruimte bevinden. Het doel is om ze met elkaar en vervolgens met de paal te verbinden, om uiteindelijk het uitgevouwen plaatwerk te verwijderen dat aan al deze voorwaarden voldoet.
Dus via functiebibliotheken koppel ik alle lichamen op de juiste manier. Het enige dat overblijft is om ze te combineren (want als ik samenvoeg tijdens de schakels, voegt SW de paal ook samen) en zet het vervolgens om in plaatwerk.
Daarna heb ik nog wat werk te doen, ik moet het lichaam hernoemen in plaatwerk om het automatisch te extraheren en er een flat van te maken in dxf. Mijn eerste vraag is dus nog niet op het niveau van koffie zetten, maar het is nog ver verwijderd van het einddoel. ;-)
Dat is de volledige uitleg. Om sneller te gaan (ik heb ongeveer twintig van dat soort lichamen om te maken en plat op elk bestand te leggen), heb ik gekozen voor de functiebibliotheek die de verbindingen voor mij maakt. Nu heb ik dat zo goed als onder de knie. Maar als het lichaam eenmaal is samengevoegd, kan het niet worden geconverteerd naar plaatwerk in dezelfde functiebibliotheek. En aangezien ik er nog veel acties achter moet uitvoeren, als de functiebibliotheek het niet toelaat, waarom zou ik dan niet door een macro gaan. Het nadeel van macro's is dat ik in de code niet zie hoe het de afvlakking kan aanpakken zonder dat ik de randen eensgezind aanduid, wat ik absoluut (te lang) wil vermijden. Ik vind in de codering niet het automatisch zoeken naar reeds bestaande vouwen.
Ik hoop dat ik je heb geïnformeerd over het doel en de problemen, nu abonneer ik me op mijn onderwerp om sneller te reageren op je vele verlichte adviezen ;-)).
Als je tijdens de bindingen samenvoegt, smelt SW ook de pool samen. Vervolgens maak je een configuratie zonder de paal en vervolgens zet je deze om in plaatwerk. Lukt het niet?
Het idee is om getest te worden, maar aangezien ik 1 van de 2 keer de foutmelding "bibliotheekfunctie onmogelijk toe te passen" heb als ik samenvoeg, heb ik het idee laten varen. Het moet gezegd worden dat ik, afhankelijk van de profielen, aangezien mijn fittingen raken aan de paal, zeer delicate en willekeurige fusies heb.
En als je een beetje speling laat tussen je toekomstige plaatwerkonderdeel en de paal, zoals 0.01 (een plan maken zodat je het kunt zeggen tot en het kunt selecteren in plaats van het oppervlak) zodat het niet kan samensmelten.
Ik kan geen offsetvlak maken, de schets van mijn functie hangt op het ontmoetingspunt tussen het schetsvlak en de randen van de kolom. Wetende dat deze paal een constructie is die op een 3D-schets is gelast, is het dus moeilijk om te verschuiven... En ik zou natuurlijk het aantal referenties dat ik moet aanklikken voor mijn bibliotheek met functies zoveel mogelijk beperken.
Het gedeelte "combineren" lijkt me minder problematisch dan de conversie naar plaatwerk die ik niet kan instellen:
Is er een truc om de referenties die in de conversiefunctie worden gebruikt te vervangen door referenties die ik aanduid, waarbij ik me indien mogelijk beperk tot het basisplan van de plaatwerkfunctie, en dat het zoeken naar reeds bestaande vouwen automatisch wordt geactiveerd? Ik heb geprobeerd met behulp van de body selectie macro in combinatie met de conversie functie, maar ik ben een beetje te traag in termen van programmeren om daar te komen. Deze macro gaat ervan uit dat het lichaam of een gezicht is geselecteerd voordat de macro wordt toegepast, ik heb liever dat de macro me vraagt om het vlak te selecteren voordat ik de conversie toepas en indien nodig, selecteer het gezicht en de randen om deze conversie uit te voeren. En bovenaan, dat ze me vraagt om van tevoren alle lichamen te selecteren die moeten worden samengevoegd om alles te maken behalve de koffie ;-).
Ik vind goede tutorials om functieparameters te vullen met userform, maar niet om selecties te maken van lichamen, vlakken, randen of andere die nodig zijn voor functies zoals conversie naar plaatwerk of combineren.
In feite bent u op zoek naar een snelle manier om te zetten naar plaatwerk zonder de vouwen te selecteren, maar alleen het gezicht. Probeer de ingebrachte functie van de vouwen te zien, deze functie herkent de scherpe randen en zet ze om in plaatwerk door gewoon het gezicht te selecteren. Om deze macro te maken, hebt u een nieuwe macro opgenomen en voert u alle bewerkingen handmatig uit en voltooit u de opname. Dan zie je wel wat er gebeurt.
Interessant, dit laatste voorstel, ik had altijd (ten onrechte) de functie "omzetten naar plaatwerk" gebruikt in plaats van "vouwen invoegen". Het goede nieuws is dat het op die manier werkte. Het eerste slechte ding is dat door de methode twee keer achter elkaar toe te passen met precies dezelfde parameters, de eerste keer dat het werkte, de tweede keer, SW me vertelde dat de vouwen niet konden worden gemaakt. Misschien in SP3... Ik las dat een andere gebruiker klaagde over het plaatwerk onder SW2016 in SP1 en in mindere mate in SP2. Het tweede slechte nieuws voor mij is dat "insert folds" nog steeds niet in de bibliotheekfunctie passen. Grrrr. Dus gedwongen om door een macro te gaan.
Zo zou het eruit zien:
Dim swApp als object
Deel dimmen als object Dim boolstatus als Booleaanse Dim longstatus As Long, longwarnings As Long
Sub hoofd()
Stel swApp in = _ Toepassing.SldWorks
Deel instellen = swApp.ActiveDoc boolstatus = Part.Extension.SelectByID2("", "GEZICHT", 1.71659798004902, 0.3562399999999957, -0.21627010114517, Onwaar, 0, Niets, 0) boolstatus = Deel.InsertBends2(0.001, "", 0.5, -1, Waar, 0.5, Waar) Deel.ClearSelection2 Waar Einde Sub
Het valt nog te bevinden hoe het "gezicht" en al zijn positioneringsargumenten kunnen worden vervangen door een "selecteer gezicht"-interactie .
Wordt vervolgd... Bedankt Manu voor dit eerste idee, het blijft aan SW om de functie stabiel te maken (ik zal de tijd nemen om een video te maken en deze in het weekend naar de ondersteuning te sturen), het zal al een stap vooruit zijn.