Aller au contenu

Raccord ligne avec proprietes!


Messages recommandés

Posté(e)

Bonsoir,

 

Je recherche un moyen de faire un raccord lignes-lignes en copiant les proprietes

comme pour les polylignes

 

merci d'avance et bon week end!!

"Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."

J-C Van Damme

Posté(e)

Tu arrives à copier des propriétés de raccord en copiant les propriétés de polylignes ?

 

Je ne comprends pas ton sujet.... :casstet:

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Je ne suis pas sûr d'avoir compris non plus.

 

Mais voici un petit LISP qui raccorde, à la première ligne sélectionnée, les lignes sélectionnées ensuite en leur faisant hériter des proprités (calque, couleur, type de ligne) de la première.

 

;;; Join_line Raccorde successivement les lignes sélectionnées à la première
;;; Les lignes héritent des propriétés de la première.

(defun c:join_line (/ extmod l1 e1 l2 e2 pick1 pick2 p_int)

 (defun extmod (e_lst pick / start end)
 (setq	start (cdr (assoc 10 e_lst))
end   (cdr (assoc 11 e_lst))
 )
 (if (and (	   (      )
   (if	(      (subst (cons 11 p_int) (assoc 11 e_lst) e_lst)
     (subst (cons 10 p_int) (assoc 10 e_lst) e_lst)
   )
   (if	(      (subst (cons 10 p_int) (assoc 10 e_lst) e_lst)
     (subst (cons 11 p_int) (assoc 11 e_lst) e_lst)
   )
 )
)
 
 (vl-load-com)
 (while
   (not
     (and (setq l1 (entsel "\nSélectionnez la première ligne: "))
   (= (cdr (assoc 0 (setq e1 (entget (car l1))))) "LINE")
     )
   )
 )
 (setq pick1 (trans (osnap (cadr l1) "_nea") 1 0))
 (while (and (setq l2
	     (entsel
	       "\nSélectionnez la ligne à joindre à la précédente: "
	     )
      )
      (= (cdr (assoc 0 (setq e2 (entget (car l2))))) "LINE")
 )
   (if (setq p_int (inters (cdr (assoc 10 e1))
		   (cdr (assoc 11 e1))
		   (cdr (assoc 10 e2))
		   (cdr (assoc 11 e2))
		   nil
	   )
      )
     (progn
      (vla-StartUndoMark
 (vla-get-ActiveDocument (vlax-get-acad-Object))
      )
      (setq pick2 (trans (osnap (cadr l2) "_nea") 1 0)
     l2	   (car l2)
      )
      (entmod (extmod e1 pick1))
      (setq e2 (extmod e2 pick2))
      (setq e2 (subst (assoc 8 e1) (assoc 8 e2) e2))
      (if (assoc 62 e1)
 (if (assoc 62 e2)
   (setq e2 (subst (assoc 62 e1) (assoc 62 e2) e2))
   (setq e2 (append e2 (list (assoc 62 e1))))
 )
 (if (assoc 62 e2)
   (setq e2 (subst (cons 62 256) (assoc 62 e2) e2))
 )
      )
      (if (assoc 6 e1)
 (if (assoc 6 e2)
   (setq e2 (subst (assoc 6 e1) (assoc 6 e2) e2))
   (setq e2 (append e2 (list (assoc 6 e1))))
 )
 (if (assoc 6 e2)
   (setq e2 (subst (cons 6 "BYLAYER") (assoc 6 e2) e2))
 )
      )
      (entmod e2)
      (setq l1	l2
     e1	e2
      )
      (vla-EndUndoMark
 (vla-get-ActiveDocument (vlax-get-acad-Object))
      )
     )
     (prompt "\nErreur: pas d'intersection entre les lignes.")
   )
 (princ)
)

(princ "\nTaper JOIN_LINE pour lancer la commande.")
(princ)

[Edité le 29/4/2006 par (gile)]

 

[Edité le 2/5/2006 par (gile)]

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Alors, à ce moment là, il suffit de faire un PEDIT sur la première ligne, faire les raccords et exploser le cas échéant. Raccord soudant automatiquement les objets quand il y a une poly au départ.

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)
Tu arrives à copier des propriétés de raccord en copiant les propriétés de polylignes ?

 

Je ne comprends pas ton sujet.... :casstet:

 

 

Désolé pour mon explication un peu furtive...

 

En fait si tu as une polyligne et que tu la raccorde avec une ligne, cela continu la polyligne...

Donc les memes prop..

 

Moi j'aimerais la meme chose mais avec des lignes...

"Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."

J-C Van Damme

Posté(e)
Je ne suis pas sûr d'avoir compris non plus.

 

Mais voici un petit LISP qui raccorde, à la première ligne sélectionnée, les lignes sélectionnées ensuite en leur faisant hériter des proprités (calque, couleur, type de ligne) de la première.

 

 

 

:P Merci Gile...

 

C'est exactement ca!!!!

"Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."

J-C Van Damme

Posté(e)

J'ai amelioré le LISP ci-dessus.

 

Dans les cas où il y a deux possibilités, la position du pointeur au moment de la sélection de la ligne détermine le côté qui sera raccordé

 

http://img335.imageshack.us/img335/4679/join10eq.png http://img306.imageshack.us/img306/7706/join31hj.png

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

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é