Aller au contenu

Points uniques sur une sélection de points AutoCAD


fabcad

Messages recommandés

Bonjour à tous,

 

J'ai un ensemble de points (objets points AutoCAD) qui sont en fait les sommets de zonages (polylignes fermées), je souhaiterais filtrer par un changement de couleur les points qui sont uniques par leur coordonnées et laisser les doublons triplons etc.

 

Le but étant de trouver des incohérences géométriques entre chaque polyligne fermée qui se touchent ou bien de déceler des micro-polygones.

 

Je joins un fichier dwg des points.

 

Merci d'avance,

 

Fabrice Le Rennais Métropolitain

Points - Standard.zip

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

J'ai un code qui isole dans un calque 0-MODIFICATION les blocs en double, en triple, etc.

 

Après quelques modifications, je pense que ça peut te dépanner, le voici:

 

(defun c:bloc (TYPEENTITE)

 

(setq CARACTERISTIQUELISTE nil)

(setq SELECTION1 (ssget "X" (list (cons 0 "INSERT")(cons 410 "Model"))))

(if SELECTION1

(progn

(setq SELECTION2 (ssadd))

(setq NUMBERENTITE1 (sslength SELECTION1))

(setq I 0)

(princ "\n Objet en double (X,Y) : ")

(while (< I NUMBERENTITE1)

(setq ENTITE1 (ssname SELECTION1 I))

(setq ENTITELISTE1 (entget ENTITE1))

(setq I (+ I 1))

(setq ROTATION (cdr (assoc 50 ENTITELISTE1)))

(setq POINT (cdr (assoc 10 ENTITELISTE1)))

(setq CALQUE (cdr (assoc 8 ENTITELISTE1)))

(setq BLOC (cdr (assoc 2 ENTITELISTE1)))

 

(setq CARACTERISTIQUE (list ROTATION POINT CALQUE BLOC))

 

(if (not (member CARACTERISTIQUE CARACTERISTIQUELISTE))

(setq CARACTERISTIQUELISTE (cons CARACTERISTIQUE CARACTERISTIQUELISTE))

(progn

(ssadd ENTITE1 SELECTION2)

(princ (strcat "\nBloc " BLOC " , X=" (rtos (car POINT) 2 3) " Y=" (rtos (cadr POINT) 2 3) ))

)

)

)

(if (> (sslength SELECTION2) 0)

(progn

(setq NUMBERENTITE2 (sslength SELECTION2))

(setq I 0)

(while (< I NUMBERENTITE2)

(setq ENTITE2 (ssname SELECTION2 I))

(setq I (+ I 1))

;;; (entdel ENTITE2)

(setq ENTITELISTE2 (entget ENTITE2))

(setq ENTITELISTE2 (subst (cons 8 "0-MODIFICATIONS") (assoc 8 ENTITELISTE2) ENTITELISTE2))

(entmod ENTITELISTE2)

)

(princ (strcat "\nIsoler dans le calque 0-MODIFICATIONS: " (itoa NUMBERENTITE2)))

)

(princ "\nAucun objet dupliqué.")

)

)

(princ "\nAucun objet sélectionné.")

)

(princ)

)

 

Bonne journée

Lien vers le commentaire
Partager sur d’autres sites

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é