Przejdź do głównej treści

Tworzenie brył

ZWCAD 2012+ umożliwia tworzenie brył przez operacje na modelu obiektowym. W poprzednich wersjach tworzenie brył było dostępne jedynie przez używanie funkcji command, w poniższym przykładzie utworzymy bryłę ze wskazanego obiektu.

 

Tworzenie brył

 

Polecenie do uruchomienia skryptu LISP: Bryla

 

Kod źródłowy z opisem

 

;;; Tworzenie brył
;;; zwcad.pl
;;; Polecenie do uruchomienia skryptu LISP: Bryla
;;; Opis: https://www.zwcad.pl/materialy-edukacyjne/kurs-lisp/przyklady-lisp/215-tworzenie-bryl.html
(setq *ZWCAD* (vlax-get-acad-object))
(setq *Rysunek* (vla-get-activedocument *ZWCAD* ))
(setq *Model* (vla-get-Modelspace *Rysunek* ))
(defun v2l (var)(vlax-safearray->list(vlax-variant-value var)))
(defun c:Bryla ( / pl sa va rg rgobj solid h)
(if (setq pl (entsel "\nWskaż obiekt do wyciągnięcia: ")) ; proszę wskazać obiekt 2d, polilinię, okrąg
(progn
(setq h (getdist "podaj wysokość wyciągnięcia:"))
(setq pl (vlax-ename->vla-object (car pl))) ; entsel zwraca obiekt typu entity, zmieniamy na vla-objekt
; Utworzyć bryłę możemy jedynie przez wyciągnięcie regionu, musimy więc wskazaną polilinię zamienić na region
; Aby utworzyć region, musimy użyć variantu, w nim umieścimy wybrany obiekt 2D
(setq sa (vlax-make-safearray vlax-vbObject '(0 . 0))) ; tworzymy safearray (konieczne do utworzenia variantu)
(setq va (vlax-make-variant (vlax-safearray-fill sa (list pl)))) ; wypełnienie safearray i zamiana na vairant
(setq rg (vla-addregion *Model* va ) ) ; utowrzenie regionu, wynikiem działania funkcji jest również variant
(setq rgobj (car(v2l rg ))) ; pobranie pierwszego obiektu z wynikowego variantu
(setq solid(vla-addExtrudedSolid *Model* rgobj h 0.0)) ; i w końcu samo utworzenie bryły.
)
)
(princ)
)

 

Wykonanie w ZWCAD 2023

tworzenie bryly

 

Wykonanie w ZWCAD 2015

LISP Bryla 2015

 

Wykonanie w ZWCAD Classic

LISP Bryla Classic

Lista tagów: LISP Przykłady LISP

// ZWCAD: dymki słownika – szerokość 500 px i przeliczenie rozmiaru po wczytaniu obrazka (bez paska przewijania) jQuery(function ($) { if (!$.tooltipster) return; // obrazek w dymku wczytuje się po otwarciu – wtedy dymek trzeba zmierzyć jeszcze raz $.tooltipster.on('ready', function (e) { var instance = e.instance; $(e.tooltip).find('img').each(function () { if (!this.complete) { $(this).one('load', function () { instance.reposition(); }); } }); }); // SEO Glossary ustawia maxWidth: 400 – zmieniamy na 500 po jego inicjalizacji setTimeout(function () { $('.tooltipstered').each(function () { try { $(this).tooltipster('option', 'maxWidth', 500); } catch (err) {} }); }, 0); });