subrotinas

Manipulação de Polígonos

;| subrotina auxiliar, calcula a área de um polígono fechado, mas sem dividir por 2, nem retirar o sinalObs: pts é a lista de corrdenadas, ex: ((x1 y1) … (xn yn)) |;(defun ia_proclpt (pts) (setq pts (append pts (list (car pts)))) (– (apply ‘+ (mapcar ‘* (mapcar ‘car pts) (cdr (mapcar ‘cadr pts)))) (apply ‘+ […]

Programas, subrotinas

get-user-polig

Na verdade estou tentando modificar esta rotina para que ela não precise usar os layers… pois se você tem um desenho muito grande, ela pode se tornar lenta ao alterar o “LOCK” do layer… (defun get-user-polig (/ pts lst tmp cmd) (setq pts nil lst nil cmd (getvar “cmdecho”) again t) (vlax-for tmp (vla-get-layers (vla-get-activedocument

Programas, subrotinas

get-list-attrib

Esta rotina devolve uma lista contendo o nome e o VLA-OBJECT dos atributos de um bloco (defun get-list-attrib (ent) (if (setq ent (ename-of ent)) (mapcar ‘(lambda (x) (list (vla-get-tagstring x) x)) (vlax-safearray->list (vlax-variant-value (vla-GetAttributes (vlax-ename->vla-object ent))))))) ela devolve uma lista de pares (“tagstring” vla-object) do bloco (ent -> ename)

Rolar para cima