CADxp: Dessin d'une polyligne parallèle à un support existant - CADxp

Aller au contenu

Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Dessin d'une polyligne parallèle à un support existant

#1 L'utilisateur est hors-ligne   COME 

  • ceinture marron
  • Groupe : Membres
  • Messages : 287
  • Inscrit(e) : 16-septembre 13

Posté 06 décembre 2018 - 11:01

Bonjour,

Je cherche à dessiner des polylignes en suivant automatiquement des contours différents (Exemple : sur un plan de cadastre, je cherche à dessiner un contour regroupant plusieurs parcelles en suivant les contours existants). On clique le point de départ de la polyligne et on sélectionne le contour que l'on veut suivre et ainsi de suite jusqu'à obtention du résultat souhaité.
Pour ceux qui connaissent Mensura il s'agit du pendant du mode accrochage "Saisie parallèle".
J'ai posté cette demande dans Covadis mais si cette fonctionnalité existe sur Autocad je suis preneur.
Précisions : Autocad 2012 / Covadis 13.0g

Merci et bonne journée.
COME

La vie sans musique est tout simplement une erreur, une fatigue, un exil. »
Friedrich Nietzsche
0

#2 L'utilisateur est hors-ligne   Vincent P. 

  • ceinture orange
  • Groupe : Membres
  • Messages : 22
  • Inscrit(e) : 08-décembre 16
  • Location44

Posté 06 décembre 2018 - 11:26

Salut Come,

Dans ton cas, je voie deux possibilités :
- La commande POLY2D (autocad) qui est un autre moyen de dessiner une polyligne. Une fois la commande lacée, tu peut utiliser l’option "seGment" et donc suivre des contours.
- La commande UNICONT (covadis) qui vas créer une polyligne faisant le contour de deux polylignes (qui doivent être fermées et sécantes). Tu a aussi MULTUNI qui fait la même chose, mais avec plus de deux polylignes de base.

Dans le menu Covadis 2D, vas jeter un oeil dans "Topologie / Polygone".

Dit moi si c'est bien ce que tu cherchais!

Amicalement
Vincent
Lispeur débutant!
1

#3 L'utilisateur est hors-ligne   Lommig 

  • ceinture bleue
  • Groupe : Membres
  • Messages : 161
  • Inscrit(e) : 25-juillet 12
  • LocationBretagne

Posté 06 décembre 2018 - 11:47

Voir le messageVincent P., le 06 décembre 2018 - 11:26 , dit :

- La commande POLY2D (autocad) qui est un autre moyen de dessiner une polyligne. Une fois la commande lacée, tu peut utiliser l’option "seGment" et donc suivre des contours.


Bonjour,

Je me permets une petite précision : la commande "POLY2D" est une commande COVADIS.
Par contre, de mémoire, elle n'existait pas encore sous COVADIS 13 (fin 2012).

Guillaume
AutoCAD, AutoCAD Map3D, AutoCAD Architecture, Revit, COVADIS, InfraWorks 360, ReCap 360, ...
BIM Infrastructure
1

#4 L'utilisateur est hors-ligne   Demixav 

  • ceinture noire 1er dan
  • Groupe : Membres
  • Messages : 685
  • Inscrit(e) : 28-mars 12
  • LocationLa pampa du Gard

Posté 06 décembre 2018 - 12:00

Salut,

J'ai eu quelques soucis dernièrement avec ce genre de travail à faire.

Avec l'aide du forum, j'ai pu me débrouiller avec la commande UNICONT, mais FRAID m'avait proposé un LISP de GILE qui fait cela également apparemment, mais j'avoue que je ne l'ai pas testé du coup...
mais si ça peut aider, c'est ici : http://gilecad.azure...LISP/Fusion.lsp

Bon courage!
Xav
AutoCad Map 3D 2011 - Covadis v16.0d
Windows 7 - 64b
1

#5 L'utilisateur est hors-ligne   COME 

  • ceinture marron
  • Groupe : Membres
  • Messages : 287
  • Inscrit(e) : 16-septembre 13

Posté 06 décembre 2018 - 12:40

Voir le messageLommig, le 06 décembre 2018 - 11:47 , dit :

Bonjour,

Je me permets une petite précision : la commande "POLY2D" est une commande COVADIS.
Par contre, de mémoire, elle n'existait pas encore sous COVADIS 13 (fin 2012).

Guillaume


Merci pour la précision, et si si elle est présente sur la 13.0g, cela fonctionne parfaitement et c'est ce que je cherchais. MERCI !
COME

La vie sans musique est tout simplement une erreur, une fatigue, un exil. »
Friedrich Nietzsche
0

#6 L'utilisateur est hors-ligne   COME 

  • ceinture marron
  • Groupe : Membres
  • Messages : 287
  • Inscrit(e) : 16-septembre 13

Posté 06 décembre 2018 - 12:44

Voir le messageDemixav, le 06 décembre 2018 - 12:00 , dit :

Salut,

J'ai eu quelques soucis dernièrement avec ce genre de travail à faire.

Avec l'aide du forum, j'ai pu me débrouiller avec la commande UNICONT, mais FRAID m'avait proposé un LISP de GILE qui fait cela également apparemment, mais j'avoue que je ne l'ai pas testé du coup...
mais si ça peut aider, c'est ici : http://gilecad.azure...LISP/Fusion.lsp

Bon courage!
Xav


Merci pour le lien : je l'ai testé et il permet de créer une seule polyligne en suivant les contours extérieurs de plusieurs polylignes mais elles doivent être fermées et avoir une intersection sinon cela ne fonctionne pas. Pas ce je recherchais dans le cas présent mais utile pour d'autres projets.
Merci ! Image IPB
COME

La vie sans musique est tout simplement une erreur, une fatigue, un exil. »
Friedrich Nietzsche
1

#7 L'utilisateur est hors-ligne   bonuscad 

  • ceinture rouge et blanche 8em dan
  • Groupe : Membres
  • Messages : 4577
  • Inscrit(e) : 20-juin 03

Posté 06 décembre 2018 - 14:16

Bonjour,
J'avais déjà posté cela, mais je ne sais plus trop où!Cette fonction répondra t-elle à ta demande...? Essayes!
Un Autocad classique suffit pour pouvoir l'utiliser.
(defun round (num prec)
  (if (zerop (setq prec (abs prec)))
	num
	(* prec (fix ((if (minusp num) - +) (/ num prec) 0.5)))
  )
)

(defun c:Tracage ( / p1 p2 key pt_sel ss ent obj_lw param_pt new_param pt lst_pt lst_gr)
  (initget 1)
  (setq
	p1 (getpoint "\nPoint de depart : ")
	new_param nil
	ent nil
	lst_pt nil
	lst_gr nil
  )
  (while (and (setq key (grread T 4 0)) (not (member key '((2 13) (2 32)))) (/= (car key) 25))
  (cond
	((eq (car key) 5)
	;;; Récupère le point sélectionné de key par grread
	(setq pt_sel (osnap (list (caadr key) (cadadr key)) "_near"))
	; si pt_sel existe alors
	(if pt_sel
  	(progn
  	;;; Sélectionne la polyligne en dessous du point en cours
  	(setq ss (ssget "_C" pt_sel pt_sel '((0 . "LWPOLYLINE"))))
    	(if ss (setq ent (ssname ss 0)))
  	);fin progn
	)
	(cond
  	;;; si entité alors
  	(ent 
  	;;; Alors transformation en objet vla l'entité lwpolyligne en cours
  	(setq
    	obj_lw (vlax-ename->vla-object ent)
    	pt_sel (vlax-curve-getClosestPointTo obj_lw (trans (cadr key) 1 0))
  	)
  	(cond
    	;;; si nouveau pt_sel alors
    	(pt_sel
    	(setq
      	param_pt (vlax-curve-getParamAtPoint obj_lw pt_sel)
      	param_pt (round param_pt 1.0)
    	)
    	(cond
      	(new_param
        	(setq pt (vlax-curve-getPointAtParam obj_lw param_pt))
        	(if (and (not (eq param_pt new_param)) (not (member pt lst_pt)))
          	(progn
          	(setq lst_pt (cons (trans pt 0 1) lst_pt))
          	(setq p2 (trans pt 0 1))
          	(setq lst_gr (append (cons 1 (list p1 p2)) lst_gr))
          	(grvecs lst_gr)
          	(setq p1 p2)
          	)
        	)
      	)
    	)
    	(setq new_param param_pt)
    	)
  	)
  	)
	)
	)
	((member key '((2 117)(2 85)))
	(if lst_gr
  	(setq
  	lst_gr (cdddr lst_gr)
  	lst_pt (cdr lst_pt)
  	p1 (car lst_pt)
  	)
	)
	(redraw)
	(grvecs lst_gr)
	)
	(T
	(if lst_gr (grvecs lst_gr))
	)
  )
  )
  (redraw)
  (cond
  (lst_pt
	(setvar "CMDECHO" 0)
	(command "_.pline")
	(foreach n lst_pt (command "_none" n))
	(command "")
	(setvar "CMDECHO" 1)
	(sssetfirst nil (ssadd (entlast)))
  )
  )
  (prin1)
)


Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
1

#8 L'utilisateur est hors-ligne   COME 

  • ceinture marron
  • Groupe : Membres
  • Messages : 287
  • Inscrit(e) : 16-septembre 13

Posté 06 décembre 2018 - 16:16

Voir le messagebonuscad, le 06 décembre 2018 - 14:16 , dit :

Bonjour,
J'avais déjà posté cela, mais je ne sais plus trop où!Cette fonction répondra t-elle à ta demande...? Essayes!
Un Autocad classique suffit pour pouvoir l'utiliser.



Oui merci, parfait quand on a qu'Autocad ! Par contre pas intérêt à avoir la tremblote quand tu suis les poly.Image IPB
COME

La vie sans musique est tout simplement une erreur, une fatigue, un exil. »
Friedrich Nietzsche
0

Partager ce sujet :


Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)