Hachures dans une figure
2 participants
Page 1 sur 1
Hachures dans une figure
Bonjour
J'ai l'élément graphique suivant (une carpette de Serpinski)
Je voudrais hachurer le gros carré se trouvant dans chaque coin. Comment faire vu que je n'ai pas défini les carrés pour construire la figure ? Y-t-il moyen de hachurer sans les définir ?
Merci
J'ai l'élément graphique suivant (une carpette de Serpinski)
- Code:
[
Width:=6,
Droite(4*i/9,1+1.13*i),
for k from 0 to 3 step 1
do Seg(k,k+3*i),
Seg(i*k,3+i*k)
od,
Width:=4,
for k from 0 to 2 step 2
do
for l from 1 to 2 step 1
do
Seg(k+l/3,k+l/3+i),
Seg(k+l/3+2*i,k+l/3+3*i),
Seg(i*(k+l/3),1+i*(k+l/3)),
Seg(2+i*(k+l/3),3+i*(k+l/3)),
od
od,
for k from 0 to 2 step 2
do
for l from 0 to 2 step 2
do
for m from 1 to 2 step 1
do
Seg(k+l/3+m/9,k+l/3+m/9+i/3), Seg(k+l/3+m/9+2*i/3,k+l/3+m/9+i),
Seg(k+l/3+m/9+2*i,k+l/3+m/9+7*i/3), Seg(k+l/3+m/9+8*i/3,k+l/3+m/9+3*i),
Seg(i*(k+l/3+m/9),1/3+i*(k+l/3+m/9)),
Seg(2/3+i*(k+l/3+m/9),1+i*(k+l/3+m/9)),
Seg(2+i*(k+l/3+m/9),7/3+i*(k+l/3+m/9)),
Seg(8/3+i*(k+l/3+m/9),3+i*(k+l/3+m/9)),
od
od
od
]
Je voudrais hachurer le gros carré se trouvant dans chaque coin. Comment faire vu que je n'ai pas défini les carrés pour construire la figure ? Y-t-il moyen de hachurer sans les définir ?
Merci
Re: Hachures dans une figure
Pour faciliter la chose je te propose la macro carpet(a,u,v,n) qui va faire le dessin avec: a le point inférieur gauche, u et v deux vecteurs non colinéaires, et n le niveau de récursion.
Comme tu le vois, au nveau 1 il y a remplissage (que l'on peut changer bien sûr). Ton élément graphique devient alors:
ce qui donne:
- Code:
{carpet(a,u,v,n)}
[$a:=%1, $u:=%2, $v:=%3, $n:=%4,
if n=1 then {remplissage}
SaveAttr(),
LineStyle:=noline, FillStyle:=bdiag, FillColor:=gray,
Dparallelo(a,a+u,a+u+v),
RestoreAttr()
fi,
{traits}
Ligne([a+v/3,a+u+v/3,jump, a+2*v/3,a+u+2*v/3,jump,
a+u/3,a+v+u/3,jump, a+2*u/3,a+v+2*u/3,jump],0),
if n>0 then {recursion}
u:=u/3, v:=v/3,
carpet(a,u,v,n-1),carpet(a+2*u,u,v,n-1),
carpet(a+2*v,u,v,n-1),carpet(a+2*v+2*u,u,v,n-1),
fi,
]
Comme tu le vois, au nveau 1 il y a remplissage (que l'on peut changer bien sûr). Ton élément graphique devient alors:
- Code:
[
Width:=6,
Droite(4*i/9,1+1.13*i),
Dcarre(0,3),
Width:=4,
carpet(0,3,3*i,2)
]
ce qui donne:
Re: Hachures dans une figure
Je te remercie. J'ai juste changé l'inclinaison des hachures et j'ai ajouté des labels.
- Code:
% TeXgraph version 1.94 beta-7.1
% Fenetre Xmin Xmax Ymin Ymax Xscale Yscale
100#-0.25#3.6#-0.25#3.6#1#1##
% Marges gauche droite haut bas cadre gestion_couleur comptgraph
101#0#0#0#0#0#1#5##
% Affectation des Variables theta et phi et type de perspective
18##[theta:=0.5236, phi:=1.0472,OriginalCoord(1),IdMatrix(),IdMatrix3D(),ModelView(ortho)]##
% Déclaration des Macros
16#carpet#{carpet(a,u,v,n)}
[$a:=%1, $u:=%2, $v:=%3, $n:=%4,
if n=1 then {remplissage}
SaveAttr(),
LineStyle:=noline, FillStyle:=fdiag, FillColor:=gray,
Dparallelo(a,a+u,a+u+v),
RestoreAttr()
fi,
{traits}
Ligne([a+v/3,a+u+v/3,jump, a+2*v/3,a+u+2*v/3,jump,
a+u/3,a+v+u/3,jump, a+2*u/3,a+v+2*u/3,jump],0),
if n>0 then {recursion}
u:=u/3, v:=v/3,
carpet(a,u,v,n-1),carpet(a+2*u,u,v,n-1),
carpet(a+2*v,u,v,n-1),carpet(a+2*v+2*u,u,v,n-1),
fi,
]##
% Déclaration des Eléments graphiques
% objet1 (Utilisateur)
18##[tMin:=-5,tMax:=5]##
14#objet1#[
Width:=6,
Droite(0.5,1+0.5*i),
Dcarre(0,3),
Width:=4,
carpet(0,3,3*i,2)
]#-1##
% objet2 (Ligne Polyg.)
18##[Width:=4,Arrows:=2]##
12#objet2#[ 3.5*i,0,3.5 ]#0#0##
% objet3 (Label)
18##[Width:=2,LabelStyle:=8,LabelSize:=2]##
8#objet3#[ 3.4+0.1*i ]#$s$##
% objet4 (Label)
18##[LabelStyle:=1]##
8#objet4#[ 3.4*i+0.1 ]#$t$##
% objet5 (Label)
8#objet5#[ 3.2+2.5*i ]#$t-s=c$##
Re: Hachures dans une figure
J'ai un second problème de hachures
Dans la figure suivante, je souhaite hachurer la partie du rectangle se trouvant au-dessus de la courbe. Comment faire (ensuite, je pourrai le refaire quatre fois pour la seconde figure pour illustrer le fait que 1/2<gamma<1 où gamma est la constante d'Euler) ?
Dans la figure suivante, je souhaite hachurer la partie du rectangle se trouvant au-dessus de la courbe. Comment faire (ensuite, je pourrai le refaire quatre fois pour la seconde figure pour illustrer le fait que 1/2<gamma<1 où gamma est la constante d'Euler) ?
- Code:
% TeXgraph version 1.94 beta-7.1
% Fenetre Xmin Xmax Ymin Ymax Xscale Yscale
100#1#7.5#-0.25#1.1#1#3##
% Marges gauche droite haut bas cadre gestion_couleur comptgraph
101#0#0#0#0#0#1#2##
% Affectation des Variables theta et phi et type de perspective
18##[theta:=0.5236, phi:=1.0472,OriginalCoord(1),IdMatrix(),IdMatrix3D(),ModelView(ortho)]##
% Déclaration des Macros
% Déclaration des Eléments graphiques
% Courbe (Courbe cartés.)
21#Courbe#1/x#5##
% Rectangle (Ligne Polyg.)
12#Rectangle#[ 3,3+i/3,7+i/3,7 ]#1#0##
Re: Hachures dans une figure
La macro domaine2 peut faire ça (menu Créer/Autres éléments 2D), par exemple:
- Code:
[
LineStyle:=noline, FillStyle:=bdiag, FillColor:=red,
domaine2( 1/t, 1/3, 3, 7)
]
Re: Hachures dans une figure
Merci ! Et hop
La figure suivante ... suit ...
- Code:
% TeXgraph version 1.94 beta-7.1
% Fenetre Xmin Xmax Ymin Ymax Xscale Yscale
100#1.5#7.8#-0.2#0.7#1#4##
% Marges gauche droite haut bas cadre gestion_couleur comptgraph
101#0#0#0#0#0#1#8##
% Affectation des Variables theta et phi et type de perspective
18##[theta:=0.5236, phi:=1.0472,OriginalCoord(1),IdMatrix(),IdMatrix3D(),ModelView(ortho)]##
% Déclaration des Macros
% Déclaration des Eléments graphiques
% Courbe (Courbe cartés.)
18##[Width:=5,tMax:=7.5]##
21#Courbe#1/x#5##
% Rectangle (Ligne Polyg.)
12#Rectangle#[ 3,3+i/3,7+i/3,7 ]#1#0##
% objet3 (Utilisateur)
18##[Width:=2,tMin:=1]##
14#objet3#[
LineStyle:=noline, FillStyle:=bdiag, FillColor:=black,
domaine2( 1/t, 1/3, 3, 7)
]#-1##
% objet4 (Ligne Polyg.)
12#objet4#[ 2,7.5 ]#0#0##
% objet5 (Label)
18##[LabelStyle:=4,LabelSize:=2]##
8#objet5#[ 3-0.05*i ]#$k$##
% objet6 (Label)
8#objet6#[ 7-0.05*i ]#$k+1$##
% objet7 (Label)
18##[LabelStyle:=1]##
8#objet7#[ 2.2+0.55*i ]#$y=\dfrac{1}{x}$##
% objet8 (Label)
18##[LabelStyle:=16,LineStyle:=-1,FillStyle:=1]##
8#objet8#[ 6.5+0.25*i ]#$T_{k}$##
La figure suivante ... suit ...
Re: Hachures dans une figure
La somme des parties hachurées tend vers la constante d'Euler et cela remplit plus de la moitié du carré
- Code:
% TeXgraph version 1.94 beta-7.1
% Fenetre Xmin Xmax Ymin Ymax Xscale Yscale
100#-0.25#1.25#-0.25#1.25#3#3##
% Marges gauche droite haut bas cadre gestion_couleur comptgraph
101#0#0#0#0#0#1#16##
% Affectation des Variables theta et phi et type de perspective
18##[theta:=0.5236, phi:=1.0472,OriginalCoord(1),IdMatrix(),IdMatrix3D(),ModelView(ortho)]##
% Déclaration des Variables Globales
15#a#0.05##
% Déclaration des Macros
% Déclaration des Eléments graphiques
% ext (Ligne Polyg.)
12#ext#[ 0,1,1+i,i ]#1#0##
% C1 (Courbe cartés.)
18##[Width:=5,NbPoints:=100,tMin:=0,tMax:=1]##
21#C1#1/(x+1)#5##
% C2 (Courbe cartés.)
21#C2#1/(x+2)#5##
% C3 (Courbe cartés.)
21#C3#1/(x+3)#5##
% C4 (Courbe cartés.)
21#C4#1/(x+4)#5##
% objet6 (Utilisateur)
18##[Width:=2,NbPoints:=50,tMin:=-0.25,tMax:=1.25]##
14#objet6#[
LineStyle:=noline, FillStyle:=bdiag, FillColor:=black,
domaine2( 1/(t+1), 1, 0, 1),
domaine2( 1/(t+2), 1/2, 0, 1),
domaine2( 1/(t+3), 1/3, 0, 1),
domaine2( 1/(t+4), 1/4, 0, 1),
]#-1##
% objet7 (Ligne Polyg.)
12#objet7#[ .5*i,.5*i+1 ]#0#0##
% objet8 (Ligne Polyg.)
12#objet8#[ i/3,i/3+1 ]#0#0##
% objet9 (Ligne Polyg.)
12#objet9#[ i/4,i/4+1 ]#0#0##
% objet15 (Label)
18##[LabelStyle:=2,LabelSize:=1]##
8#objet15#[ i/3-2.5*a ]#$\frac{1}{3}$##
% objet10 (Ligne Polyg.)
12#objet10#[ i/5,i/5+1 ]#0#0##
% objet11 (Label)
18##[LabelStyle:=6,LabelSize:=2]##
8#objet11#[ -a*(1+i) ]#$0$##
% objet12 (Label)
18##[LabelStyle:=4]##
8#objet12#[ 1-a*i ]#$1$##
% objet14 (Label)
18##[LabelStyle:=2,LabelSize:=1]##
8#objet14#[ i/4-a ]#$\frac{1}{4}$##
% objet13 (Label)
18##[LabelSize:=2]##
8#objet13#[ i-a ]#$1$##
% objet16 (Label)
18##[LabelSize:=1]##
8#objet16#[ i/2-a ]#$\frac{1}{2}$##
Sujets similaires
» marquer un segment dans l'espace
» Limitation dans les calculs d'axes ?
» inclusion tkz dans colonne sous beamer
» Limitation dans les calculs d'axes ?
» inclusion tkz dans colonne sous beamer
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|