2021-06-28 17:51:43 +11:00
|
|
|
\chapter{Graphisme}
|
|
|
|
|
2021-09-22 22:17:46 +11:00
|
|
|
Quelques notes en vrac sur divers logiciels\dots
|
2021-09-17 03:53:40 +11:00
|
|
|
|
2021-06-28 17:51:43 +11:00
|
|
|
% ------------------------------------------------
|
2020-11-13 11:35:31 +11:00
|
|
|
|
|
|
|
\section{Flydraw}\index{Flydraw}
|
|
|
|
|
2021-08-23 20:46:02 +11:00
|
|
|
\begin{quote}
|
2020-11-13 11:35:31 +11:00
|
|
|
flydraw is a drawing tool based on an interpreter which parses a
|
|
|
|
language featuring rich graphic primitives; it uses libgd to output
|
|
|
|
GIF, JPEG, or PNG\index{PNG} files.
|
2021-08-23 20:46:02 +11:00
|
|
|
\end{quote}
|
2021-06-28 17:51:43 +11:00
|
|
|
|
|
|
|
% ------------------------------------------------
|
|
|
|
|
|
|
|
\section{Povray}\index{POVray}
|
|
|
|
|
|
|
|
\textbf{Persistence Of Vision} est un logiciel de raytracing qui
|
|
|
|
existe depuis plus de trente ans.
|
|
|
|
|
2021-09-17 03:53:40 +11:00
|
|
|
\subsection{Caméra}
|
|
|
|
|
|
|
|
Vous avez des problèmes pour caler les mouvement de la caméra ?
|
|
|
|
Vous avez deux trajectoires (mal) calculées pour la
|
|
|
|
\texttt{location} et le \texttt{look\_at}, et rien ne tombe
|
|
|
|
en face de l'objectif ? Voici une approche de solution.
|
|
|
|
|
|
|
|
La première étape est l'enregistrerement des paramètres de la caméra
|
|
|
|
lors du calcul de la séquence~:
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
#if (0 = clock)
|
|
|
|
#fopen CL "cam.log" create
|
|
|
|
#else
|
|
|
|
#fopen CL "cam.log" append
|
|
|
|
#end
|
|
|
|
#write (CL, clock, " ", CamX, " ", CamY, " ", CamZ,
|
|
|
|
" ", LatX, " ", LatY, " ", LatZ,"\n")
|
|
|
|
#fclose CL
|
|
|
|
\end{verbatim}
|
|
|
|
|
2021-09-22 22:17:46 +11:00
|
|
|
Et la seconde, l'exploitation, ou plutôt la visualisation
|
|
|
|
des données~:
|
2021-09-17 03:53:40 +11:00
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
FILE="cam.log"
|
|
|
|
TMPF="/dev/shm/cam.data"
|
|
|
|
IMAGE="graphe.png"
|
2021-09-22 22:17:46 +11:00
|
|
|
tail -360 ${FILE} | sort -n > ${TMPF}
|
2021-09-17 03:53:40 +11:00
|
|
|
gnuplot << __EOC__
|
|
|
|
set term png size 720,720
|
|
|
|
set output "${IMAGE}"
|
|
|
|
set ytics 2
|
|
|
|
set xtics 2
|
|
|
|
set grid front
|
|
|
|
set title "Rush Camera"
|
2021-09-22 22:17:46 +11:00
|
|
|
plot "${TMPF}" using 2:4 title "Cam", \
|
|
|
|
"${TMPF}" using 5:7 title "Lat" with dots
|
2021-09-17 03:53:40 +11:00
|
|
|
__EOC__
|
|
|
|
display "${IMAGE}" &
|
|
|
|
\end{verbatim}
|
|
|
|
|
2021-09-22 22:17:46 +11:00
|
|
|
Dans ce cas, il s'agit d'une animation de 360 images, ce qui explique
|
|
|
|
la commande\texttt{tail} au début du script. Ensuite les deux clauses
|
|
|
|
\textsl{using 2:4 / 5:7} permettent de sélectionner les deux
|
|
|
|
coordonnées X et Z, dans le repère POVray, qui n'est pas le même que
|
|
|
|
celui de Gnuplot.
|
|
|
|
|
2021-09-17 03:53:40 +11:00
|
|
|
|
2021-06-28 17:51:43 +11:00
|
|
|
% ------------------------------------------------
|
|
|
|
|
|
|
|
% ------------------------------------------------
|