Aller au contenu

recupérer données figure autocad avec VBA


Messages recommandés

Posté(e)

Salut à tous,

Je cherche un moyen de récupérer, en VBA, les données d'un dessin fait sous autocad(2D)

Par exemple, j'ai un carré et j'aimerais connaitre les coordonnées des 4 points du carré.

Est ce possible, Merci pour votre aide, A+

Posté(e)

frmaniako,

 

La question est vague. D'abord, tu doit obtenir un objet. Ceci peut être obtenu en scannant le dessin ou en le demandant comme suit:

 

' Create the selection set

Dim ssetObj As AcadSelectionSet

Set ssetObj = ThisDrawing.SelectionSets.Add("SSET1")

 

' Add entities to a selection set by prompting user to select on the screen

ssetObj.SelectOnScreen

 

Ensuite tu boucles dans la sélection. Que veux tu savoir ? Les sommets d'une polyligne, l'étendue de l'objet ? Pour ce dernier cas, va voir du coté de l'exemple Example_GetBoundingBox dnas le fichier d'aide.

 

Serge

Posté(e)

Salut,

J'aimerais savoir comment tu boucle sur la selection.

 

En fait moi ce que je veux faire c'est créer un code VB qui va analyser toutes les formes contenues dans un fichier autocad.

 

Par exemple je fait un trait.

Je veux que mon code VB retrouve ce trait avec ses coordonnées sans que je le sélectionne.

 

++

Posté(e)

frmaniako,

 

Alors tu n'as pas besoin d'une sélection. Voici unepiste de solution. À toi de composer avec le reste.

 

Sub toto3()

Dim anyEntity As AcadEntity

Dim ligne As AcadLine

For Each anyEntity In ThisDrawing.ModelSpace

' Are these objects hidden?

If anyEntity.ObjectName = "AcDbLine" Then

Set ligne = anyEntity

Debug.Print "Ligne: (" & ligne.StartPoint(0) & "," & ligne.StartPoint(1) & ") à (" _

& ligne.EndPoint(0) & "," & ligne.EndPoint(1) & ")"

 

End If

Next

End Sub

 

Serge

 

Posté(e)

Salut,

J'ai esayé ton code qui fonctionne bien avec des lignes et des cercles mais pour le rectangle il me renvoi une erreur.

Voici mon code.

 

If anyEntity.ObjectName = "AcDbPolyline" Then

Set rectangle = anyEntity <<<<<<-- erreur

MsgBox "test"

End If

 

Sais tu comment identifier un rectangle

 

Merci pour ton aide

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é