Aller au contenu

Créer une commande transparente


Messages recommandés

Posté(e)

Bonjour à tous.

 

Savez-vous comment créer une routine qui servira de commande transparente, c'est à dire qui peut être utilisée alors qu'une autre commande est en cours ?

 

Par exemple geler un calque alors qu'on est dans la commande ligne... Ou alors appeler une routine de sélection spéciale lorsque on doit sélectionner des entités à déplacer ???

 

En fait j'aimerais que la routine créée fonctionne de la même manière que par exemple le "_all", qui sélectionne toutes les entités du plan lors de la sélection au sein même d'une commande...

 

Voilà merci beaucoup !

A bientot.

Matt.

"Chacun compte pour un, et nul ne compte pour plus d'un."

Posté(e)

Oui j'ai déjà essayé ça... Mais c'est ma routine qui n'est pas prévue... je pense.

Par exemple si je tente une petite routine tout bête :

;;Sélectionner tous les objets à l'intérieur d'une fenêtre
(defun c:ife ()
    (sssetfirst nil (setq a (ssget "W" (setq pt1 (getpoint "\nPremier coin : "))(getcorner pt1 "Deuxième coin :"))))
    (if a (princ (strcat "\n" (itoa (sslength a)) " objets sélectionnés.")))
    (princ)
) 

t bien cette commande ne fonctionne pas au sein d'une autre.

 

Voilà.

 

Pourrais-tu m'aider ? (comme d'habitude, d'ailleurs :) )

 

Merci encore à toi pour la rapidité de ta réponse et pour ton savoir partagé !

A bientot.

Matt.

"Chacun compte pour un, et nul ne compte pour plus d'un."

Posté(e)

Salut

Comme ceci, ça fonctionne en mode transparent

 

(defun c:ife ()
(if (setq a (ssget "_w" (setq pt1 (getpoint "\nPremier coin : ")) (getcorner pt1 "Deuxième coin :")))
 (princ (strcat "\n" (itoa (sslength a)) " objets sélectionnés.")))
(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)

Merci Patrick_35 pour ta réponse..

 

Je pense que je ne suis pas clair du tout ni précis dans mes demandes... Faudra fignoler mes questions à l'avenir..

 

Procédure :

1- Commande déplacer "_MOVE"

2- Sélection d'entités avec la commande transparente "'IFE"

3- Les objets sélectionnés par la commande transparente se retrouvent intégrés dans la commande de déplacement

4- Entrée pour valider et finaliser la sélection

5- Point de base

6- Point de destination...

 

En fait quand j'utilise une commande de déplacement, j'aimerais que la commande transparente IFE sélectionne les objets à déplacer (par deux entrées utilisateur) et les incorpore en tant que sélection dans la commande de déplacement ! C'est tout. Le princ n'est qu'une information.

 

voilà..

J'espère que c'est plus clair !!

Merci !

A bientot.

Matt !

"Chacun compte pour un, et nul ne compte pour plus d'un."

Posté(e)

En fait c pas vraiment une commande transparente... C'est exactement comme le "_all" au sein d'une sélection ! Sauf que là on a deux entrées utilisateur.

"Chacun compte pour un, et nul ne compte pour plus d'un."

Posté(e)

Re

 

(defun c:test (/ ss)
 (ssget "_X" '((0 . "circle")))
) 

 

Commande: _move

 

Choix des objets: 'test

2 trouvé(s)

 

Choix des objets:

 

Spécifiez le point de base ou [Déplacement] : Spécifiez le

deuxième point ou :

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Alors là chu totalement d'accord avec toi...

En fait j'ai essayé sur Autocad, et ça fonctionne parfaitement...

 

C'est le logiciel que j'utilise qui est une grosse ME**E...

 

Merci, je vais (encore) signaler un bug chez bricsys...

 

A bientot !

Matt.

"Chacun compte pour un, et nul ne compte pour plus d'un."

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é