alternatywa dla autocad
Previous Next Play Pause
1 2 3

Przykład 1

Koniec tego teoretyzowania :-). W tej "lekcji" zrobimy coś praktycznego. Przykład, którym się posłużę, będzie prosił użytkownika o wskazanie punktu, a następnie w miejscu wskazanym wstawiony zostanie krzyżyk opisujący współrzędne, X i Y.

p1_cel

Kod rysujący taki znaczek wyglądałby następująco:

  1. (vl-load-com)
  2. (setq *ZCApp* (vlax-get-zwcad-object))
  3. (setq *ActiveDocument* (vla-get-activedocument *ZCApp*))
  4. (setq *MSpace* (vla-get-modelspace *ActiveDocument*))
  5. (defun FullGetpoint (startPoint promp DefVal / ans outVal )
  6. (if startPoint
  7. (setq ans(vl-catch-all-apply 'getpoint (list startPoint promp ))) ; Wskaż punkt, z uwzględnieniem punku początkowego
  8. (setq ans(vl-catch-all-apply 'getpoint (list promp ))) ; Wskaż punkt
  9. )
  10. (if (not(vl-catch-all-error-p ans)) ;warunek sprawdzający czy nie wystąpił błąd we wskazywaniu punku
  11. (progn
  12. (if ans ;Warunek sprawdzający czy został wskazany prawidłowy punkt
  13. (setq outVal ans) ; Zwrócona zostanie lista współrzędnych wskazanego punktu
  14. (setq outVal DefVal) ; Zwrócona zostanie wartość domyślna
  15. )
  16. )
  17. (setq outVal nil) ; zwrócona zostanie pusta wartość
  18. )
  19. outVal
  20. )
  21. (defun C:Krzyz ( / P0 P0v Wysokosc TextX TextXEnt TextY TextYEnt TextBBox textwidth)
  22. (setq P0 (FullGetpoint nil "Wskaż punkt" nil))
  23. (setq P0v (vlax-3d-point P0))
  24. (setq Wysokosc 5)
  25. (if P0
  26. (progn
  27. (setq TextX (vla-addtext *MSpace* (rtos (car P0) 2 2) P0v Wysokosc)) ;dodaje tekst
  28. (setq TextXEnt(entget(vlax-vla-object->ename TextX)))
  29. (setq TextBBox (textbox TextXEnt))
  30. (setq textwidth (caar(cdr TextBBox ))) ;Oblicza szerokość tekstu
  31. (vlax-invoke-method TextX 'Move P0v (vlax-3d-point(list (+ (car P0) (* 0.2 Wysokosc )) (+ (cadr P0) (* 0.2 Wysokosc )) (+ (caddr P0) (* 0.1 Wysokosc ))))) ; Przesuwa punkt
  32. (vla-addline *MSpace* (vlax-3d-point (list (- (car P0) (+ textwidth (* 0.2 Wysokosc ))) (cadr P0) (caddr P0))) ;Tworzy linię
    (vlax-3d-point (list (+ (car P0) (+ textwidth (* 0.2 Wysokosc ))) (cadr P0) (caddr P0))))
  33. (vla-addline *MSpace* (vlax-3d-point (list (car P0) (+ (cadr P0) (+ textwidth (* 0.2 Wysokosc ))) (caddr P0)))
    (vlax-3d-point (list (car P0) (- (cadr P0) (+ textwidth (* 0.2 Wysokosc ))) (caddr P0))))
  34. (setq TextY (vla-addtext *MSpace* (rtos (cadr P0) 2 2) P0v Wysokosc))
  35. (vlax-invoke-method TextY 'Move P0v (vlax-3d-point(list (+ (car P0) (* 0.2 Wysokosc )) (+ (cadr P0) (* 0.2 Wysokosc )) (+ (caddr P0) (* 0.1 Wysokosc )))))
  36. (vlax-invoke-method TextY 'Rotate P0v (/ pi -2.0))
  37. )
  38. )
  39. (command "regen")
  40. (print )
  41. )

  • Linie 1-4 są podstawą, najlepiej zapisać sobie to w szablonie i każdy tworzony plik lispa zaczynać od tych linii.
  • Linie 5-20 to funkcja prosząca użytkownika o wskazanie punktu. Zawiera obsługę sytuacji wyjątkowych jak wciśnięcie klawisza [ESC]. Jeśli użytkownik wciśnie [ENTER] zostanie zwrócona domyślna wartość (trzeci parametr wywołania funkcji).
  • Linie 21 - 41 Główna funkcja rysująca znacznik
  • Linia 27 Tworzony jest nowy obiekt - tekst jednowierszowy.
    (rtos (car P0) 2 2) pobiera współrzędną X wskazanego punktu. Jest to liczba. Natomiast do tworzenia tekstu potrzebna jest nam zmienna typu tekst. Konwersji liczby rzeczywistej na tekst można dokonać funkcją rtos. Jej parametrami wywołania są trzy liczby: Pierwsza to wartość jaką chcemy zamienić. Druga to system w którym chcemy wyświetlić, gdzie 2 oznacza system dziesiętny. Trzecia to ilość miejsc po przecinku, do których chcemy zaokrąglić. Po takiej zamianie mamy wartość, która będzie wyświetlana, kolejne parametry to współrzędne punktu wstawienia takiego tekstu oraz wysokość tekstu.
  • Wielkość znaku krzyża, czyli długości linii tworzących znak możemy ustawić na stałe. Na potrzeby tego przykładu postanowiłem że długość tych linii zależna będzie od szerokości tekstu, czyli pokreślony zostanie cały napis, niezależnie od tego, ile znaków będzie miał tekst. Szerokość tekstu możemy poznać na dwa sposoby. Pierwszy sposób dotyczy jedynie tekstów jednowierszowych i jest to funkcje textbox. Inny to GetBoundingBox, ale o niej porozmawiamy innym razem
  • Linia 29 "mierzy" szerokość tekstu jednowierszowego. Jej parametrem jest nazwa obiektu (zwracana przez entget). Funkcja zwraca dwuelementową listę, na podstawie której, możliwe jest określenie wysokości i szerokości tekstu.
  • Linia 28 Zmienia teksty typu obiekt na nazwę obiektu, która jest potrzebna do funkcji textbox
  • Linia 31 Gdyby tekst leżał dokładnie na linii czyli we współrzędnych wskazanych przez użytkownika byłoby to mało czytelne, dlatego podniesiemy nasz napis odrobinę, a dokładnie to o 1/5 wysokości napisu i przesuniemy go w prawo.
  • Linia 32, 33 Tworzą linie, których współrzędne początku i końca są odsunięte w poszczególnych kierunkach o szerokość tekstu.
  • Linie 34-41 Dodają ostatni tekst, określający współrzędną y. Tekst ten również jest przesuwany, żeby nie pokrywać się z linią a następnie obracany jest o 90 stopni, aby unaocznić że dotyczy to współrzędnej y.

Ostatnie filmy na naszym kanale YouTube

Parametryczność w ZWCAD 2026 - ćwiczenie nr 1

28.04.2025
Film prezentuje działanie funkcji parametryczności w ZWCAD 2026, umożliwiających powiązanie geometrii rysunku z parametrami i więzami. Pokazano, jak za pomocą więzów geometrycznych (ograniczeń) oraz wymiarów parametrycznych kontrolować kształt i wymiary obiektów. Całość demonstruje techniczne zastosowanie tych narzędzi – od tworzenia relacji geometrycznych po edycję wartości, które automatycznie modyfikują geometrię.Więcej o ZWCAD 2026 https://www.zwcad.pl/programy-cad/z...Plik dwg do ćwiczenia https://cdn.zwcad.pl/zwcad/pliki-do...#ZWCAD #Parametryczność #CAD2D #WięzyGeometryczne #OgraniczeniaParametryczne #WymiaryParametryczne #InteligentneWiązanie #KonwersjaWymiarów #EdycjaParametrów #ProjektowanieTechniczne #AutomatycznePowiązania #RelacjeGeometryczne #ZWCAD2026 #TutorialCAD #EfektywnaEdycjaRysunku #cad

ZWCAD 2026 – Wiązania geometryczne i wymiarowe (Nowe funkcje!)

24.04.2025
Film przedstawia interfejs i możliwości programu ZWCAD 2026, skupiając się na nowej funkcji związanej z obsługą i edycją wiązań geometrycznych i wymiarowych w rysunkach technicznych CAD.W tym filmie poznasz nowe, zaawansowane możliwości zarządzania wiązaniami geometrycznymi i wymiarowymi w najnowszej wersji programu ZWCAD 2026. Dzięki prezentowanym funkcjom, praca z projektami technicznymi stanie się jeszcze bardziej intuicyjna i efektywna.Dowiesz się między innymi: - jak szybko nakładać i edytować wiązania geometryczne, - jak zarządzać automatycznymi i ręcznymi wiązaniami wymiarowymi, - jak skutecznie kontrolować precyzję i stabilność geometrii w rysunku CAD.Film skierowany jest zarówno do początkujących, jak i zaawansowanych użytkowników ZWCAD, którzy chcą zwiększyć wydajność swojej pracy z dokumentacją techniczną.Więcej informacji oraz wersję próbną programu znajdziesz na naszej stronie: https://www.zwcad.pl/programy-cad/z...Zapraszamy do oglądania i subskrybowania naszego kanału!Spis rozdziałów:0:00 – Wprowadzenie 0:15 – Omówienie nowości w ZWCAD 2026 0:35 – Co to są wiązania geometryczne i wymiarowe? 1:05 – Tworzenie i edycja wiązań geometrycznych 2:30 – Automatyczne nakładanie wiązań wymiarowych 3:50 – Ręczna edycja i zarządzanie więzami wymiarowymi 5:20 – Wskazówki dotyczące precyzyjnej kontroli geometrii 6:15 – Przykłady praktyczne wykorzystania nowych funkcji 7:30 – Podsumowanie i zalety nowego systemu wiązań 7:55 – Zakończenie#ZWCAD #zwcad2026 #CAD #projektowanie CAD #oprogramowanie CAD

Poznaj funkcję „Wybierz według” w ZWCAD 2026!

16.04.2025
W ZWCAD 2026 dodaliśmy nowy pasek o nazwie Toolbox. Pasek zawiera pogrupowane tematycznie narzędzia np. do warstw, bloków, wymiarów, porównywanie plików czy zaznaczenia. W tym filmie opowiemy o nowych narzędziach do zaznaczania w pasku Toolbox: zaznaczanie według skali linii, rodzaju obiektu, warstwy.Odkryj, jak „Wybierz według” może zmienić Twój sposób pracy w ZWCAD 2026 już teraz!Sprawdź nasz program CAD w pracy - pobierz wersję na 60 dni: https://www.zwcad.pl/programy-cad/z...#ZWCAD #ZWCAD2026 #CAD #poradnik #projektowanie #nowości
Wczytaj więcej...