Aller au contenu

GENERERCOUPE


Messages recommandés

Posté(e)

J'aimerais savoir si quelqu'un connait la fonction VBA équivalente à "GENERERCOUPE" d'autocad.

J'ai essayé d'écrire : thisdrawing.sendcommand "-GENERERCOUPE", mais le signe "-" n'est pas accepté pour cette fonction.

Merci pour vos renseignements.

Posté(e)

quelle la version de ton autocad ?

ATEGIE - Bureau d'Études Fluides

http://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.png

Exécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffrage

www.ategie.fr

Posté(e)

je ne te serais d'aucune aide car je ne trouvais pas cette fonction sur ma version et pour cause je travaille sur 2006... désolé

ATEGIE - Bureau d'Études Fluides

http://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.png

Exécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffrage

www.ategie.fr

Posté(e)

Plus généralement, plusieurs fonctions n'acceptent pas le signe "-", celui-ci permet de ne pas faire apparaitre les boites de dialogue et donc de travailler uniquement avec la ligne de commande. Avec le vba, on peut utiliser une fonction autocad avec le signe"-", et écrire toutes les réponses attendues, avec sendcommand, Mais quand la fonction n'accepte pas le signe "-", j'aimerais savoir comment on peut s'en sortir, en vba? :casstet:

Posté(e)

alors c'est super simple car en vba tu peux faire des questions qui apparaissent dans la ligne de commande en faisant :

si la réponse que tu attends est une chaine de caractères :

 

thisdrawing.utility.getstring

 

ou getpoint, getreal....

 

donc tu peux stocker les réponses puis lancer non pas la commande avec sendcommand mais intenter autocad en cherchant (sous VBA F2) les options de l'objet (ce qui correspond à peux près une la commande mais non pas sous forme interface mais sous forme de code)...

 

je ne sais pas si je suis bien clair mais sinon un exemple....

 

pour remplacer

 

 

 

voilà une façon pas très bien écrite d'intenter autocad pour faire une rotation de 180 sans alors à spécifier l'angle et sans passer pas la commande rotation. Au mileu de faire un sendcommand, j'envoie mes options à l'objet :

 

objreturn.Rotate varpointR, rotationAngle

 

 

Sub rotation180()
Dim objreturn As AcadObject
Dim varPoint As Variant
Dim varpointR As Variant

On Error GoTo gestion
ThisDrawing.Utility.GetEntity objreturn, varPoint, "Sélectionner l'objet qui subira une rotation à 180°"
varpointR = ThisDrawing.Utility.GetPoint(, "Selectionner le point pour la rotation")

Dim rotationAngle As Double
rotationAngle = 3.1415957
objreturn.Rotate varpointR, rotationAngle
objreturn.Update

  Exit Sub

gestion:
Select Case Err.Number
Case "-2147352567"
ThisDrawing.Utility.Prompt "Annulée par l'utilisateur."




Case Else
Debug.Print Err.Number, Err.Description
ThisDrawing.Utility.Prompt "Une erreur inconnue est survenue, veuillez contacter le développeur."
End Select

End Sub

 

 

Il n'y a pas toujours de méthode pour faire intenter autocad comme ça par exemple, je n'ai pas trouver la methode pour synchroniser les attribut d'un bloc sans envoyer un send command mais je ne trouve pas ça pratique car je le fait un fin de procédure et donc je ne peux pas reprendre ma procédure en faisant un ESPACE car autocad à retenu ma dernière commande comme étant -attsync... donc c'est parfois merdique....

 

Si tu as besoin... je pourrais d'aider... je vais essayer de m'aménager du temps pour être un peu plus présent ici car depuis 6 mois je suis à l'ouest total...

 

bon courage....

 

[Edité le 24/7/2008 par sechanbask]

ATEGIE - Bureau d'Études Fluides

http://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.png

Exécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffrage

www.ategie.fr

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é