zwonko Posted August 4, 2021 Report Share Posted August 4, 2021 (edited) Wszystko o co mi chodzi wyjaśnione jest w załączniku w DWG. Próbowałem wystartować z lispa udostępnionego tutaj: https://www.theswamp.org/index.php?topic=19881.30 (lisp Moveatt) ale niestety rusza wszystko nie to co trzeba i nie wiem gdzie wskazać konkretny atrybut. CO pewnie też ważne to blok może mieć oczywiście różny obrót, ale podany wyzej lisp sobie z tym radzi. Proszę o pomoc... correct_opis.dwg Edited August 4, 2021 by zwonko Quote Link to comment Share on other sites More sharing options...
zwonko Posted August 4, 2021 Author Report Share Posted August 4, 2021 EDIT: znalazłem jeszcze że LeeMac zrobil coś takiego jak Mvatt: http://www.lee-mac.com/attmodsuite.html ale widzę że jest tu problem z rotacją bloków no i jak do tego dopisać przesuwanie elipsy to nie wiem... Quote Link to comment Share on other sites More sharing options...
zwonko Posted August 7, 2021 Author Report Share Posted August 7, 2021 w sumie to innym podejsciem ale ogarnąłem temat (defun C:corblk (/ doc x ATT dis rot ) (vl-load-com) (princ "\nMove selected Attributes") (setq doc (vla-get-activedocument (vlax-get-acad-object))) (vla-startundomark doc) (cond ((ssget (list (cons 0 "INSERT"))) (setq dis (getdist "\nType in scale: ")) (setq dis (* 3.8 dis)) (vlax-for item (vla-get-ActiveSelectionSet doc) (cond ((= (vla-get-HasAttributes item) :vlax-true) (setq att (variant-value (vla-getattributes item))) (foreach x (safearray-value att) (setq rot (vla-get-rotation x)) (vla-put-insertionpoint x (vlax-3d-point (polar (safearray-value (variant-value (vla-get-insertionpoint x))) rot dis ) ) ) ) (vla-update item)) ((princ "\nNo blocks in drawing")))))) (vla-endundomark doc) (princ) ) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.