-
Postów
252 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
35
Treść opublikowana przez kojacek
-
Wielkość i ilość poprawek do ostatniego ZwCAD-a (kroczącego nieustannie gdzieś między wersją alpha i ciągle jeszcze bardzo wczesną beta), pozwala przypuszczać że ów "bieg czasu" będzie bardzo długi. Przy spełnieniu warunku że "odpowiednik" w tym czasie nie będzie zmierzał do przodu...
-
Niech mnie ktoś oświeci - BATTING (czy ZIGZAK) malujecie polilinią? A w jakim celu? Nie można użyć w ZwCAD złożonego rodzaju linii?
-
Problem z polskimi znakami [rozwiązany]
kojacek odpowiedział(a) na Rafał Ruszkiewicz temat w ZWCAD Standard i Professional
Ten rysunek (wszystkie tu przedstawione wersje) otwierany w AutoCAD, i zapisywany we wszystkich formatach DWG (od R14 przez 2000, 2004, 2007, 2010 i 2013), wyświetla (zawsze) poprawnie polskie znaki. Nie powinno to dziwić, bowiem definicje stylów tekstu korzystających z czcionek TTF, są we wszystkich tych wersjach takie same. Inne teksty (tutaj występujące wieloliniowe MTEXT), korzystają z odniesień do czcionek TTF (poza stylem), i też są wyświetlane poprawnie, choć budowa wewnętrzna opisu MTEXT nieznacznie się różni w kolejnych wersjach. Są to zmiany polegające na dodatkowych rozszerzeniach w nowszych wersjach, przy zachowaniu zgodności "w dół", aż do wersji R13 (odkąd się pojawił MTEXT). Jeśli więc występują jakieś błędy, to raczej z powodu przypadłości ostatniego ZwCAD-a. -
[Lisp] Nazwa bloku i współrzędne punktów [rozwiązany]
kojacek odpowiedział(a) na lukaasz temat w Wsparcie programistyczne LISP i VisualLISP
Problemem są zmienne lokalne, a właściwie ich brak. Zresztą w kodzie problemów jest więcej. A co tam z LIGHTWEIGHTPOLYLINE? Doczekam się wiarygodnego przykładu? -
[Lisp] Nazwa bloku i współrzędne punktów [rozwiązany]
kojacek odpowiedział(a) na lukaasz temat w Wsparcie programistyczne LISP i VisualLISP
No to może jakiś plik DXF z takim obiektem, albo DWG, żeby można entget-em pobrać "LIGHTWEIGHTPOLYLINE"... albo może jakiś lispowy kod typu entmake z "LIGHTWEIGHTPOLYLINE"? Da się? -
[Lisp] Nazwa bloku i współrzędne punktów [rozwiązany]
kojacek odpowiedział(a) na lukaasz temat w Wsparcie programistyczne LISP i VisualLISP
To jakaś zmiana w oficjalnej specyfikacji DXF? Proszę o źródło. -
[Lisp] Nazwa bloku i współrzędne punktów [rozwiązany]
kojacek odpowiedział(a) na lukaasz temat w Wsparcie programistyczne LISP i VisualLISP
Szczerze przyznam że po raz pierwszy spotykam się z nazwą w DXF (ename = "LIGHTWEIGHTPOLYLINE"). -
Jeśli zadziała mój kod z linku który podałem powyżej to właśnie tak. Jego działanie polega na zamianie kolorów dwóch elementów: tła ekranu graficznego i krzyża nitek, bowiem przez domniemanie przyjmuje się że są ustawione kontrastowo. Zatem jeśli tło masz RGB 30,40,48 a krzyż biały, polecenie BKG zamieni ten stan rzeczy: tło stanie się białym a kursor RGB 30,40,48. Oczywiście dotyczy to każdej pary kolorów, ustawionych jako tło i krzyż nitek.
-
Ponadto dla użytkowników (nie tylko) AutoCAD-a (który nie ma zmiennej "BKGCOLOR"), od wielu już lat, taki oto przełącznik: https://kojacek.wordpress.com/autolisp/interfejsy/kolor-tla-ekranu-graficznego-autocad-a/
-
zgrabniej może być tak: (setvar "BKGCOLOR" (abs (- 7 (getvar "BKGCOLOR"))))
-
Chodzi o właściwość, która w AutoCAD-zie nazywa się Annotative, co w wersji polskiej przetłumaczone jest jako Opisowy. Właściwość ta pozwala przypisać stylom tekstu, blokom, stylom wymiarowania możliwości automatycznego skalowania w rzutniach obszaru papieru w zależności od określonej jej skali. Przykładowo - wymiar opisowy naniesiony na rzut pomieszczenia budynku w obszarze modelu, w obszarze papieru może być tak samo reprezentowany w rzutniach o różnej skali (ta sama wielkość grotów, wysokość tekstu, odstępy itd). "Dopasuj orientację do arkusza" odpowiada autocadowskiemu "Uzgodnij orientację bloku z arkuszem" i określa, czy orientacja odniesienia do bloku w rzutniach obszaru papieru odpowiada orientacji układu. Właściwość annotative została zaimplementowana po raz pierwszy w AutoCAD-zie 2008, w roku... 2009 (sic!)
-
Rysowanie seryjne linii z grotem, jedna za drugą.
kojacek odpowiedział(a) na piomar34 temat w ZWCAD i ZWCAD+ 2012
Alternatywny sposób: https://kojacek.wordpress.com/linie-z-grotem-czyli-strzalki-2/. Oczywiście dla programów obsługujących bloki dynamiczne (zwCAD 17 ma już tę cechę?). -
Rysowanie seryjne linii z grotem, jedna za drugą.
kojacek odpowiedział(a) na piomar34 temat w ZWCAD i ZWCAD+ 2012
Bierzesz plik z załącznika. Wklejasz sobie do jakiegoś katalogu. W Ac (czy Zw) uruchamiasz polecenie appload, wybierasz plik i zatwierdzasz. Po załadowaniu, masz dostępne polecenie L-LINIA. Na marginesie, jeśli chodzi o ładowanie lsp, arx, dll, zrx itd, czy ogólnie o korzystaniu z możliwości adaptacji, mógłbyś wykazać więcej swojego zaangażowania i dowiedzieć się w help-ie, poprzeglądać to czy inne fora cad... l-line.lsp -
Rysowanie seryjne linii z grotem, jedna za drugą.
kojacek odpowiedział(a) na piomar34 temat w ZWCAD i ZWCAD+ 2012
Dla AutoCAD-a na 100%. Możecie sprawdzić czy u was też chodzi. Jak wcześniej mówiłem, zaledwie parę linijek: https://kojacek.wordpress.com/autolisp/inne/linie-z-grotem-czyli-strzalki/ -
Rysowanie seryjne linii z grotem, jedna za drugą.
kojacek odpowiedział(a) na piomar34 temat w ZWCAD i ZWCAD+ 2012
Zrobienie dla Ac jakiegoś prostego (bez obsługi błędów i cudów konfiguracyjnych) lispa, malującego owe kreski, nie powinno zająć więcej niż 20 linijek i co najwyżej 20 minut... -
Nie wiem jak ma to działać w ZwCAD-zie, ale funkcja mh:MsgCommaToDot, ogólnie nie wiadomo czemu służy. W mojej opinii zamiana przecinków na kropki powinna mieć miejsce tylko w jednej sytuacji: pozostałe znaki reprezentują liczby. Tak nie jest.
-
Tak jak w opisie podałem - są to dwa Fieldy zagnieżdżone. Pierwszy to pobrany kąt obiektu typu linia - to jest _ObjId 2081....864, i to jest odniesienie do obiektu graficznego. Oraz drugi, to jest _FldPtr 2081...760, czyli wartość kąta tej linii, czyli Field jako obiekt niegraficzny. Jeden jest odwołaniem do obiektu, drugi odwołaniem do jego właściwości (tutaj kąta).
-
W programach z obsługą pól danych (FIELD) można tworzyć dynamiczny opis wartości pochylenia: https://kojacek.wordpress.com/autolisp/inne/teksty-i-opisy/field-pochylenie-dynamiczne/
-
Tutaj szerszy opis: https://kojacek.wordpress.com/autolisp/obiekty-niegraficzne/tablice-symboli/blok-effectivename/
-
Zagadnienie (bo nie problem) w AutoCAD, było (na polskim forum CAD) omawiane już wiele lat temu (gdy tylko pojawiły się bloki dynamiczne). Droga jest stosunkowo prosta: Odniesienie (wstawienie) bloku (mające nazwę anonimową) jest dynamicznym blokiem zależnym od nazwanego bloku dynamicznego, po spełnieniu warunków - (1) jego definicja posiada dane dodatkowe aplikacji o nazwie "AcDbBlockRepBTag", oraz (2) zawiera (w tych danych dodatkowych) odniesienie do uchwytu (handle) obiektu, który jest definicją bloku nazwanego. W zestawie funkcji CADPL-Pack, (http://forum.cad.pl/cadpl-pack-v1-lsp-t78161.html) zdefiniowana jest funkcja o nazwie cd:BLK_GetDynBlockNames. Zwraca ona listę wszystkich nazw odniesień (bloków anonimowych) zależnych.
-
LISP - wielolinia odniesienia
kojacek odpowiedział(a) na gruzin temat w Wsparcie programistyczne LISP i VisualLISP
Obawiam się że się nie da. Dla twoich wywołań (bez ostatniego) sprawdź: (entget (vlax-vla-object->ename (vla-item mldrdict 0))) Wywołanie to zwraca coś podobnego do tego: ((-1 . <Entity name: 94c8760>) (0 . "ACAD_PROXY_OBJECT") (5 . "E1") (102 . "{ACAD_REACTORS") (330 . <Entity name: 94c8870>) (102 . "}") (100 . "AcDbMLeaderStyle") (90 . 499.000) (91 . 0.000000) (95 . 0.000000) (70 . 0) (94 . 0.000000)) W AutoCAD-zie to samo wywołanie zwraca: ((-1 . <Nazwa elementu: 7ff663004ce0>) (0 . "MLEADERSTYLE") (5 . "25E") (102 . "{ACAD_REACTORS") (330 . <Nazwa elementu: 7ff663004150>) (102 . "}") (330 . <Nazwa elementu: 7ff663004150>) (100 . "AcDbMLeaderStyle") (179 . 2) (170 . 2) (171 . 1) (172 . 0) (90 . 2) (40 . 0.0) (41 . 0.0) (173 . 1) (91 . -1073741824) (340 . <Nazwa elementu: 0>) (92 . -2) (290 . 1) (42 . 0.4) (291 . 1) (43 . 2.0) (3 . "") (341 . <Nazwa elementu: 0>) (44 . 0.18) (300 . "") (342 . <Nazwa elementu: 0>) (174 . 7) (178 . 6) (175 . 0) (176 . 0) (93 . -1073741824) (45 . 0.2) (292 . 0) (297 . 0) (46 . 5.0) (343 . <Nazwa elementu: 0>) (94 . -1073741824) (47 . 1.0) (49 . 1.0) (140 . 1.0) (293 . 1) (141 . 0.0) (294 . 1) (177 . 0) (142 . 1.0) (295 . 0) (296 . 0) (143 . 0.125) (271 . 0) (272 . 9) (273 . 9) (298 . 1)) Wynika z tego że w ZwCAD-zie, nie ma obiektu typu "MLEADERSTYLE". Obsługuje go uniwersalny obiekt zastępczy "ACAD_PROXY_OBJECT". Domyślam się zatem że ZwCAD obłuży z LISP-a style wielolinii, za jakiś czas dopiero (wątpię czy będzie to 2017). -
Importowanie i eksportowanie właściwości rysunku
kojacek odpowiedział(a) na Marek-M temat w ZWCAD+ 2015
Dyskusje na ten temat w przeszłości miały już miejsce: http://forum.cad.pl/przenoszenie-w-a-ciwo-ci-rysunku-drawing-properties-t79709.html? oraz: http://forum.cad.pl/cadpl-pack-v1-lsp-t78158-100.html Niezmiennie polecam zatem CADPL-Pack'a, do tychże zastosowań, z uwzględnieniem funkcji: cd:DWG_AddCustomProp cd:DWG_GetCustomProp cd:DWG_RemoveCustomProp cd:DWG_GetSummaryInfo cd:DWG_SetSummaryInfo oraz innych, do zapisu / odczytu plików tekstowych - tamże -
Proszę o pomoc w przerobieniu pliku Lispa
kojacek odpowiedział(a) na maciejmar111 temat w Wsparcie programistyczne LISP i VisualLISP
Teza oparta na jakichś przykładach? Pliki lsp w AutoCAD są plikami tekstowymi. Edytor Visual LISP może kompilować pliki lsp do dwóch formatów: fas (fast lsp), oraz do vlx, gdzie oprócz tekstowego lsp, można dołączyć definicje okien dialogowych dcl. Kompilacja jako taka, chroni (ukrywa) kod przed nieautoryzowanym wykorzystaniem, właściwie "przy okazji". Celem kompilacji jest przede wszystkim zoptymalizowanie działania kodu,i w efekcie przyspieszenie działania. Różnice w szybkości między interpretowanym tekstowym lsp a skompilowanym vlx, mogą w skrajnych przypadkach być nawet 10-12 krotne. -
Wybieranie elementów, Visual Lisp, edycja bloku
kojacek odpowiedział(a) na 2P temat w Wsparcie programistyczne LISP i VisualLISP
Nie mogę na AutoCAD-zie sprawdzić ani jednego rozwiązania... z prostej przyczyny - AutoCAD działa poprawnie i w trybie edycji lokalnej bloku (REFEDIT), po prostu nie jest możliwy wybór innych obiektów niźli tych z zestawu roboczego. Czyli generalnie jest to przypadłość ZwCAD-a, może po prostu mogliby to poprawić? A wtedy żadna protetyka nie będzie potrzebna.