• Ce forum est la traduction générée par la machine de www.cad3d.it/forum1 - la communauté italienne du design. Plusieurs termes ne sont pas traduits correctement.

Extraire les paramètres d'un dessin de bureau mécanique

  • Auteur du sujet Auteur du sujet Nenma
  • Date de début Date de début

Nenma

Guest
Bonjour. J'ai un problème en étant capable d'extraire les données paramétriques des blocs mécaniques autocad en pratique je ne peux pas trouver où les paramètres qui régulent le bloc sont enregistrés
l'objet et le type "amgstdpart"

Malheureusement je ne trouve rien et je n'ai rien trouvé même dans les forums d'autodesk si quelqu'un peut m'aider à résoudre ce problème je serais très reconnaissant
 
Tu veux aussi du code ? Si vous n'avez pas mes librairies, pouvez-vous les voir de toute façon ? Nous essayons...

J'ai joint la partie standard "structure".... mon idée était de clikkarci sur et récupérer dans une variable la taille que vous voyez dans la section des détails sous l'élément "dimensions"
 

Pièces jointes

Je suis désolé, sans mécanique je ne peux même pas voir le dwg, avec cadworx je le vois mais en tout cas sans la structure des données il est vraiment hostical de comprendre où regarder.
 
Bonjour. J'ai un problème en étant capable d'extraire les données paramétriques des blocs mécaniques autocad en pratique je ne peux pas trouver où les paramètres qui régulent le bloc sont enregistrés
l'objet et le type "amgstdpart"

Malheureusement je ne trouve rien et je n'ai rien trouvé même dans les forums d'autodesk si quelqu'un peut m'aider à résoudre ce problème je serais très reconnaissant
en mécanique avec les fonctions autolisp classiques (entsel, entget...) pour la requête des données d'un objet obtenir des listes de données encodées.

J'attache un txt dans lequel je vous montre un exemple de résultats.
Vous remarquerez que dans la liste il y a des champs tels que (300 . "2100") et (300 . "1000") qui représentent la hauteur et la largeur du composant plus grand.
 

Pièces jointes

en mécanique avec les fonctions autolisp classiques (entsel, entget...) pour la requête des données d'un objet obtenir des listes de données encodées.

J'attache un txt dans lequel je vous montre un exemple de résultats.
Vous remarquerez que dans la liste il y a des champs tels que (300 . "2100") et (300 . "1000") qui représentent la hauteur et la largeur du composant plus grand.
Merci beaucoup. Avez-vous une idée de comment je peux introduire ces valeurs dans un tableau vba ? mon idée était de cliquer (getobject) sur un ou plusieurs objets et ensuite faire le code faire le reste des calculs.. .
 
en mécanique avec les fonctions autolisp classiques (entsel, entget...) pour la requête des données d'un objet obtenir des listes de données encodées.

J'attache un txt dans lequel je vous montre un exemple de résultats.
Vous remarquerez que dans la liste il y a des champs tels que (300 . "2100") et (300 . "1000") qui représentent la hauteur et la largeur du composant plus grand.
Alors je fais des progrès mais ne m'abandonne pas ?

le code ci-dessous fait un cycle de toutes les pièces standard dans la conception "amgstdpart"... montre le nom et la description de la vue.... maintenant je dois pouvoir faire plus par exemple pour changer les paramètres. et même si possible les insérer dans le dessin par code...


Code:
public sous provarecuperopartistandard()
' référence à la demande d'acadm
dim mcad comme application acadm
set mcad = thisdrawing.application.getinterfaceobject("acadmauto.acadmapplication")

' obtenir mcad2dstructuremgr
dim structmgr en mcad2dstructuremgr
set structmgr = mcad.activedocument.structuremgr2d

' créer mcad2dstdpartcompgroupdescripteur
dim compgroup1 en mcad2dstdpartcomponentdescriptor
définir compgroup1 = structmgr.create2dstdpartcomponentdescriptor

dim powviews1() comme mcadstdpartcomponentviewdescriptor
powviews1 = structmgr.getsinglesystdpartviewsformigr

dim view1 comme variante
dim powview1 en mcadstdpartcomponentviewdescriptor

pour chaque vue1 dans powviews1

'si le type de vue1 est mcadstdpartcomponentviewdescriptor alors
'set powview1 = view1
'icompgroup.addview powview1
'msgbox ""
'finir si

définir powview1 = view1
msgbox view1.fullviewname & "-" & view1.name



suivant



fin sous
 
Alors je fais des progrès mais ne m'abandonne pas ?

le code ci-dessous fait un cycle de toutes les pièces standard dans la conception "amgstdpart"... montre le nom et la description de la vue.... maintenant je dois pouvoir faire plus par exemple pour changer les paramètres. et même si possible les insérer dans le dessin par code...


Code:
public sous provarecuperopartistandard()
' référence à la demande d'acadm
dim mcad comme application acadm
set mcad = thisdrawing.application.getinterfaceobject("acadmauto.acadmapplication")

' obtenir mcad2dstructuremgr
dim structmgr en mcad2dstructuremgr
set structmgr = mcad.activedocument.structuremgr2d

' créer mcad2dstdpartcompgroupdescripteur
dim compgroup1 en mcad2dstdpartcomponentdescriptor
définir compgroup1 = structmgr.create2dstdpartcomponentdescriptor

dim powviews1() comme mcadstdpartcomponentviewdescriptor
powviews1 = structmgr.getsinglesystdpartviewsformigr

dim view1 comme variante
dim powview1 en mcadstdpartcomponentviewdescriptor

pour chaque vue1 dans powviews1

'si le type de vue1 est mcadstdpartcomponentviewdescriptor alors
'set powview1 = view1
'icompgroup.addview powview1
'msgbox ""
'finir si

définir powview1 = view1
msgbox view1.fullviewname & "-" & view1.name



suivant



fin sous
Je suis désolé. Je ne peux pas t'aider.
dans les abeilles mécaniques les descriptions ne sont pas très présentes et pour comprendre ce que vous obtenez vous devez tester pratiquement leur fonctionnement.

il y aura des méthodes pour obtenir la propriété (hauteur, largeur...) directement de l'objet... (? )
 
Je pourrais vous aider en me connectant au bureau à distance, sans avoir de mécanique ne peut rien voir
 

Statistiques du forum

Sujets
58 521
Messages
499 056
Membres
104 110
Dernier membre
ChristianR

Membres en ligne

Aucun membre en ligne actuellement.
Retour
Haut