Intersection de deux (ou plus de deux) chemins

N'oubliez pas de consulter les sujets avant de poser votre question, merci.

Intersection de deux (ou plus de deux) chemins

Messagepar Raoul n k » 25 Août 2012 11:36

Bonjour à tous, puis-je récupérer et hachurer l'intersection de deux chemins, avec TeXgraph ?
Merci pour vos contributions.
Pièces jointes
Intersection.jpg
Intersection de deux chemins
Intersection.jpg (32.89 Kio) Consulté 7148 fois
Raoul n k
 
Messages: 40
Inscription: 13 Juil 2010 21:13

Re: Intersection de deux (ou plus de deux) chemins

Messagepar P.Fradin » 25 Août 2012 12:19

Bonjour,

Oui c'est possible lorsque les deux formes fermées sont relativement simples. Il y a deux situations possibles:

1) Les deux chemins sont des (successions de) courbes de Bézier, exemple:
Code: Tout sélectionner
[
view(0,4.5,0,4),Marges(0,0,0,0), size(9),
a:=[2.5+3.5*i,2+3*i,1+2.5*i,2+1.5*i,3+2*i], //points du path 1
b:=[4+1.5*i,3.5+2.5*i,2+2*i,2+0.25*i,3+i], //points du path 2
C1:=GetSpline(-1,a,a[1],-1),// définition path 1 (courbes de Bezier)
C2:=GetSpline(i,b,b[1],i),// définition path 2 (courbes de Bezier)
C3:=capB(C1,C2),// définition intersection (courbes de Bezier)
Width:=8, Bezier(C1), Bezier(C2), //dessin des path 1 et 2
Color:=red, FillStyle:=full, FillColor:=pink,
Bezier(C3) //dessin du path 3
]

capB.png
capB.png (11.82 Kio) Consulté 7144 fois


2) Les deux chemins sont des lignes polygonales (successions de points), exemple:
Code: Tout sélectionner
[
view(0,4.5,0,4),Marges(0,0,0,0), size(9),
a:=[2.5+3.5*i,2+3*i,1+2.5*i,2+1.5*i,3+2*i], //points du path 1
b:=[4+1.5*i,3.5+2.5*i,2+2*i,2+0.25*i,3+i], //points du path 2
C1:=Get(Spline(-1,a,a[1],-1)),// définition path 1 (ligne polybonale)
C2:=Get(Spline(i,b,b[1],i)),// définition path 2 (ligne polybonale)
C3:=cap(C1,C2),// définition intersection (ligne polygonale)
Width:=8, Ligne(C1,1),Ligne(C2,1), //dessin des path 1 et 2
Color:=red, FillStyle:=full, FillColor:=pink,
Ligne(C3,1) //dessin du path 3
]


La différence est visible lorsqu'on zoome fortement sur le dessin, dans le cas 1 le dessin reste vectoriel. Dans le cas 2, on finit par voir les petits segments.
P.Fradin
Avatar de l’utilisateur
P.Fradin
Administrateur du site
 
Messages: 1887
Inscription: 29 Oct 2008 15:04


Revenir vers Questions - Réponses

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 12 invités

cron