Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Projekt inżynierski typowego osiedla mieszkaniowego obejmuje pracę z kilkoma instalacjami podziemnymi, takimi jak kanalizacja sanitarna, kanalizacja burzowa, doprowadzenie wody pitnej itp. W tym przykładzie pokazano, jak za pomocą dodatku Dynamo można narysować doprowadzenia usług komunalnych z systemu dystrybucji do danej działki. Zwykle każda działka wymaga połączenia z usługami komunalnymi, co powoduje, że opracowanie wszystkich doprowadzeń usług jest żmudnym procesem. Dodatek Dynamo może przyspieszyć ten proces dzięki automatycznemu rysowaniu niezbędnej geometrii z wysoką dokładnością, jak również udostępnianiu elastycznych danych wejściowych, które można dostosować do standardów agencji lokalnej.
Zastosowanie węzła Select Object na potrzeby wprowadzania danych przez użytkownika
Praca z układami współrzędnych
Używanie operacji geometrycznych, takich jak Geometry.DistanceTo i Geometry.ClosestPointTo
Tworzenie odniesień do bloków
Sterowanie ustawieniami wiązań obiektów
Ten wykres będzie działać w programie Civil 3D 2020 i w nowszych wersjach.
Najpierw pobierz pliki przykładów poniżej, a następnie otwórz plik DWG i wykres dodatku Dynamo.
Poniżej przedstawiono przegląd logiki na tym wykresie.
Pobieranie geometrii krzywej dla systemu dystrybucji
Pobieranie geometrii krzywej dla linii działki wybranej przez użytkownika z odwróceniem w razie potrzeby
Generowanie punktów wstawiania dla mierników
Pobieranie najbliższych położeniom mierników punktów na systemie dystrybucji
Tworzenie odniesień do bloków i linii w obszarze modelu
Zacznijmy!
Pierwszym krokiem jest pobranie do dodatku Dynamo geometrii systemu dystrybucji. Zamiast wybierać pojedyncze linie lub polilinie, pobierzemy wszystkie obiekty na określonej warstwie i połączymy je w krzywą PolyCurve dodatku Dynamo.
Jeśli pierwszy raz masz do czynienia z geometrią krzywej dodatku Dynamo, skorzystaj z sekcji Krzywe.
Następnie musimy pobrać do dodatku Dynamo geometrię wybranej linii działki, aby można było z nią pracować. Właściwym narzędziem do tego zadania jest węzeł Select Object, który umożliwia użytkownikowi wykresu wybranie określonego obiektu w programie Civil 3D.
Musimy również dodać obsługę potencjalnego problemu. Linia działki ma punkt początkowy i punkt końcowy, co oznacza, że ma kierunek. Aby wykres mógł dawać spójne wyniki, wszystkie linie działki muszą mieć spójny kierunek. Warunek ten można uwzględnić bezpośrednio w logice wykresu, co zwiększy niezawodność wykresu.
Pobierz punkt początkowy i punkt końcowy linii działki.
Zmierz odległość od każdego punktu do systemu dystrybucji, a następnie określ, która odległość jest większa.
Żądanym wynikiem jest sytuacja, w której to punkt początkowy linii znajduje się najbliżej systemu dystrybucji. Jeśli tak nie jest, kierunek linii działki zostanie odwrócony. W przeciwnym razie po prostu zwracamy oryginalną linię działki.
Nadszedł czas, aby dowiedzieć się, gdzie zostaną umieszczone liczniki. Zazwyczaj położenie jest określane przez wymagania agencji lokalnej, dlatego wprowadzimy tylko wartości wejściowe, które można zmienić, aby odpowiadały różnym warunkom. Użyjemy układu współrzędnych wzdłuż linii działki jako odniesienia przy tworzeniu punktów. Ułatwi to zdefiniowanie odsunięć względem linii działki, bez względu na jej orientację.
Jeśli pierwszy raz masz do czynienia z układami współrzędnych, skorzystaj z sekcji Wektor, płaszczyzna i układ współrzędnych.
Teraz musimy pobrać najbliższe położeniom mierników punkty na systemie dystrybucji. Pozwoli to narysować połączenia usług w obszarze modelu, tak aby były zawsze prostopadłe do systemu dystrybucji. Idealnym rozwiązaniem jest węzeł Geometry.ClosestPointTo.
To krzywa PolyCurve systemu dystrybucji
To punkty wstawiania mierników
Ostatnią czynnością jest utworzenie obiektów w obszarze modelu. Użyjemy wygenerowanych wcześniej punktów wstawiania, aby utworzyć odniesienia do bloków, a następnie użyjemy punktów na systemie dystrybucji, aby narysować linie do połączeń usług.
Po uruchomieniu wykresu powinny być widoczne nowe odniesienia do bloków i linie połączeń usług w obszarze modelu. Zmień niektóre dane wejściowe i obserwuj, jak wszystko jest aktualizowane automatycznie.
Można zauważyć, że po umieszczeniu obiektów dla jednej linii działki wybranie innej linii działki powoduje „przesunięcie” obiektów.
Jest to domyślne zachowanie dodatku Dynamo, które jest bardzo przydatne w wielu przypadkach. Jednak może okazać się konieczne sekwencyjne umieszczenie kilku połączeń usług i wymuszenie, aby dodatek Dynamo utworzył nowe obiekty za każdym uruchomieniem, zamiast modyfikować oryginalne. Można sterować tym zachowaniem, zmieniając ustawienia wiązania obiektów.
Aby uzyskać więcej informacji, skorzystaj z sekcji Wiązanie obiektów.
Zmiana tego ustawienia spowoduje, że dodatek Dynamo będzie „zapominać” obiekty tworzone w poszczególnych uruchomieniach. Oto przykład uruchomienia wykresu z wyłączonym wiązaniem obiektów za pomocą Odtwarzacza Dynamo.
Jeśli nie znasz jeszcze Odtwarzacza Dynamo Player, skorzystaj z sekcji Odtwarzacz Dynamo (Dynamo Player).
Oto kilka pomysłów na rozszerzenie możliwości tego wykresu.
Umieść wiele połączeń usług jednocześnie, zamiast zaznaczać każdą linię działki.
Dopasuj dane wejściowe, aby zamiast mierników wody umieszczać odejścia czyszczące.
Dodaj przełącznik, aby umożliwić umieszczenie pojedynczego połączenia usług po określonej stronie linii działki zamiast po obu stronach.
Umieszczenie odniesień do bloków wodomierzy w określonych odsunięciach od linii działki i narysowanie linii dla każdego połączenia usług prostopadłego do głównego systemu dystrybucji.
Misja wykonana!
Drogi, tory kolejowe, teren, usługi komunalne, pomiary, GIS...
Infrastruktura lądowa to wszystkie te elementy i wiele innych! W tej sekcji zawarto kilka praktycznych i istotnych przykładowych wykresów, które pomogą Ci rozwinąć umiejętności związane z dodatkiem Dynamo i uwolnić potencjał dodatku Dynamo for Civil 3D. Każdy wykres jest uzupełniony o szczegółowe opisy logiki, której użyto do jego utworzenia, dzięki czemu można go nie tylko używać, ale też analizować.
Ponadto przykłady te zawierają sprawdzone najlepsze praktyki dotyczące tworzenia niezawodnych wykresów. Podczas pracy z tymi przykładami zachęcamy do zapoznania się z sekcją Wzorce postępowania, w której znajdziesz więcej pomysłów na tworzenie zaawansowanych, elastycznych i łatwych w konserwacji wykresów.
Podczas dodawania rur i konstrukcji do sieci rurociągów program Civil 3D używa szablonu do automatycznego przypisywania nazw. Jest to zwykle wystarczające podczas wstępnego umieszczania. Jednak w miarę rozwoju projektu nazwy będą musiały ulec zmianie. Ponadto może być wymaganych wiele różnych wzorów nazewnictwa, na przykład nadawanie konstrukcjom w rurociągu nazw sekwencyjnych od konstrukcji najdalszej w kolejności lub stosowanie wzoru nazewnictwa zgodnego ze schematem danych agencji lokalnej. W tym przykładzie pokazano, jak za pomocą dodatku Dynamo można definiować dowolnego typu strategię nazewnictwa, która ma być stosowana spójnie.
Praca z ramkami ograniczającymi
Filtrowanie danych za pomocą węzła List.FilterByBoolMask
Sortowanie danych za pomocą węzła List.SortByKey
Generowanie i modyfikowanie ciągów tekstowych
Ten wykres będzie działać w programie Civil 3D 2020 i w nowszych wersjach.
Najpierw pobierz pliki przykładów poniżej, a następnie otwórz plik DWG i wykres dodatku Dynamo.
Poniżej przedstawiono przegląd logiki na tym wykresie.
Wybieranie konstrukcji na podstawie warstwy
Pobieranie lokalizacji konstrukcji
Filtrowanie konstrukcji na podstawie odsunięć, a następnie sortowanie ich na podstawie pikiet
Generowanie nowych nazw
Zmienianie nazw konstrukcji
Zacznijmy!
Najpierw musimy wybrać wszystkie konstrukcje, z którymi będziemy pracować. W tym celu wystarczy wybrać wszystkie obiekty na określonej warstwie, co oznacza, że można wybrać konstrukcje z różnych sieci rurociągów (przy założeniu, że mają one tę samą warstwę).
Ten węzeł gwarantuje, że nie zostaną przypadkowo pobrane żadne niepożądane typy obiektów, które mogą mieć tę samą warstwę co konstrukcje.
Mamy już konstrukcje. Teraz musimy ustalić ich położenia w przestrzeni, tak aby można było je sortować według lokalizacji. W tym celu skorzystamy z ramek ograniczających poszczególnych obiektów. Ramka ograniczająca obiektu to ramka o minimalnym rozmiarze, która w pełni zawiera geometryczne zakresy obiektu. Obliczając środek ramki ograniczającej, otrzymujemy całkiem dobre przybliżenie punktu wstawiania konstrukcji.
Za pomocą tych punktów ustalimy pikiety i odsunięcia konstrukcji względem wybranej linii trasowania.
Tutaj zaczyna się robić trochę trudniej. Na tym etapie mamy dużą listę wszystkich konstrukcji na określonej warstwie i wybraliśmy linię trasowania, wzdłuż której mają być sortowane. Problem w tym, że na liście mogą znajdować się konstrukcje, których nazw nie chcemy zmieniać. Mogą one na przykład nie być częścią interesującego nas segmentu.
Wybrana linia trasowania
Konstrukcje, których nazwy chcemy zmienić
Konstrukcje, które powinny zostać pominięte
Dlatego musimy przefiltrować listę konstrukcji, aby nie uwzględniać tych, które mają odsunięcie od linii trasowania większe niż określone. Najlepiej zrobić to za pomocą węzła List.FilterByBoolMask. Po przefiltrowaniu listy konstrukcji użyjemy węzła List.SortByKey, aby posortować je według wartości pikiet.
Jeśli nie zdarzyło Ci się jeszcze pracować z listami, skorzystaj z sekcji Praca z listami.
Sprawdzanie, czy odsunięcie konstrukcji jest mniejsze niż wartość progowa
Zastąpienie wszelkich wartości null wartością false
Filtrowanie listy konstrukcji i pikiet
Sortowanie konstrukcji według pikiet
Ostatnią czynnością, którą musimy wykonać, jest utworzenie nowych nazw konstrukcji. Użyjemy formatu <alignment name>-STRC-<number>
. Dodano tu jeszcze kilka węzłów, aby w razie potrzeby uzupełnić liczby o dodatkowe zera (np. „01” zamiast „1”).
Wreszcie przechodzimy do zmieniania nazw konstrukcji.
Oto przykład uruchomienia wykresu za pomocą Odtwarzacza Dynamo.
Jeśli nie znasz jeszcze Odtwarzacza Dynamo Player, skorzystaj z sekcji Odtwarzacz Dynamo (Dynamo Player).
Przydatne może być wykorzystanie podglądu tła 3D dodatku Dynamo do wizualizacji pośrednich danych wyjściowych wykresu zamiast tylko wyniku końcowego. Jednym z prostych rozwiązań jest wyświetlenie ramek ograniczających dla konstrukcji. Ponadto ten konkretny zestaw danych zawiera korytarz w dokumencie, dlatego można przenieść geometrię linii charakterystycznych korytarza do dodatku Dynamo, aby zapewnić kontekst dla lokalizacji konstrukcji w przestrzeni. Jeśli wykres zostanie użyty z zestawem danych bez żadnych korytarzy, węzły te po prostu nie wykonają żadnych działań.
Teraz możemy lepiej zrozumieć, jak działa proces filtrowania konstrukcji na podstawie odsunięć.
Oto kilka pomysłów na rozszerzenie możliwości tego wykresu.
Zmień nazwy konstrukcji na podstawie ich najbliższych linii trasowania, zamiast wybierać określoną linię trasowania.
Zmień nazwy rur, a nie tylko konstrukcji.
Ustaw warstwy konstrukcji na podstawie ich segmentów.
Jednym z wielu doskonałych przykładów zastosowań dodatku Dynamo jest dynamiczne umieszczanie odrębnych obiektów wzdłuż modelu korytarza. Często obiekty muszą być umieszczane w miejscach niezależnych od wstawionych zespołów wzdłuż korytarza, co jest bardzo żmudnym zadaniem w przypadku wykonywania ręcznego. Gdy zmienia się geometria pozioma lub pionowa korytarza, wprowadzana jest znaczna ilość poprawek.
Odczytywanie danych z pliku zewnętrznego (w tym przypadku programu Excel)
Organizowanie danych w słownikach
Sterowanie położeniem/skalą/obrotem za pomocą układów współrzędnych
Umieszczanie odniesień do bloków
Wizualizowanie geometrii w dodatku Dynamo
Ten wykres będzie działać w programie Civil 3D 2020 i w nowszych wersjach.
Najpierw pobierz pliki przykładów poniżej, a następnie otwórz plik DWG i wykres dodatku Dynamo.
Najlepiej jest, jeśli plik programu Excel jest zapisany w tym samym katalogu co wykres dodatku Dynamo.
Poniżej przedstawiono przegląd logiki na tym wykresie.
Odczytywanie pliku programu Excel i importowanie danych do dodatku Dynamo
Pobieranie linii charakterystycznych z określonej linii bazowej korytarza
Generowanie układów współrzędnych wzdłuż linii charakterystycznej korytarza w żądanych pikietach
Umieszczanie odniesień do bloków w obszarze modelu za pomocą układów współrzędnych
Zacznijmy!
W tym przykładowym wykresie użyjemy pliku programu Excel do przechowywania danych, za pomocą których dodatek Dynamo umieści odniesienia do bloków słupów oświetleniowych. Tabela wygląda tak.
Odczytanie danych z pliku zewnętrznego (np. pliku programu Excel) za pomocą dodatku Dynamo jest doskonałą strategią, zwłaszcza gdy dane muszą być współdzielone z innymi członkami zespołu.
Dane programu Excel są importowane do dodatku Dynamo w ten sposób.
Mamy już dane. Teraz musimy je podzielić według kolumn (Corridor, Baseline, PointCode itp.), aby móc wykorzystać je w pozostałej części wykresu. Typowym sposobem wykonania tej operacji jest użycie węzła List.GetItemAtIndex i określenie numeru indeksu każdej odpowiedniej kolumny. Na przykład kolumna Corridor ma indeks 0, kolumna Baseline ma indeks 1 itd.
Wygląda to dobrze, prawda? Jednak z tym podejściem wiąże się potencjalny problem. Co jeśli w przyszłości kolejność kolumn w pliku Excel ulegnie zmianie? Lub jeśli między dwiema kolumnami zostanie dodana nowa kolumna? Wykres nie będzie wtedy działał poprawnie i będzie wymagał aktualizacji. Wykres można zabezpieczyć przed przyszłymi zmianami, umieszczając dane w słowniku, Dictionary, z nagłówkami kolumn programu Excel jako kluczami, keys, i pozostałymi danymi jako wartościami, values.
Dzięki temu wykres jest bardziej niezawodny, ponieważ umożliwia elastyczne zmienianie kolejności kolumn w programie Excel. Dopóki nagłówki kolumn pozostają takie same, dane można po prostu pobrać ze słownika za pomocą jego klucza, key, czyli nagłówka kolumny, co jest naszym kolejnym krokiem.
Dane programu Excel są już zaimportowane i gotowe do użycia. Zacznijmy używać ich do pobierania informacji z programu Civil 3D na temat modeli korytarzy.
Wybierz model korytarza na podstawie jego nazwy.
Pobierz określoną linię bazową (Baseline) w korytarzu.
Pobierz linię charakterystyczną w linii bazowej na podstawie jej kodu punktu.
Teraz wygenerujemy układy współrzędnych wzdłuż linii charakterystycznych korytarza przy wartościach pikiet określonych w pliku programu Excel. Te układy współrzędnych posłużą do zdefiniowania położenia, obrotu i skali odniesień do bloków słupów oświetleniowych.
Zwróć uwagę, że zastosowano tu węzeł Code Block do obracania układów współrzędnych w zależności od tego, po której stronie linii bazowej się one znajdują. Można to też zrealizować za pomocą sekwencji kilku węzłów, ale jest to dobry przykład sytuacji, w której łatwiej jest po prostu napisać kod.
Już prawie gotowe! Mamy wszystkie informacje, których potrzebujemy, aby móc umieścić odniesienia do bloków. Pierwszą czynnością jest pobranie definicji bloków, których użyjemy, za pomocą kolumny BlockName w pliku programu Excel.
Na tym etapie ostatnim krokiem jest utworzenie odniesień do bloków.
Po uruchomieniu wykresu powinny być widoczne nowe odniesienia do bloków w obszarze modelu wzdłuż korytarza. Oto najlepsza część — jeśli ustawiono automatyczny tryb wykonywania wykresu, to po edytowaniu pliku programu Excel odniesienia do bloków zostaną zaktualizowane automatycznie.
Oto przykład uruchomienia wykresu za pomocą Odtwarzacza Dynamo.
Pomocne może być zwizualizowanie geometrii korytarza w dodatku Dynamo w celu zapewnienia kontekstu. Ten konkretny model zawiera już wyodrębnione bryły korytarza w obszarze modelu, więc przenieśmy je do dodatku Dynamo.
Jest jednak coś jeszcze, co musimy rozważyć. Bryły są stosunkowo „ciężkimi” typami geometrii, co oznacza, że ta operacja spowolni działanie wykresu. Przydałby się prosty sposób wyboru, czy chcemy wyświetlać bryły, czy nie. Oczywistym rozwiązaniem jest odłączenie węzła Corridor.GetSolids, ale spowoduje to wyświetlenie ostrzeżeń dla wszystkich węzłów znajdujących się za nim, co nie jest eleganckie. Jest to sytuacja, w której naprawdę przydaje się węzeł ScopeIf.
Zwróć uwagę, że węzeł Object.Geometry ma szary pasek na dole. Oznacza to, że podgląd węzła jest wyłączony (dostępny po kliknięciu węzła prawym przyciskiem myszy), co pozwala na uniknięcie „konkurowania” z inną geometrią o priorytet wyświetlania w podglądzie tła w węźle GeometryColor.ByGeometryColor.
Węzeł ScopeIf zasadniczo umożliwia selektywne uruchamianie całej gałęzi węzłów. Jeśli wartość wejściowa test ma wartość fałsz (false), nie zostanie uruchomiony żaden węzeł połączony z węzłem ScopeIf.
Oto wynik w podglądzie tła dodatku Dynamo.
Oto kilka pomysłów na rozszerzenie możliwości tego wykresu.
Dodaj do pliku programu Excel kolumnę obrotu, rotation, i za jej pomocą steruj obrotem układów współrzędnych.
Dodaj do pliku programu Excel odsunięcia poziome lub pionowe, tak aby słupy oświetleniowe mogły w razie potrzeby odbiegać od linii charakterystycznej korytarza.
Zamiast używać pliku programu Excel z wartościami pikiet, wygeneruj wartości pikiet bezpośrednio w dodatku Dynamo, używając pikiety początkowej i typowego odstępu.
Zmiana nazw konstrukcji sieci rurociągów w kolejności opartej na pikietażu linii trasowania.
Misja wykonana!
Umieszczenie odniesień do bloków słupów oświetleniowych wzdłuż korytarza w wartościach pikiet określonych w pliku programu Excel.
Jeśli pierwszy raz masz do czynienia ze słownikami, skorzystaj z sekcji .
Jeśli pierwszy raz masz do czynienia z układami współrzędnych, skorzystaj z sekcji .
Jeśli pierwszy raz masz do czynienia z węzłami Code Block, skorzystaj z sekcji .
Więcej informacji na temat trybów wykonywania wykresów można znaleźć w sekcji .
Jeśli nie znasz jeszcze Odtwarzacza Dynamo Player, skorzystaj z sekcji .
Misja wykonana!
Praca z punktami COGO i grupami punktów w programie Civil 3D jest podstawowym elementem wielu procesów realizowanych od pola do zakończenia. Dodatek Dynamo naprawdę sprawdza się w przypadku konieczności zarządzania danymi. W tym przykładzie zademonstrujemy jeden potencjalny przypadek zastosowania.
Praca z listami
Grupowanie podobnych obiektów za pomocą węzła List.GroupByKey
Wyświetlanie niestandardowych danych wyjściowych w Odtwarzaczu Dynamo
Ten wykres będzie działać w programie Civil 3D 2020 i w nowszych wersjach.
Najpierw pobierz pliki przykładów poniżej, a następnie otwórz plik DWG i wykres dodatku Dynamo.
Poniżej przedstawiono przegląd logiki na tym wykresie.
Pobieranie wszystkich punktów COGO w dokumencie
Grupowanie punktów COGO na podstawie opisu
Tworzenie grup punktów
Wyprowadzanie danych z podsumowaniem do Odtwarzacza Dynamo
Zacznijmy!
Pierwszym krokiem jest pobranie wszystkich grup punktów w dokumencie, a następnie pobranie wszystkich punktów COGO w każdej grupie. Dzięki temu otrzymamy listę zagnieżdżoną lub „listę list”, z którą łatwiej będzie pracować później, jeśli spłaszczymy wszystko do pojedynczej listy za pomocą węzła List.Flatten.
Jeśli nie zdarzyło Ci się jeszcze pracować z listami, skorzystaj z sekcji Praca z listami.
Mamy już wszystkie punkty COGO. Teraz musimy rozdzielić je na grupy na podstawie ich opisów. Właśnie do tego służy węzeł List.GroupByKey. Zasadniczo grupuje on wszystkie elementy o tym samym kluczu.
Najcięższą pracę mamy już za sobą. Ostatnią czynnością jest utworzenie nowych grup punktów programu Civil 3D na podstawie zgrupowanych punktów COGO.
Po uruchomieniu wykresu w podglądzie tła dodatku Dynamo niczego nie ma, ponieważ nie pracujemy z żadną geometrią. Dlatego jedynym sposobem sprawdzenia, czy wykres jest wykonywany poprawnie, jest sprawdzenie obszaru narzędzi lub podglądów danych wyjściowych węzłów. Jeśli jednak wykres zostanie uruchomiony za pomocą Odtwarzacza Dynamo, można przekazać więcej informacji na temat wyników wykresu, drukując podsumowanie utworzonych grup punktów. Wystarczy kliknąć prawym przyciskiem myszy węzeł i skonfigurować dla niego ustawienie Is Output (Dane wyjściowe). W tym przypadku użyjemy węzła Watch o zmienionej nazwie, aby wyświetlić wyniki.
Oto przykład uruchomienia wykresu za pomocą Odtwarzacza Dynamo.
Jeśli nie znasz jeszcze Odtwarzacza Dynamo Player, skorzystaj z sekcji Odtwarzacz Dynamo (Dynamo Player).
Oto kilka pomysłów na rozszerzenie możliwości tego wykresu.
Zmodyfikuj grupowanie punktów tak, aby było oparte na pełnym opisie, a nie na opisie nieprzetworzonym.
Grupuj punkty na podstawie innych wybranych wstępnie zdefiniowanych kategorii (na przykład „Ground shots”, „Monuments” itp.)
Automatycznie twórz powierzchnie TIN dla punktów w niektórych grupach.
Opracowywanie obwiedni kinematycznych do weryfikacji prześwitu jest ważną częścią projektów kolejowych. Za pomocą dodatku Dynamo można generować bryły dla obwiedni, zamiast tworzyć złożone podzespoły korytarzy i zarządzać nimi w celu wykonania tego zadania.
Praca z liniami charakterystycznymi korytarza
Przekształcanie geometrii między układami współrzędnych
Tworzenie brył przez wyciągnięcie
Kontrolowanie zachowania węzłów za pomocą ustawień skratowania
Ten wykres będzie działać w programie Civil 3D 2020 i w nowszych wersjach.
Najpierw pobierz pliki przykładów poniżej, a następnie otwórz plik DWG i wykres dodatku Dynamo.
Poniżej przedstawiono przegląd logiki na tym wykresie.
Pobieranie linii charakterystycznych z określonej linii bazowej korytarza
Generowanie układów współrzędnych wzdłuż linii charakterystycznej korytarza w żądanych odstępach
Przekształcanie geometrii bloku profilu do układów współrzędnych
Wyciąganie bryły między profilami
Tworzenie brył w programie Civil 3D
Zacznijmy!
Pierwszym krokiem jest pobranie danych korytarza. Wybierzemy model korytarza na podstawie jego nazwy, pobierzemy określoną linię bazową w korytarzu, a następnie pobierzemy linię charakterystyczną w linii bazowej na podstawie kodu punktu.
Teraz wygenerujemy układy współrzędnych wzdłuż linii charakterystycznych korytarza między daną pikietą początkową a końcową. Te układy współrzędnych zostaną użyte do wyrównania geometrii bloku profilu pojazdu względem korytarza.
Jeśli pierwszy raz masz do czynienia z układami współrzędnych, skorzystaj z sekcji Wektor, płaszczyzna i układ współrzędnych.
Zwróć uwagę na małą pozycję XXX w prawym dolnym rogu węzła. Oznacza to, że ustawienia skratowania węzła skonfigurowano jako Iloczyn wektorowy, co jest niezbędne do generowania układów współrzędnych przy tych samych wartościach pikiet dla obu linii charakterystycznych.
Jeśli pierwszy raz masz do czynienia ze skratowaniem węzłów, skorzystaj z sekcji Co to jest lista.
Teraz musimy w jakiś sposób utworzyć szyk profili pojazdów wzdłuż linii charakterystycznych. Przekształcimy geometrię z definicji bloku profilu pojazdu za pomocą węzła Geometry.Transform. Zwizualizowanie tej koncepcji jest trudne, więc zanim przyjrzymy się węzłom, przeanalizujmy grafikę pokazującą, co się stanie.
Zasadniczo pobieramy geometrię dodatku Dynamo z pojedynczej definicji bloku i przesuwamy/obracamy ją podczas tworzenia szyku wzdłuż linii charakterystycznej. Świetnie! Oto jak wygląda sekwencja węzłów.
Tutaj następuje pobranie definicji bloku z dokumentu.
Te węzły pobierają geometrię dodatku Dynamo obiektów w bloku.
Te węzły zasadniczo definiują układ współrzędnych, z którego przekształcana jest geometria.
Ten węzeł wykonuje rzeczywistą pracę nad przekształceniem geometrii.
Zwróć uwagę na najdłuższe skratowanie w tym węźle.
Oto co uzyskamy w dodatku Dynamo.
Dobra wiadomość! Najcięższą pracę mamy już za sobą. Teraz wystarczy wygenerować bryły między profilami. Można to łatwo zrobić za pomocą węzła Solid.ByLoft.
Oto wynik. Pamiętaj, że są to bryły dodatku Dynamo — nadal trzeba je utworzyć w programie Civil 3D.
Ostatnią czynnością jest wyprowadzenie wygenerowanych brył do obszaru modelu. Nadamy im również kolor, który ułatwi ich oglądanie.
Oto przykład uruchomienia wykresu za pomocą Odtwarzacza Dynamo.
Jeśli nie znasz jeszcze Odtwarzacza Dynamo Player, skorzystaj z sekcji Odtwarzacz Dynamo (Dynamo Player).
Oto kilka pomysłów na rozszerzenie możliwości tego wykresu.
Dodaj możliwość używania różnych zakresów pikiet oddzielnie dla poszczególnych torów.
Podziel bryły na mniejsze segmenty, które można analizować indywidualnie pod kątem kolizji.
Sprawdź, czy bryły obwiedni przecinają się z obiektami i pokoloruj te, w przypadku których występują kolizje.
Utworzenie grupy punktów dla każdego niepowtarzalnego opisu punktu COGO.
Misja wykonana!
Wygenerowanie za pomocą bloku profilu pojazdu brył 3D obwiedni prześwitu wzdłuż korytarza.
Misja wykonana!