Ranking
Popularna zawartość
Zawartość, która uzyskała najwyższe oceny od 10/01/12 uwzględniając wszystkie działy
-
Automatyczny podział rysunku wykonanego w modelu na arkusze
przemkrzem i 7 innych przyznał(a) reputację kruszynski za temat
8 punktów -
Dziesięć lat z ZWCAD ;) albo Dekada z ZWCAD7 punktów
-
Sizedrive - dopasowanie geometrii do wymiaru
kruszynski i 5 innych przyznał(a) reputację dmatusz3 za temat
W ZWCAD 2025 zostało dodane nowe polecenie sizedrive Pozwala ona na dopasowanie geometrii do wymiaru. Działa w 3 krokach: Wskazujemy wymiar, który chcemy zmienić. Wpisujemy nową wartość wymiaru. Zaznaczamy oknem, które elementy mają być przesunięte lub rozciągnięte. Działanie pokazaliśmy na filmie poniżej.6 punktów -
Pracujemy obecnie nad dodaniem do naszych nakładek (np. ZWGeo, ZWTraffic) możliwości wstawiania map z zasobów z portali gov.pl. Funkcjonalność jest w bardzo początkowej fazie, ale postanowiliśmy ją udostępnić. Możemy wybrać różne serwery z danymi i sprawdzić jakie udostępnia dane (warstwy). Następnie definiujemy obszar w który ma być wstawiona mapa. Wygląda to tak jak na animacji poniżej. Biblioteki do pobrania ZWMS.zip Pobrany plik zip należy rozpakować do katalogu i poleceniem netload (tylko wersja ZWCAD Pro) wczytać plik ZWMS.dll Wtedy pojawi się dodatkowy panel. W pliku zip znajduje się również plik Plik_testowy.dwg, który został użyty podczas kręcenia filmu.6 punktów
-
Hej, Przygotowałem skrypt NumerujArkusze, robi to czego potrzebujesz Zacznij od wgrania pliku Lisp poleceniem AP. Na arkuszach wstaw blok Numer Arkusza który znajduje się w dołączonym rysunku. Numerowanie strony wykonaj wywołując skrypt poleceniem NumerujArkusze. Blok może mieć inna formę, możesz go edytować. Ważne żeby nazywał się "Numer Arkusza" i posiadał atrybuty AktualnyArkusz oraz WszystkieArkusze w których będzie się wyświetlała numeracja. NumerujArkusze.lsp Blok Numer Arkusza.dwg5 punktów
-
Widziałem , gdzieś na forum pytanie czy da się wstawić tabele z Excela do SMatha. Bezpośrednio przez schowek się nie da :( Jednak jakiś czas temu znalazłem na to sposób. Trzeba zainstalować dwie wtyczki Jedna do tworzenia tabeli druga do importu danych z Excela Następnie tworzymy zmienną ala Macierz funkcją importData.XLSX(4) np. DANE:=importData.XLSX ("ścieżka do pliku.xlsx"; "nazwa arkusza / zakładki w pliku" ; "D5"; "F16") "D5" - początek zakresu F16 - koniec zakresu pobieranych danych - jest kilka importów ja stosuję (4). Już mamy dostęp do danych zmiennej aby odczytać dane robimy tak RzG:= DANE[7;2= ! nie zamykamy nawiasu ] to dopiero pierwszy etap czyli pobranie danych - niestety trzeba pilnować ścieżki musi być pełna parametry wpisujemy w " " Wstawiamy tabelę i mamy tabele odznaczamy wyświetl ... - aby nie było widać opisu pod tabelą aby usunąć Table 4 - klikamy (dwuklik) lewym na tabeli i pojawi się okno odznaczamy show caption i gotowe aby dodać np. kolumnę z tytułami wierszy, trzeba stworzyć nowy zbiór danych pobieranych z excela np. Lewa określając zakres w jednej kolumnie np. ;"DANE" ; "C5" ; C16" lub macierz bezpośrednio w SMatch i przypisać tzn. wybieramy miejsce gdzie będą wyświetlane dane dla lewej kolumny w kolejnej zakładce możemy formatować wygląd Body to zakres tabeli za danymi, a Left stub to nasza kolumna z opisami Uff i to było na tyle - dane z Excela w tabeli w SMath - zabawy trochę jest, ale się da SMath to naprawdę fajne narzędzie - z mojego doświadczenia jak trzeba przenieść obliczenia do edytora to lepiej skorzystać z OpenOffice . Dane z Calc też można pobrać funkcja importData przyjemnej zabawy5 punktów
-
Czy jest jakaś funkcja lub lisp który pozwoli zestawić listę layoutów?
pawmal i 3 innych przyznał(a) reputację ktomaszewski za temat
4 punkty -
Hej, Napisałem skrypt PunktyNaKoncach.lsp według pomysłu @dmatusz3 Plik należy wczytać poleceniem AP. Instrukcja użycia wyświetla się w pasku poleceń. Wystarczy tylko wpisać polecenie PunktyNaKoncach, zaznaczyć obiekty i kliknąć Enter. Pomarańczowe punkty zostaną wstawione na warstwie Punkty na końcach, jeśli takiej warstwy nie ma to skrypt automatycznie ją utworzy. Wszystko działa jak na nagraniu 😏4 punkty
-
4 punkty
-
Przeniesienie do punktu X, Y [Rozwiązany]
Stefan Wiatr i 3 innych przyznał(a) reputację dmatusz3 za temat
4 punkty -
Kolega @kojacek mnie zainspirował i mam 5 kliknięć bez pisania niczego na klawiaturze :4 punkty
-
ZWCAD 2022 - Blok z atrybutem dostosowującym pozycję podczas obrotu
s1016 i 3 innych przyznał(a) reputację Adam Klaczek za temat
4 punkty -
Rzutnia w rzutni
s1016 i 3 innych przyznał(a) reputację Adam Klaczek za temat
4 punkty -
ZWCAD 2021 - scalanie warstw
alf i 3 innych przyznał(a) reputację Adam Klaczek za temat
4 punkty -
ZWCAD 2021 - LAYEROVERRIDEHIGHLIGHT
s1016 i 3 innych przyznał(a) reputację Adam Klaczek za temat
4 punkty -
A co mi tam. Napisałem rybę. Mi się też przyda (defun c:ww1 ( / ent) (while (= nil ent) (progn (prompt "\nWskaz wymiar do zmiany: ") (setq ent (car (entsel))) ) ) (if (= (cdr (assoc 0 (entget ent))) "DIMENSION") (multipledimsection (entget ent)) ) ) (defun c:ww2 ( / ) (command "_dimlinear" pause pause pause) (multipledimsection (entget (entlast))) ) (defun multipledimsection ( entlist / n section newtext) (setq n (getint "\nPodaj liczbe odcinkow: ") section (/ (cdr (assoc 42 entlist)) n) newtext (strcat "<>\\X(" (itoa n) "x" (rtos section 2 2) ")") entlist (subst (cons 1 newtext) (assoc 42 entlist) entlist) ) (entmod entlist) (princ) ) (princ)4 punkty
-
Można nieco przyspieszyć pracę z kodem i umożliwić debugowanie kodu. Szczegóły na filmiku. Z góry przepraszam za słaby warsztat w nagrywaniu bo to mój pierwszy raz 😉4 punkty
-
Chciałbym podzielić się swoim pierwszym programikiem w c#. Jestem drogowcem, przy projektowaniu np parkingu bardzo dużo czasu traciłem na przeliczanie rzędnych i spadków. Napisałem (oczywiście z pomocą wujka google) prosty programik, bardzo mi pomaga, jeśli ktoś chętny, chętnie się podzielę Rzędne na projekcie opisuję blokami "kota2" z atrybutem. pierwsze polecenie "kkk" wstawia kotę pomiędzy dwie wskazane drugie polecenie "ksk" po wskazaniu pierwszej koty wstawia drugą wyliczoną na podstawie podanego spadku trzecie polecenie kks wstawia blok ze strzałką i opisem pomiędzy dwoma kotami. Oczywiście jak widać na filmiku pewne niedokładności wynikają z zaokrągleń do 2 miejsc po przecinku. kota 2018-11-12 21-43-25-444.mp44 punkty
-
Witam Potrzeba wpisać _units, nacisnąć lewy ALT+SPACJA, następnie ENTER, kliknąć klawisz strzałki kursora na klawiaturze np. -> "w prawo" i poruszać myszą, aby sprowadzić okno na monitor widoczny ;) Pozdrawiam4 punkty
-
Szeroka rozpiętość tematyczna nakładek. Gwoli ścisłości dodam, że pewne pozycje z tej listy nie są nakładkami na ZWCAD. Natomiast te, które są nakładkami działają praktycznie w każdej wersji ZWCAD, zaczynając od najstarszej 2012, poprzez wersję+, aż do Classica. Doceniam Twoją rzekomą troskę o przyszłość ZWCAD, ale z tego co piszesz wynika bardziej, że Twoim zmartwieniem jest obecny tutaj brak zmartwień. Powtarzasz chórem z innymi nowymi użytkownikami, że ZWSOFT ukradł kod źródłowy. Proponuję się nieco zastanowić. W jaki sposób ZWSOFT mógł wejść w posiadanie kodu źródłowego? Przecież to są najpilniej strzeżone tajemnice. ZWSOFT wygrał proces sądowy. Gdyby ZWCAD był oparty na kodzie z AC, to ciężko mi uwierzyć, że sprawa zakończona zostałaby przez ugodę. Po ZWSOFT nie byłoby już śladu. W oficjalnej informacji o zawartej ugodzie upublicznionej przez obie firmy, nie ma żadnej wzmianki o kradzieży lub skopiowaniu kodu. Temat tego wątku brzmi: Czy to prawda, że jest proces przeciwko ZWSOFT (ZWCAD)? Odpowiedź: Nieprawda. Wobec powyższego wątek zamykam. Gdyby ktoś miał zastrzeżenia, proszę o wiadomość poprzez forum. Wątek przenoszę także do innego działu, ponieważ cała sprawa Classica to chyba już najmniej dotyczy. Pozdrawiam4 punkty
-
Praktyczne wykorzystanie ZWCAD ARCHITECTURE + ARTISAN, i realna realizacja budynku w Lubinie, dzielnica MAŁOMICE (51.4114993N 16.2226385E) maj 2014 kwiecień 2015 p.s. Budowa jeszcze trwa :D a poczatki były takie koncepcja ze Sketchupa przeniesienie rozwiązania do ZWCAD ARCHITECTURE (listopad 2013r.)4 punkty
-
4 punkty
-
Witam W ZW3D elementy AcDbSubDMesh są przedstawione w formie prętowej, ale nie nadają się do wizualizacji. W ZW3D stosuje się przede wszystkim powierzchnie i bryły. Elementy AcDbSubDMesh można stosować do jakiś powierzchni mocno zmiennych, może roślin, drzew, ludzi, terenu..., ale w mechanice czy motoryzacji takie elementy nie mają racji bytu, dlatego, że nie są ze sobą połączone stycznie. Zresztą, proszę zwrócić uwagę jak wygląda koło w tym Audi Q7- jest po prostu kwadratowe. Nie spotkałem się jeszcze, aby jakiś projektant dostarczał geometrię w postaci siatki. Przede wszystkim geometria jest oparta na powierzchniach i bryłach (solidach). Pozdrawiam4 punkty
-
Autocad 2020 - nie mogę przenieś warstwy do filtru grupy
dmatusz3 i 2 innych przyznał(a) reputację tomasztalik za temat
Projektowanie elementów tłoczonych i wtryskiwanych, elektrody, dostępne są w wersji ZW3D Professional. Symulacja ruchu i wykrywanie kolizji dostępne są w wersji ZW3D Advanced. W ZW3D natywnie można tworzyć dokumentację techniczną bazując na wykonanych w 3D częściach i złożeniach. Inżynieria odwrotna dostępna jest w obydwu wersjach a także w podstawowej wersji ZW3D Standard. poniżej film z tworzenia części + dokumentacja techniczna: Modelowanie 3D od postaw https://vimeo.com/11218175873 punkty -
Seminarium branżowe online ZWCAD + ZWGeo I Serdecznie zapraszamy!
pklosowicz i 2 innych przyznał(a) reputację Mery za temat
🎯 Seminarium branżowe online ZWCAD + ZWGeo 📍 Platforma ZOOM 📅 30 października 2025 r. (czwartek) 🕘 Godz. 10:00–11:30 Wydarzenie będzie okazją do poznania najnowszej wersji programu ZWCAD 2026 i nakładki ZWGeo 2026 w praktyce oraz bezpośredniego spotkania z ekspertami – zarówno od strony technicznej, jak i handlowej. W programie: 10:00 – 10:05 Przywitanie Gości Rozpoczniemy warsztaty od powitania uczestników i krótkiego wprowadzenia do tematyki spotkania. 10:05 – 10:15 Wprowadzenie do ZWCAD i ZWGeo Omówimy podstawowe informacje i możliwości programu ZWCAD z nakładką ZWGeo, który stanowi wszechstronne narzędzie CAD, wykorzystywane w projektowaniu z różnych branż. 10:15 – 11:20 Praktyczne warsztaty z pracy na mapach Rozpoczniemy praktyczną część warsztatów, w której pokażemy, jak szybciej i sprawniej pracować na mapach z ZWCAD i ZWGeo: Tworzenie map zgodnie ze standardami tworzenia cyfrowych map topograficznych Profil terenu Praca z plikami w formacie SHP 11:20 – 11:30 Konsultacje i sesja pytań W tej części warsztatów przewidujemy czas na indywidualne konsultacje. Eksperci odpowiedzą na pytania oraz udzielą wskazówek dotyczących funkcji programów. 11:30 Zakończenie warsztatów Podsumujemy warsztaty, przedstawimy możliwości dalszych szkoleń z bardziej zaawansowanych funkcji ZWCAD i ZWGeo oraz omówimy ofertę specjalną dla uczestników! Serdecznie zapraszamy do aktywnego udziału – to doskonała okazja do zdobycia nowych umiejętności i wymiany wiedzy z innymi specjalistami w branży! To doskonała okazja, by nie tylko zapoznać się z nowościami, ale również zadać pytania i uzyskać konkretne wskazówki w kontekście Państwa pracy projektowej. Udział w wydarzeniu jest bezpłatny. Liczba miejsc ograniczona – obowiązuje rejestracja. 👉 [Kliknij tutaj, aby się zarejestrować] Do zobaczenia!3 punkty -
3 punkty
-
3 punkty
-
Zmieniłem nazwę skryptu na WyrówajBlokiDoPoli. Uważam, że to lepiej opisuje jego funkcjonalność. W poprawionej wersji bloki które wykraczają poza zakres polilinii są pomijane. Ponadto po wykonaniu polecenia w pasku poleceń wyświetla się krótkie podsumowanie ile bloków zostało wyrównanych i czy zostały pominięte. Co do punktu styku to bazuje na punkcie bazowym bloku i taka będzie natura jego wyrównania do polilinii. WyrownajBlokiDoPoli.lsp3 punkty
-
Potwierdzam, problem, który u mnie występował został rozwiązany, a przynajmniej u mnie już nie występuje. Obecnie korzystam z programu w wersji ZWCAD PRO 2024 ENG i nie mam żadnych problemów z powiększaniem okna na różnych monitorach (korzystam z dwóch monitorów: laptop i monitor zewnętrzny). @olgierd odnosi się Pan do zupełnie innego programu (GStar), na tym forum w większości poruszane są tematy dotyczące ZWCADa. Przesiadłem się na ZWCADA z AC koło 2012roku i początki były dość 'trudne' (jeśli tak to mogę ująć). Obecnie nie żałuję decyzji, program przez ostatnie lata mocno rozwinął się i nadal się rozwija. Obecny ZWCAD to już inny program CAD niż to co było 10-12 lat temu. Dodatkowo dużym plusem jest to forum oraz dział techniczny/pomoc techniczna ZWCADA na Polskę. Wiele problemów, które zostały zgłoszone zostało dość szybko rozwiązane.3 punkty
-
Być może przyczyną jest funkcja entmod. Wprawdzie może ona modyfikować obiekty niegraficzne (tutaj LAYER), ale gdzieś czytałem że są wyjątki dla kodu 70 - nie pamiętam jednak czego dotyczyły. W autocadowskich "antycznychch" czasach (przed ActiveX (czyli przed 1999 )), pewnie bym użył command zamiast entmod… ale pewnie dlatego że byłoby łatwiej. Na marginesie - Twoje warunkowanie kodu 70 jest błędne - działa tylko w wyjątkowych sytuacjach. Kod 70 jest wartością bitową, więc na przykład 1 jest prawdziwe nie tylko dla 1, ale też 3 (2+1)... 5 (4+1)... 7 (2+4+1)... 9... etc. Teraz przykład z użyciem ActiveX (i CADPack'a). Krótko (i co ważniejsze) działa: (defun C:ODMROZWAR () (vlax-for % (cd:ACX_Layers) (if (and (= :vlax-true (vla-get-freeze %)) (wcmatch (vla-get-name %) "LS*") ; <- moj testowy filtr ) (vla-put-freeze % :vlax-false) ) ) (vla-regen (cd:ACX_ADoc) 0) (princ) )3 punkty
-
Jak w ZWCAD dodać polecenie do paska narzędzi w interfejsie klasycznym?
Martin_S i 2 innych przyznał(a) reputację ktomaszewski za wpis na blogu
Obecnie ikonę do paska narzędzi można dodać za pomocą cui Robi się to tak: 1. Wpisać polecenie cui w pasek poleceń 2. W liście poleceń trzeba kliknąć prawym przyciskiem myszy i wybrać nowe polecenie 3. Otworzą się właściwości polecenia - tam można wybrać nazwę, opis i obrazek ale najważniejsze jest makro gdzie po ^C^C wklejamy komendę, która ma się wykonać po kliknięciu przycisku 4. Następnie nowo utworzone polecenie musimy "umieścić" na pasku narzędzi. W tym celu najwygodniej jest wyszukać sobie to polecenie po nazwie i przeciągnąć je w miejsce w które chcemy(na gifie umieściłem je na pierwszej pozycji w kategorii rysuj) 5. Po ustawieniu polecenia na odpowiednie miejsce ponownie klikamy zastosuj, ok i wszystko powinno być gotowe Załączam gifa jeśli ktoś chce zobaczyć jak się to robi3 punkty -
Dzisiaj prezentujemy pierwszy z filmów o tym jak narysować wieżę Eiffla w ZWCAD.3 punkty
-
Przeniesienie do punktu X, Y [Rozwiązany]
Stefan Wiatr i 2 innych przyznał(a) reputację pawmal za temat
3 punkty -
3 punkty
-
Edycja polilinii z CTRL
Martin_S i 2 innych przyznał(a) reputację Adam Klaczek za temat
3 punkty -
WItam. Niedawno zakupiłem najnowszą wersję ZwCada i udało mi się stworzyć dość fajny programik w C# do generowania ustrojów kratowych. Filmik z działania programu napisanego w C# poniżej. https://www.youtube.com/embed/8d7KAzrGsZI Generalnie dziwnie jest bo skrypt napisany w VBA o wiele szybciej mi działa aniżeli ten z C#. Ale tam nieco inne podejście do tematu zrobiłem bo jest możliwość dynamicznego modyfikowania utworzonego zespołu obiektów. Oznacza to, że jeżeli mam taki ustrój kratowy utworzony to program do czasu jego zamknięcia jest w stanie usuwać stary i generować nowy model po podaniu podstawowych danych. A to dopiero początek mojej zabawy.3 punkty
-
Agnieszka
Martin_S i 2 innych przyznał(a) reputację Adam Klaczek za temat
3 punkty -
Moje rozwiązanie jest zbudowane na potrzeby innych lispów, tak aby mogły się odwoływać do warstw poprzez zmienne. Konkretne nazwy są zapisane w zewnętrznym pliku *.ini. Zaznaczam że kody pochodzą sprzed kilku(nastu) lat i dzisiaj pewnie napisałbym to trochę inaczej, ale lepsze jest wrogiem dobrego ;-). (defun SetLayers (/ temp systemEnv oHandle xName eObject IniList IniFile) (setq systemEnv (cd:ENV_SaveEnvVariable)) (setvar "cmdecho" 0) (setvar "regenmode" 0) (setq *layerKontur* "kontur" *layerOsie* "osie" *layerUkryte* "ukryte" *layerOpisy* "opisy" *layerWymiary* "wymiary" *layerStolarka* "stolarka" *layerCienkie* "cienkie" *layerHatche* "hatche" *layerPrety* "prety" *layerObok* "obok" *layerRzutnie* "rzutnie" *layer3DModel* "3D_model" IniFile (findfile "dodatki.ini") ) (setq IniList (if (not IniFile) (list) (cd:INI_Read IniFile))) (or IniFile (setq IniFile (strcat *cd-ApplicationPath* "dodatki.ini"))) (setq IniList (add_gr_ini IniList "[Layers]")) (if (setq temp (get_ini IniList "[Layers]" "kontur")) (setq *layerKontur* temp) (setq IniList (set_ini IniList "[Layers]" "kontur" *layerKontur*)) ) (if (setq temp (get_ini IniList "[Layers]" "osie")) (setq *layerOsie* temp) (setq IniList (set_ini IniList "[Layers]" "osie" *layerOsie*)) ) (if (setq temp (get_ini IniList "[Layers]" "ukryte")) (setq *layerUkryte* temp) (setq IniList (set_ini IniList "[Layers]" "ukryte" *layerUkryte*)) ) (if (setq temp (get_ini IniList "[Layers]" "opisy")) (setq *layerOpisy* temp) (setq IniList (set_ini IniList "[Layers]" "opisy" *layerOpisy*)) ) (if (setq temp (get_ini IniList "[Layers]" "wymiary")) (setq *layerWymiary* temp) (setq IniList (set_ini IniList "[Layers]" "wymiary" *layerWymiary*)) ) (if (setq temp (get_ini IniList "[Layers]" "stolarka")) (setq *layerStolarka* temp) (setq IniList (set_ini IniList "[Layers]" "stolarka" *layerStolarka*)) ) (if (setq temp (get_ini IniList "[Layers]" "cienkie")) (setq *layerCienkie* temp) (setq IniList (set_ini IniList "[Layers]" "cienkie" *layerCienkie*)) ) (if (setq temp (get_ini IniList "[Layers]" "hatche")) (setq *layerHatche* temp) (setq IniList (set_ini IniList "[Layers]" "hatche" *layerHatche*)) ) (if (setq temp (get_ini IniList "[Layers]" "prety")) (setq *layerPrety* temp) (setq IniList (set_ini IniList "[Layers]" "prety" *layerPrety*)) ) (if (setq temp (get_ini IniList "[Layers]" "obok")) (setq *layerObok* temp) (setq IniList (set_ini IniList "[Layers]" "obok" *layerObok*)) ) (if (setq temp (get_ini IniList "[Layers]" "rzutnie")) (setq *layerRzutnie* temp) (setq IniList (set_ini IniList "[Layers]" "rzutnie" *layerRzutnie*)) ) (if (setq temp (get_ini IniList "[Layers]" "3D_model")) (setq *layer3DModel* temp) (setq IniList (set_ini IniList "[Layers]" "3D_model" *layer3DModel*)) ) (cd:INI_Write IniList IniFile) (setq xName (cond ((= *cd-AppType* "ZWCAD") "zwcad.lin") (t "acad.lin") ) ) (cd:ACX_LoadLineType "dashed" xName) (cd:ACX_LoadLineType "dashdot" xName) (cd:ACX_LoadLineType "hidden2" xName) (cd:ACX_LoadLineType "center2" xName) (foreach xName (list (list *layerKontur* "continuous" 2 T) (list *layerOsie* "center2" 1 T) (list *layerUkryte* "hidden2" 1 T) (list *layerOpisy* "continuous" 7 T) (list *layerWymiary* "continuous" 1 T) (list *layerStolarka* "continuous" 3 T) (list *layerCienkie* "continuous" 1 T) (list *layerHatche* "continuous" 254 T) (list *layerPrety* "continuous" 5 T) (list *layerObok* "continuous" 9 T) (list *layerRzutnie* "continuous" 60 T) (list *layer3DModel* "continuous" 94 T) ) (setq eObject (cd:ACX_AddLayer (nth 0 xName))) (vla-put-linetype eObject (nth 1 xName)) (vla-put-color eObject (nth 2 xName)) (vla-put-plottable eObject (nth 3 xName)) ) (cd:ENV_RestEnvVariable systemEnv) ) Jak widać ja wczytuję linie z zwcad.lin ale jest to identyczny plik jak zwcadiso.lin. Nie wiem po co są dublowane. Sam plik ini jest banalny ale wydaje się, że użycie takiego sposobu jest łatwiejsze do użycia dla koleżanek i kolegów w biurze, którzy do LISPA trochę z pazurami podchodzą. [Layers] kontur=kontur osie=osie ukryte=ukryte opisy=opisy wymiary=wymiary stolarka=stolarka cienkie=cienkie hatche=hatche prety=prety obok=obok rzutnie=rzutnie 3D_model=3D_model Dzięki dmatusz3 za swoje rozwiązanie, bo chyba tym wzorem dorzucę sobie do ini również ustawienie linetype, color etc. Przy okazji, jak widać używam CADPL-Pack-v1, którego gorąco polecam. Na koniec jeszcze pokażę reaktora na komendy co zwalnia mnie z pamiętania o zmianach warstw w trakcie rysowania. Jest to z małymi poprawkami do ZwCAD'a kod Andrzeja Gumuły na co jest odpowiedni (c) w kodzie. Zdaje się, że na forum było pokazywane inne rozwiązanie chyba nieco mniej rozwlekłe, ale to mi działa i na razie tego nie zmieniam. ;;;* Funkcje ustanawia reaktor do zmiany warstwy dla wyszczególnionych komend (defun SetLayInCom (layer commandslist) (if (= (getvar "PRODUCT") "ZWCAD") (progn (vlr-remove-all :VLR-Command-Reactor) (vlr-command-reactor nil '((:vlr-commandwillstart . bylayer) (:vlr-commandended . previous) (:vlr-commandcancelled . previous) (:vlr-commandfailed . previous) ) ) ) (progn (if (not globalcommandslist) ; zabezpiecza przed ponowną deklaracją reaktora (vlr-command-reactor ; przy ponownym wczytaniu lisp'a nil '((:vlr-commandwillstart . bylayer) (:vlr-commandended . previous) (:vlr-commandcancelled . previous) (:vlr-commandfailed . previous) ) ) ) ) ) (mapcar '(lambda (x) (set x nil)) '(reactorlayer reactorcolor reactorltype reactorlweight) ) (mapcar '(lambda (x y) (set x y)) '(globalcommandslist globallayer) (list commandslist layer) ) (foreach x layer (if (not (tblsearch "LAYER" x)) (entmake (list '(0 . "LAYER") '(100 . "AcDbSymbolTableRecord") '(100 . "AcDbLayerTableRecord") (cons 2 x) '(70 . 0) '(62 . 7) '(6 . "Continuous") '(370 . -3) ) ) ) ;end if ) ;end foreach (defun bylayer (idreactor namecommand / komendy licznik) (setq licznik 0) (foreach komendy globalcommandslist (if (member (strcase (car namecommand)) (mapcar 'strcase komendy) ) (progn (if (not (and reactorlayer reactorcolor reactorltype reactorlweight ) ) (mapcar '(lambda (x y) (set x (getvar y))) '(reactorlayer reactorcolor reactorltype reactorlweight) '("clayer" "cecolor" "celtype" "celweight") ) ) ; end if (mapcar '(lambda (x y) (setvar x y)) '("clayer" "cecolor" "celtype" "celweight") (list (nth licznik globallayer) "256" "Bylayer" -1) ) ) ) ;end If (setq licznik (1+ licznik)) ) ;end foreach ) ;end ByLayer (defun previous (idreactor namecommand / komendy licznik) (setq licznik 0) (foreach komendy globalcommandslist (if (member (strcase (car namecommand)) (mapcar 'strcase komendy ) ) (progn (if (and reactorlayer reactorcolor reactorltype reactorlweight) (mapcar '(lambda (x y) (setvar x y)) (list "clayer" "cecolor" "celtype" "celweight") (list reactorlayer reactorcolor reactorltype reactorlweight ) ) ) (mapcar '(lambda (x) (set x nil)) '(reactorlayer reactorcolor reactorltype reactorlweight) ) ) ) (setq licznik (1+ licznik)) ) ;end cond ) ;end Previous t (prompt "SetLayInCom (C)2003 Andrzej Gumuła.") (princ) ) ;end file Na koniec wywołanie w kodzie startowym i mamy piękny reaktor na dowolne komendy jakie sobie dopiszemy. (setlayincom (list *layerWymiary* *layerHatche* *layerOsie* *layerCienkie* *layerOpisy*) '( ("DIMLINEAR" "DIMALIGNED" "DIMRADIUS" "DIMDIAMETER" "DIMANGULAR" "DIMORDINATE" "DIMCONTINUE" "DIMBASELINE" "QDIM" "DIMJOGGED" "DIMARC") ("BHATCH") ("DIMCENTER") ("QLEADER") ("DTEXT" "TEXT") ) )3 punkty
-
Koniec sporu ZWSOFT - Autodesk
dmatusz3 i 2 innych przyznał(a) reputację dmatusz3 za wpis na blogu
Witam, mam dobre wiadomości. Porozumienie ZWSOFTu z Autodeskiem zostało podpisane. Tym samym wszelkie spory o własności intelektualne zostały zakończone. Wygasają wszelkie roszczenia względem ZWCAD+ i wersji branżowych. Spór rozpoczął się niecałe 2 lata temu, kiedy to odbyła się rozprawa w sądzie w Hadze. Pisałem o tej sprawie więcej tutaj. Wyrok sądu był korzystny dla ZWSOFTu. Niemniej "niesnaski" pozostały i ZWSOFT starał się porozumieć z drugą firmą w celu zakończenia konfliktu. W lipcu tego roku firmy odbyły kolejne negocjacje. W celu zakończenia sporu ZWSOFT zaproponował, że zakończy sprzedaż ZWCAD+ 2015 w ciągu 3 miesięcy (czyli zakończy sprzedaż programu o który trwa spór). Po kilku dniach osiągnięto porozumienie, oraz podpisano wstępną ugodę. 6 listopada 2015 roku podpisano ostateczną ugodę, która kończy wszelkie spory. W tym tygodniu opublikowany zostanie prawdopodobnie oficjalny dokument obu firm. Cały proces negocjacji był ściśle tajny, nie mogliśmy także przekazywać żadnych informacji, za co przepraszam. W ugodzie ZWSOFT zobowiązał się do zmiany pewnych mechanizmów działania programu ZWCAD, co spowodowało przesunięcie terminu wydania oficjalnej ZWCAD 2017 (pierwsza beta powinna się ukazać w grudniu tego roku). Właściciel ZWSOFTu przyznał, że doszło do naruszenia własności intelektualnej (IP) Autodesku, oraz obiecał wypłacić odszkodowanie. Autodesk oficjalnie docenił starania ZWSOFTu zmierzające do zakończenia konfliktu. Zacytuję przetłumaczone słowa, które powiedział Pattrick Williams (Autodesk's Senior Vice President for the Asia Pacific Region): Kilka słów wyjaśnienia. Co to jest własność intelektualna (IP)? Mówiąc ogólnie jest to pewien zbiór zastrzeżeń prawnych. Obejmują dobra niematerialne, własności przemysłowe, jak np. patenty, znaki towarowe. W naszym przypadku może to być wygląd programu, mechanizmy wywoływania i działania funkcji itp. Zastrzeżenia odnośnie ZWCAD+ dotyczyły np. wyglądu interfejsu. Proszę zobaczyć na jak zmienił się wygląd 2015 w stosunku do 2014. Wiele osób zastanawiało się w jakim celu był zmieniony wygląd ikon. Natomiast zmiana ta wynikała właśnie z zarzutów naruszenia własności intelektualnej. Zastrzeżone są także pewne mechanizmy działania funkcji, np. ściśle opatentowany jest edytor bloków dynamicznych http://www.google.com/patents/US7860691?hl=pl Blisko dwa lata temu słyszeliśmy także o "Black Box", nazwiemy to sobie "pułapki". W żadnym przypadku nie polega to na sprawdzania kodu (niestety z takimi stwierdzeniami można się spotkać). Wytłumaczę to na przykładzie, nieco przerysowanym. Weźmy do ręki kalkulator: Jeśli wciśniemy klawisz "1" to na wyświetlaczu pojawi się "1". Jeśli wciśniemy klawisz "2" to pojawi się "2". Ale teraz wyobraźmy sobie, że ktoś zastawił pułapkę. Jeśli wciśniemy "5" to na wyświetlaczu pojawi się cyfra "7" zamiast "5". Więc bez żadnej analizy kodu możemy stwierdzić, czy inny kalkulator działa podobnie. Jeśli na innym kalkulatorze innej firmy wciśniemy "5", a na wyświetlaczu wyświetli się "7", to znaczy, że inny kalkulator działa tak samo, choć z błędem. No tak, ale takie działanie można również zaprogramować w innym kalkulatorze. Tylko trzeba wiedzieć, że taki błąd występuje. Natomiast zastrzeżenia może budzić sam fakt sprawdzania innego kalkulatora na występowanie tego typu błędów i powielania ich. Działania takie mają swoją nazwę - Inżynierowa odwrotna (ang. reverse engineering). W wielu krajach jest ona dozwolona, ale w kilku zakazana). Inżynieria odwrotna nie polega na analizie kodu, lecz na sprawdzaniu sposobu zachowania w różnych warunkach, przy różnych danych wejściowych. Często sami użytkownicy chcieliby, aby błędy były powielone. Cóż z tego, że na logikę działa błędnie, ważne, że jednakowo. Cieszę się, że konflikt został całkowicie zażegnany, myślę że ZWSOFT wyciągnął wnioski na przyszłość. Przepraszam wszystkich użytkowników, za całą sytuację. Są pewne rzeczy, które przyjmujemy całkowicie domyślnie i naturalnie, ponieważ jest nie do pomyślenia, że może być inaczej. Ja jednak napiszę jeszcze kilka zdań, aby dobitnie rozwiać wszelkie wątpliwości: Czy ZWCAD+ jest legalnym programem? Tak. ZWCAD+ to całkowicie legalny program. Można go używać dowolnie długo, lub w przyszłości można go "podnieść" do wyższej wersji. Czy będzie możliwość aktywacji lub dezaktywacji licencji ZWCAD+ np. w celu przeniesienia go na inny komputer? Tak. Sposoby aktywacji, dezaktywacji pozostają bez zmian. Czy użytkownicy mogą się czegoś obawiać? Absolutnie niczego. ZWCAD+ jest legalnym programem. Wszelkie waśnie zostały zakończone na poziomie producentów oprogramowania. Czy powstanie kolejna wersja programu ZWCAD+? Tak, program z tej linii produktowej (jak szacujemy) ukaże się na wiosnę 2016. Będzie to ZWCAD 2017. Nieco później zostaną wydane wersje branżowe. Pozdrawiam EDIT: Oficjalna wiadomość o porozumieniu na stronie ZWSOFT http://www.zwsoft.com/zwcad/press-release/20151118/A%20letter_to_ZWCAD_customers%20.html EDIT 2. Na mocy porozumienia musieliśmy usunąć linki do wersji ZWCAD+ z publicznego widoku. Są one dostępne na stronie https://licencja.zwcad.pl/ gdzie po wpisaniu kodu licencyjnego wyświetlą się linki do pobrania programów zgodnych z posiadaną licencją.3 punkty -
Nie jest moim celem eskalacja ilości rozwiązań, ale przy okazji innego projektu mimochodem wykorzystaliśmy nowe możliwości programistyczne w ZWCAD 2017. Dodaliśmy nowe polecenie "Pochylenie", który tworzy obiekt - linię, która ma 3 uchwyty. W zależności od wybranego uchwytu możemy osiągnąć różne rezultaty. W oknie właściwości możemy także zmieniać kąt nachylenia obiektu. Oto pliki do pobrania. Proszę je umieścić w jednym katalogu. Wymagany jest ZWCAD 2017 Pro. Pochylenie.zrx PochylenieCom.dll :hi:3 punkty
-
1. Rozszerzony wymiar – pozwala na tworzenie wielu wymiarów w ramach pojedynczej sesji polecenia: w odniesieniu do bazy lub jako wymiar ciągły. 2. Wymiar Wiele – tworzy wiele wymiarów od wybranego punktu do wszystkich wierzchołków na konturze wybranego obiektu. Po wybraniu opcji wymiar Wiele pojawia się okno z możliwością wyboru typu wymiarowania. Do wyboru mamy wymiary równoległe, współrzędne oraz symetryczne. W każdym z tych typów wymiarowania mamy dodatkowe opcje do ustawienia przez użytkownika. Wymiarowanie równoległe: do wyboru typ bazowy lub ciągły, z możliwością wymiarowania w obu osiach. Wymiarowanie współrzędne: do wyboru typ aktualny standard, równa długość odcinka lub środek krzyża na krawędzi. Z możliwością obrotu tekstu oraz wyboru krótkich lini wymiarowych. Wymiarowanie wałek/symetria: do wyboru wałek (widok z przodu), wałek (widok z boku)oraz symetria. We wszystkich typach wymiarowania jest możliwość automatycznego wyświetlania edytora teksu dla każdego wymiaru, co pozwala na wprowadzenie od razu dodatkowych informacji dla danego wymiaru.3 punkty
-
W mojej opinii nie. Mało tego, uważam że nie jest to dobry pomysł, w żadnej formie, a ten przedstawiony na obrazkach jest przykładem wręcz, jak tego nie robić. Uważam że powielanie tych samych danych, jest niepotrzebne a nawet szkodliwe. Domyślam się że "szpilki" mają osobne atrybuty na warstwie niedrukowalnej, wypełnione tymi danymi. Zastanówmy się co się będzie dziać gdy takich samych okiem mamy 100, i (nadal jednakowych) drzwi 200? Ano - mamy do każdego takiego samego (powtarzam) elementu dodatkowych 8 linii tekstu o takiej samej treści. Czas zadać pytanie - po co? Zasadą powinno być jedynie odwołanie do jednego miejsca (np. Xrecord, w danych niegraficznych). Tych danych w rysunku (dla mojego przykładu) byłyby wtedy 2 typy 1 x okno + 1 x drzwi... zamiast 300 (100 okien + 200 drzwi)... Wystarczy zdefiniować polecenie do "odpytania" wymiaru/okna/drzwi/czegokolwiek...3 punkty
-
Poniżej rozwiązanie: Witam Przesyłam rozwiązanie do przeinstalowania VBA wersji ZWCAD2012/2011. 1. Uruchomić wiersz poleceń Start->Uruchom->CMD i odinstalować VBA ZWCAD2012/2011 przez wklejenie linków: MsiExec.exe /X{1727CD47-A408-11d2-AFAD-00C04F72FB3E} MsiExec.exe /X{17E27C03-BD58-11d2-AFC1-00C04F72FB3E} MsiExec.exe /x{17E27C04-BD58-11d2-AFC1-00C04F72FB3E} Przy wklejeniu drugiego i trzeciego linku może pojawić się informacja, że deinstalacja wymaga zainstalowanego produktu. Informację tę można zignorować. 2. Proszę pobrać VBA i zainstalować z poniższego linku: http://jakprojektowac.pl/ftp/zwcad/Nakladki/vba6eng.rar pozdrawiam3 punkty