Aller au contenu

Messages recommandés

Posté(e)

Bonjour à tous,

 

je souhaiterais trier des textuels (textes et mtextes) par leur contenu, c'est a dire si l'objet textuel est un nombre alors le placer dans un calque autocad "NUMERIQUE" sinon placer l'objet soit dans son calque d'origine ou dans un calque "NON_NUMERIQUE".

 

Ou simplement changer la couleur en rouge des textuels numériques.

Ceci afin de faire un traitement sur un ensemble de textuels.

 

Merci,

 

Bonne journée,

 

Fabcad

 

[Edité le 8/6/2010 par fabcad]

Posté(e)

Salut,

 

La fonction distof est probablement le moyen le plus simple d'évaluer si une chaîne est constituée d'une valeur numérique valide :

 

(distof "toto") retourne nil

(distof "25 b") retourne nil

(distof "A6") retourne nil

(distof "12") retourne 12

(distof "25.4") retourne 25.4

à noter toutefois :

(distof ".1") retourne 0.1

(distof "1/4") retourne 0.25

 

donc avec un test : (if (distof (cdr (assoc 1 dxf_lst))) (entmod ...)) ça devrait fonctionner.

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Merci Gile,

 

Voici mon code simplifiable j'imagine,

 

(defun traitement_jeu_de_selection (js /)
(setvar "cmdecho" 0)
(setq nbr (sslength js))
(setq i 0)
(while (<= i (- nbr 1))
(setq obj_acad (ssname js i))
(setq obj_vl (vlax-ename->vla-object obj_acad))
(setq obj_index (vla-get-TextString obj_vl))
(if (/= (distof obj_index) nil)
	(vla-put-color obj_vl acRed)
	(vla-put-color obj_vl acGreen)
);fin if
(vlax-release-object obj_vl)
(setq i (+ i 1))
); fin while
);fin defun
;;;------------------------------------------------------------------------
;; Fonction principale
(defun c:NUMERIQUES ()
(setvar "cmdecho" 0)
(vl-load-com)
(setq js (ssget))
(traitement_jeu_de_selection js)
(setq js nil)

(prompt "\n---Créé le 08/06/2010 Par Fabrice DEMIEL---")
nil
); fin c:NUMERIQUES
;;;------------------------------------------------------------------------
(prompt "\npour lancer Tapez : NUMERIQUES ")
(princ)

[Edité le 8/6/2010 par fabcad]

 

[Edité le 9/6/2010 par fabcad]

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é