Body atraktorů jsou skvělé pro experimentování s geometrickými vzory. Lze je použít k postupným změnám objektů na základě jejich vzdálenosti.
Tento pracovní postup vás naučí, jak:
Vytvářet, spravovat a upravovat seznamy.
Přesouvat body v 3D náhledu pomocí přímé manipulace.
Změnit režim spuštění.
V tomto cvičení vytvoříte kružnici (Cíl), kde je vstup poloměru definován vzdáleností k blízkému bodu (Vztah).
Bod, který definuje vztah podle vzdálenosti, se obvykle označuje jako „Atraktor“. Zde bude vzdálenost k našemu bodu atraktoru použita k určení, jak velký by měl být náš kruh.
Kliknutím na odkaz níže si stáhněte vzorový soubor.
Úplný seznam vzorových souborů najdete v dodatku.
Když máme nyní načrtnuté cíle a vztahy, můžeme začít vytvářet náš graf. Potřebujeme uzly, které představují posloupnost akcí, které budou aplikací Dynamo provedeny. Začneme přidáním následujících uzlů: Number, Number Slider, Point.ByCoordinates, Geometry.DistanceTo, Circle.ByCenterPointRadius.
Input > Basic > Number
Input > Basic > Number Slider
Geometry > Points > Point > By Coordinates(x,y,z)
Geometry > Modifiers > Geometry > DistanceTo
Geometry > Curves > Circle > ByCenterPointRadius
Nyní, když máme několik uzlů, je nutné propojit porty uzlů pomocí drátů. Tato připojení budou definovat tok dat.
Number k Point.ByCoordinates
Number Sliders k Point.ByCoordinates
Point.ByCoordinates (2) k DistanceTo
Point.ByCoordinates a DistanceTo k Circle.ByCenterPointRadius
Když je definován náš tok programu, stačí říct aplikaci Dynamo, aby jej provedla. Po spuštění programu (buď automaticky, nebo po kliknutí na tlačítko Spustit v ručním režimu) budou data procházet přes dráty a výsledky by měly být zobrazeny v 3D náhledu.
(Klikněte na tlačítko Spustit) – pokud je panel spuštění v ručním režimu, je nutné graf spustit kliknutím na tlačítko Spustit.
Náhled uzlu – pozastavením ukazatele myši nad polem v pravém dolním rohu uzlu zobrazíte místní nabídku výsledků.
3D náhled – pokud některý z našich uzlů vytvoří geometrii, uvidíte ji v 3D náhledu.
Výstupní geometrie při vytvoření uzlu.
Pokud náš program funguje, měli bychom vidět kružnici v 3D náhledu, která prochází naším bodem atraktoru. To je skvělé, ale možná budeme chtít přidat více detailů nebo ovládacích prvků. Upravíme vstup na uzel kružnice, abychom mohli kalibrovat vliv na poloměr. Přidejte do pracovního prostoru další položku Number Slider a poté dvojitým kliknutím na prázdnou oblast pracovního prostoru přidejte uzel Code Block. Upravte pole v bloku kódu zadáním X/Y
.
Code Block
DistanceTo a Number Slider k Code Block
Code Block k Circle.ByCenterPointRadius
Začít jednoduše a přidávat složitost je efektivní způsob, jak průběžně vytvářet náš program. Jakmile bude fungovat pro jeden kruh, použijeme sílu programu na více než jeden kruh. Pokud místo jednoho středového bodu použijeme rastr bodů a přizpůsobíme změnu ve výsledné datové struktuře, náš program nyní vytvoří mnoho kružnic – každou s jedinečnou hodnotou poloměru definovanou kalibrovanou vzdáleností k bodu atraktoru.
Přidejte uzel Number Sequence a nahraďte vstupy uzlu Point.ByCoordinates – klikněte pravým tlačítkem myši na uzel Point.ByCoordinates a vyberte možnost Vázání > Kartézský součin.
Přidejte uzel Flatten za položku Point.ByCoordinates. Chcete-li seznam zcela rozvinout, ponechte pro vstup
amt
výchozí hodnotu-1
.3D náhled se aktualizuje s rastrem kružnic.
Někdy číselná manipulace není správný přístup. Nyní můžete ručně tlačit a táhnout bodovou geometrii při procházení 3D náhledu v pozadí. Také můžeme ovládat další geometrii, která byla vytvořena pomocí bodu. Například uzel Sphere.ByCenterPointRadius je také schopen přímé manipulace. Umístění bodu lze řídit z posloupností hodnot X, Y a Z pomocí Point.ByCoordinates. Při použití přímé manipulace však můžete hodnoty posuvníků aktualizovat ručním přesunutím bodu v režimu Navigace 3D náhledu. To nabízí intuitivnější přístup k ovládání sady diskrétních hodnot, které určují umístění bodu.
Chcete-li použít možnost Přímá manipulace, vyberte panel bodu, který chcete přesunout – nad vybraným bodem se zobrazí šipky.
Přepněte do režimu Navigace 3D náhledu.
Přesuňte kurzor nad bod a zobrazí se osy X, Y a Z.
Kliknutím a přetažením barevné šipky přemístíte odpovídající osu, přičemž hodnoty uzlu Number Slider se aktualizují na místo s ručně přesunutým bodem.
Všimněte si, že před přímou manipulací byl do komponenty Point.ByCoordinates připojen pouze jeden posuvník. Když bod ve směru X ručně přesuneme, aplikace Dynamo automaticky vygeneruje pro vstup X nový uzel Number Slider.