PascAnna Posté(e) le 16 juillet 2008 Partager Posté(e) le 16 juillet 2008 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 More sharing options...
bonuscad Posté(e) le 16 juillet 2008 Partager Posté(e) le 16 juillet 2008 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 More sharing options...
PascAnna Posté(e) le 17 juillet 2008 Auteur Partager Posté(e) le 17 juillet 2008 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 More sharing options...
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant