Aller au contenu

Messages recommandés

Posté(e)

Bonjour à tous,

J'ai besoin de vous, pros du lisp!!

Je vais essayer vous d'expliquer le plus clairement possible ce que je voudrai faire:

J'ai déjà créer une partie de programme où j'insere un bloc en un point P_base, puis je le copie à partir de ce point P_base vers le point P1, cela autant de fois que nécessaire pour combler une certaine distance en utilisant la fonction "while".

Mon problème est le suivant: à chaque copie, les points P_base et P1 sont redéfinis, or, je voudrai pouvoir les renommer ou mieux, les incrémenter afin de de garder leur trace et pouvoir retravailler dessus par la suite!

Voila, j'espère que c'est faisable et que vous aurez le temps de m'aider.

Merci à tous, votre site est génial!

Posté(e)

Salut, et bienvenue !

Si tu veux garder des points en mémoire, crées en toi une liste.

Mais si tu postais ton code, ce serais plus facile de te répondre...

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

Bonjour,

Tout d'abord merci pour vos réponses! Je vois dans quelle direction je dois aller mais je ne suis pas assez calée pour intégrer ces fonctions à mon lisp!! Je vous poste donc la partie concernée en espérant que vous pourrez m'aider!

 

(terpri) (setq change_cle "O")

(while (= change_cle "O")

(setq cle (getreal "\nQuelle valeur de clé ?"))

(command "_.undo" "_group")

(setq ptlong1 (polar ptbase anglong1 cle))

(setq dist1 (- dist0 cle))

(setq nb1 (/ dist1 (+ 2.5 cle)))

(setq nb2 (fix nb1))

(setq reste (rem dist1 (+ 2.5 cle)))

(setq longcle (+ 2.5 cle))

(setq platbase(ssget"X"(list(cons 8 "*Plateaux_temp*"))))

(command "copier" platbase "" ptbase ptlong1 "")

(command "_erase" platbase "")

(setq platbase2 (ssget "X" (list(cons 8 "*Plateaux_temp*"))))

(setq ptlongn (polar ptlong1 anglong1 (+ cle 2.5)))

(repeat (1- nb2)

(progn

(command "copier" platbase2 "" ptlong1 ptlongn "")

(setq ptlongn (polar ptlongn anglong1 (+ cle 2.5)))

)

)

(setvar "osmode" accr)

(setq change_cle(strcase(getstring "\nVoulez-vous changer la valeur de la clé? Oui (O) / Non (N)")))

(command "_.undo" "_end")

(cond((eq change_cle "O")

(progn

(command "_u")

)

)

)

)

 

 

Voila, j'ai conscience que mon code est pas terrible et sa mise en page encore moins mais comme je débute l'essentiel pour moi et que ça fonctionne!

Je rapelle que ce sont les points ptlong1 et ptlongn que je veux incrémenter.

Merci!

 

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é