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
-
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
-
Uprościłem skrypty, finalnie jest jeden plik LSP i DCL. W przypadku ZWCADa plik DCL trzeba wkleić do lokalizacji C:\Program Files\ZWSOFT\ZWCAD 2026\Render\appl\comm\DCL (analogicznie dla starszych wersji rocznikowych). Po wyczytaniu skryptu wyświetlają się teraz dostępne polecenia: EWAK - rysowanie polilinii EWSET - konfiguracja rozmiaru grotów i polilinii Ponadto ujednoliciłem język, przy wyborze końców jest polski. Użyłeś darmowej wersji Chata GPT czy masz dostęp do płatnych modeli? EWAK.lsp EWAK.dcl3 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
-
Z przyjemnością chciałem poinformować o uruchomieniu naszej platformy szkoleniowej. Dostępny na niej jest już poziom podstawowy, w który opisujemy narzędzia do rysowania i edycji oraz drukowania wraz z ćwiczeniami. Kurs zawiera 39 lekcji i 9 godzin materiałów wideo. Dowiedz się więcej informacji o naszej platformie szkoleniowej ZWCAD.3 punkty
-
Jak w ZWCAD dodać polecenie do paska narzędzi w interfejsie klasycznym?
Martin_S i 2 innych przyznał(a) reputację kontom 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 -
Dodałem kilka linijek do twojego programu które tworzą blok. Można podejść do sprawy na kilka sposobów, ja wybrałem dość podstawowy. Współrzędne lewego dolnego rogu zapisałem w zmiennej PU0. Po stworzeniu konstrukcji w zmiennej BlkName zostaje zapisana nazwa nowo utworzonego bloku według twojego opisu. Tutaj warto dodać jakieś wyróżnienie, w przypadku duplikatu program jest przerwany komunikatem. Później blok zostaje stworzony ze zbioru wybranego funkcją ssget. "_W" zaznacza obiekty w oknie opisanym podobniej jak prostokąt, lewy dolny róg PU0 i prawy górny róg PU2. Po utworzeniu blok jest wstawiony poleceniem _insert, ponieważ znika on z rysunku. Kod programu poniżej (DEFUN C:KONS (/ W H K O L R PU H_NEW X0 Y0 X_START Y_START PU0 PU2 BlkName) (SETQ W (GETREAL "\nPodaj szerokosc modulu: ")) (SETQ H (GETREAL "\nPodaj wysokosc modulu: ")) (SETQ K (GETREAL "\nPodaj kat nachylenia konstrukcji (w stopniach): ")) (SETQ O (GETREAL "\nPodaj odstep miedzy modulami: ")) (SETQ L (fix (GETREAL "\nPodaj ilosc modulow w poziomie: "))) ; Konwersja na typ całkowity (SETQ R (fix (GETREAL "\nPodaj ilosc modulow w pionie: "))) ; Konwersja na typ całkowity (SETQ PU (GETPOINT "\nPodaj naroznik konstrukcji PV: ")) ;; Obliczenie nowej wysokości (SETQ H_NEW (* H (COS (* K (/ PI 180.0))))) ; Konwersja kąta na radiany ;; WYZNACZENIE PRZECIWLEGŁEGO NAROŻNIKA MODUŁU (SETQ X0 (CAR PU)) (SETQ Y0 (CADR PU)) (SETQ X_START X0) ; Zapisanie początkowego X (SETQ Y_START Y0) ; Zapisanie początkowego Y (SETQ PU0 (list X_START Y_START )) ;Zapisanie współrzędnych lewego dolnego rogu konstrukcji w zmiannej PU0 ;; RYSOWANIE MODUŁÓW (repeat L (progn (repeat R (progn (SETQ PU2 (list (+ X0 W) (+ Y0 H_NEW))) ;; RYSOWANIE PROSTOKĄTA (COMMAND "_RECTANG" PU PU2) ;; Przesunięcie w dół o wysokość i odstępu modułu (SETQ Y0 (+ Y0 H_NEW O)) ; Y0 zwiększamy o nową wysokość i odstęp (SETQ PU (list X0 Y0)) ; Nowy punkt startowy ) ) ;; Przesunięcie w prawo o szerokość modułu i zadany odstęp (SETQ X0 (+ X0 W O)) ; X0 zwiększamy o szerokość i odstęp (SETQ Y0 Y_START) ; Resetowanie Y0 do początkowej wartości (SETQ PU (list X0 Y0)) ; Nowy punkt startowy ) ) (setq BlkName (strcat "Konstrukcja " (itoa L) " x " (itoa R))) ;Stworzenie nazwy nowego bloku i zapisanie jej w zmiennej BlkName (command "_Block" BlkName PU0 (ssget "_W" PU0 PU2) "") ;Stworzenie Bloku nazwanego BlkName z punktem bazowym w lewym dolnym rogu konstrukcji (command "_Insert" BlkName PU0 "" "" "") ;Wstawienie bloku który znika po utworzeniu )3 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 -
Witam, Jeśli chodzi o tabliczkę T-0 Piesi, to podczas wstawiania można dodać inny opis. Jeśli chodzi o inne tabliczki T-0, to jest do tego funkcja D_INFOTAB, gdzie można dodać własny opis. Jeśli chodzi o znak D-44, to występuje on w różnych konfiguracjach. Jeśli jest potrzebny inny opis, to po wstawieniu normalnie można edytować blok przez prawy przycisk myszy Edytuj blok lub Edytor bloków i usunąć zbędną cześć. Może być jeszcze potrzebna synchronizacja ATRSYN (_ATTSYNC). W razie potrzeby można znak z innym opisem dodać do biblioteki na stałe.3 punkty
-
3 punkty
-
Bloki parametryczne - flexiblock Więcej informacji o blokach parametrycznych zamieściliśmy na naszej stronie.3 punkty
-
Obrót widoku na rzutni
hose2001 i 2 innych przyznał(a) reputację Adam Klaczek za temat
3 punkty -
Edycja polilinii z CTRL
Martin_S i 2 innych przyznał(a) reputację Adam Klaczek za temat
3 punkty -
Opis jak wstawić swój skrypt pod klawisz skrótu wstawiliśmy tutaj3 punkty
-
Rysowanie linii prostopadłej
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
-
Rzędne - przesuwanie tekstu w blokach z atrybutami [rozwiązany]
kruszynski i 2 innych przyznał(a) reputację Marek-M za temat
Żeby atrybut mógł być przesuwany niezależnie od punktu wstawienia bloku, to musi mieć ustawiony parametr 'Lock position' ustawiony na 'No' (wersja angielska ZWCAD 2018). Można ten parametr edytować poprzez REFEDIT. Ustawienie to będzie po zapisaniu dotyczyło wszystkich bloków z tą nazwą w danym rysunku. Przesunięte atrybuty wrócą do pierwotnej lokalizacji po synchronizacji atrybutów funkcją 'ATTSYNC'. Poniżej rysunek, na którym zaznaczyłem, która parametr odpowiada za pojawienie się uchwytu do przesuwania atrybutu w bloku.3 punkty -
Wyświetlanie etykiety z odległością i kątem - rozszerzenie funkcji [Wprowadzono w ZWCAD 2018]
pawmal i 2 innych przyznał(a) reputację Adam Klaczek za pytanie
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
-
Wyszukiwanie tekstu w PDF
ipolanski i 2 innych przyznał(a) reputację Kamil Murański za temat
Witam Sugeruję drukować używając drukarki PDF Creator. W oknie drukowania należy kliknąć na Właściwości. W oknie, które się otworzy, w zakładce "Urządzenie i ustawienia dokumentu", należy rozwinąć drzewko "Grafika", wybrać "Czcionki True Type <Jako tekst>" i zaznaczyć "Czcionki TrueType jako tekst". Dołączam obrazek wraz ze strzałkami i numeracją co i gdzie należy po kolei klikać. Pozdrawiam3 punkty -
Witam. To jest bardzo ciekawa alternatywa dla MathCAD-a, od dłuższego czasu na nim pracuje wykonując obliczenia wytrzymałościowe. Nie ma takiej prędkości jak MathCAD, ale dobrze się sprawuje. Spece od niego potrafią robić na nim animacje oraz potrafią go programować w VB lub C# ( http://smath.info/wiki/ ). Obecnie program posiada bardzo ciekawą funkcjonalność, która przydaje się w pracy. Program tworzy pliki exe z projektów, dzięki temu można robić matryce obliczeniowe, w których nie można robić zmian w procedurach obliczeniowych. Oto jak wygląda przykładowe okno takiego projektu: A tutaj widok wydruku do powyższego okna Powyższy przykład znajduje się w załączniku. Pozdrawiam TJ belka jednoprzesłowa z 1 siłą P.rar3 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
-
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