
Lispowa choinka przykładem użycia generatora liczb losowych w programie CAD.
Dziś w przypływie entuzjazmu przedświątecznej atmosfery chciałbym przedstawić funkcję rysującą choinkę. Sama choinka nie jest oczywiście celem, ale na jej przykładzie można pokazać np losowanie liczb, tworzenie bloków, tworzenie polilinii, kreskowania i innych obiektów, manipulację właściwościami obiektów, zbliżanie i oddalanie widoku.

W ZWCAD w wersjach wcześniejszych niż ZWCAD+ 2014 funkcja pedit pozwalała na wskazanie okręgu i zamieniała go automatycznie na polilinię. W wersji 2014 programu CAD zaznaczenie okręgu nie jest możliwe, ograniczenie to zostało wprowadzone dla uzyskania zgodności z AutoCADem, gdzie w obecnej wersji działa to właśnie w ten sposób.
Jeśli potrzebowalibyśmy jednak fukcji działającej analogicznie, czyli zamieniającej okrąg na polilinię, można to zrobić przy użyciu następującej procedury:

Otrzymaliśmy zapytanie od klienta o możliwość wykonania skryptu, który rozbije projekt na wiele plików DXF, gdzie w każdym z nich będzie tylko jeden element z pliku źródłowego. Skrypt taki może być użyty np. do generowania ścieżek dla maszyn numerycznych. Skrypt może być interesującym przykładem wykorzystania funkcji WBlock. Ważne jest by po użyciu skrytptu wybrać plik, na podstawie którego zostaną stworzone nowe pliki.

Użytkownik ZWCADa zasugerował nam, że przydatnym narzędziem w ZWCAD mogłaby być funkcja, która po zaznaczeniu elementów w rysunku, utworzy polilinię - prostokąt, obejmujący wszystkie te elementy.
ZWCAD posiada LISPową funkcję, która pozwala na odczytanie wierzchołków przekątnej takiego prostokąta dla każdego elementu.
Po użyciu tej funkcji na każdym zaznaczonym elemencie pozostaje nam je połączyć.
Cała procedura - skrypt LISP - jest następujący:
- Szczegóły
- Kategoria: Przykłady LISP

Na naszym forum CAD pojawiło się zapytanie o funkcję opisującą współrzędną wskazanego punktu.
Opracowałem taką funkcję i chciałbym się nią podzielić: