Zmiana tekstu na wymiarze liniowym (dla początkującego)


Rekomendowane odpowiedzi

Witam serdecznie, to mój pierwszy post - miejcie wyrozumiałość :)

Chciałem przyspieszyć moją pracę i na początek chciałbym napisać proste polecenie. Mam już istniejący wymiar liniowy (np. A). Chciałbym zamienić tekst na tym wymiarze i uzależnić tekst od wartości wymiaru (chcę opisać ile prętów zbrojeniowych mam na danym odcinku): tekst powinien wyglądać: "#8 co X cm". Gdzie X=A/R (zaokrąglone w górę do całkowitych), gdzie R jest rozstawem. Na początek chciałbym wpisywać w wierszu Rozstaw.

Albo, jeśli jest taka możliwość: rysując dany wymiar, chciałbym wprowadzać R i dostawać końcowy rezultat (wymiar z pożądanym tekstem).

Pracuję na  Arcadia Plus 12.0.109.0.x64.Release. 

Czy mogę prosić o pomoc?

Edytowane przez piotrb
Odnośnik do komentarza
Udostępnij na innych stronach

Tak na szybko to mogłoby to być takie coś:

(setq R (getdist "podaj rozstaw"))
(setq dim (vlax-ename->vla-object (car(entsel "Wybierz wymiar"))))
(setq A (vlax-get-property dim 'Measurement) )
(setq X (/ A R))
(vlax-put-property dim 'TextOverride (strcat "#8 co " (rtos X) " cm"))
  • Nie ma jeszcze zaokrąglenia.
  • Nie wiem czy zadziała w Arcadi. w ZWCAD działa.
Odnośnik do komentarza
Udostępnij na innych stronach

Nie wiem. Nie mam i nie znam Arcadi. 

Ale tak na czuja to skoro pozwala na wskazanie wymiaru to wygląda na to że LISPy obsługuje. Może nie ma albo nie ładuje z automatu środowiska Visual LISP, spróbuj  na początku skryptu dodać linię
 

(vl-load-com)

A jak nie łyknie to spróbujemy jeszcze czegoś innego.

Odnośnik do komentarza
Udostępnij na innych stronach

(vl-load-com)
(setq R (getdist "podaj rozstaw"))
(setq dim (vlax-ename->vla-object (car(entsel "Wybierz wymiar"))))
(setq A (vlax-get-property dim 'Measurement) )
(setq X (/ A R))
(vlax-put-property dim 'TextOverride (strcat "#8 co " (rtos X) " cm"))

wiersz2: podaje rozstaw

wiersz3: wybieram linie wymiarową, po zaakceptowaniu (Enter/spacja) pojawia się komunikat: "błąd: zbyt mało argumentów"

---------------------------------

pytanie 2: gdzie i jak mogę sprawdzić parametry linii wymiarowej (np 'Measurement) itd. Chodzi mi o to, żeby poznać nazwy parameterów danych obiektów.

Odnośnik do komentarza
Udostępnij na innych stronach

56 minut temu, piotrb napisał:

pytanie 2: gdzie i jak mogę sprawdzić parametry linii wymiarowej (np 'Measurement) itd. Chodzi mi o to, żeby poznać nazwy parameterów danych obiektów.

Jeśli dobrze rozumiem pytanie to będzie to

(vlax-dump-object dim t )

gdzie

(setq dim (vlax-ename->vla-object (car(entsel "Wybierz "))))

 

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie