arnaudalp Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 Bonjour J'essaye de comprendre le fonctionnement du lisp en ce moment...JE veux faire une chose simple, mais je suis déjà perdu J'aimerais faire un lisp qui me demande lorsque je le lance si je veux dessiner une polyligne ou faire une capture dans un polygone ( nc ) dans le calque courant. Pouvez vous m'aider ? Merci
(gile) Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 Salut, Tu veux donc demander à l'utilisateur de choisir une option.Regarde dans l'aide ou dans Introduction à AutoLISP (chapitre 7 : Entrées utilisateur) la fonction getkword (pour 'get key word' ou 'obtient mot clé' en français). Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
arnaudalp Posté(e) le 21 janvier 2016 Auteur Posté(e) le 21 janvier 2016 Salut, Tu veux donc demander à l'utilisateur de choisir une option.Regarde dans l'aide ou dans Introduction à AutoLISP (chapitre 7 : Entrées utilisateur) la fonction getkword (pour 'get key word' ou 'obtient mot clé' en français). J'avais fait ça, mais ça ne marche pas... (defun c:poca ()(setq choix (getkword "\n Choix PO ou CN")) (If (=choix "po") po)(If (=choix "nc") nc) )
Patrick_35 Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 Salut Essaye ça(defun c:poca () (initget 1 "PO CN") (setq choix (getkword "\n Choix PO ou CN [PO/CN] : ")) (if (= choix "PO") (alert "PO") (alert "CN") ) (princ) ) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
arnaudalp Posté(e) le 21 janvier 2016 Auteur Posté(e) le 21 janvier 2016 Salut Essaye ça(defun c:poca () (initget 1 "PO CN") (setq choix (getkword "\n Choix PO ou CN [PO/CN] : ")) (if (= choix "PO") (alert "PO") (alert "CN") ) (princ) ) @+ Que je tape CN ou Po, j'ai la même chose : une fenêtre qui rappelle ce que j'ai tapé. Ca ne me lance pas la commande "cn" (capture polygone) ou polyligne.
Patrick_35 Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 Que je tape CN ou Po, j'ai la même chose : une fenêtre qui rappelle ce que j'ai tapé. Ca ne me lance pas la commande "cn" (capture polygone) ou polyligne.C'est juste un exemple pour t'aider à comprendre. En aucun cas un lisp tout fait.L'exemple t'affiche le résultat du choix. @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
arnaudalp Posté(e) le 21 janvier 2016 Auteur Posté(e) le 21 janvier 2016 comment donc traduire ce qui est tapé en commande ? (if (=choix "po") command po) -> marche pas(if (=choix "po") po) -> marche pas :/
Patrick_35 Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 En partant sur la base que c'est un lisp, qu'il est déjà chargé et que si on tape par exemple PO en ligne de commande, le lisp de lance.(if (= choix "po")(c:po)) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
arnaudalp Posté(e) le 21 janvier 2016 Auteur Posté(e) le 21 janvier 2016 po ou cn ne sont pas des lisp mais des commandes.J'ai essayé de corrigé avec c:po mais ça ne me propose pas de commencer ma polyligne.
Megeon Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 je dit peut être des conneries, mais il faut mettre le nom de la commande en entier c'est a dire POLYLIGN et CONTOURcommand POLYLIGNcommand CONTOUR D'ailleur quel internet de creer un lisp pour faire se choix puisque que lorsque l'on tape PO ou CN on a la commande directement ?
Patrick_35 Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 +1 avec Megeon qui m'a devancé @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
arnaudalp Posté(e) le 21 janvier 2016 Auteur Posté(e) le 21 janvier 2016 je dit peut être des conneries, mais il faut mettre le nom de la commande en entier c'est a dire POLYLIGN et CONTOURcommand POLYLIGNcommand CONTOUR D'ailleur quel internet de creer un lisp pour faire se choix puisque que lorsque l'on tape PO ou CN on a la commande directement ? Parce que passe par une palette d'outil : exple :Sur ma palette, j'ai un outil polyligne "béton désactivé ep 10cm." avec épaisseur de ligne et type de trait défini. Lorsque je passe par cette commande, autocad crée mon calque "béton désactivé ep 10cm" mais je veux avoir le choix entrée créer mon contour point par point ou le capturer. Suis-je compréhensible ? nota : en écrivant (command "polylign") ça marche !Par contre "contour" ne marche pas, ni "_boundary"
Patrick_35 Posté(e) le 21 janvier 2016 Posté(e) le 21 janvier 2016 Par contre "contour" ne marche pas, ni "_boundary"Si tu ne veux pas de la boite de dialogue -contour @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
arnaudalp Posté(e) le 21 janvier 2016 Auteur Posté(e) le 21 janvier 2016 Si tu ne veux pas de la boite de dialogue -contour @+ Alors... boundary marchait mais j'avais un problème de majuscule dans mon choix.
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