Jak ustawić skalę opisową rzutni poprzez VisualLisp
Z poziomu Visual Lisp można ustawić wiele własności obiektów typu viewport ale nie ma funkcji, dzięki której można bezpośrednio ustawić skalę opisową dla danej rzutni. Trudno znaleźć jakiekolwiek opisy jak to zrobić. Udało mi się znaleźć using lisp to set annotation scale for a viewport sposób wykorzystujący dodatkową funkcję napisaną w ObjectARX w celu ominięcia ograniczeń Visual Lisp ale z powodu słabej znajomości C++ i braku chęci jego nauki, znaleziony sposób mnie nie satysfakcjonował. Drążyłem temat głębiej i udało mi się w odkryć, że jeżeli rzutnia ma ustawioną skalę opisową, to dodatkowe informacje zapisane są w xRecord o nazwie ASDK_XREC_ANNOTATION_SCALE_INFO w słowniku załączonym do obiektu rzutni. Dzięki poniższej funkcji odczytamy dane zawarte w xRecord obiektu: ( setq vpDict ( vla-GetExtensionDictionary vpObj ) ;get extension dictionary of viewport object vpXrec ( vla-item vpDict "ASDK_XREC_ANNOTATION_SCALE_INFO" ) ;get xRecord "ASDK_X...