Aller au contenu

Messages recommandés

Posté(e)

Bonjour et bonne année !

 

Je désire commencer en douceur dans le lisp et je voulais simplifier une commande que j'utilise souvent :

j'utilise la commande PEDIT et ensuite je tape "m" je selectionne plusieur ligne je valide je tape "o" , "j" , ensuite entrée 2fois .....

tous ca pour créer une polyligne ...... :casstet:

 

Donc j'ai voulu faire ceci :

 

(defun c:PM () (command "pedit" "m" "o" "j" "" ""))

 

et ca ne marche pas :mad:

 

quelqu'un peut il m'aider SVP

 

@bientôt

Posté(e)

Coucou,

 

Je ne comprends pas le "o" !

 

Mais séparons selection et action :

 

 
(setq selec(ssget))
(command "pedit" "m" selec "" "j" "" "")

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Bonjour,

 

En gardant l'usage de (command) propice au débutant voici ce que je suggère.

 

Essayes de comprendre ces quelques lignes:

 

 

(defun c:PM ( / )
(command "_.select" (while (not (zerop (getvar "CMDACTIVE"))) (command pause)))
(if (zerop (getvar "PEDITACCEPT"))
	(command "_.pedit" "_multiple" "_previous" "" "_yes" "_join" pause "")
	(command "_.pedit" "_multiple" "_previous" "" "_join" pause "")
)
)

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

Posté(e)
Coucou,

 

Je ne comprends pas le "o" !

 

Mais séparons selection et action :

 

 
(setq selec(ssget))
(command "pedit" "m" selec "" "j" "" "")

 

Si je comprend bien tu crées une variable de selection que va utiliser l'action ???

 

mais je comprend pas pourquoi dans le cas suivant cela fonctionne bien, alors que sélection et action sont mélangées :

 

(defun c:CADV10 () (command "RESEAU" pause "" "R" "1" "10" "10"  ))

 

Pour celui ci je ne comprend pas

peux tu m'aider ?

(defun c:PM ( / )

(command "_.select" (while (not (zerop (getvar "CMDACTIVE"))) (command pause)))

(if (zerop (getvar "PEDITACCEPT"))

	(command "_.pedit" "_multiple" "_previous" "" "_yes" "_join" pause "")

	(command "_.pedit" "_multiple" "_previous" "" "_join" pause "")

)

)

 

Posté(e)
Si je comprend bien tu crées une variable de selection que va utiliser l'action ???

 

Oui

 

mais je comprend pas pourquoi dans le cas suivant cela fonctionne bien, alors que sélection et action sont mélangées :

 

Je pense que PEDIT est mal adapté à "pause", sans appronfondir, il est l'heure de manger.

 

Pour celui ci je ne comprend pas

peux tu m'aider ?

 

BonusCAD n'est pas un rigolo :cool: Avec lui tu débutes à niveau +1 !

 

(command "_.select" (while (not (zerop (getvar "CMDACTIVE"))) (command pause))) est subtil. Il aurait pu faire un (ssget) évolué (moi j'en ai fait un simple).

Mais l'avantage de son code c'est qu'il ne fera rien d'autre tant qu'une selection ne sera pas faite.

CMDACTIVE est une variable astucieuse qui dit qu'une commande est active (select en l'occurrence).

 

Pour la suite, c'est l'histoire du "o" qui est gérée. Une variable de la commande PEDIT te faire dire "oui" (c'est objet n'est pas une poly, voulez-vous le transformer). PEDITACCEPT à 1 permet d'outrepasser cette question.

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Aucun mais je ne veux pas me fâcher avec Bonus !

 

:cool:

 

Les gars, si votre selection avec SSGET est nulle, il faut protéger le code :

 

(if selec (command "pedit" "m" selec "" "j" "" "")

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)

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é