FreeCad leren

Vragen die je boven niet kwijt kunt, kan je hier stellen.

Moderator: Moderators

Gebruikersavatar
andrefc101
Donateur
Berichten: 3702
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: FreeCad lereniCh

Bericht door andrefc101 »

Ziet er toch wel gaaf uit!
diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

ik maak even nieuw draadje aan want ik werk met oudere FreeCAD versie 0.15 en wel 32 bits.
Daar is officieel geen assembly mogelijk nog.

Assembly is weer zo iets wat eerst werkte in FreeCAD toen weer eruit gesloopt is als workbench en vervolgens toen ze begonnen zijn met versie 0.17 te ontwikkelen is het weer geintroduceerd.

Meer in 't nieuwe draadje en hoe ik me beweeg in de 3D aldaar.

Dabit - ik begin nieuwe 3d printer ontwerpen te ontwerpen na een kladjesontwerp in FreeCAD met de linears, dan het eerste wat echt uitgebreid ontworpen wordt is de extruder want dan weet ik hoe groot de linear movement moet worden om het bereik te halen van mijn 3d printer en daarna wordt de rest ontworpen van de 3d printer - 't printbed etc.

Nu ik de assembly daar zo zie overweeg ik wel gelijk te switchen naar nieuwere FreeCAD als die 't oude nog kan laden :)
Gebruikersavatar
DaBit
Donateur
Berichten: 11017
Lid geworden op: 05 dec 2012 13:48
Locatie: Oss

Re: FreeCad lereniCh

Bericht door DaBit »

andrefc101 schreef: 05 apr 2021 21:24 Ziet er toch wel gaaf uit!
Je kunt dat in Fusion360 ook allemaal wel.
Modify->Change parameters kun je userparameters toevoegen die je vervolgens in dimensies kunt gebruiken, en volgens mij kun je ook joints aan sketch items knopen.
diepchess schreef: 05 apr 2021 21:33 Assembly is weer zo iets wat eerst werkte in FreeCAD toen weer eruit gesloopt is als workbench en vervolgens toen ze begonnen zijn met versie 0.17 te ontwikkelen is het weer geintroduceerd.
Volgens mij zijn zowel Assembly3 als Assembly4 nog separaat te installeren workbenches.
Dabit - ik begin nieuwe 3d printer ontwerpen te ontwerpen na een kladjesontwerp in FreeCAD met de linears, dan het eerste wat echt uitgebreid ontworpen wordt is de extruder want dan weet ik hoe groot de linear movement moet worden om het bereik te halen van mijn 3d printer en daarna wordt de rest ontworpen van de 3d printer - 't printbed etc.
Meestal is een ontwerp een combinatie van top-down en bottom-up. Bij mij wel tenminste. Niks mis mee ook.
Je wil even zien hoe spindel X uitpakt op een concept Z-as dus dat bouw je even om de spindel heen. Maar verder heb je het grote geheel en weet je wel wat het bovenaanzicht van de machine word, dus als je wat frame tekent kun je daarna de boel top-down invullen.
Nu ik de assembly daar zo zie overweeg ik wel gelijk te switchen naar nieuwere FreeCAD als die 't oude nog kan laden :)
Heb je wel 0.19 voor nodig, dus hoppa, naar de nightly builds.
Al dat assemblyspul leunt heel zwaar op het AppLink object waarmee ze symbolische links kunnen maken om die op de juiste plek kunnen zetten.

Al die dingetjes die je in mijn assembly ziet zijn trouwens ook losse .FCStd documentjes voor de losse deeltjes. Zo'n bronzen lagerbusje staat dus in zijn eigen .FCStd documentje.
Dat maakt de boel vervolgens min of meer organiseerbaar met Git, SVN, whatever.
De belangrijkste wet in de wetenschap: 'hoe minder efficient en hoe meer herrie, hoe leuker het is'
diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

Dat applink object en symbolische links klinkt als linux. Nu heb ik Debian hier op gros machines en dan werkt FreeCAD meestal weer niet omdat hij weer nieuwere dit of dat ergens van moet hebben (hoe ze DAT in godesnaam weer altijd voor elkaar krijgen dat iets niet OVERAL werkt - tja - amateurs vind ik dat maar goed het is GRATIS software!).

Wat heb jij daar als OS geinstalleerd en welke versie?
diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

Dat organiseren in aparte freecad documenten - betekent dit dat je niet in situ kunt tekenen in de assembly?

Om machines beetje compact te ontwerpen is het handig om in situ te ontwerpen in plaats van op een leeg vel waar je niet weet hoeveel ruimte je hebt om te ontwerpen.

Dan stap ik dus ook even uit de topdown-bottomup discussie maar is het natuurlijk een keiharde centendiscussie. Een machine die 200 kilo weegt versus eentje die 50 weegt - we weten wat goedkoper te produceren valt als dat gewicht enige verschil is.

Als ik iets ruim ontwerp heb ik 20 centimeter grotere machine aan alle zijdes minimaal.

De oude freecads zijn een nightmare om objecten 'bij te stellen'. Dus als je van een extruder ergens een boutje een millimeter verplaatst zodat je 'm een mm kleiner kunt krijgen - dan worden ineens alle high level documenten in de assembly compleet herberekend. Dat kan bij een volledige 3d printer met 500 boutjes en veelvoud aan sluitringetjes en moertjes dan zo maar 50 minuten rekentijd zijn. Dus 1 boutje een mm verplaatsen omdat hij onderaan in de hierarchie zit.

Hoe snel is dat ondertussen geworden in freecad 0.19?

Is dat nog steeds zo'n takketrage python query of hebben ze dat eindelijk factor 10000x sneller in C / C++ uitgeprogrammeerd? (het standaard snelheidsverschil tusen C of imperatief C++ versus interpreted taaltjes als Python). Afgezien van feit dat je in C / C++ ook makkelijker parallel uitrekent (dus meerdere cores tegelijk) - maar ja al die graphics teken/CADprogramma's zijn single core feitelijk.
Gebruikersavatar
andrefc101
Donateur
Berichten: 3702
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: FreeCad leren

Bericht door andrefc101 »

diepchess schreef: 05 apr 2021 22:17 Als ik iets ruim ontwerp heb ik 20 centimeter grotere machine aan
Wil je onze nieuwsgierigheid niet een beetje tegemoet komen?
Ik vond die tekening van Dabit al gaaf, dus van zo’n ervaren iemand als jij verwacht ik eigenlijk iets veel spannenders!
diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

andrefc101 schreef: 05 apr 2021 22:33
diepchess schreef: 05 apr 2021 22:17 Als ik iets ruim ontwerp heb ik 20 centimeter grotere machine aan
Wil je onze nieuwsgierigheid niet een beetje tegemoet komen?
Ik vond die tekening van Dabit al gaaf, dus van zo’n ervaren iemand als jij verwacht ik eigenlijk iets veel spannenders!
Yo ik was al vanalles aan 't toevoegen aan mijn galerij met commentaar erbij hoe ik 't voor elkaar krijg te doen in freecad.
Let wel van de gantry is 1 kant getekend want andere kant is toch gespiegeld zoals we weten.

Van de 3d printer ontwerpen van mij van de afgelopen jaren is niks openbaar noch publiek dus dat toon ik ook niet.
Deze gantry die ik wil bouwen en waar vast nog draadje over gemaakt wordt tzt die toon ik dus en hoe ik dingen 'onorthodox' doe in freecad 0.15 en dat onorthodoxe is dan nodig om dus assemblies te kunnen maken.
diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

Rocnc schreef: 05 apr 2021 20:23 Ik ook! Voor zover ik FreeCAD tot nu toe ken is het vooral geschikt om individuele onderdelen in 3D te tekenen. En dan bedoel ik iets tekenen waarvan alle maten al bekend zijn (van een 2D tekening, bijvoorbeeld).
Echt ontwerpen, zeker van samenstellingen, dat is me nog niet gelukt. En dan bedoel ik met ontwerpen: de maten, vorm en positie van een onderdeel bepalen aan de hand van de andere onderdelen van de samenstelling. Dat lijkt mogelijk. Er worden echt heel indrukwekkende voorbeelden getoond. Maar hoe ze dat doen? Geen idee. En ik heb er ook nog geen tutorials over gevonden. Tips zijn welkom.
Hallo!

Het freecad team is marketingtechnisch niet zo handig bezig. Ook kapogedrag op dat forum - wat je op zoveel forums ziet - waar ik overigens zelf totaal geen last van heb in mijn geval juist heel positieve ervaringen met freecadforumleden - maar duidelijk dat iemand niet zijnde de programmeur de zaak enorm bestiert en daardoor misschien de focus minder lag op een gebugfixte versie van freecad online zetten terwijl ze zelf ondertussen met een beta versie werkten onder linux ook nog (windows was weer ondergeschoven kindje gedurende aantal jaren) die dan wel ok werkte. Gros was ook niet bezig met assemblies maar met 1 objectje tekenen. Ik ken dat probleem als vanuit mijn softwareontwikkelaar hoedanigheid. Heb je voor miljardenbedrijf een product waar half miljard of meer mensen dagelijks mee werken, maar op bedrijf zelf is niemand er mee bezig zoals de gemiddelde zakelijke klant dat is - en van testers hoor je nooit iets behalve hosanna of ze zijn alleen bezig met nerdfeature XYZ en je mist dan de 'big picture' dat grosso modo je product iets niet kan wat totaal gesneden koek is voor anderen.

Dus toen ik in 2012 - 2013 op dat forum zat en ik kan me niet herinneren van wanneer mijn eerste communicatie richting de forumkapo begon met geklaag over dat hij aan lopende band crashte.

Versie 0.14 uit 2014 die crashte dus ook enorm al was hij al stuk stabieler dan versie 0.13.
Versie 0.15 maar dan alleen de 32 bits versie, die loopt hier stabiel onder windows vista.

Wel stikt het van de kleine bugjes vooral als je dus het 'model' met labels & attributes tab gebruikt als je assembly.
Hoewel ik dat niet zelf verzonnen heb, want ik zag anderen het ook doen. Toen ik dat zo postte op het forum was ik hoogst verbaast te leren dat het freecad team op dat moment niet goed begreep hoeveel behoefte er was aan een assembly en ze waren er ook niet van op de hoogte dat dat zo kon werken. Amai.

Volgens mij is er toen begonnen aan het werk aan een versie 0.17 die wel een assembly zou krijgen helemaal van scratch af op gebouwd. Tenslotte is 1 objectje ontwerpen in allerlei cad software mogelijk en ook in goedkope cad software.

Terwijl een hele machine ontwerpen - dan heb je al snel duizenden objecten - denk alleen al aan de schroeven bouten moertjes - dan moet je bij elk commercieel CAD programma de hoofdprijs betalen.

Echter bij mij heeft 0.17 nooit gedraaid want dan moest je weer de laatste windows versie hebben of een heel andere linux distributie dan ik normaliter gebruik (debian gebruik ik hier met name).

Waarom dat weer zo is vraag ik me altijd af. In geval van FreeCAD heeft het met de 3d engine te maken welke ze niet zelf gebouwd hebben. Nieuwere versie daar van betekent dat je nieuwere versie van de OSes nodig hebt.
Gebruikersavatar
DaBit
Donateur
Berichten: 11017
Lid geworden op: 05 dec 2012 13:48
Locatie: Oss

Re: FreeCad leren

Bericht door DaBit »

diepchess schreef: 05 apr 2021 22:10 Wat heb jij daar als OS geinstalleerd en welke versie?
FreeCAD onder Windows 10, plaatjes zijn geschoten met build 0.19.24267
Maar ik zag dat 0.19.1 ook officieel uit is, sinds 24 dagen geleden :P

De Linux-variant word geleverd in een AppImage. Dat zou dus eigenlijk ook redelijk probleemloos moeten werken, tenzij je de Slackware op je machine nog vanaf floppy geinstalleerd hebt.
diepchess schreef: 05 apr 2021 22:17 Dat organiseren in aparte freecad documenten - betekent dit dat je niet in situ kunt tekenen in de assembly?
Tuurlijk wel. Dan heb je gewoon geen linkje maar de body in het document zelf.
Maar dat is nou eigenlijk net een gewoonte die je imho af moet zien te leren. Als jij C/C++ code klopt frot je ook niet alles in 1 file zo gauw het groter word dan een kattenbelletje.

Is verder ook gewoon knap onhandig. Stel dat je met je frees de motormount lichter gemaakt hebt om materiaal te besparen. Die werkt niet, dus je wil eigenlijk die vervangen door de vorige variant die steviger was. Als alles in 1 file staat kun dat niet. Als die motormount in een los file-tje staat wel. En dan nog zaken als genereren van de bill of materials, losse 2D tekeningen voor onderdeeltje X, CAM-data voor onderdeeltje X, enzovoorts.
diepchess schreef: 05 apr 2021 22:17 Om machines beetje compact te ontwerpen is het handig om in situ te ontwerpen in plaats van op een leeg vel waar je niet weet hoeveel ruimte je hebt om te ontwerpen.
Nee, dat is niet handig. Dat is direct achter de computer springen om te gaan programmeren in plaats van nadenken over wat je wil gaan maken en hoe de architectuur eruit ziet.
Al vrij vroeg in het project blijf je dan dingen schuiven want A moet iets groter, dus dan B ook, maar dan past C niet meer dus die moet verplaatst worden, waarna D in de weg zit. Of nog erger, de 3D-software doet het voor je. Leuk, tot die er niet meer uit komt en de helft van de tekening opeens verplaatst is naar niemandsland of er uit ziet als een stuk heel erg abstracte kunst. Ik wed dat dat maar weinig mensen hier onbekend in de oren klinkt.

Als je spindel 125mm diameter is, dan pomp je die 125mm in een spreadsheet als constante. spindelDiameter=125mm.
Dan moet je dat ding vastzetten. Ronde ring met een platte kant als voet. Materiaaldikte is ook een constante: spindelHouderDikte=10mm.
Hoe breed is de voet van de spindelhouder dan? voetBreedte=spindelDiameter+2*spindelHouderDikte.
Nou, die zetten we op een Z-as plaat met 2 zijplaten voor de stevigheid, een U dus. Hoe dik maken we die platen? zAsPlaatDikte=15mm
Hoe breed is nu onze Z-as plaat? zAsPlaatBreedte=voetBreedte+2*zAsPlaatDikte.

Wat is ons gewenste bereik? gewensteXasSlag = 600mm.
Als die spindel dan in het midden zit, dan heb ik voor dat bereik een lineaire rail nodig van xAsRailLengte=gewensteXasSlag+zAsPlaatBreedte.
Enzovoorts. Dit is wat kort door de bocht, maar je snapt het wel.

Al die variabelen kan ik aan refereren in mijn schetsen, in mijn extrusies, noem het maar op. Waarom zouden ze anno 2021 nog dat geinterpreteerde taaltje gebruiken? Nou, omdat het onder water misschien Python is die dat allemaal voor me doet?
Als ik het zo definieer dan heb ik nergens een millimeter teveel materiaal of ruimte genomen. En als ik dan een 80mm spindel wil gebruiken dan pas ik dat nummertje aan, en hatseflats, heel die Z-as plaat past zichzelf aan de nieuwe situatie aan, de rails en brug worden korter, en het frame smaller. Geen gram materiaal teveel, geen millimeter ruimte teveel.
diepchess schreef: 05 apr 2021 22:17 Dat kan bij een volledige 3d printer met 500 boutjes en veelvoud aan sluitringetjes en moertjes dan zo maar 50 minuten rekentijd zijn.
Hoe snel is dat ondertussen geworden in freecad 0.19?
Dat was waarom ik van assembly3 afgestapt ben. Die 'mates' zijn wel lekker comfortabel en bekend, maar er zit een constraintsolver achter. Geef die solver de taak om een oplossing te verzinnen voor 5000 vrijheidsgraden, en hij doet er even over. Uiteraard kun je als alles op z'n plek staat voor een subassembly die solver wel uitschakelen, maar toch.
Assembly4 werkt met referentieobjecten. En dan is het niet veel meer dan 'maak locaal coordinaatsysteem 'hart_as' gelijk aan locaal coordinaatsysteem 'hart_tandwiel', wat een paar simpele matrixberekeningen zijn.

Een hercalculatie van die 3d-printer X-as met z'n vele componenten is net niet 'ogenblikkelijk'. Laten we het grof inschatten: secondenwerk. Dat boutjes, moertjes, lagertjes, etc. instanties zijn en geen duplicaten scheelt ook veel.
diepchess schreef: 05 apr 2021 22:17 maar ja al die graphics teken/CADprogramma's zijn single core feitelijk.
En FreeCAD is helaas geen uitzondering :roll:
De belangrijkste wet in de wetenschap: 'hoe minder efficient en hoe meer herrie, hoe leuker het is'
ludo
Berichten: 304
Lid geworden op: 08 feb 2007 22:07
Locatie: ESSEN (Belgie)
Contacteer:

Re: FreeCad leren

Bericht door ludo »

diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

Dabit - met in situ tekenen bedoel ik niet de manier waarop de machine in CAD is georganiseerd.

Ik doel op dat je je object kunt ontwerpen terwijl je continue (gedeeltes) van de machine of mechanisme ziet zodat je weet dat hij er goed in past. Anders krijg je nooit iets in een compacte ruimte ontworpen volgens mij.
Is verder ook gewoon knap onhandig. Stel dat je met je frees de motormount lichter gemaakt hebt om materiaal te besparen. Die werkt niet, dus je wil eigenlijk die vervangen door de vorige variant die steviger was. Als alles in 1 file staat kun dat niet. Als die motormount in een los file-tje staat wel. En dan nog zaken als genereren van de bill of materials, losse 2D tekeningen voor onderdeeltje X, CAM-data voor onderdeeltje X, enzovoorts.
Dat heeft 'r niks mee te maken. Datastructuur versus ontwikkelmethode gaat 't om. De datastructuur dient ontwikkelmethodes te ondersteunen en niet te dwingen tot een 20e eeuwse manier van bottom-up ontwerpen. Als de datastructuur is verschillende CAD documenten waarin het ontwerp wordt opgeslagen - dan hoort dit niet te betekenen dat je niet in situ kunt ontwikkelen.

Je wilt dat de software je ondersteunt in plaats van dat je in een apart 'bunkertje' zo'n object tekent zonder te weten of dat in de machine gaat passen tijdens 't ontwerpproces. Want dat is nog begin 20e eeuw op die manier ontwerpen zo vind ik.

Als de machine goed is geparameteriseerd (weer zo'n dingetje wat een probleem is in FreeCAD overigens al waren er in oudere versies wel functionaliteiten voor maar erg lekker werkt dat niet) en je komt ergens 1mm tekort omdat je adapter 1mm sterker moet zijn zo blijkt na testen - dan hoor je een metavariabele van de machine 1 mm groter te zetten en de CAD hoort dan gros van objecten te herberekenen die in de verschillende documenten staan en hop er is 1mm meer ruimte in je machine die zeer wellicht dan ook 1mm groter is.

Maar als je eerst je machine 200mm groter ontwerpt omdat dan alles wel erin past - dat is een ambtelijke manier van ontwikkelen type space shuttle - en we weten hoe goedkoop die was :)

Producten nu wil je er gewoon snel efficient uittimmeren (zegt degene die al jaren bezig is met een 3d printertje ontwikkelen).
diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

Dabit - ja dank precies de informatie die ik zocht!
Assembly4 wil ik dus dan proberen begrijp ik!

Eens zien of ik dat windows geupgrade krijg hier dan - ik had al via BVA een legale windows2019pro editie gekocht. Dat gaat voor peanuts tegenwoordig. Hoop wel dat die ook aantal jaar werkt.

Heel veel van die software die ik draai vanuit 't verleden werkt van geen meter met nieuwere windowsversies maar goed - het is niet anders!
Een hercalculatie van die 3d-printer X-as met z'n vele componenten is net niet 'ogenblikkelijk'. Laten we het grof inschatten: secondenwerk. Dat boutjes, moertjes, lagertjes, etc. instanties zijn en geen duplicaten scheelt ook veel.
Ja het zijn beginners qua datastructuren die CAD ontwikkelaars - maar ja dat is makkelijk om te zeggen als iemand die goed is in datastructuren te ontwerpen - maar het is gratis pakket dus laten we blij zijn dat er iets is wat werkt!

Herinner me nog hoe zo'n datastructuuridee van mij eind jaren 90 in een Sun filesystem terecht is gekomen -die dat orde categorie Exabyte storage tegelijk oplost - en daar was de datastructuur ook op berekend :)

Dat is principe O ( 1 * c ) sequentieel wegschrijven in blokken tegelijk en dan als je iets nodig hebt uit de datastructuur is het maximaal O ( c * log n ) met elke operatie is dus een blok data wat je leest - om het eruit te halen.

Maar ja zo iets ontwerp je ook niet 1 2 3.

Toen had ik hier projectteam om spelletje op te zetten - maar de programmeur van de 3d engine - die deed ook alles ongesorteerd.
Zonder ooit de datastructuren bekeken te hebben - Ik vermoed dat intern freecad 't ongesorteerd bijhoudt - want anders zou zelfs python 't nog snel redden - bij wijze van spreken :)

Kunnen sorteren in een datastructuur en dingen gesorteerd houden is wel een dingetje om te bouwen dat maakt 't programmeerproces enorm complexer want je zit gelijk aan complexe datastructuur vast met allerlei soorten pointers natuurlijk in plaats van een simpel lijstje.

Standaard library van C++ gebruiken om 't gestructureerd bijhouden is een takketrage datastructuur omdat hij continue memory alloceert en dealloceert (het nadeel van object oriented programmeren) - terwijl dat alloceren en dealloceren van RAM 1 van de traagste dingen is in elk besturingssysteem. Kan me voorstellen dat je in een CAD programma daar niet aan wilt beginnen. Dus als je iets sneller wilt dan dat moet je letterlijk elke onderliggende functiecall zelf uitprogrammeren en zelf een datastructuur opzetten die al bij voorbaat berekend is op grote projecten - veel groter dan ooit in FreeCAD is uitgevoerd natuurlijk.

Simpel is dan dingen niet gesorteerd bijhouden.

De snelheidswinst van FreeCAD 0.17 - 0.19+ is dan met name het feit dat ze dus meerdere documenten gebruiken. Want het probleem zogezegd is dan factor 200 of meer kleiner als je 200 documenten hebt. Dus orde grootte is dan nog steeds hoofdletter K maar iets wat 50 minuten kost hier in freecad 0.15 als dat probleem ineens factor 200 of meer sneller is dan heb je niet meer vele minuten te wachten.

Als 't paar secondes is in plaats van 50 minuten - i take it :)

Maaruh - een paar duizend objectjes in een machine is natuurlijk peanuts objectief gezien. De cpu's van tegenwoordig zijn geklokt op gigaherzen met vele cores. Zo'n fileserver die de exabytes served dat zijn soms nog alpha 21264's geklokt op 1 Ghz en met 1 core dus :)

Meerdere cores gebruiken doet geen enkel CAD product aan zo vermoed ik :)
Allemaal single core applicaties naar ik vrees :)

Als hij maar niet crasht die 0.19 met assembly4 ben ik al heul tevreden :)
Gebruikersavatar
Rocnc
Berichten: 312
Lid geworden op: 02 dec 2008 20:39

Re: FreeCad leren

Bericht door Rocnc »

@Dabit, hier schakelt mijn nieuwsgierigheid in:
Assembly4 werkt met referentieobjecten. En dan is het niet veel meer dan 'maak locaal coordinaatsysteem 'hart_as' gelijk aan locaal coordinaatsysteem 'hart_tandwiel', wat een paar simpele matrixberekeningen zijn.
Ik heb een tijd zitten stoeien met die locale coordinaatsystemen. Het is me een beetje gelukt, maar niet helemaal. Het probleem waar ik tegenaan liep was dat zo'n locaal coordinaatsysteem soms langs een zijn assen verdraaid werd ten opzichte van het globale coordinaatsysteem. Ik heb de indruk dat dat gebeurde bij niet-cirkelsymmetrische objecten. In mijn geval lukte het me niet om een motorsteuntje in de juiste stand aan een motortje te koppelen. En ik kon niet ontdekken hoe ik zo'n locaal coordinaatsysteem rond een van zijn assen kan roteren. En al helemaal niet zo precies dat alle assen (locaal en globaal) met elkaar overeenkomen. Heb jij tips?
Progress isn't made by early risers. It's made by lazy men trying to find easier ways to do something. - Robert Heinlein
diepchess
Berichten: 1430
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: FreeCad leren

Bericht door diepchess »

Rocnc schreef: 07 apr 2021 19:12 @Dabit, hier schakelt mijn nieuwsgierigheid in:
Assembly4 werkt met referentieobjecten. En dan is het niet veel meer dan 'maak locaal coordinaatsysteem 'hart_as' gelijk aan locaal coordinaatsysteem 'hart_tandwiel', wat een paar simpele matrixberekeningen zijn.
Ik heb een tijd zitten stoeien met die locale coordinaatsystemen. Het is me een beetje gelukt, maar niet helemaal. Het probleem waar ik tegenaan liep was dat zo'n locaal coordinaatsysteem soms langs een zijn assen verdraaid werd ten opzichte van het globale coordinaatsysteem. Ik heb de indruk dat dat gebeurde bij niet-cirkelsymmetrische objecten. In mijn geval lukte het me niet om een motorsteuntje in de juiste stand aan een motortje te koppelen. En ik kon niet ontdekken hoe ik zo'n locaal coordinaatsysteem rond een van zijn assen kan roteren. En al helemaal niet zo precies dat alle assen (locaal en globaal) met elkaar overeenkomen. Heb jij tips?
Dat is inderdaad iets wat je in 2 stappen simpel kunt oplossen in FreeCAD (in theorie is er wel een vector dusdanig te vinden dat hij je object draait zoals je wilt - maar die vector is niet triviaal te vinden).

Dus eerst roteer je het object over as A. Dan voeg je een ander object toe met een union - desnoods een piepklein blokje wat overlapt met je huidige object. Dan roteer je het nieuwe object over de andere as B.
Plaats reactie