Hallo Ik wil een schetsherhaling maken door enkele parameters te variëren. Bijvoorbeeld herhaling van gatenschetsen door de Ø ervan te variëren. Helaas is het niet mogelijk om de verschijningen van een schets te variëren. Zelfs op een functie kan ik de afstand wijzigen, maar ik kan niets vinden als ik een stap wil met betrekking tot de Ø van het gat. Bij voorbaat dank als iemand me kan helpen...
Ik weet niet welke versie van Solidworks je gebruikt, maar normaal gesproken is het mogelijk om " Variable Repeat " te gebruiken om dit soort resultaten te krijgen:
De samengevoegde macro maakt een herhaling mogelijk van een schets van een cirkel met een regelmatige toename van de straal. En alleen een cirkel, hoewel andere entiteiten zouden kunnen worden overwogen.
De enige gebruiksaanwijzing staat in de onderstaande video. Er zijn weinig effecten, dus je moet waakzaam zijn over de volgorde waarin entiteiten worden ingevoerd. En geen Ctrl^Z in geval van onhandigheid...
Hallo en bedankt voor de info. Helaas lost dit mijn probleem niet op. Om explicieter te zijn, hier is het bestand dat me problemen bezorgt. Ik legde elke schets handmatig vast, waarbij de hoeken en lengtes evolueerden volgens vergelijkingen. Ik wil dit principe graag automatiseren zodat ik alleen de 1e schets hoef te tekenen en een cirkelvormige herhaling hoef te maken door het jaar D1 en de lengte D2 te variëren. Rack generatie.SLDPRT (2,5 MB)
Wat is de Solidworks-versie van uw bestand? (A priori is het hoger dan 2022)... Heb je de herhaling van variabelen met een Excel-import geprobeerd om je vergelijkingen te behouden?
Ik denk dat je het idee om je herhalingen in een schets te doen moet laten varen en ze van een functie moet maken (materiaalverwijdering?).
Nou, ik kan je bestand niet openen, maar ik protesteer ... U wilt:
en de Variabele herhaling voldoet perfect aan deze vraag. (U kunt zowel de diameters als de hoeken (afstand) van elk voorval variëren, allemaal in een cirkelvormige herhaling...) Ik moet uw vraag verkeerd begrepen hebben.
Eigenlijk Super macro @m_blt . (En ja, Macro en CTRL+Z zijn niet super compatibel.)
Dit is de versie van 2024. Inderdaad, ik moet het doen met een functie en niet met een schets. Als ik door SW ga, kan ik geen formules gebruiken om de hoeken en lengtes te variëren. Door een Excel-bestand te maken dat dit allemaal berekent, zou het moeten werken. Bedankt voor het advies.
Blijkbaar gaat het om het genereren van de tanden van een rondsel uit een tandheugel. Dit staat ver af van de cirkelvormige herhaling van cirkels met stappen van de straal...
Als ik het goed begrepen heb, is het doel om de tandheugel in opeenvolgende bewerkingsposities te implanteren, door ervoor te zorgen dat de primitieve lijn rolt zonder te glijden op de primitieve cirkel van het toekomstige rondsel.
Het rek wordt gedefinieerd als een schetsblok. Rente:
een single entity, eenvoudig te implementeren in een schets door een VBA-functie,
Met dezelfde functie kunt u de positie van het invoegpunt en de helling van het blok definiëren (dimensioneren is niet nodig, tenzij u alle schetsen wilt beperken),
het is voldoende om de voorwaarde van RsG te benutten als een functie van de neiging om de coördinaten van het invoegpunt te definiëren. In de beginpositie wordt het invoegpunt geplaatst op het raakpunt van de primitieven.
Dan moet de functie van het verwijderen van materiaal in een lus nog worden herhaald: ongeveer een seconde per positie. De te definiëren parameters zijn de volgende:
de primitieve straal van het rondsel door de primitieve cirkel te selecteren,
de numerieke waarde van de toename van de hellingshoek,
het aantal posities dat moet worden gegenereerd.
Het werkt en onthult enige interferentie aan de tandvoet van het rondsel. Een tandwieloffset is noodzakelijk...
generationRackwarming.SLDPRT (1.1 MB) [bewerken] Gemodificeerde GenerationCr.swp macro (91.5 KB), te downloaden in het volgende bericht...
Hallo Bedankt voor het antwoord, het is super interessant. Ik heb een vraag (VBA-functies zijn voor mij een beetje Chinees). Waar wordt het blok gebruikt om de verschillende materiaalverwijderingen uit te voeren? Als ik alles verwijder om alleen de schets te behouden waarin de primitieve cirkel zich bevindt, zal de macro zoeken naar blok 6 maar ik weet niet waar.
Ik zou graag in staat zijn om het rek in een blok te tekenen en vervolgens de verschillende posities ervan te genereren om het verkregen profiel te zien.
Voor de interferenties ben ik het eens, maar niet per se vervelend, mijn doel is om het juiste tandheugelprofiel te vinden, om het gewenste ingewikkelde startpunt te verkrijgen en voldoende te " graven" aan de voet van de tand.
A priori kan een blok worden gebruikt, bij het invoegen, wijzigen, opslaan als een bestand, zolang het maar aanwezig is in een schets. Als alle schetsen waarin het is ingevoegd worden verwijderd, is het niet meer toegankelijk.
In de oorspronkelijke macro was de bloknaam (Blok 6, regels 64 en 66) hard gecodeerd. Een bericht wordt tijdens runtime weergegeven als het niet meer bestaat in het deeldocument.
Ik heb een kleine wijziging aangebracht in de macro waarmee je het blok kunt kiezen uit een vervolgkeuzelijst met alle blokken die beschikbaar zijn in het deeldocument. Dit voorkomt inmenging in de code. Met deze wijziging wordt het blok gevonden, zelfs als de invoegschetsen zijn verwijderd. Dit lijkt erop te wijzen dat hij " overleeft " in SW's itembasis. Ik weet niet zeker of hij nog steeds aanwezig is na de opname van het stuk, dan sluiten/heropenen...
Zou het niet eenvoudiger zijn om een bestand te maken zoals het bijgevoegde, inclusief het volume van de blanco en een extrusie van het blok dat het rek definieert, met een beperkte tangens aan de primitieve Ø en om extrusies te herhalen door de hoek en de verplaatsing van het rek te moduleren?
Ik heb goede vooruitgang geboekt met de versie van de tandheugelgeneratie voor een rechte tand. Ik probeer nu een versie te maken voor spiraalvormige tanden. Voor de rechte versie wordt elke keer dat een schets wordt gemaakt, geëxtrudeerd materiaal verwijderd. De superpositie van alle sneden geeft de verkregen tanden. Voor de spiraalvormige versie maak ik een helix die overeenkomt met de spoed van de te genereren tanden. Aan de andere kant, als ik de herhalingen van het blok met het rek wil doen, zijn de gegenereerde schetsen goed geplaatst, maar het verwijderen van het geveegde materiaal gebeurt altijd op de startschroef. Ik kan de propeller niet herhalen, zodat elke geveegde snede wordt gemaakt volgens een helix waarvan het startpunt beperkt is tot de schets van het rek. Ik weet niet of ik duidelijk genoeg ben in mijn uitleg. Ik wil graag een cirkelvormige herhaling van een propeller kunnen maken, maar ik kan deze functie niet selecteren in het cirkelvormige herhalingsmenu. Bijgevoegd is het bestand en de macro die niet werken.
Hallo Met deze tutorials kunt u grafische weergaven van tanden maken. Ik wil het profiel van een echte tand genereren op basis van de definitie van het gereedschap dat is gebruikt om het te maken.
En dan hoef je alleen nog maar de cirkelvormige herhaling van het aantal bewerkingen te doen.
NB: het voordeel van deze functie ten opzichte van het scannen van rechte secties is dat deze functie ook het volume genereert dat wordt verwijderd door het bumperkleven van het gereedschap
Door de macro te starten met 0 herhalingen (1 enkele snede) en de hoek op 1°, is het goed. Zodra ik met meerdere herhalingen begin, worden de geveegde sneden altijd gemaakt volgens de ronding van de initiële propeller en werkt het niet meer. Ik wil dat de verschillende geveegde sneden worden gemaakt volgens propellers die bij elke snede 1° draaien. Ik kan de gegevens niet uit de curve (propeller) halen zodat deze kan worden herhaald.
Helaas heb ik de SW 2024-versie niet, waardoor ik uw documenten niet kan bekijken. Als dit het geval is, is het duidelijk dat de propeller die voor het vegen wordt gebruikt, het rek bij zijn beweging moet vergezellen. Het wordt bestuurd door de StartAngle-parameter van de InsertHelix-functie .
Merk op dat de parameters van deze functie talrijk en onduidelijk zijn, zoals vaak het geval is bij SW-API's. De samengevoegde macro neemt de vorige die is gemaakt voor een rechte tand, en voegt de spiraalvormige tandoptie toe, in de vorm van de functie genaamd " GenererHelicoidal Prothese".
Het is alleen getest op het bijgevoegde exemplaar, dus zonder garantie...
Bedankt, de herhaling van de propeller werkt al. Ik ga proberen het in mijn macro te integreren. PS: gebruik je een AI? Zo ja, welke? Ik probeer het met chatgpt, maar het is bewerkelijk.