Aller au contenu

Reprise de POLY2D ou 3D


La Lozère

Messages recommandés

Bonjour,

 

Existe-t-il une routine pour continuer une POLY2D et/ou 3D?

 

Je m'explique, quand on finit une polyligne (normalement ou par erreur), et que par la suite on veuille la reprendre pour ajouter des points à la suite, il me semble qu'on a que 2 possibilités:

- Soit on fait une nouvelle poly en partant de la fin de la première, et ensuite on les joints,

- Soit on passe par PEDIT, mais là, c'est pas du tout pratique car à chaque fois on est obligé de faire une entrée clavier (I) + validation

 

Moi je pense plus à un truc du genre, on sélectionne la poly, et paf, on se retrouve dans la commande polyligne comme si de rien était...

Le top du top serait, on sélectionne la poly, clic droit, "poursuivre la polyligne"

 

Peut-être à ajouter dans la liste des souhaits, mais pour ce que totodesk en a à faire.... Allez arrêtons de faire du mauvaise esprit :rolleyes:

 

Merci.

www.cad-is.fr
Autocad Map 2021 - Covadis/Autopiste V18.0c
Pisser sous la douche ne suffira pas
Lien vers le commentaire
Partager sur d’autres sites

(re)

 

voici le programme

 

(defun c:ppl (/ pl ent echo)

(if

(and (setq

pl (car (entsel "\n Sélectionnez la polyligne à continuer : "))

)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(if (/= PLINETYPE 2)

(progn

(setvar "PLINETYPE" 2)

(command "_.pedit" pl "" "" "")

(= (cdr (assoc 0 (entget pl))) "LWPOLYLINE")

)

)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

)

(progn

(setq ent (entlast)

echo (getvar "CMDECHO")

)

(setvar "CMDECHO" 1)

(command "_.pline"

(trans (cdr (assoc 10 (reverse (entget pl)))) pl 1)

)

(while (/= 0 (getvar "CMDACTIVE"))

(command pause)

)

(or (equal ent (entlast))

(command "_.pedit" pl "_j" (entlast) "" "")

)

(setvar "CMDECHO" echo)

)

)

(princ)

)

 

 

A+

Lien vers le commentaire
Partager sur d’autres sites

Je viens de tester cette routine et ça tourne nickel; moi aussi je regrettais cette "lacune".

Un tout petit regret toutefois : elle serait parfaite si C (clore) permettait de fermer la polyligne sur le 1er point de celle-ci.

 

Bonjour,

 

Très rapidement une micro modif qui devrait supporter le clore, à tester..

 

(defun c:ppl (/ pl ent echo)
 (if (and (setq pl (car (entsel "\n Sélectionnez la polyligne à continuer : ")))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
          (if (/= PLINETYPE 2)
            (progn (setvar "PLINETYPE" 2)
                   (command "_.pedit" pl "" "" "")
                   (= (cdr (assoc 0 (entget pl))) "LWPOLYLINE")
            )
          )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
     )
   (progn (setq ent  (entlast)
                echo (getvar "CMDECHO")
          )
          (setvar "CMDECHO" 1)
          (command "_.pline" (trans (cdr (assoc 10 (reverse (entget pl)))) pl 1))
          (while (/= 0 (getvar "CMDACTIVE")) (command pause))
          (setvar "CMDECHO" 0)
              (cond ((equal ent (entlast)))
                    ;; pline ouvert
                    ((zerop (logand (cdr (assoc 70 (entget (entlast)))) 1)) (command "_.pedit" pl "_j" (entlast) "" ""))
                    ;; sinon pline fermé
                    (T (command "_.pedit" (entlast) "_open" "" ) (command "_.pedit" pl "_j" (entlast) "" "_close" ""))
              )
              (setvar "CMDECHO" echo)          
   )
 )
 (princ)
)

 

A+

Modifié par VDH-Bruno

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

2 mots..... Trop fort.

Merci.

 

Hélas pas autant que je le souhaiterais... Sinon si tu as 5 minutes recharge la version précédente, j’avais été trop vite et je conservais dans le cas du clore les caractéristiques de la nouvelle polyligne ajouté et pas celle d’origine.

 

A+

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

Heu... je ne vois pas, je viens de tester la commande avant ton "edit", et pas de problèmes.

 

Ma polyligne de base dans le calque "toto" couleur forcé rouge. Quand je lance la commande avec le calque "temp" courant, et que je fais clore, l'ensemble de la polyligne est bien dans le calque toto et est rouge.

 

Je vais recharger quand même. Et encore merci.

www.cad-is.fr
Autocad Map 2021 - Covadis/Autopiste V18.0c
Pisser sous la douche ne suffira pas
Lien vers le commentaire
Partager sur d’autres sites

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é