Aller au contenu

Lisp Oblong


PascAnna

Messages recommandés

Bonjour aux Lispiennes et Lispiens :)

 

Je fais un petit lisp d'oblong trou mais je ne comprends pas et pourquoi ça ne fonctionne pas sur Autocad 2009 (sur ancien Autocad 2006, lisp d'oblong avait fonctionné bien)

 

Message d'erreur: "Aucun(e) trouvé pour le point spécifié. Point 2D ou une entrée clavier.; erreur: Fonction annulée"

 

Lisp d'oblong:

;****trous oblong par PascAnna 2005 ******

(defun c:ob (/ h v p1 p2 p3 p4 p5 p7 svosmode)

(setq h (/ (getdist "\nLongueur : ") 2)

v (/ (getdist "\nDiamètre : ") 2)

p1 (getpoint "\nPoint d'insertion : ")

)

(if (> h v)

(progn

(setq svosmode (getvar "osmode"))

(setvar "osmode" 0)(setvar "cmdecho" 0)

(setq p3 (polar p1 pi (- h v))

p2 (polar p3 (/ pi 2) v)

p4 (polar p3 (* 3 (/ pi 2)) v)

p5 (polar p2 0 (* (- h v) 2))

p7 (polar p4 0 (* (- h v) 2))

)

(command "polylign" p5 p2

"arc" p4

"ligne" p7

"arc" p5

"clore"

)

(setvar "osmode" svosmode)(setvar "cmdecho" 1)

(command "rotation" "d" "" p1)

)

(alert "\nMauvaises dimensions !!!")

);endif

(prin1)

)

(prin1)

 

J'ai oublié de quelques choses ??

Merci de votre aide,

PascAnna :)

Avec Autocad 2009 / Architecture 2009

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Je l'ai essayé rapidement sous une 2008 et il fonctionne, alors pour t'aider: pas facile.

 

Ce que tu peux faire, c'est dans ta routine remettre temporairement partout (setvar "cmdecho" 1), comme ça tu auras un retour plus explicite de l'erreur en ligne de commande.

 

Vu le message d'erreur, je pense que c'est la commande rotation au moment de la sélection ou il y a un problème (les options ont peut être changés avec la 2009 ?).

 

Je te conseille en sus de mettre un . (point) devant les commandes principales ex: .rotation

(pas pour les options), comme cela tu es sur d'utiliser la commande originelle et pas une commande redéfinie (au cas ou...)

 

Le must serait de mettre en langage international ex: _.rotate

 

Les (initget) sont conseillés aussi pour contrôler les entrées utilisateur (getXXX)

 

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

Bonjour !

 

Trouvé ..! Variable "P6" au lieu de "P7" !

 

;****trous oblong PascAnna 2005-2008 V1.01 ******

(defun c:ob (/ h v p1 p2 p3 p4 p5 p6 svosmode)

(setq h (/ (getdist "\nLongueur : ") 2)

v (/ (getdist "\nDiamètre : ") 2)

p1 (getpoint "\nPoint d'insertion : ")

)

(if (> h v)

(progn

(setq svosmode (getvar "osmode"))

(setvar "osmode" 0)(setvar "cmdecho" 0)

(setq p3 (polar p1 pi (- h v))

p2 (polar p3 (/ pi 2) v)

p4 (polar p3 (* 3 (/ pi 2)) v)

p5 (polar p2 0 (* (- h v) 2))

p6 (polar p4 0 (* (- h v) 2))

)

(command "polylign" p5 p2

"arc" p4

"ligne" p6

"arc" p5

"clore"

)

(setvar "osmode" svosmode)(setvar "cmdecho" 1)

(command "rotation" "d" "" p1)

)

(alert "\nMauvaises dimensions !!!")

);endif

(prin1)

)

(prin1)

 

;)

 

[Edité le 17/7/2008 par PascAnna]

Avec Autocad 2009 / Architecture 2009

Lien vers le commentaire
Partager sur d’autres sites

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é