Aller au contenu

choix de commande en lisp


Messages recommandés

Posté(e)

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

Posté(e)

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)

)

Posté(e)

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 Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

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.

Posté(e)

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 Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

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 Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

je dit peut être des conneries, mais il faut mettre le nom de la commande en entier

c'est a dire POLYLIGN et CONTOUR

command POLYLIGN

command 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 ?

Posté(e)

je dit peut être des conneries, mais il faut mettre le nom de la commande en entier

c'est a dire POLYLIGN et CONTOUR

command POLYLIGN

command 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"

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é