Aller au contenu

Changer automatiquement matricule des points (bloc attribut)


metacilla

Messages recommandés

Bonjour à tous!

 

 

j'ai environs 200 à 300 points sur mon fichier projet pour lesquel le matricule n'est pas renseigné (ca représente la totalité des points).

 

un point en bloc attribut lambda avec 3 attributs

MAT

ALT

COD

 

quelqun arrait-il une commande ou un lisp pour renommer les points (MAT) de 1 à X?

 

D'avance merci les forumeur.

Lien vers le commentaire
Partager sur d’autres sites

(defun c:da-Mat-Tcpoint	(/ jeu n entbloc att)
 (setq jeu (ssget (list (cons 0 "INSERT") (cons 2 "TCPOINT"))))
 (setq n 0)
 (repeat (sslength jeu)
(setq entbloc (ssname jeu n))
(setq att (subst
			(cons 1 (itoa (1+ n)))
			(assoc 1 (entget (entnext entbloc)))
			(entget (entnext entbloc))
		  )
)
(entmod att)
(setq n (1+ n))
 )
)

Lien vers le commentaire
Partager sur d’autres sites

Hello Vieil Ours Grincheux & Grognon

 

Je suis NUL en Lisp mais il me semble (vu de mes yeux de Decapode antique)

que tu supposes que ALT est le 1 er Attribut !?

 

N'est ce pas un peu risque ??

Ne devrais tu pas tester l Etiquette MAT avec precision !?

 

Bye, le crabe "penible"

Autodesk Expert Elite Team

Lien vers le commentaire
Partager sur d’autres sites

Coucou

 

Pour mémoire, je ne suis pas un vieil ours grincheux & ronchon même si les deux cas se présentent souvent

Je suis un vieil hibou néfaste (hihihi)...

 

Tu as tout à fait raison, j'ai fait l'impasse sur la vérification de l'étiquette

99 % des routines (certains disent des programmes) que je fais sont pour mon usage personnel

C'est d'ailleurs un gros souci pour mon site "da-code" où je dois y faire plus attention.

Je dépose une nouvelle version qui pourrait s'améliorer dans ce sens :

Si l'attribut n'est pas vide, on le garde, s'il est vide on le remplit avec une valeur incrémentée...

 

Amicalement

Lien vers le commentaire
Partager sur d’autres sites

(defun c:da-Mat-Tcpoint	(/ jeu n ent att)
 (setq jeu (ssget (list (cons 0 "INSERT") (cons 2 "PT_projet"))))
 (setq n 0)
 (repeat (sslength jeu)
(setq ent (ssname jeu n))
(while (not (= "MAT" (cdr (assoc 2 (entget (entnext ent))))))
 	(setq ent (entnext ent))
 	)
(setq att (subst
			(cons 1 (itoa (1+ n)))
			(assoc 1 (entget (entnext ent)))
			(entget (entnext ent))
	  	)
  	)	
(entmod att)
(setq n (1+ n))
 )
)

Lien vers le commentaire
Partager sur d’autres sites

Salut.

 

Didier, je vient de faire quelques tests, et pour que tes messages ne soit pas entrecoupés par un autre intervenant quant tu met un poste de code à la suite d'un poste de texte (ici quatre minutes, c'est pas rien) tu peut écrire les deux messages dans des onglets différents, en réponses rapide ou en éditeur complet sans distinction, et les lancer à la suite.

 

Il faut juste compter jusqu'à cinq entre les deux envois pour éviter d'avoir un message d'erreur et/ou de perdre le contenu du dernier message envoyé. Peut-être un peu plus si ta connexion est vraiment mauvaise.

 

Cordialy.

Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux.
Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage !
Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;])

Utilisateur d'AutoCAD 2021 sous Windows 10

Lien vers le commentaire
Partager sur d’autres sites

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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é