Bonjour,
je voudrais savoir si TeXgraph est capable de tracer des polyèdres convexes "simples" comme un cube , une pyramide, ... tous dans une même scène tout en ayant les arêtes cachées en pointillés.
[
view(-2.5,4,-3,3.5), Marges(0,0,0,0), size(9),
P1:=Pyramide([Origin, M(3,0,0), M(2,3,0), M(0,3,0)], 3.5*vecK),
P2:= Parallelep( M(-1,-1,1), 2*vecI,2*vecJ,2*vecK),
Build3D(
bdFacet( P1, [color:=steelblue]),
bdFacet( P2, [color:=crimson]),
bdCylinder(M(0,0,-2), 3*M(0,1,1),1, [color:=forestgreen, border:=1, bordercolor:=black]),
bdLine( Aretes([P1,P2]), [color:=black])
),
Display3D(),
Width:=8, LineStyle:=dotted,
Ligne3D([P1,P2],0),
Dcylindre(M(0,0,-2), 3*M(0,1,1),1)
]
Alphonse Capriani a écrit:Salut projetmbc, et salut Patrick!!
Alphonse Capriani a écrit:Je pense qu'il serait bien (mais je sais pas si c'est faisable) que les segment "cachés" d'une scène3D puissent être dessinées en pointillés comme on peut déja le faire avec la macro DrawPoly et la variable HideStyle par exemple.
projetmbc a écrit:Peut-on faire apparaître les segments d'intersection entre les solides tout en respectant les pointillés ?
[
view(-2.5,4,-3,3.5), Marges(0,0,0,0), size(9),
P1:= Parallelep( M(-1,-1,1), 2*vecI,2*vecJ,2*vecK),
P2:=Pyramide([Origin, M(3,0,0), M(2,3,0), M(0,3,0)], 3.5*vecK),
C:=Cylindre( M(0,0,-2), 3*M(0,1,1),1),
Build3D(
bdFacet( P1, [color:=crimson]),
bdFacet( P2, [color:=steelblue]),
bdCylinder(M(0,0,-2), 3*M(0,1,1),1, [color:=forestgreen, border:=1, bordercolor:=black]),
bdLine( Aretes([P1,P2]), [color:=black])
),
Display3D(),
Width:=8, HideWidth:=8, LineStyle:=dotted,
Ligne3D([P1,P2],1),
Dcylindre(M(0,0,-2), 3*M(0,1,1),1),
{segments d'intersection}
DrawAretes( Bord( Clip3D(P2,P1)) ),
DrawAretes( Bord( Clip3D(P2,C)) )
]
[
view(-2.5,4,-3,3.5), Marges(0,0,0,0), size(9),
P1:= Parallelep( M(-1,-1,1), 2*vecI,2*vecJ,2*vecK),
P2:=Pyramide([Origin, M(3,0,0), M(2,3,0), M(0,3,0)], 3.5*vecK),
C:=Cylindre( M(0,0,-2), 3*M(0,1,1),1),
Build3D(
bdFacet( P1, [color:=crimson]),
bdFacet( P2, [color:=steelblue]),
bdCylinder(M(0,0,-2), 3*M(0,1,1),1, [color:=forestgreen, border:=1, bordercolor:=black]),
bdLine( Aretes([P1,P2]), [color:=black])
),
Display3D(),
{segments d'intersection}
DrawAretes( Bord( Clip3D(P2,P1)) ),
DrawAretes( Bord( Clip3D(P2,C)) )
]
projetmbc a écrit:Si je reprends ton code comme ci-dessous, il y a des pointillés résiduels.
Peut-on les faire disparaitre ?
{segments d'intersection}
DrawAretes( Bord( Clip3D(P2,P1)) ),
DrawAretes( Bord( Clip3D(P2,C)) )
[
view(-2.5,4,-3,3.5), Marges(0,0,0,0), size(9),
P1:= Parallelep( M(-1,-1,1), 2*vecI,2*vecJ,2*vecK),
P2:=Pyramide([Origin, M(3,0,0), M(2,3,0), M(0,3,0)], 3.5*vecK),
C:=Cylindre( M(0,0,-2), 3*M(0,1,1),1),
Build3D(
bdFacet( P1, [color:=crimson]),
bdFacet( P2, [color:=steelblue]),
bdCylinder(M(0,0,-2), 3*M(0,1,1),1, [color:=forestgreen, border:=1, bordercolor:=black]),
bdLine( Aretes([P1,P2]), [color:=black]),
{segments d'intersection}
bdLine( Aretes(Clip3D(P2,P1)), [color:=black]),
bdLine( Aretes(Clip3D(P2,C)), [color:=black]),
),
Display3D()
]
projetmbc a écrit:Du coup on a tout ce qu'il faut pour la géométrie au Collège et au Lycée.
P.Fradin a écrit:projetmbc a écrit:Du coup on a tout ce qu'il faut pour la géométrie au Collège et au Lycée.
Attention à ne pas trop s'emballer non plus! Avec le calcul en flottant et les approximations de la machine je ne serais pas surpris quand même qu'il y ait des cas limites ou le rendu ne soit pas exactement ce que l'on attend.
projetmbc a écrit: Jusqu'à présent, je faisais les dessins en 3D et cela avait le don de m'agacer, maintenant je vais pouvoir bosser en 3D.
P.Fradin a écrit:Il faut savoir aussi qu'avec un grand nombre de facettes, le temps de calcul peut exploser, ce n'est pas rare
P.Fradin a écrit:Si à l'usage tu constates des problèmes, n'hésite pas à la signaler.
Revenir vers Questions - Réponses
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 11 invités