Ranking

Popularna zawartość

Zawartość, która uzyskała najwyższe oceny od 07/09/24 w Odpowiedzi

  1. 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.dwg
    5 punktów
  2. 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
  3. Martin_S

    Jak narysować wieżę Eiffla?

    dokładam od siebie koła olimpijskie do twojej wieży Mateusz flaga wygląda tak koła: przygotowany blok dwg 3d do wykorzystania dwg: IO-2024.dwg
    4 punkty
  4. kontom

    Kalkulator tekstów

    W tej wersji już da się zaznaczać wiele obiektów na raz calc.zelx
    3 punkty
  5. 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.dcl
    3 punkty
  6. Do ZWCAD 2026 wprowadzona została parametryzacja. Postanowiłem ją wykorzystać do pokazania jak taki mechanizm otwierania ramion chwytaka może działać. Poniżej załączam animacje.
    3 punkty
  7. 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.lsp
    3 punkty
  8. Hej, Napisałem skrypt który działa zgodnie z pomysłem @dmatusz3 LISPa wczytaj poleceniem AP. Żeby użyć funkcję wpisz polecenie DOPASUJBLOKIDOPOLI. Najpierw wybierz polilinię, później oknem bloki które chcesz dopasować do polilinii i kliknij Enter. Obiekty inne niż bloki i polilinia zostaną odfiltrowane. DopasujBlokiDoPoli.lsp
    3 punkty
  9. 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
  10. Mogę pokazać krok po kroku jakieś trudniejsze działania z ARCHITECTURE, lubię wyzwania, ktoś jest zainteresowany jak "coś" wykonać lub jak to "obejść" by mieć finalnie dany cel? możliwości wersji 2024 są mocne nawet beta 2025 że można w środowisko dwg wykonywać nawet obiekty zabytkowe. interaktywny przykład w PDF 3D ("edytor revitopodobny" w acrobacie readerze) PDF 3D SKLADOWICE_3D.pdf
    3 punkty
  11. Na razie mamy coś takiego. Zostało jeszcze zapamiętanie i przeliczenie początkowych przesunięć widoków w rzutni.
    3 punkty
  12. dmatusz3

    Wektoryzacja rastrów

    Pełna wersja ZWVectorization (ta, którą obecnie dodajemy do ZWCAD Pro) umożliwia obsługę obrazów rastrowych o rozdzielczości do 20 000 pikseli x 20 000 pikseli. Powyższa animacja z lokomotywą powstała przy użyciu rastra o 15 tys. x 6 tys. pikseli.
    3 punkty
  13. 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
  14. RobS

    Zamykanie obiektów w bloku

    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
  15. Potrzebujesz wykonać następujące czynności: 1) załadować CADPL-Pack'a. Znajdziesz go tutaj: https://kojacek.wordpress.com/2015/11/04/cadpl-pack/ 2) oraz poniższy kod definiujący polecenie ATR-ZMIANA: ; -------------------------------------------------------------------------- ; ; C:ATR-ZMIANA by kojacek 2024 (http://kojacek.wordpress.com) ; ; -------------------------------------------------------------------------- ; (defun C:ATR-ZMIANA ()(jk:140824_GetBklMask)(princ)) ; -------------------------------------------------------------------------- ; (defun jk:140824_GetBklMask ( / %m %s %l %a %b %r %e %i %o :t) (defun :t (i) (getstring (strcat "\nPodaj " (nth i (list "pierwszy" "drugi")) " tag atrybutu do zamiany: " ) ) ) (if (setq %m (getstring "\nPodaj początkowy fragment nazwy bloku: ") ) (if (member %m (list "" " ")) (princ "\nBłąd - zła nazwa.") (if (setq %s (ssget "_x" (list (cons 0 "INSERT") (cons 410 (getvar "CTAB")) (cons 2 (strcase (strcat %m "*"))) ) ) ) (progn (setq %l (cd:SSX_Convert %s 0)) (if (and (setq %a (strcase (:t 0))) (setq %b (strcase (:t 1))) ) (progn (setq %r (mapcar '(lambda (% / %1 %2 %3) (if (setq %1 (cd:BLK_GetAtts %)) (if (and (setq %2 (cdr (assoc %a %1))) (setq %3 (cdr (assoc %b %1))) ) (list % %2 %3) 1 ) 1 ) ) %l ) %e (vl-remove-if-not 'numberp %r) %r (mapcar 'car (vl-remove-if 'numberp %r)) ) (if %r (progn (cd:SYS_UndoBegin) (foreach % %r (setq %i (cd:BLK_GetAtts %) %o (vlax-ename->vla-object %) ) (cd:BLK_SetAttValueVLA %o %a (cdr (assoc %b %i)) ) (cd:BLK_SetAttValueVLA %o %b (cdr (assoc %a %i)) ) ) (princ (strcat "\nZmieniono atrybuty w " (itoa (length %r)) " blokach." (if %e (strcat " Odrzucono " (itoa (length %e)) " bloków." ) "" ) ) ) (cd:SYS_UndoEnd) ) (princ (strcat "\n" (itoa (length %l)) " bloków nie spełnia wymagań do zmiany atrybutów." ) ) ) ) (princ "\nBłąd. Wymagane nazwy atrybutów.") ) ) (princ "\nNie znaleziono odpowienich bloków.") ) ) (princ "\nBłąd. Brak nazwy") ) ) ; -------------------------------------------------------------------------- ; (princ) 3) wywołujesz polecenie ATR-ZMIANA, jak na poniższym ruchomym obrazie:
    3 punkty
  16. ZWTraffic ma taką możliwość.
    2 punkty
  17. O tak, właśnie ten ostatni sposób miałem na początku na myśli. Brawo! Może tylko jedna niewielka kosmetyczna zmiana z zaznaczaniem (jak poniżej), ale rozwiązanie świetne.
    2 punkty
  18. Ok, dziękuję za podpowiedzi udało się wykonać projekt.
    2 punkty
  19. W załączniku plik monochrome.ctb ZWCAD 2024 PRO. Monochrome.ctb
    2 punkty
  20. W ZWCAD 2026 nowe wymiary mogą być automatycznie przenoszone na dedykowaną warstwę. Odpowiada za to zmienna DIMLAYER, która zawiera nazwę tej warstwy. Domyślnie jest ona ustawiona na bieżącą warstwę, ale możemy wpisać swoją nazwę warstwy (jeśli taka warstwa nie istnieje to zostanie utworzona). Aby przywrócić domyślną opcję zmiennej wystarczy wpisać polecenie DIMLAYER i wpisać kropkę. Wtedy wymiary będą wstawiane na bieżącej warstwie. Sposób działania pokazałem na filmie poniżej. Poniżej zamieszczamy film o nowych narzędziach wymiarowania w ZWCAD 2026.
    2 punkty
  21. Podobnie jak w przypadku innych programów CAD, ZW3D oferuje podstawowe narzędzia przekształcania geometrii szkicu. Poniżej pełna lista skrótów do funkcji na wstążce Podstawowa edycja: ZW3D - Szyk ZW3D - Przenieś ZW3D - Kopiuj ZW3D - Obróć ZW3D - Lustro ZW3D - Skala ZW3D - Rozciągnij ZW3D - Przenieś elastycznie ZW3D - Rozstrzel
    2 punkty
  22. tomasztalik

    Pod-szkice w rysunku 2D

    Bardzo często podczas projektowania korzystamy z powtarzalnych elementów szkicu. Zakładka Pod-szkic umożliwia szybkie definiowanie i korzystanie z tychże bloków. Poniżej lista komend: ZW3D - Utwórz blok ZW3D - Wstaw blok ZW3D - Menadżer bloku ZW3D - Dodaj element do bloku ZW3D - Gotowe szkice użytkownika ZW3D - Pod-szkic predefiniowany ZW3D - Obrysuj profil ZW3D - Kasuj obrysowanie profilu ZW3D - Odsunięcie obrysowania profilu
    2 punkty
  23. Nie ma nic skomplikowanego. Potrzeba napisać tekst i go rozbić funkcję TXTEXP po jego zaznaczeniu.
    2 punkty
  24. RobS

    Ustawienie stylu wymiarowania

    W takim razie szybki skrypt Lisp który ułatwi Ci pracę. Wczytaj go poleceniem AP i jeśli chcesz, żeby styl modyfikował się już po otwarciu rysunku to Dodaj do listy startowej. W poniższym kodzie musisz zmienić nazwę stylu NazwaStyluWym1 na swoją, stylów możesz określić więcej niż jeden. Dokładność wyświetlania wymiaru kątowego jest określona przez cyfrę "3" po "DIMADEC". W tym przykładzie będą 3 miejsca po przecinku, domyślnie jest 0. (setq dimlst '("NazwaStyluWym1" "NazwaStyluWym2")) ; Zmień nazwę Stylu wymiarowania na swoją (vlax-for dim (vla-get-Dimstyles (setq doc (vla-get-ActiveDocument (vlax-get-acad-object)))) (if (vl-position (vla-get-Name dim) dimlst) (progn (vla-put-activeDimstyle doc dim) (setvar "DIMADEC" 3) ; Określ dokładność wymiaru kątowego (vla-copyfrom dim doc)))) Plik Lisp do modyfikacji załączony jest do posta. ModKątWymStyl.lsp
    2 punkty
  25. pasiasia

    ZWCAD 2025 Lagi [Rozwiązany]

    Problem rozwiązany. Nie mam pojęcia w jaki sposób ale rozwiązany. Reinstalowałem program od wersji 1.2, aktualizowałem do 1.4 nie pomagało. W innym wątku przeczytałem o podobnym problemie gdzie winna miała być przeglądarka brave, idąc tą ścieżka odinstalowałem Edge. Dziś od rana wszystko śmiga aż miło.
    2 punkty
  26. Tworzenie wiązań w szkicu 2D jest jednym z podstawowych elementów pracy konstruktora. Dzięki nim parametryzujemy rysunki, tworzymy zależności geometryczne. Poniżej lista funkcji we wstążce Wiązanie szkicownika ZW3D: ZW3D - Dodaj wiązanie ZW3D - Auto więzy ZW3D - Utwierdź ZW3D - Punkty pionowo ZW3D - Punkty poziomo ZW3D - Punkt środkowy pomiędzy ZW3D - Punkt do linii - krzywej ZW3D - Punkt do przecięcia ZW3D - Punkt wspólny ZW3D - Poziomo ZW3D - Pionowo ZW3D - Symetria ZW3D - Częściowa symetria ZW3D - Prostopadle ZW3D - Równolegle ZW3D - Współliniowość ZW3D - Styczność ZW3D - Równa długość ZW3D - Równy promień ZW3D - Równa krzywizna ZW3D - Punkt do środka
    2 punkty
  27. W mojej ocenie, taki zapis powoduje użycie tekstu wykorzystując styl tekstu mcstyle. Czy taki styl tekstu został zdefiniowany? Po utworzeniu podanego stylu tekstu, definicje linii bez problemu się wczytują. Zagadnienie jest trywialne. Warto zapoznać się najpierw z definicją linii, bo czym innym jest odczytywanie symboli po nazwie z pliku shx, a czym innym używanie tekstu z danego stylu tekstu. Na marginesie, prościej jest użyć stylu Standard, który jest bardziej uniwersalny, bo taki jest domyślny.
    2 punkty
  28. Myślę, że może Ci chodzić o parametr Linetype generation we własnościach polilinii. Gdy jest Disabled, to wzór linii jest środkowany pomiędzy węzłami. Poniżej lewa linia ma parametr Disabled a prawa Enabled:
    2 punkty
  29. Zachęcam do zapoznania się z ciekawym art. na temat uzyskiwania podkładów rastrowych w wysokiej rozdzielczości. https://www.zwcad.pl/wyszukiwanie-w-bazie-wiedzy/jak-to-zrobic/1176-tworzenie-wlasnych-map-i-podkladow-w-duzej-rozdzielczosci.html
    2 punkty
  30. Jeszcze udało nam się nagrać film w tym temacie.
    2 punkty
  31. Hej, Napisałem skrypt który przepisuje wartość atrybutu o wskazanej nazwie do hiperłącza w wybranych blokach. Zwróć uwagę na wielkość liter w nazwach, ponieważ ma ona znaczenie. Skrypt uruchamia polecenie PrzepiszDoHiperlinku. (vl-load-com) (princ (strcat " Copyright © 2000 — 2025 Usługi Informatyczne Szansa www.zwcad.pl Dostępne polecenia: PRZEPISZDOHIPERLINKU - skrypt automatycznie przepisuje wartość wskazanego atrybutu do hiperłącza w wybranych blokach ") ) (defun LM:vl-getattributevalue ( blk tag ) (setq tag (strcase tag)) (vl-some '(lambda ( att ) (if (= tag (strcase (vla-get-tagstring att))) (vla-get-textstring att))) (vlax-invoke blk 'getattributes)) ) (defun C:PRZEPISZDOHIPERLINKU (/ blockName przepiszVal ss i ent val) (setq blockName (getstring t "\nWpisz nazwę bloku: ")) (setq attName (getstring t "\nWpisz nazwę atrybutu: ")) (setq ss (ssget "_X" (list (cons 2 blockName)))) (setq i 0) (repeat (sslength ss) (setq ent (ssname ss i)) (setq obj (vlax-ename->vla-object ent)) (setq val (LM:vl-getattributevalue obj attName)) (vla-add (vla-get-hyperlinks obj) val (vl-filename-base val)) (setq i (+ i 1)) ) (princ) ) PrzepiszDoHiperlinku.lsp
    2 punkty
  32. Szybkie testy i potwierdzam, że u mnie wszystko działa jak należy
    2 punkty
  33. mili

    Co dzisiaj robiłem w lispie?

    udało się! kółko z polilinii polikolko.lsp
    2 punkty
  34. Podczas pracy z plikami, które importujemy do ZW3D, często nie mamy dostępu do drzewa historii i parametryzacji. Chcąc parametryzować arkusze blachy i zgięcia w nich zawarte, potrzebujemy narzędzia do ich oznaczania. Naprzeciw wychodzi funkcja Zaznacz gięcie. Na poniższym filmie pokazano w jaki sposób z prostopadłościanu przejść do rozłożonego blaszanego pudełka: Więcej o informacji funkcji znajduje się pod linkiem: ZW3D - Zaznacz gięcie
    2 punkty
  35. perlon

    Kopiowanie wraz z obracaniem

    Komenda MOCORO z dawnego Expressa ale to było w jakimś vlx-ie. Zamiennik znaleziony na autodeskowym forum. Nie wiem czy przejdzie link. Żeby skrócić działanie można to to sobie owrapować commandem jeżeli zależy ci na jakiejś konkretnej kolejności operacji.
    2 punkty
  36. Z przyjemnością publikujemy aktualizację do ZWCAD 2024. Wersja oznaczona jest jaki SP 1.5 (VERNUM=24.10_2024.11.07(#9455-eaa63f9f5f2) Ta aktualizacja powinna być także dostępna online w ciągu kilku dni. Skrócona lista zmian: naprawiono problem ze sporadycznie występującym przesuwaniem rzutni w przestrzeni papieru, który pojawił się w SP 1.4 (problem opisywany na forum https://forum.cad.info.pl/topic/5215-zwcad-2024-sp14-przesuwanie-kopiowanie-rzutni-w-przestrzeni-papieru/ naprawiono problem z wydajnością podczas pracy z rysunkami zawierającymi obiekty OLE w specyficznych warunkach, naprawiono problemy ze stabilnością, w tym awarie, nieoczekiwane zamknięcia oraz brak odpowiedzi w różnych scenariuszach, naprawiono problem z wyświetlaniem miniatur podglądu plików DWG w Eksploratorze plików Windowsn naprawiono problem, w którym pasek narzędzi zmieniał swoje położenie po wyjściu z edytora bloków, naprawiono problem z utratą relacji formuł pól w blokach atrybutów, w specyficznych warunkach, naprawiono problemy w funkcji Smart Plot w specyficznych warunkach, naprawiono błędne wyniki przycinania, gdzie linie ciągłe przecinały linie przerywane w przerwach linii, naprawiono problem z nieotwieraniem rysunków 3D zapisanych jako DXF w pewnych przypadkach, naprawiono problem z brakującymi znacznikami punktów początkowych dla polilinii. Linki do pobrania ZWCAD 2024 SP 1.5: ZWCAD 2024 PL 64bit ZWCAD 2024 PL 32bit ZWCAD 2024 EN 64bit ZWCAD 2024 EN 32bit
    2 punkty
  37. Przy projektowaniu detali, może się zdarzyć, że źle zaznaczymy nieruchomą ścianę. Przy rozwinięciu arkusza blachy, detal może nie spełniać naszych lub klienta wymagań. Potrzebna wtedy jest modyfikacja. Z pomocą przychodzi samodzielna komenda Wskaż nieruchomą ścianę. Więcej o funkcji pod adresem: ZW3D - Wskaż nieruchomą ścianę
    2 punkty
  38. Badanie odgięć możemy zrealizować dzięki funkcji Informacje o zgięciu. Więcej o tej komendzie można przeczytać na stronie poniżej: ZW3D - Informacje o zgięciu
    2 punkty
  39. Dziękujemy za uznanie Oto skrypt do załadowania do synchronizacji widoków w rzutni w przestrzeni modelu ViewChanged.dll Bibliotekę trzeba załadować poleceniem netload, uprzednio odblokowując plik .dll. Po załadowaniu pliku ViewChanged.dll ZWCAD wyświetli komunikat z dostępną listą poleceń, czyli dostępne są 2 nowe polecenia: VIEWSYNCHROSTART - włącza synchronizacje, VIEWSYNCHROSTOP - wyłącza synchronizacje. Skrypt działa w taki sposób, że przesuwanie widoku w rzutniach jest ustawione względem pozycji początkowej, natomiast zoom jest jednakowy.
    2 punkty
  40. Często potrzebujemy skopiować detal wykonany z arkusza blachy, aby móc go później rozłożyć i zwymiarować pod kątem dokumentacji 2D. Może nam do tego posłużyć komenda Widok rozkroju, dostępna we wstążce Arkusz blachy - Zgięcia. Więcej informacji o tej funkcji znajduje się pod linkiem: ZW3D - Widok rozkroju UWAGA: Od wersji 2024, na drzewku historii w zakładce Arkusz blach, Widok rozkroju jest automatycznie generowany. Należy upewnić się czy opcja jest aktywowana: Wstążka > Właściwości > Arkusz blachy :
    2 punkty
  41. konwersję z skp na dwg robię pconplannerem.... przykład: mercy.skp po konwersji : mercy.dwg
    2 punkty
  42. Potrzebujesz: 1) (załadowanego) CADPL-Pack'a (wiadomo) 2) funkcji z Express Tools: acet-geom-mtxtbox (oprócz AutoCAD-a jest w BricsCAD-zie i GStar'ze. Nie wiem jak jest w ZwCAD-ie) 3) Poniższego kawałka kodu: ;;; ramka MTEXTu (2024 by kojacek) (defun C:MTEST (/ %e %d %p %o %z) (if (and (setq %e (car (entsel "\Wybierz MTEXT:"))) (= "MTEXT" (cdr (assoc 0 (setq %d (entget %e))))) ) (progn (setq %p (acet-geom-mtxtbox %d 0.0) %z (cdr (assoc 210 %d)) %p (mapcar '(lambda (%) (trans % 1 %z) ) %p ) ) (setq %o (cd:ACX_AddLWPolyline (cd:ACX_ASpace) %p t)) (vla-TransformBy %o (cd:CON_TransMatrix 0)) ) (princ "\nZły wybór.") ) ) Z tego co na szybko przetestowałem, maluje prostokąt dla wskazanego MTEXT-u, niezależnie od aktywnego układu współrzednych. Funkcja acet-geom-mtxtbox, zwraca współrzędne prostokata opisującego rzeczywisty obszar MTEXT-u (porównaj z ramką MTEXT-u). Swego czasu poruszałem to tu: https://kojacek.wordpress.com/2017/10/08/wielkosc-obszaru-mtext-u/. Drugi argument funkcji (tutaj 0.0), to odsunięcie prostokąta. Pozwala to na rysowanie większego obramowania.
    2 punkty
  43. W tym ćwiczeniu wrysujemy drogę do mapy zasadniczej stworzymy potrzebne warstwy zaprojektujemy jezdnię i chodnik zmienimy położenie drogi za pomocą czerwonych uchwytów Pobierz teraz rysunek DWG potrzebny do wykonania tego ćwiczenia. Zachęcamy do obejrzenia filmu, w którym wykonamy ćwiczenia krop po kroku.
    2 punkty
  44. W tym ćwiczeniu przygotujemy rysunek do wydruku dodamy rozmiar kartki papieru, zmienimy skalę wydruku, dodamy rzutnię z odpowiednią skalą, wyrównamy rysunek tak aby droga była równoległa do krawędzi kartki, dodamy strzałkę północy. Pobierz teraz rysunek DWG potrzebny do wykonania tego ćwiczenia. Najważniejsze polecenie, którego będziemy używać w tym ćwiczeniu to ALIGNSPACE. Tym poleceniem możemy obrócić rysunek względem samego arkusza. Zachęcamy do obejrzenia filmu, w którym wykonamy ćwiczenia krop po kroku ćwiczenia krok po kroku.
    2 punkty
  45. Cześć, Udostępniam Wam swój program napisany w lisp do ustawiania, kontroli poprawności oraz drukowania arkuszy w AutoCAD/GstarCAD/ZWCAD. Znacząco przyspiesza ogarnianie arkuszy do wydania. Potrafi: znaleźć i ustawić obszar wydruku na podstawie bloku lub ramki zawartej w danym arkuszu ustawić rozmiar papieru w wybranej drukarce plikowej (np. DWG To PDF) ustawić styl wydruku CTB dodać/usunąć sektory odniesienia wokół drukowalnej ramki ustawić nazwę arkusza na podstawie znalezionych atrybutów z tabelki rysunkowej wpisać ustawiony rozmiar arkusza do atrybutu hurtowo wydrukować arkusze o jednakowej szerokości rolki na wybranej drukarce w zadanej ilości Wszystko powyższe może zrobić dla aktywnie otwartego pliku jak i wszystkich otwartych w danej sesji programu. Dzięki czemu mamy możliwość kontroli poprawności ustawienia rysunków całego projektu, ich nazw i szybkiego drukowania wg załadowanej aktualnie rolki w drukarce. Typowy scenariusz użycia zakłada, że w drukarce plikowej, np. DWG To PDF.pc3 znajdują się dodane papiery użytkownika o standardowych szerokościach rolek i długościach od 450 do 2000mm stopniowane co 50. W arkuszu rysujemy obrys ramki jako polilinię zamkniętą lub wstawiamy blok dynamiczny. Dopasowujemy ramkę wg potrzeb i uruchamiamy program poleceniami BPL lub BPP. Dzięki czemu możemy jednym poleceniem ustawić wszystko co powyższe. Tak ustawione na gotowo wszystkie arkusze z danego projektu publikujemy do PDF/DWF/DWFx w dowolnym programie CAD korzystając ze standardowego polecenia PUBLISH mając pewność, że obszar wydruku się zgadza, numeracja się nie powtarza, oraz arkusze mają poprawne nazwy. Chcąc wydrukować projekt, ładujemy do jednej sesji programu CAD wszystkie pliki rysunkowe, zaznaczamy arkusze o tej samej szerokości rolki, wybieramy drukarkę, ilość kopii i drukujemy wszystko na raz. Jednocześnie mamy kontrolę znacznikami kolorystycznymi, czy wszystko mamy ustawione jak trzeba. Program działa w AutoCAD/GstarCAD i prawdopodobnie w ZWCAD. Tego ostatniego nie używam na co dzień ale chwilę poklikałem w wersji demo i wydaje się, że działa. Jeśli dostanę od was jakieś uwagi to postaram się naprawić. Jest napisany w AutoLISP oraz dodatkowo wykorzystuje bibliotekę OpenDCL (w wersji minimum 8.0). Przed użyciem programu trzeba pobrać i zainstalować ze strony: www.opendcl.com. GstarCAD jest dostarczany wraz z tą biblioteką, więc program działa out of the box. Nie testowałem programu w BricsCAD. Jeżeli ktoś będzie chciał przetestować to udostępnię. Licencja Udostępniam go na licencji FREEWARE. Korzystaj i dziel się do woli. Szczegółowy opis programu oraz linki do ściągnięcia na stronie: https://u-cad.blogspot.com/p/batchplot.html. Poniżej kilka animacji dla zobrazowania o co chodzi. Zachęcam do wypróbowania.
    2 punkty
  46. Można się pokusić o (w istocie drobną) przeróbkę tego kodu, aby pracował w trybie "wsadowym". Kod wygląda teraz tak: ; -------------------------------------------------------------------------- ; ; C:ATR-ZMIANA by kojacek 2024 (http://kojacek.wordpress.com) ; ; -------------------------------------------------------------------------- ; (defun C:ATR-ZMIANA ()(jk:140824_GetBklMask)(princ)) ; -------------------------------------------------------------------------- ; (defun jk:140824_GetBklMask ( / %m %s %l %a %b %r %e %i %o :t) (defun :t (i) (getstring (strcat "\nPodaj " (nth i (list "pierwszy" "drugi")) " tag atrybutu do zamiany: " ) ) ) (if (setq %m (if (not *ATT-LIST*) (getstring "\nPodaj początkowy fragment nazwy bloku: ") (car *ATT-LIST*) ) ) (if (member %m (list "" " ")) (princ "\nBłąd - zła nazwa.") (if (setq %s (ssget "_x" (list (cons 0 "INSERT") (cons 410 (getvar "CTAB")) (cons 2 (strcase (strcat %m "*"))) ) ) ) (progn (setq %l (cd:SSX_Convert %s 0)) (if (and (setq %a (if (not *ATT-LIST*) (strcase (:t 0)) (cadr *ATT-LIST*) ) ) (setq %b (if (not *ATT-LIST*) (strcase (:t 1)) (caddr *ATT-LIST*) ) ) ) (progn (setq %r (mapcar '(lambda (% / %1 %2 %3) (if (setq %1 (cd:BLK_GetAtts %)) (if (and (setq %2 (cdr (assoc %a %1))) (setq %3 (cdr (assoc %b %1))) ) (list % %2 %3) 1 ) 1 ) ) %l ) %e (vl-remove-if-not 'numberp %r) %r (mapcar 'car (vl-remove-if 'numberp %r)) ) (if %r (progn (cd:SYS_UndoBegin) (foreach % %r (setq %i (cd:BLK_GetAtts %) %o (vlax-ename->vla-object %) ) (cd:BLK_SetAttValueVLA %o %a (cdr (assoc %b %i)) ) (cd:BLK_SetAttValueVLA %o %b (cdr (assoc %a %i)) ) ) (princ (strcat "\nZmieniono atrybuty w " (itoa (length %r)) " blokach." (if %e (strcat " Odrzucono " (itoa (length %e)) " bloków." ) "" ) ) ) (cd:SYS_UndoEnd) ) (princ (strcat "\n" (itoa (length %l)) " bloków nie spełnia wymagań do zmiany atrybutów." ) ) ) ) (princ "\nBłąd. Wymagane nazwy atrybutów.") ) ) (princ "\nNie znaleziono odpowienich bloków.") ) ) (princ "\nBłąd. Brak nazwy") ) ) ; -------------------------------------------------------------------------- ; (princ) Przed wywołaniem polecenia wystarczy teraz zadeklarować zmienną globalną o nazwie *ATT-LIST*. Jest to trzyelementowa lista gdzie pierwszy element to maska (początkowy fragment) nazwy bloku, a dwa kolejne to tagi atrybutów do zamiany. Deklaracja zmiennej: (setq *ATT-LIST* (list "NAME" "SYMBOL" "LPS")) Następnie wywołania polecenia ATR-ZMIANA skutkują jak na animacji poniżej. Gdy zmienna nie jest zadeklarowana polecenie działa jak w poprzednim poście. Nie trzeba tłumaczyć że wartości zmiennej można modyfikować w zależności od potrzeb.
    2 punkty
  47. dmatusz3

    Jak szybko przywrócić widok?

    W nadchodzącej aktualizacji ZWCAD 2025 zmienić widok będzie można również w taki sposób jak na filmie poniżej.
    2 punkty
  48. Może polecenie PLAN, a później ENTER, ENTER?
    2 punkty
  49. Zapraszam od oglądnięcia kolejnego filmu o modelowaniu wieży Eiffla. Dzisiaj użyjemy kilku nowych poleceń, np.: klin, ostrosłup.
    2 punkty
Ten Ranking jest ustawiony na Warszawa/GMT+02:00