[AutoLISP] Różnice w działaniu DTEXT


Rekomendowane odpowiedzi

Mam taką oto sytuację. Wpisując komendę DTEXT bezpośrednio z klawiatury mam możliwość wpisania kilku wierszy tekstu podzielonych ENTER'em. Po potwierdzeniu enterem pustej linii komenda kończy działanie a w rysunku mam kilka tekstów jednowierszowych. To jest dla mnie OK i tak jest również a AC. Gdy próbuję to zaimplementować za pomocą command w LISP'e w taki oto sposób :

(command "_dtext" (setq p1 (getpoint "\nWskaż punkt:")) (getdist "\nWskaz wysokosc:" p1) (* (/ (getangle "\nWskaż kąt:" p1) pi) 180))

Można wprowadzić tylko jeden wiersz i enter kończy działanie takiej komendy. W powyższym zakładam że domyślna wysokość tekstu w bieżącym stylu jest 0 dlatego jest człon pytania o wysokość tekstu. Dla bieżącego stylu posiadającego ustawioną domyślną wysokość pytanie o wysokość powinno być pominięte np. taka wersja wywołania ale nie zmienia to meritum

(command "_dtext" "_s" "txt2" (setq p1 (getpoint "\nWskaż punkt:")) (* (/ (getangle "\nWskaż kąt:" p1) pi) 180))

W AC działa zgodnie z oczekiwaniami tak jak przy "gołym" wywołaniu _dtext, a w ZwCAD niestety jest różnica, która mnie nieco irytuje. 

Czy mógłby ktoś wyjaśnić tą rozbieżność lub ewentualnie prośba do przyjaciół z Szansy o zgłoszenie tego do deweloperów?

Odnośnik do komentarza
Udostępnij na innych stronach

Aha. Nie ma różnicy czy wołam dtext czy text i zauważyłem, że takie wywołanie daje pożądany efekt

Command: (command "_text" "_s" "txt2" (setq p1 (getpoint "\nWskaż punkt:")))
_text
Current text style: "txt2"  Text height: 200 Annotative: No
Specify the starting point of text or [Justify/Style]: _s
Enter text style or [?] <txt2>: txt2
Specify the starting point of text or [Justify/Style]: 
Wskaż punkt:
Specify the rotation angle of text <30>: nil
Specify the rotation angle of text <30>: 

Z tym że pojawia się systemowe pytanie o kąt u mnie po angielsku i wszystko działa ok. Ale jak dodam parametr reprezentujący kąt tekstu to już nie jest ok.

Command: (command "_text" "_s" "txt2" (setq p1 (getpoint "\nWskaż punkt:")) 30)
_text
Current text style: "txt2"  Text height: 200 Annotative: No
Specify the starting point of text or [Justify/Style]: _s
Enter text style or [?] <txt2>: txt2
Specify the starting point of text or [Justify/Style]: 
Wskaż punkt:
Specify the rotation angle of text <27>: 30
Text: nil
Text: wefwfewe

 

Edytowane przez perlon
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