-
Postów
286 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
45
Ostatnia wygrana kojacek w dniu 20 Kwietnia
Użytkownicy przyznają kojacek punkty reputacji!
Profile Information
-
Gender
Male
Ostatnie wizyty
Blok z ostatnimi odwiedzającymi dany profil jest wyłączony i nie jest wyświetlany użytkownikom.
Osiągnięcia kojacek
Nowicjusz (2/6)
80
Reputacja
-
kojacek obserwuje zawartość Blok ze statycznym punktem zaczepienia , Szyk (Array) i LISP , Wyświetlanie polilinii i 3 innych
-
Kiedy dostajesz informację że "twój lisp nie działa..." (a w setkach czy tysiącach testów/praktycznych zastosowań jest ok...) Opis przypadku: Lisp wybiera bloki, filtruje anonimowe i pobiera EffectiveName. Od kilkunastu lat jest wszystko ok, chyba że używasz ZwCAD-a. Bo w tym momecie następuje wyjebka. Dowolny (nie klasyczny) szyk AutoCAD-a, jest w rzeczywistości blokiem anonimowym, natomiast czy jest szykiem można sprawdzić funkcją getpropertyvalue (właściwość ClassName). Opisałem to wiele lat temu: https://kojacek.wordpress.com/2018/04/20/typy-odniesien/ W ZwCAD (jak się okazuje) sprawa wygląda nieco inaczej: szyk jest również blokiem anonimowym (ObjectName=AcDbBlockReference) ale... nie ma właściwości EffectiveName (i również kilku innych). Tutaj także nie użyjesz getpropertyvalue bo jej w ZwCAD (po prostu nie ma). Na marginsie - ten badany tutaj szyk jest obiektem VLA typu IZcadAssocArrayRect, który w autocadowskim modelu ActiveX nie występuje. Jest obiektem który chyba właściwie "udaje" szyk AutoCAD-a. Ciekaw jestem (nie mam możliwości sprawdzić) czy mechanizm dostępu do elementów szyku (który opisałm kiedyś: https://kojacek.wordpress.com/2024/05/26/dostep-do-elementow-szyku/) będzie działał. Poniżej zrzuty dla tego samego obiektu (handle="286") w tym samym rysunku sprawdzone w AutoCAD: oraz ZwCAD: Czy ktoś używa innych klonów (IntelliCAD / BricsCAD / inne) i mógły sprawdzić jak to tam wygląda? P.S. Obejściem problemu który zastosowałem żeby LISP działał w ZwCAD jest: (if (vl-catch-all-error-p (vl-catch-all-apply 'vla-get-EffectiveName (list Obj))) (cdr (assoc 2 (entget (vlax-vla-object->ename Obj)))) (vla-get-EffectiveName Obj) )
-
Martin_S zareagował(a) na odpowiedź w temacie:
Wyświetlanie polilinii
-
Zatem z czystym sumieniem mogę polecić (prawie 10 letnie) rozwiązanie (3 w jednym): https://kojacek.wordpress.com/2017/12/30/uproszczone-wyswietlanie-obiektow/
-
To jest ustawienie zmiennej FILLMODE, czy osobny wynalazek?
-
Martin_S zareagował(a) na odpowiedź w temacie:
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
-
dmatusz3 zareagował(a) na odpowiedź w temacie:
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
-
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
Ok. Blok jest w porządku. Niemniej podstawowym założeniem SLINE, było zredukowanie klikania do minimum. Wywołanie polecenia (1) opcja (2) wskazanie (3) dwóch punktów... W realnym świecie (swego czasu) zastosowanie w "schematologii i rurologii": -
Dlok dynamiczny - "dwukierunkowy"
kojacek odpowiedział(a) na Sami_1 temat w ZWCAD Standard i Professional
Nie jako blok dynamiczny - tylko wiązania parametryczne i nie w ZWCad tylko w AutoCAD. Wygląda to tak. Dwuelementowa polilinia z więzami geometrycznymi (prostopadłość i poziomość), oraz więzami wymiarowymi. Segment poziomy = różnica długości całkowitej (to wyrażenie - parametr użytkownika i jest do ustawienia, traktowane jako stała) i segmentu pionowego. Jego zmienna zadana długość, powoduje zmianę długości segmentu poziomego, zgodnie z wyrażeniem. Poniżej działanie tegoż: -
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
Podsumowując - w ZwCAD 2026 PL wyrażenie (quote (eval SYM)) nie działa, ale ('eval SYM) jest ok. Czy tylko w tej wersji, czy w innych też? W AutoCAD jest ok - przynajmniej nie spotkałem się z tym problemem nawet w starych wersjach. To że quote w tym miejscu nie działa, jest dziwne, bowiem wydaje się że ' (apostrof) jest tylko skrótem od (czy do) quote, więc interpreter LISP-a w rzeczywistości wykorzystuje funkcję quote. -
zonikpl zareagował(a) na odpowiedź w temacie:
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
-
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
Jeżeli nie wprowadzałeś jakichś "ulepszeń" program powinien działać prawidłowo. Przetestuj w linii poleceń wywołania funkcji: (jk:SLN-GetKey) wybierając dostępne opcje. Wybrane słowo kluczowe (także każde ostatnie jako domyślne wybrane enterem) przypisywane jest do zmiennej globalnej o nazwie *SLN*. Jej wartość determinuje tryb rysowania. -
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
-
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
https://kojacek.wordpress.com/2015/11/04/cadpl-pack/ -
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
-
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
Spróbuj tego tak jak na obrazie powyżej, zamień wyrażenie - (quote (eval %1)) na ('eval %1). To samo dla %2. -
dmatusz3 zareagował(a) na odpowiedź w temacie:
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
-
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
voila: https://kojacek.wordpress.com/2026/04/08/linie-lamane-2-czyli-jak-to-dziala/ -
Szukam kodu Lisp autorstwa Kojacek o nazwie "Linie łamane"
kojacek odpowiedział(a) na zonikpl temat w Wsparcie programistyczne LISP i VisualLISP
Myślę że coś (chyba) mam... 😉 potrzebuję jednak trochę czasu, bo nie mam tego przy sobie. -
Pobranie cech (właściwości) z obiektu
kojacek odpowiedział(a) na PiotrI temat w Wsparcie programistyczne LISP i VisualLISP
Ja jak zwykle polecam korzystanie z CADPL-Pack'a (https://kojacek.wordpress.com/2015/11/04/cadpl-pack/) - i z tamtąd funkcję: cd:ACX_GetProp. Przykładowe wywołanie: (cd:ACX_GetProp (entlast) '("LineType" "Color" "Layer" "Bla-bla")) Funkcja zwraca listę par kropkowych z dowolnymi własciwościami. Funkcja jest przyjazna, bo dla właściwości, których obiekt nie ma (lub błędnych nazw właściwości (przykładowe "Bla-bla")) nadal działa. Zwróci dla powyższego wywołania: (("LineType" . "ByLayer") ("Color" . 3) ("Layer" . "0") ("Bla" . :vlax-null)) Pozwala to zastosować na przykład jedną taką samą listę pobierania właściwości dla wielu obiektów. -
snooper83 zareagował(a) na odpowiedź w temacie:
Blok ze statycznym punktem zaczepienia
-
Blok ze statycznym punktem zaczepienia
kojacek odpowiedział(a) na snooper83 temat w ZWCAD Standard i Professional
Blok dynamiczny z parametrem rozciągania biegunowego. W tym przypadku pewnie będzie trzeba mieć 2 bloki ("lewy i prawy"), dlatego też wielolinia odniesienia z blokiem i atrybutami jednak lepiej zda egzamin.