[AutoCAD LT 2025]ENTGET sur un bloc ?!

rebcao
Advisor
Advisor

[AutoCAD LT 2025]ENTGET sur un bloc ?!

rebcao
Advisor
Advisor

Bonjour à Toutes et à Tous,

 

J'étais persuadé que le CODE DXF 10 = au point d'insertion d'un BLOC ?

 

Dans le dessin ci-joint, le CODE 10 ne correspond pas à son Point d'Insertion qui est donné par les CHAMPS X et Y ?!

 

QUID ? Peut-être parce que le bloc contient des ATTRIBUTS ?

 

Je vous remercie pour votre aide.

Christian


Formateur Indépendant, Consultant, AutoCAD, AutoCAD LT, REVIT MEP, INVENTOR -
www.rebcao.fr

Christian REB

0 J'aime
Répondre
Solutions acceptées (2)
180 Visites
6 Réponses
Replies (6)

O_Eckmann
Mentor
Mentor
Solution acceptée

Bonjour @rebcao ,

 

Ton bloc possède une direction d'extrusion (voir la commande LISTE) ainsi que le code 210 qui donne cette direction.

Si tu te mets en vue de face tu verra qu'il n'est pas horizontal.

Pour obtenir les valeurs XY telle qu'affichées, il faut mouliner le code 10 avec ce vecteur.

Gilles a toutes une liste de fonction Lisp sur les matrices et produits vectoriels pour faire le boulot : https://gilecad.azurewebsites.net/Lisp.aspx  

 

Olivier Eckmann

EESignature

0 J'aime

manon_puel
Community Manager
Community Manager

Bonjour @rebcao 

Si une des réponses résout votre problème ou vous a permis de mieux le comprendre, voulez vous avoir l'amabilité de cliquer sur le bouton  APPROUVER LA SOLUTION  en bas de la réponse qui apporte une solution?
Cela facilitera la navigation de nos utilisateurs qui pourront directement atteindre la solution

Sachez qui si vous avez marqué une réponse comme solution par erreur, vous pouvez annuler ce marquage en cliquant sur le menu du fil (les trois points verticaux) et choisir "pas la solution"
Merci de ne pas accepter comme solution le message que vous êtes en train de lire.


Manon Puel animatrice de la communauté francophone
0 J'aime

_gile
Mentor
Mentor
Solution acceptée

Salut,

 

La valeur du groupe DXF 10 pour une référence de bloc correspond au point d'insertion dans le Système de Coordonnées de l'Objet (SCO)

Pour avoir les coordonnées SCG du point d'insertion, on peut utiliser la fonction trans pour convertir le point renvoyé par entget.

Considérant :

(setq bloc (car (entsel)))
(setq dxf (entget bloc))

on obtient le point d'insertion dans le SCG en faisant :

(trans (cdr (assoc 10 dxf)) (cdr (assoc 210 dxf)) 0)

ou :

(trans (cdr (assoc 10 dxf)) bloc 0)

 

On notera que la fonction getpropertyvalue avec la propriété "Position" renvoie directement le point d'insertion dans le SCG.

(getpropertyvalue bloc "Position")


Gilles Chanteau
Programmation AutoCAD LISP/.NET
GileCAD
GitHub

0 J'aime

rebcao
Advisor
Advisor

Salut Gilles,  

 

Ouuuaaaaaaaaaaaaaaaaaaaaaaaaaa !  ça sort d'où ?  Je connaissais SCG, SCU et maintenant je découvre le SCO !!! 

 

En tout cas un grand merci ! j'obtiens bien le Point d'insertion du BLOC... ça s'invente pas le LISP !

 

Christian


Formateur Indépendant, Consultant, AutoCAD, AutoCAD LT, REVIT MEP, INVENTOR -
www.rebcao.fr

Christian REB

0 J'aime

_gile
Mentor
Mentor

@rebcao  a écrit :

Salut Gilles,  

 

Ouuuaaaaaaaaaaaaaaaaaaaaaaaaaa !  ça sort d'où ?  Je connaissais SCG, SCU et maintenant je découvre le SCO !!! 

 

En tout cas un grand merci ! j'obtiens bien le Point d'insertion du BLOC... ça s'invente pas le LISP !

 

Christian


Le Systéme de Coordonnées Objet n'est pas spécifique au LISP, c'est plutôt un concept DXF pour alléger la base données du dessin. Voir ce sujet de l'aide aux développeurs.



Gilles Chanteau
Programmation AutoCAD LISP/.NET
GileCAD
GitHub

0 J'aime

rebcao
Advisor
Advisor

Salut Gilles @_gile 

 

Je te remercie pour cette info.

 

Tu vois, j'aime ce métier, car après 39 ans d'utilisation de notre cher AutoCAD je continue à apprendre et en découvrir tous les jours...  😊

 

Merci.

Christian


Formateur Indépendant, Consultant, AutoCAD, AutoCAD LT, REVIT MEP, INVENTOR -
www.rebcao.fr

Christian REB

0 J'aime