Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

La longueur retournée par la procédure qui suit, est celle de la ligne de [surligneur]BASE[/surligneur] de de la multiligne.

 

(defun c:ml_length ( / js ent dxf_ent closed lst l_dist)
(princ "\nChoix de la multiligne  : ")
(setq js (ssget "_+.:E:S" '((0 . "MLINE"))))
(cond
	(js
		(setq
			ent (ssname js 0)
			dxf_ent (entget ent)
			closed (boole 1 (cdr (assoc 71 dxf_ent)) 2)
			lst (mapcar '(lambda (x) (trans x ent 1)) (mapcar 'cdr (vl-remove-if '(lambda (x) (/= (car x) 11)) dxf_ent)))
			l_dist (mapcar 'distance (reverse (cdr (reverse lst))) (cdr lst))
		)
		(if (not (zerop closed)) (setq l_dist (cons (distance (last lst) (car lst)) l_dist)))
		(princ (strcat "\nLa longueur de la ligne de base de la multiligne est de: " (rtos (apply '+ l_dist))))
	)
	(T (princ "\nSélection vide ou ce n'est pas une multiligne"))
)
(prin1)
)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité