JeromeS Posté(e) le 1 février 2010 Posté(e) le 1 février 2010 Bonjour, je cherche à sélectionner des blocs dont je connais la position x y z pour modifier un attribut.Modifier l'attribut, tout va bien, ça marche nickel, par contre je ne comprend rien aux filtres à appliquer à ssget. (8 . "moncalque") je comprends(0. "insert") aussi... J'ai vu une table " Entity DXF Group Code" où les codes pour les coordonnées du point d'insertion sont (10 . position X) (20 . position Y) et (30 position Z) mais j'ai beau essayer dans tous les sens, ça ne marche pas... j'ai essayé (setq ss1 (ssget "_X" (list(cons 0 "INSERT")(cons 10 posx)(cons 20 posy)(cons 30 posz)))) ou alors (setq ss1 (ssget "_X" '((0 . "INSERT")(cons 10 posx posy posz)))) [Edité le 1/2/2010 par JeromeS]
(gile) Posté(e) le 1 février 2010 Posté(e) le 1 février 2010 Salut, Les codes DXF 10 20 30 pour X, Y et Z ne sont utilisé que dans les fichiers DXF.En LISP seul le code 10 est utilisé : (10 x y z) Si tu connais la position exacte des blocs (et s'ils sont insérés dans un plan parallèle au plan XY du SCG) tu dois pouvoir utiliser :(cons 10 pt) si tu as besoin d'une tolérance, c'est un peu plus compliqué, il faut utiliser des groupes logiques et des test relationnels :((-4 . " (-4 . ">=,>=,>=) (10 xMin yMin zMin) (-4 . " (10 xMax yMax zMax) (-4 . "and>") ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
JeromeS Posté(e) le 1 février 2010 Auteur Posté(e) le 1 février 2010 Merci beaucoup, un simple problème de grammaire en fait... Ca m'est totalement inutile (pour l'instant) mais je note le coup des groupes logiques pour plus tard. (setq pos (list posx posy posz)) (setq ss1 (ssget "_X" (list(cons 0 "INSERT")(cons 10 pos)))) Et ça marche !??? [Edité le 1/2/2010 par JeromeS]
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant