soso83 Posté(e) le 10 juillet 2008 Posté(e) le 10 juillet 2008 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!
Bred Posté(e) le 10 juillet 2008 Posté(e) le 10 juillet 2008 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...
Patrick_35 Posté(e) le 10 juillet 2008 Posté(e) le 10 juillet 2008 Salut Avec LATT ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
(gile) Posté(e) le 10 juillet 2008 Posté(e) le 10 juillet 2008 Salut, Ou Increment, sur cette page. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
soso83 Posté(e) le 18 juillet 2008 Auteur Posté(e) le 18 juillet 2008 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!
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