LUDWIG Posté(e) le 16 février 2006 Posté(e) le 16 février 2006 Je ne suis pas dans mon assiette ce matin et j'ai l'impression de débuter sur autocad... :question: J'ai plein de polylignes rectangles non parallèles au scu. J'ai besoin d'étirer la longueur de ces rectangles tout en conservant la largeur et l'alignement. Et je m'embête car je ne trouve pas de moyen vraiment facile . Y-a-t'il plus facile que de-mettre le scu parallèle au rectangle que je traite-me mettre en ortho-sélectionner 2 poignées (ou commande étirer)-étirer? Je comprends maintenant Patrick qui regrette l'absence de "vrais" rectangles. Merci d'avance pour vos suggestions ! Autocad 2021 - Revit 2022 - Windows 10
esbe Posté(e) le 16 février 2006 Posté(e) le 16 février 2006 Hello Non ou peut-etredroite de construction sur le coté à agrandir commande etirer, selectionet etirer sur la droite en entrant la distance voulue ! [surligneur] accrochage : Extention[/surligneur]@+
Tramber Posté(e) le 16 février 2006 Posté(e) le 16 février 2006 ou sinon, un petit bouton^C^Cscu;obj;\etirer et une bonne dose de café vu qu'il te faudra tourner la tête sans arrêt. Tu peux régler UCSFOLLOW suivant tes prefs, si la regen n'est pas trop longue. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
JR66 Posté(e) le 16 février 2006 Posté(e) le 16 février 2006 Je ne sais pas si je comprends bien ce que tu veux faire, mais la commande Echelle irait, non? Jr LT me fait enrager
LUDWIG Posté(e) le 16 février 2006 Auteur Posté(e) le 16 février 2006 Merci pour vos réponses esbeCela demande trop de manip, je voulais éviter d'avoir à tracer des lignes de construction TramberNickelle cette solution.Je ne connaissais pas l'option "objet" pour la commande "scu", ni même la variable "ucsfollow". Avant, je changeais de scu puis j'utilisais "_plan". C'est dommage par contre qu'il fasse un zoom étendu à chaque fois. Il faudrait que je fasse un zoom sur l'objet qui a servi à caler le scu. JR66La commande échelle ne me permettrait pas de modifier la longueur sans changer la largeur. Autocad 2021 - Revit 2022 - Windows 10
usegomme Posté(e) le 17 février 2006 Posté(e) le 17 février 2006 :) Je t'ai construit un lisp rapidement à partir de mes vieilleries ,il manque la gestion des erreurs mais ça marche même sur un segment de polyligne ,en deux clics l'affaire est réglée ,du moins sous autocad 2002 , pour 2005 ? Si un objet reste en surbrillance suite arret manip, il suffit de le reselectionner avec les poignée puis faire échap. ECR Etire Coté Rectangle 17-2-2006 avec autocad 2002 (defun mod_s ( ent lent typent pd pf / l1 s xs ys xp yp i) (setq pd (trans pd 1 0)) (setq ok nil) (if (= typent "POLYLINE") (progn (setq l1 (entget (entnext (cdr (assoc -1 lent))))) ;analyse sommets (while (and (= ok nil) (/= "SEQEND" (cdr (assoc 0 l1)))) (setq s (cdr (assoc 10 l1))) (setq xs (fix (car s))) (setq ys (fix (cadr s))) (setq xp (fix (car pd))) (setq yp (fix (cadr pd))) (if (and (equal xs xp)(equal ys yp)) ;modif sommet (progn (setq ok T) (setq pf (trans pf 1 0)) (setq l1 (subst (cons 10 pf) (assoc 10 l1) l1)) (entmod l1) (entupd ent) ) (setq l1 (entget (entnext (cdr (assoc -1 l1))))) ) ) ;fin while ) ;fin progn (progn ;; pour LWPOLYLINE (setq i 9) (while (and (= ok nil) (nth (setq i (+ i 1)) lent)) (if (= 10 (car (nth i lent))) (progn (setq s (cdr (nth i lent))) (setq xs (fix (car s))) (setq ys (fix (cadr s))) (setq xp (fix (car pd))) (setq yp (fix (cadr pd))) (if (and (equal xs xp)(equal ys yp)) ;modif sommet (progn (setq ok T) (setq pf (trans pf 1 0)) (setq lent (subst (cons 10 pf) (nth i lent) lent)) (entmod lent) (entupd ent) ) ;fin progn ) ; fin if ) ;fin progn ) ; fin if ) ;fin while ) ;fin progn )) (defun c:ECR (/ sel ent lent typent p0 p1 p2 p3 p4 snpg orthm otosnap snpstyl) (setq otosnap (getvar "autosnap")) (setq snpstyl (getvar "snapstyl")) (setvar "snapstyl" 0) (setq snpg (getvar "snapang")) (setq orthm (getvar "orthomode")) (setq sel (entsel "\n Choix Objet a Modifier :")) (setq ent (car sel)) (setq lent (entget ent)) (setq typent (cdr (assoc 0 lent))) (cond ((or (= typent "POLYLINE")(= typent "LWPOLYLINE")) (redraw ent 3) (setq p0 (cadr sel)) (setq p1 (osnap p0 "_endp")) (setq p2 (osnap p0 "_mid")) (setq ang (angle p1 p2)) (setq dis (distance p1 p2)) (setq p3 (polar p2 ang dis)) (setvar "snapang" ang) (setvar "orthomode" 1) (setq p4 (getpoint "\n nouvelle extremite:" p2)) (setq angetir (angle p2 p4)) (setq disetir (distance p2 p4)) (setq p5 (polar p1 angetir disetir)) (setq p6 (polar p3 angetir disetir)) (mod_s ent lent typent p1 p5) ;modif 1 er sommet ; mise a jour de la liste necessaire pour LWPOLYLIGNE avant modif 2 eme sommet (setq ent (car sel)) (setq lent (entget ent)) (mod_s ent lent typent p3 p6) ; modif 2 eme sommet (setvar "snapang" snpg) (setvar "orthomode" orthm) (setvar "snapstyl" snpstyl) (setvar "autosnap" otosnap) ) ) )
Tramber Posté(e) le 17 février 2006 Posté(e) le 17 février 2006 *^C^Cscu;obj;\zoom;o;p;;zoom;0.6x;etirer Ca peut le faire ? C'est en continu. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
usegomme Posté(e) le 20 février 2006 Posté(e) le 20 février 2006 Est -ce que "Non parallèle au scu " signifie que c'est en 3D ?
LUDWIG Posté(e) le 21 février 2006 Auteur Posté(e) le 21 février 2006 Impeccable ton programme. Ca déplace perpendiculairement le côté cliqué quelquesoit la polyligne, d'ailleurs (pas seulement rectangle).Je l'embarque ! Merci... Autocad 2021 - Revit 2022 - Windows 10
kallain Posté(e) le 21 février 2006 Posté(e) le 21 février 2006 En voilà une routine qu'elle est bien. :D Bravo.Adoptée. Ca marche aussi sur un hexagone :En 2 clics tu en fait un cercueil.
usegomme Posté(e) le 21 février 2006 Posté(e) le 21 février 2006 Je suis content qu'il vous convienne ,et qu'il fonctionne .Aussi je lui ai fait un brin de toilette. ;ECR Etire Coté Rectangle ou polyligne 21-2-2006 (defun err-ecr (msg) (if ent (progn (redraw ent 4) (setq ent nil))) (setvar "snapang" snpg) (setvar "orthomode" orthm) (setvar "snapstyl" snpstyl) (setvar "autosnap" otosnap) (setq *error* m:err-ecr m:err-ecr nil) (princ )) (defun mod_s ( ent lent typent pd pf / l1 s xs ys xp yp i ) (setq pd (trans pd 1 0)) (setq ok nil) (if (= typent "POLYLINE") (progn (setq l1 (entget (entnext (cdr (assoc -1 lent))))) ;analyse sommets (while (and (= ok nil) (/= "SEQEND" (cdr (assoc 0 l1)))) (setq s (cdr (assoc 10 l1))) (setq xs (fix (car s))) (setq ys (fix (cadr s))) (setq xp (fix (car pd))) (setq yp (fix (cadr pd))) (if (and (equal xs xp)(equal ys yp)) ;modif sommet (progn (setq ok T) (setq pf (trans pf 1 0)) (setq l1 (subst (cons 10 pf) (assoc 10 l1) l1)) (entmod l1) (entupd ent) ) (setq l1 (entget (entnext (cdr (assoc -1 l1))))) ) ) ;fin while ) ;fin progn (progn ;; pour LWPOLYLINE (setq i 9) (while (and (= ok nil) (nth (setq i (+ i 1)) lent)) (if (= 10 (car (nth i lent))) (progn (setq s (cdr (nth i lent))) (setq xs (fix (car s))) (setq ys (fix (cadr s))) (setq xp (fix (car pd))) (setq yp (fix (cadr pd))) (if (and (equal xs xp)(equal ys yp)) ;modif sommet (progn (setq ok T) (setq pf (trans pf 1 0)) (setq lent (subst (cons 10 pf) (nth i lent) lent)) (entmod lent) (entupd ent) ) ;fin progn ) ; fin if ) ;fin progn ) ; fin if ) ;fin while ) ;fin progn )) (defun c:ECR (/ sel lent typent p0 p1 p2 p3 p4 p5 p6 snpg orthm otosnap snpstyl disetir angetir) (setq m:err-ecr *error* *error* err-ecr) (setq otosnap (getvar "autosnap")) (setq snpstyl (getvar "snapstyl")) (setvar "snapstyl" 0) (setq snpg (getvar "snapang")) (setq orthm (getvar "orthomode")) (setq sel (entsel "\n Choix Polyligne à Modifier :")) (setq ent (car sel)) (setq lent (entget ent)) (setq typent (cdr (assoc 0 lent))) (cond ((or (= typent "POLYLINE")(= typent "LWPOLYLINE")) (redraw ent 3) (setq p0 (cadr sel)) (setq p1 (osnap p0 "_endp")) (setq p2 (osnap p0 "_mid")) (setq ang (angle p1 p2)) (setq dis (distance p1 p2)) (setq p3 (polar p2 ang dis)) (setvar "snapang" ang) (setvar "orthomode" 1) (setq p4 (getpoint "\n nouvelle extremite:" p2)) (setq angetir (angle p2 p4)) (setq disetir (distance p2 p4)) (setq p5 (polar p1 angetir disetir)) (setq p6 (polar p3 angetir disetir)) (mod_s ent lent typent p1 p5) ;modif 1 er sommet ; mise a jour de la liste necessaire pour LWPOLYLIGNE avant modif 2 eme sommet (setq lent (entget ent)) (mod_s ent lent typent p3 p6) ; modif 2 eme sommet (setq ent nil) (setvar "snapang" snpg) (setvar "orthomode" orthm) (setvar "snapstyl" snpstyl) (setvar "autosnap" otosnap) (setq *error* m:err-ecr m:err-ecr nil) (princ) ) (T (setq ent nil) (prompt "CE N'EST PAS UNE POLYLIGNE ") (princ)) ) )
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