Previous Next Play Pause
1 2 3 4

Aktualności, wydarzenia, nowości, promocje

Promocje

18 kwiecień 2024

ZWCAD MFG 2025 ukaże się już w czerwcu – jeszcze przed premiera czekają na Ciebie podwójne korzyści! Wraz z premierą wersji ZWCAD 2025 spodziewamy się wydania wersji branżowej ZWCAD MFG, w której...

Promocje

16 kwiecień 2024

ZW3D 2025 już niebawem - skorzystaj z promocji przedpremierowej już dziś! Już 4 czerwca odbędzie się oficjalna premiera ZW3D 2025, zawierająca szereg nowych funkcji i ulepszeń. Zapoznaj się z...

ZWCAD - lista zmian i nowości

27 marzec 2024

Premiera najnowszej wersji programu ZWCAD powoli się zbliża, zachęcamy do zapoznania się z opisem nowości W ZWCAD 2025 znacząco ulepszyliśmy obsługę plików PDF oraz drukowania dużych rysunków. Do...

Promocje

20 marzec 2024

Zbliża się premiera ZWCAD 2025 - najnowszej wersji programu do projektowania CAD Z tej okazji przygotowaliśmy szczególne promocje aby każdy mógł się cieszyć z z nowej wersji...

zapytanie ofertowe cadZapytanie ofertowe

Otrzymaj ofertę dopasowaną do swoich potrzeb. Chętnie doradzimy w wyborze oprogramowania i rozwiejemy wątpliwości. 

Prosimy o pozostawienie danych kontaktowych a nasi eksperci postarają się spełnić Państwa oczekiwania.

Referencje zwcadWybrane referencje

ZWCAD w firmie, która produkuje szkło dla budownictwa - Q4GLASS, ZWCAD i ZWTraffic przy projektach oraganizacji ruchu drogowego, ZWCAD wykorzystywany przy projektach sieci wodociągowych oraz przy konstrukcji hal przemysłowych, magazynowych i handlowych.

Programy CAD na YouTubeKanał YouTube

Zachęcamy do zapoznania się z zawartością naszego kanału na YouTube. Cyklicznie publikujemy filmy pokazujące funkcjonalność naszych programów CAD. Filmy poukładane są tematycznie, na przykład kurs ZWCAD 2024 - zobacz jak łatwo rozpocząć rysowanie.

Twórcom ZWCADa nie udało się dotychczas opracować środowiska programistycznego dla LISP. O ile jest mi wiadomo, prace takie trwają, niestety przewidywany czas realizacji nie jest mi znany, do czasu wydania takiego środowiska musimy więc radzić sobie ogólnie dostępnymi narzędziami. Dobra wiadomość jest taka, że wystarczy zwykły podstawowy edytor tekstu np. Notatnik. Ja używam programu Notepad++ (do pobrania poniżej) z kilku powodów:

  1. Kolorowanie składni. Dzięki temu łatwo jest czytać kod, wiemy co jest nazwą funkcji, a co jej parametrami. Można też w łatwy sposób sprawdzić które nawiasy są pozamykane (a to bardzo ważne a można się w tym pogubić, po kliknięciu nawiasu podświetla nam się odpowiadający mu nawias otwierający lub zamykający.
  2. Kolorowanie wystąpień wyrazów. Dzięki temu łatwiej jest odnaleźć te same funkcje, zmienne itp
  3. Autouzupełnianie. Domyślnie jest to wyłączone, ale można ustawić podpowiedzi czyli zaczynamy pisać np. nazwę funkcji, a program podpowiada resztę. Mała rzecz a cieszy, zwłaszcza, gdy trzeba napisać np. vlax-ename->vla-object.
  4. Makra. Istnieje możliwość nagrywania makr i przypisywania im skrótów klawiaturowych.
  5. Zwijanie wierszy. Przy większych plikach znalezienie np. określonej funkcji może być uciążliwe, dzięki tej opcji możemy zwinąć wiele wierszy i widoczna będzie tylko pierwsza linia.
  6. Program jest darmowy.

Debugowanie możemy wykonać jedynie w ZWCAD (do pobrania poniżej) przez wykonanie programu i sprawdzanie zachowania.

Okienka dialogowe

W programach, nawet najprostszych nakładkach potrzebne są okienka dialogowe. W LISP okienka dialogowe można tworzyć za pośrednictwem mechanizmów DCL. DCL pozwala na tworzenie jedynie bardzo prostych okienek. Możliwe jest użycie pól tekstowych, przycisków, list, opcji, suwaków i tekstów. Wszystkie są szczegółowo opisane w helpie, więc nie będę się tu skupiał nad dokładnym opisaniem każdego elementu okienka (czasem można się spotkać z określeniem, że są to "wycinki", ja może zostanę przy określeniu "elementy" albo "kontrolki"). Chciałbym opisać zasadę działania okienek, jak zacząć pracę z nimi, kilka interesujących możliwości, które nie są oczywiste przy pierwszym spotkaniu z DCL. W poszukiwaniu szczegółów zapraszam do lektury helpa lub dyskusji na forum.
Opinie na temat DCL są ogólnie podzielone. Wielu twórców nakładek ma złe zdanie na temat DCL, ja też się ku temu zdaniu przychylam. DCL ma wiele ograniczeń, które powodują, że jeśli mam do stworzenia nakładkę z okienkami, wybieram VBA.

Kilka właściwości, które powodują, że DCL nie jest zbyt poręczy w użyciu:

  • Trudności w ustawieniu kontrolek w okienku
  • Brak możliwości tworzenia okienek niemodalnych
  • Brak możliwości dodawania innych kontrolek
  • Brak obiektowości elementów
  • Brak możliwości zmian dynamicznych (w czasie działania programu])

Istnieją środowiska pozwalające na rozszerzenie możliwości DCL, jest to OpenDCL i ObjectDCL. Dają one o wiele większe możliwości, jak np.: Tworzenie okienek niemodalnych, Okienka podobne do okna właściwości, Dodatkowe konktolki jak np. zakładki, kalendarz, kontrolki obiektowe, podgląd bloków i inne. Ten kurs ma być jednak poświęcony podstawom LISP, a ja nie znam tych rozszerzeń na tyle, żeby móc doradzać którekolwiek z nich, więc nie będę się więcej wgłębiał w dodatkowe DCLe.

Wskaż punkt: getpoint, getcorner

(getpoint [Punkt] [Wiadomość])
(getcorner [Punkt] [Wiadomość])

Funkcja getpoint pozwala użytkownikowi na wskazanie punktu. Może on być podany klikając myszką w punkt, lub wpisując na klawiaturze współrzędne.
Istnieje też możliwość, że wyświetlona będzie dodatkowo pomocnicza linia łącząca inny punkt z aktualnym położeniem myszki.
Ostatni parametr to podpowiedź. Jest ona wyświetlana w linii poleceń i pod wskaźnikiem myszki jeśli włączona jest opcja [DYN]
Przykłady:

(setq P1 (getpoint "Wskaż punkt"))
(setq P2 (getpoint P1 "Wskaż drugi punkt"))

getcorner Jest to funkcja podobna do getpoint z tą różnicą, że jako linię pomocniczą nie rysuje linii od punktu początkowego do wskaźnika myszki, a prostokąt, gdzie punkty początkowy i wskaźnik myszki są narożnikami tymczasowego prostokąta.

(setq Pc (getcorner P1 "Wskaż narożnik"))

Podaj liczbę - getreal, getint, getdist

(getreal [Wiadomość])
(getint [Wiadomość])
(getdist [Wiadomość])

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:

Instrukcje warunkowe

if

If to podstawowa instrukcja warunkowa. Służy do podejmowania decyzji np. wykonywania kodu po zaistnieniu określonych warunków. Jej konstrukcja jest następująca

(if warunek
(polecenie1)
(polecenie2)
)

Jeśli warunek jest spełniony wykonywane jest polecenie1. Jeśli natomiast warunek nie jest spełniony, wykonywane jest polecenie2 Więcej o samych warunkach na końcu tej części

(setq SelDist (getdist))
(if (> SelDist 10)
(progn
(print "Wartość jest większa niż progowa")
(setq OutVal SelDist )
)
(progn
(print "Wskazałeś wartość mniejszą nież progowa")
(setq OutVal 0)
)
)
(print OutVal)
 

Podkategorie