\input $FORMAT/myplain.tex
\input macros-doc.tex
\bookstyle
\def \exemple#1{ \listing 0 {#1.jps}{le fichier $jps$}
\epsfxsize = 80mm
$$
\boxepsillustrate {#1.ps}
$$
}
\def \epspath { camview/}\def \datapath { camview/}\def \listingpath { camview/}
\long \def \catalogue#1#2{$$
\vcenter {\hsize .45 \hsize
$$\boxepsillustrate {#1}$$
}
\hfill
\vcenter {\hsize .55 \hsize #2}
$$
}
\titre {Extension 3d pour le format jps}
\centerline {{\sl par Philippe Saadé}}
\centerline {(|psaade.jps@free.fr|)}
\centerline {\today }
\vskip \titreskip
\footline = {\hss \folio \hss }
\pageno 1
\paragraphe {Général}
\syntaxe
\longref
{$x$ $y$ $z$}
{SetCamPos}
{$-$}
{Positionne la caméra au point $(x, y, z)$}
\longref
{$-$}
{GetCamPos}
{$x$ $y$ $z$}
{Dépose sur la pile les coordonnées de la caméra}
\longref
{$V_x$ $V_y$ $V_z$}
{SetCamVec}
{$-$}
{{\sl Set Camera Looking vector}.}
\longref
{$-$}
{GetCamVec}
{$V_x$ $V_y$ $V_z$}
{{\sl Get Camera Looking vector}.}
\longref
{$U_x$ $U_y$ $U_z$}
{SetCamUp}
{$-$}
{{\sl Set Camera Up vector}.}
\longref
{$-$}
{GetCamUp}
{$U_x$ $U_y$ $U_z$}
{{\sl Set Camera Up vector}.}
\longref
{$-$}
{ComputeCamera}
{$-$}
{{\sl Compute vectors usefull to CamView.}}
\longref
{$x$ $y$ $z$}
{CamView}
{$X$ $Y$}
{On projete le point 3d sur le plan de représentation de la caméra,
selon le mode de représentation}
\longref
{$array1$}
{tab3dto2d}
{$array2$}
{transforme un tableau de points 3d en tableau de points 2d}
\longref
{$-$}
{qplanxy}
{$-$}
{Trace un quadrillage du plan XY}
\longref
{}
{getp3d}
{}
{}
\endsyntaxe
\Longref
{}
{representationtype}
{Chaîne de caractère spécifiant le type de perspective~:
(perspective) ou (ortho)}
{(perspective)}
\Longref
{}
{ScreenDist}
{Distance par rapport à l'écran}
{0.1}
\Longref
{}
{ZoomFactor\_x}
{Facteur de zoom en $x$}
{100}
\Longref
{}
{ZoomFactor\_y}
{Facteur de zoom en $y$}
{100}
\paragraphe {Les axes et quadrillages}
\syntaxe
\longref
{$xmin$ $xmax$ $ymin$ $ymax$ $zmin$ $zmax$}
{quadrilleXYZ}
{$-$}
{Effectue un quadrillage d'unité $1$ sur le produit $[xmin;xmax] \times [ymin;
ymax] \times [zmin; zmax]$}
\longref
{$xmin$ $xmax$ $\ell $}
{axeR}
{$-$}
{$[xmin; xmax]$ = étendue du pointille, $\ell $ = longueur du vecteur}
\longref
{$ymin$ $ymax$ $\ell $}
{axeV}
{$-$}
{$[ymin; ymax]$ = étendue du pointille, $\ell $ = longueur du vecteur}
\longref
{$zmin$ $zmax$ $\ell $}
{axeB}
{$-$}
{$[zmin; zmax]$ = étendue du pointille, $\ell $ = longueur du vecteur}
\longref
{$min$ $max$ $\ell $}
{axeRVB}
{$-$}
{$[min; max]$ = étendue des pointillés, $\ell $ = longueur des vecteurs}
\endsyntaxe
\exempledble {exemple_01}{.5}{.4}
\exempledble {exemple_02}{.5}{.4}
\exempledble {exemple_04}{.5}{.4}
\paragraphe {Opérateurs}
\sparagraphe {Sur les points}
\syntaxe
\longref
{$A$ $B$}
{distance3d}
{$d$}
{calcule la distance $d = AB$}
\longref
{$A$}
{dupp3d}
{$A$ $A$}
{Dupplique le point 3d au dessus de la pile}
\longref
{$x$ $y$ $z$ $lit$}
{defpoint3d}
{$-$}
{Associe le littéral $lit$ au point $(x, y, z)$}
\longref
{$M$ $A$ $\vec v$}
{orthoprojplane3d}
{$M'$}
{Le point $M'$ est le projeté du point $M$ sur le plan $P$ défini
par le point $A$ et le vecteur $\vec v$, normal à $P$.}
\longref
{$A$ $B$}
{milieu3d}
{$I$}
{$I$ est le milieu de $[AB]$}
\endsyntaxe
\sparagraphe {Sur les vecteurs}
\syntaxe
\longref
{$A$ $B$}
{vecteur3d}
{$u$}
{$u = \overrightarrow {AB}$}
\longref
{$\vec u$}
{norme3d}
{$r$}
{$r$ est la norme du vecteur $\vec u$}
\longref
{$u$}
{dupv3d}
{$u$ $u$}
{Dupplique le vecteur $u$ au dessus de la pile}
\longref
{$\vec u$ $\vec v$}
{addv3d}
{$\vec w$}
{$\vec w = \vec u + \vec v$}
\longref
{$\vec u$ $\lambda $}
{mulv3d}
{$\vec v$}
{$\vec v = \lambda \vec u$}
\longref
{$\lambda $ $\vec u$}
{lambdav3d}
{$\vec v$}
{Le vecteur $\vec v$ vérifie $\vec v = \lambda \vec u$}
\longref
{$\vec u$ $\vec v$}
{vectprod3d}
{$\vec w$}
{$\vec w = \vec u \wedge \vec v $}
\longref
{$\vec u$ $\vec v$}
{subv3d}
{$\vec w$}
{$\vec w = \vec u + \vec v$}
\longref
{$\vec u$}
{unitaire3d}
{$\vec v$}
{Si $\vec u = \vec 0$, alors $\vec v = \vec 0$, sinon $\vec v = \vec
u / \Vert \vec u\Vert $}
\longref
{$\vec u$}
{normalize3d}
{$\vec v$}
{Sinonyme de |unitaire3d|~: si $\vec u = \vec 0$, alors $\vec v =
\vec 0$, sinon $\vec v = \vec u / \Vert \vec u\Vert $}
\longref
{$\vec u$ $\vec v$}
{scalprod3d}
{$s$}
{Produit scalaire~: $s = \vec u \cdot \vec v$}
\endsyntaxe
\paragraphe {Commandes de tracés}
\syntaxe
\longref
{A}
{plus3d}
{$-$}
{Analogue 3d de la commande |plus|}
\longref
{$A$}
{point3d}
{$-$}
{Analogue 3d de la commande |point|}
\longref
{$array$}
{points3d}
{$-$}
{Analogue 3d de la commande |points|}
\longref
{$array$}
{ligne3d}
{$-$}
{Analogue 3d de la commande |ligne|}
\longref
{$array$}
{polygone3d}
{$-$}
{Analogue 3d de la commande |polygone|}
\longref
{$array$}
{polygone*3d}
{$-$}
{Analogue 3d de la commande |polygone*|}
\endsyntaxe
\paragraphe {Surfaces}
\syntaxe
\longref
{$xmin$ $pas_x$ $xmax$ $ymin$ $pas_y$ $ymax$ $f$}
{surfaceparam3d}
{$-$}
{Dessine la surface $f (x, y) = z$ sur $[xmin; xmax] \times [ymin;
ymax]$. $f$ est un éxécutable.}
\endsyntaxe
\exempledble {exemple_05}{.4}{.5}
\paragraphe {Placement de texte ou de labels \TeX}
\syntaxe
\longref
{}
{ultext3d}
{$-$}
{Analogue 3d de la commande |ultext|}
\longref
{}
{dctext3d}
{$-$}
{Analogue 3d de la commande |dctext|}
\longref
{}
{crtext3d}
{$-$}
{Analogue 3d de la commande |crtext|}
\longref
{}
{cltext3d}
{$-$}
{Analogue 3d de la commande |cltext|}
\longref
{}
{bctext3d}
{$-$}
{Analogue 3d de la commande |bctext|}
\longref
{}
{dbtext3d}
{$-$}
{Analogue 3d de la commande |dbtext|}
\longref
{}
{ultexlabel3d}
{$-$}
{Analogue 3d de la commande |ultexlabel|}
\longref
{}
{bctexlabel3d}
{$-$}
{Analogue 3d de la commande |bctexlabel|}
\longref
{}
{bbtext3d}
{$-$}
{Analogue 3d de la commande |bbtext|}
\longref
{}
{cctexlabel3d}
{$-$}
{Analogue 3d de la commande |cctexlabel|}
\longref
{}
{dctexlabel3d}
{$-$}
{Analogue 3d de la commande |dctexlabel|}
\longref
{}
{urtexlabel3d}
{$-$}
{Analogue 3d de la commande |urtexlabel|}
\longref
{}
{dltext3d}
{$-$}
{Analogue 3d de la commande |dltext|}
\longref
{}
{uctext3d}
{$-$}
{Analogue 3d de la commande |uctext|}
\longref
{}
{bltexlabel3d}
{$-$}
{Analogue 3d de la commande |bltexlabel|}
\longref
{}
{cctext3d}
{$-$}
{Analogue 3d de la commande |cctext|}
\longref
{}
{cltexlabel3d}
{$-$}
{Analogue 3d de la commande |cltexlabel|}
\longref
{}
{brtext3d}
{$-$}
{Analogue 3d de la commande |brtext|}
\longref
{}
{ubtexlabel3d}
{$-$}
{Analogue 3d de la commande |ubtexlabel|}
\longref
{}
{bltext3d}
{$-$}
{Analogue 3d de la commande |bltext|}
\longref
{}
{dltexlabel3d}
{$-$}
{Analogue 3d de la commande |dltexlabel|}
\longref
{}
{ubtext3d}
{$-$}
{Analogue 3d de la commande |ubtext|}
\longref
{}
{cbtext3d}
{$-$}
{Analogue 3d de la commande |cbtext|}
\longref
{}
{brtexlabel3d}
{$-$}
{Analogue 3d de la commande |brtexlabel|}
\longref
{}
{crtexlabel3d}
{$-$}
{Analogue 3d de la commande |crtexlabel|}
\longref
{}
{bbtexlabel3d}
{$-$}
{Analogue 3d de la commande |bbtexlabel|}
\longref
{}
{cbtexlabel3d}
{$-$}
{Analogue 3d de la commande |cbtexlabel|}
\longref
{}
{uctexlabel3d}
{$-$}
{Analogue 3d de la commande |uctexlabel|}
\longref
{}
{dbtexlabel3d}
{$-$}
{Analogue 3d de la commande |dbtexlabel|}
\longref
{}
{urtext3d}
{$-$}
{Analogue 3d de la commande |urtext|}
\endsyntaxe
\bye

—
Syracuse — Dernière modification : 22 décembre 2005 (0.07s - 3478389 - 7 septembre 2008)