Invité ingoenius Posté(e) le 27 janvier 2010 Posté(e) le 27 janvier 2010 Salut, comment on peur récupérer en lisp les valeurs DELTA X DELTA Y et DELTA Z retournees par la commande distance?merci ;-)
Bred Posté(e) le 27 janvier 2010 Posté(e) le 27 janvier 2010 Salut,que je saches tu ne peux pas.Il faut que tu te fasses une commande distance avec getpoint et que tu ressortes les info en trigo. [Edité le 27/1/2010 par Bred] Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Tramber Posté(e) le 27 janvier 2010 Posté(e) le 27 janvier 2010 Attention : Distance (la fonction lisp) renvoie une valeur unique (diagonale) reliant les 2 points, ne pas l'utiliser. (setq pt1(getpoint))(setq pt2(getpoint)) (-(car pt1)(car pt2)) (-(cadr pt1)(cadr pt2)) (-(caddr pt1)(caddr pt2)) Ca, c'est correct. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
Invité ingoenius Posté(e) le 27 janvier 2010 Posté(e) le 27 janvier 2010 Ok c'était plus semple que prévu voici un lisp si peut vous servir Insère en "autoload" est très pratique (defun c:xx() ;aligne sur axe X (setq _ss (ssget)) (setq P0(getpoint "\point de depart?")) (setq XP0(car P0)) (setq YP0(cadr P0)) (setq ZP0(caddr P0)) (setq P1(getpoint "\point d' arrivé")) (setq XP1(car P1)) (setq YP1(cadr P1)) (setq ZP1(caddr P1)) (setq X (- xp1 xp0)) (setvar "osmode" 0) (setq _a (list 0.00 0.00 0.00) _b (list X 0.00 0.00)) (if _ss (command "_MOVE" _ss "" _A _B) ) (setvar "osmode" 3) ) (defun c:yy() ;aligne sur axe y (setq _ss (ssget)) (setq P0(getpoint "\point de depart")) (setq XP0(car P0)) (setq YP0(cadr P0)) (setq ZP0(caddr P0)) (setq P1(getpoint "\point d' arrivé")) (setq XP1(car P1)) (setq YP1(cadr P1)) (setq ZP1(caddr P1)) (setq Y (- Yp1 Yp0)) (setvar "osmode" 0) (setq _a (list 0.00 0.00 0.00) _b (list 0.00 Y 0.00)) (if _ss (command "_MOVE" _ss "" _A _B) ) (setvar "osmode" 3) ) (defun c:zz() ;aligne sur axe Z (setq _ss (ssget)) (setq P0(getpoint "\point de depart")) (setq XP0(car P0)) (setq YP0(cadr P0)) (setq ZP0(caddr P0)) (setq P1(getpoint "\point d' arrivé")) (setq XP1(car P1)) (setq YP1(cadr P1)) (setq ZP1(caddr P1)) (setq Z (- zp1 zp0)) (setvar "osmode" 0) (setq _a (list 0.00 0.00 0.00) _b (list 0.00 0.00 z)) (if _ss (command "_MOVE" _ss "" _A _B) ) (setvar "osmode" 3) )
Tramber Posté(e) le 27 janvier 2010 Posté(e) le 27 janvier 2010 Uen 'tite macro pour les les LTsiens : Déplacement sans X ^C^C_move;\;\.x;@;\ Tu fais 3 boutons et c'est bon. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
(gile) Posté(e) le 27 janvier 2010 Posté(e) le 27 janvier 2010 Salut, En Visual LISP, avec une ligne :(vlax-get line 'Delta) retourne une liste (deltaX delatY delatZ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Bred Posté(e) le 28 janvier 2010 Posté(e) le 28 janvier 2010 Salut, (vlax-get line 'Delta) :P :) :P :P Tu sors ça d'où ??????c'est génial ! Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Tramber Posté(e) le 28 janvier 2010 Posté(e) le 28 janvier 2010 (vlax-dump-Object(vlax-ename->vla-object(car(entsel)))) De là, certainement ;) Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
Bred Posté(e) le 28 janvier 2010 Posté(e) le 28 janvier 2010 Ah oui !merci !Je n'avais jamais fait gaffe à cette propriété.... Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
Tramber Posté(e) le 28 janvier 2010 Posté(e) le 28 janvier 2010 Tu veux savoir ? Moi non plus, je ne l'avais pas repérée. POURTANT elle fait partie des propriétés, c'est un indice qui doit mettre la puce à l'oreille. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
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