-
Postów
28 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
1
Ostatnia wygrana swazy w dniu 17 Grudnia 2022
Użytkownicy przyznają swazy punkty reputacji!
Ostatnie wizyty
Blok z ostatnimi odwiedzającymi dany profil jest wyłączony i nie jest wyświetlany użytkownikom.
Osiągnięcia swazy
Początkujący (1/6)
1
Reputacja
-
swazy zareagował(a) na odpowiedź w temacie: [LISP] Dostęp do elementów w szyku
-
[LISP] Dostęp do elementów w szyku
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Przy pomocy: (getpropertyvalue blkEnt "AcDbDynBlockPropertyA1 X") ...udało mi się wyciągnąć współrzędne, które mnie interesują, ale ogrom niewiedzy pozostał... (dumpallproperties blkEnt) Co to właściwie jest i czy da się to w jakiś w miarę łopatologiczny sposób wyjaśnić laikowi co się tutaj wydarza? -
[LISP] Dostęp do elementów w szyku
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Wiem, tylko że nie mogę tego udostępnić bo to element sytemu, prawa autorskie, bla, bla, bla.... https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/get-list-of-parameters-being-used-in-block-without-vla-vlax/m-p/8461420#M378276 Wykopałem z czeluści internetów taki post - chodzi mi praktycznie o to samo co w przytoczonym trójkącie. Tylko z tego co rozumiem AutoCad ma (albo miał) wbudowaną funkcję getpropertyvalue. Sprawdzę to jutro (zaraz) w pracy. Czy ZWCAD ma coś analogicznego, albo czy da się takowe wydziobać? -
[LISP] Dostęp do elementów w szyku
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Czy brak reakcji na pytanie oznacza, że w internecie było to wałkowane miliard razy i powinienem sobie to znaleźć (oczywiście próbowałem)? -
swazy zareagował(a) na odpowiedź w temacie: [LISP] Dostęp do elementów w szyku
-
[LISP] Dostęp do elementów w szyku
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Dziękuję za odpowiedź. Muszę się z tym przespać i pewnie będę męczył pytaniami dalej A póki co to mam jeszcze jedno pytanie z kolejnej beczki. Jak mogę się dostać do tych danych? To jest point parameter, ale nie ma jego wartości w atrybutach, cd:BLK_GetEntity też tego nie pokazuje. Dodam jeszcze, że to nie jest blok dynamiczny (wg cd:BLK_IsDynamicInsert ). -
[LISP] Dostęp do elementów w szyku
swazy opublikował(a) temat w Wsparcie programistyczne LISP i VisualLISP
Dobry wieczór, Mam pytanie programistyczne odnośnie szyków. Gdzie i w jaki sposób zapisane są dane poszczególnych elementów szyku? Czy da się uzyskać dane położenia poszczególnych jego elementów? Czy możliwa jest edycja zakresu szyku, liczby elementów czy rozstawu poprzez Lisp'a? I drugie pytanie z innej beczki: czy możliwe jest zaprogramowanie własnych osnapów? Przykładowo chciałbym uzyskać endpoint i middlepoint, ale tylko dla obiektów ze wskazanej warstwy. -
atrybuty w blokach
swazy odpowiedział(a) na picaro temat w Wsparcie programistyczne LISP i VisualLISP
A co dokładnie jest problemem? Wstawienie bloku? Zmiana atrybutu? Odczytanie pikietażu? Jest to jak najbardziej do zrobienia Lisp-em. -
Wyciągnięcie danych z bloku dynamicznego
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Dziękuję za odpowiedź. Moją ideą było przeszukanie "m" razy (gdzie m to długość mojej listy) zbiór wszystkich bloków w rysunku i pisałem to pod jeden konkretny blok, dlatego brak filtrów na wejściu. Teraz widzę, że "(1+ m)" i (1+ n ) są w złych miejscach no i mam oczywiście świadomość, że działanie programu jest mało finezyjne....ale tak jakoś nauczyłem się kiedyś AutoLispa a Visual wydaje mi się mniej czytelny no i nie ma o tym książek (chyba 😄 ). -
Wyciągnięcie danych z bloku dynamicznego
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Pozwolę sobie pociągnąć wątek dalej. Dlaczego nie chce mi działać coś takiego i gdzie tu jest błąd? (defun C:HL ( / ) (setq LISTA (cdr (cd:BLK_GetDynBlockNames "<nazwa mojego bloku>" ))) (setq BLOKI (ssget "x" '(( 0 . "INSERT" )))) (setq WYB nil ) (setq n 0 ) (repeat (length LISTA ) (setq m 0 ) ;(setq jeszcze T ) (repeat (sslength BLOKI ) (setq POM (ssname BLOKI m )) (if (= (cdr (assoc 2 (entget POM ))) (nth n LISTA )) (progn (if WYB (progn (setq WYB (ssadd (cdr (assoc -1 (entget POM ))) WYB )) );progn (progn (setq WYB (ssadd (cdr (assoc -1 (entget POM ))))) );progn );if (setq jeszcze nil ) (setq n (1+ n )) );progn );if ;(if (= m (- (sslength BLOKI) 1 ))(setq jeszcze nil )) (setq m (1+ m )) );repeat );repeat (command "hideobjects" WYB "" ) (princ (strcat "\n...ukrylem < " (rtos (sslength WYB ) 2 0 ) " > blok/i/ow..." )) (princ) );defun Kod działa częściowo, bo listę bloków anonimowych tworzy tak jak bym tego chciał, ale dalsza część wyłapuje i ukrywa tylko część z bloków z listy... Na przykład *U286 nie ukrywa. -
swazy zareagował(a) na odpowiedź w temacie: Wyciągnięcie danych z bloku dynamicznego
-
Wyciągnięcie danych z bloku dynamicznego
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Ale czad! 🤩 Dziękuję! Na ZW-Cadzie 2024 działa bez zarzutów. A z ciekawości: czy da się to zrobić klasycznym AutoLispem ? -
Wyciągnięcie danych z bloku dynamicznego
swazy opublikował(a) temat w Wsparcie programistyczne LISP i VisualLISP
Dobry wieczór, Mam problem z programistycznym okiełznaniem bloków dynamicznych - chodzi o blok belki prefabrykowanej występujący w kilku określonych długościach. Belka przedstawiona jest za pomocą bloku dynamicznego, który ma zdefiniowany kilka Visibility z Linear Parameter. Czy mogę prosić o nakierowanie w jaki sposób mogę się dowiedzieć, która długość belki jest aktualnie wybrana na rysunku? Obstawiam, że to siedzi gdzieś w słownikach. "(102 . {ACAD_XDICTIONARY) (360 . <ENTITY NAME: 2ba9f768>) (102 . })", Próbowałem googlować, ale nie za bardzo potrafię się połapać o co w tej technologyi chodzi... (niestety nie mam zgody na upublicznienie pliku z blokiem, więc muszę tak lakonicznie i opisowo) Będę dźwięczny za pomoc :) -
Cześć! Coś czuję że zadaję głupie pytanie, ale mój mały rozumek uważa że to powinno działać ale niestety nie działa. Dlaczego? 🧐 (setq qqq (entget (car (entsel )))) (setq qqq (subst (cons 50 0.25 )(assoc 50 qqq) qqq )) (setq entmod qqq )
-
dmatusz3 zareagował(a) na odpowiedź w temacie: Lisp - zlecenie napisania programu
-
[AutoLisp] Zabezpieczenie Lisp'a
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Dzięki wielkie! Brzmi jak weekend z Lispem bo zajeżdża mi to czarną magią 😛 -
Lisp - zlecenie napisania programu
swazy odpowiedział(a) na Trinity111 temat w Wsparcie programistyczne LISP i VisualLISP
Chyba jestem cieńszy w uszach niż myślałem... 😞 (defun C:MODYFIKACJA_WARSTW ( / POM n ENT_POM BASE ) (setvar "cmdecho" 0 ) (setq BASE (list ;W tym miejscu uzupełniasz sobie listę interesujących Cię wartstw wg podanego klucza ;NAZWA WARSTWY || 1=widoczny / -1=wygaszony || KOLOR || STYL LINII '( "209-Opis konturu klasyfikacyjnego" 1 55 "sm05_500") '( "238-Punkt adresowy budynku" 1 161 "sm05_500") '( "219-Linia granicy" 1 1 "sm05_500") ));setq (foreach EL BASE (if (/= nil (tblobjname "layer" (nth 0 EL ))) (progn (setq POM (tblobjname "layer" (nth 0 EL))) (setq ENT_POM (entget POM )) (setq ENT_POM (subst (cons 62 (* (nth 1 EL )(nth 2 EL )))(assoc 62 ENT_POM ) ENT_POM )) (setq ENT_POM (subst (cons 6 (nth 3 EL ))(assoc 6 ENT_POM ) ENT_POM )) (entmod ENT_POM ) );progn (progn (princ (strcat "\n...barak warstwy: <<<" (nth 0 EL ) ">>> na rysunku...")) );progn );if );foreach (princ "\n<<< warstwy zmodyfikowane! >>>") (princ) );defun (defun C:MODYFIKACJA_OBIEKTOW ( / KOLOR WYSOKOSC WYB POM ENT_POM n ) (setvar "cmdecho" 0 ) (setq KOLOR 12 ;<<<<<<<<<<<<<<< TUTAJ WPISUJESZ NR KOLORU WYSOKOSC 2.40 ;<<<<<<<<<<<<<<< TUTAJ WPISUJESZ WYSOKOSC TEXTU );setq (setq WYB (ssget "x" '((-4 . "<AND")(0 . "TEXT")(8 . "211-Nr dzia*ki")(-4 . "AND>")))) ;<<<<<<< TUTAJ W NAWIASIE (8 . "xxx") WSTAWIASZ NAZWE WARSTWY (if (/= nil WYB) (progn (setq n 0 ) (repeat (sslength WYB ) (setq POM (ssname WYB n )) (setq ENT_POM (entget POM)) (setq ENT_POM (subst (cons 40 WYSOKOSC )(assoc 40 ENT_POM ) ENT_POM )) (if (assoc 62 ENT_POM) (progn (setq ENT_POM (subst (cons 62 KOLOR )(assoc 62 ENT_POM ) ENT_POM )) );progn (progn (setq ENT_POM (append '(cons 62 KOLOR ) ENT_POM )) );progn );if (entmod ENT_POM ) (setq n (1+ n )) );repeat (princ "\n<<< obiekty zmodyfikowane! >>>") );progn (progn (alert "\n<<< nie znalazłem tekstow o podanych kryteriach! >>>") );progn );if (princ) );defun Popełniłem coś takiego - proszę o krytykę tutejszych Gooru. Działa, ale nie sądzę że jest to najwyżej punktowana odpowiedź i trzeba by się było nad tym jeszcze chwilę popastwić. a) nie potrafię sobie poradzić z polskimi znakami w nazwach warstw b) nie wiem jak się zmienia kolory "truecolor") -
Lisp - zlecenie napisania programu
swazy odpowiedział(a) na Trinity111 temat w Wsparcie programistyczne LISP i VisualLISP
Piszesz o rzeczach podstawowych i niezbędnych jak prawo do edukacji na karcie praw człowieka 😄 Spróbuję zaraz coś pomocnego wyprodukować. -
[AutoLisp] Zabezpieczenie Lisp'a
swazy odpowiedział(a) na swazy temat w Wsparcie programistyczne LISP i VisualLISP
Już bardziej, ale tak o poziom bezpieczniej 😛 Myślałem o czymś w stylu PIN-u (no bo zrobienie czegoś w stylu (if (not PIN)(exit)) , ale taki kod można udostępnić tak samo łatwo jak i sam skompilowany plik. Zastanawiam się jak swoje kody zabezpieczają ludzie, którzy odpłatnie zajmują się pisaniem skryptów do środowiska CAD. Czy też może jest to zbyt prymitywne środowisko i nikomu się nie chce bawić w takowe biznesy???