Compare commits
9 Commits
955af75151
...
f9755cf0a2
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f9755cf0a2 | ||
![]() |
7e7f9fbe40 | ||
![]() |
6407a3ed3a | ||
![]() |
701b6187a5 | ||
![]() |
6f637ca79a | ||
![]() |
97950f2483 | ||
![]() |
15eedb2034 | ||
![]() |
f487f35ccd | ||
![]() |
66f54c283d |
2
Makefile
2
Makefile
@ -5,7 +5,7 @@ POVOPT = +q9 +A -d
|
|||||||
POVDEP = contexte.inc elements.inc hexabenz.inc \
|
POVDEP = contexte.inc elements.inc hexabenz.inc \
|
||||||
globals.inc datas/hf.png
|
globals.inc datas/hf.png
|
||||||
|
|
||||||
CK=180
|
CK=230
|
||||||
|
|
||||||
|
|
||||||
PNG: essai.png scene.png topview.png passage.png \
|
PNG: essai.png scene.png topview.png passage.png \
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
|
# Workspace
|
||||||
|
|
||||||
|
For intermediates files, and timing log.
|
||||||
workspace
|
|
||||||
|
96
contexte.inc
96
contexte.inc
@ -4,6 +4,63 @@
|
|||||||
|
|
||||||
/* voir aussi le fichier 'globals.inc' */
|
/* voir aussi le fichier 'globals.inc' */
|
||||||
|
|
||||||
|
/* ======================================================= */
|
||||||
|
/*
|
||||||
|
* Inserer ici le SDL de la cabane
|
||||||
|
*/
|
||||||
|
// =======================================================
|
||||||
|
/*
|
||||||
|
* nouveau debut fevrier 2025 - we love raytracing
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* deux textures
|
||||||
|
*/
|
||||||
|
#declare T_Beton_1 = texture
|
||||||
|
{
|
||||||
|
pigment { color <0.9, 0.8, 0.8> }
|
||||||
|
normal { dents 0.75 scale 0.3 }
|
||||||
|
finish { roughness 1.00 }
|
||||||
|
}
|
||||||
|
|
||||||
|
#declare T_Beton_2 = texture
|
||||||
|
{
|
||||||
|
pigment { color <0.7, 0.6, 0.6> }
|
||||||
|
normal { dents 0.25 scale 2 }
|
||||||
|
finish { roughness 1.00 }
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* une seule forme de cabane pour le moment
|
||||||
|
*/
|
||||||
|
#declare Base_cabane_forme = object
|
||||||
|
{
|
||||||
|
difference {
|
||||||
|
#local Hc = 0.90;
|
||||||
|
box { <-0.90, 0, 0>, <0.90, Hc, 0.80> }
|
||||||
|
box { <-0.89, 0.01, -1> <0.89, Hc-0.01, 0.79> }
|
||||||
|
#local Hc = Hc * 0.75;
|
||||||
|
cylinder { <-1, Hc, -0.23>, <1, Hc, 0.23>, 0.09 }
|
||||||
|
#undef Hc
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* comparaison des deux textures par le rendu
|
||||||
|
* de la meme forme de cabane.
|
||||||
|
*/
|
||||||
|
#declare Cabane_Base_1 = object
|
||||||
|
{
|
||||||
|
object { Base_cabane_forme }
|
||||||
|
texture { T_Beton_1 }
|
||||||
|
}
|
||||||
|
|
||||||
|
#declare Cabane_Base_2 = object
|
||||||
|
{
|
||||||
|
object { Base_cabane_forme }
|
||||||
|
texture { T_Beton_2 }
|
||||||
|
}
|
||||||
|
|
||||||
/* ======================================================= */
|
/* ======================================================= */
|
||||||
|
|
||||||
#declare GroudBase_coin = object
|
#declare GroudBase_coin = object
|
||||||
@ -14,11 +71,30 @@ merge {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#declare GroundBase = object
|
#declare GroundBase_a = object
|
||||||
|
{
|
||||||
|
union {
|
||||||
|
#local Dx = 1.5;
|
||||||
|
#local Dz = 1.0;
|
||||||
|
box { <-Dx, 0, -Dz>, <Dx, H_base, Dz> }
|
||||||
|
#local Ha = y*(H_base*2);
|
||||||
|
cylinder { 0, Ha, 0.08 translate <Dx, 0, -Dz> }
|
||||||
|
#local Hb = Ha * 1.17;
|
||||||
|
cone { Ha, 0.08, Hb, 0.05 translate < Dx, 0, -Dz> }
|
||||||
|
cone { Ha, 0.08, Hb, 0.05 translate <-Dx, 0, -Dz> }
|
||||||
|
#undef Ha
|
||||||
|
#undef Hb
|
||||||
|
#undef Dx
|
||||||
|
#undef Dz
|
||||||
|
}
|
||||||
|
texture { T_Stone2 rotate 49 scale 0.22 }
|
||||||
|
}
|
||||||
|
|
||||||
|
#declare GroundBase_b = object
|
||||||
{
|
{
|
||||||
#local Sz = SzBase - 0.02;
|
#local Sz = SzBase - 0.02;
|
||||||
union {
|
union {
|
||||||
box { <-SzBase, 0, -SzBase>, <SzBase, 0.2, SzBase> }
|
box { <-SzBase, 0, -SzBase>, <SzBase, H_base, SzBase> }
|
||||||
object { GroudBase_coin translate <-Sz, 0, -Sz> }
|
object { GroudBase_coin translate <-Sz, 0, -Sz> }
|
||||||
object { GroudBase_coin translate < Sz, 0, -Sz> }
|
object { GroudBase_coin translate < Sz, 0, -Sz> }
|
||||||
object { GroudBase_coin translate <-Sz, 0, Sz> }
|
object { GroudBase_coin translate <-Sz, 0, Sz> }
|
||||||
@ -28,6 +104,20 @@ texture { T_Stone6 rotate 9 scale 0.32 }
|
|||||||
#undef Sz
|
#undef Sz
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ------------------------------------------------------------ */
|
||||||
|
|
||||||
|
#declare La_GroundBase = object
|
||||||
|
{
|
||||||
|
union {
|
||||||
|
object { GroundBase_b }
|
||||||
|
/*
|
||||||
|
* ici, mettre la cabane
|
||||||
|
*/
|
||||||
|
#local Dz = <0, 0, -7>;
|
||||||
|
object { GroundBase_a translate Dz }
|
||||||
|
object { Cabane_Base_2 rotate y*180 translate Dz }
|
||||||
|
}
|
||||||
|
}
|
||||||
/* ======================================================= */
|
/* ======================================================= */
|
||||||
|
|
||||||
#macro GyroPhare_mat ()
|
#macro GyroPhare_mat ()
|
||||||
@ -294,7 +384,7 @@ sky_sphere {
|
|||||||
union {
|
union {
|
||||||
object { Le_Sol }
|
object { Le_Sol }
|
||||||
object { Underground }
|
object { Underground }
|
||||||
object { GroundBase }
|
object { La_GroundBase }
|
||||||
object { Les_Bibelots }
|
object { Les_Bibelots }
|
||||||
object { Les_Lumieres }
|
object { Les_Lumieres }
|
||||||
object { Les_GyroPhares () }
|
object { Les_GyroPhares () }
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
|
# statics datas
|
||||||
|
|
||||||
|
Things like `height_fields` or `image_map` files...
|
||||||
statics datas, like height-fields files...
|
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
#for (idX, 0, 4)
|
#for (idX, 0, 4)
|
||||||
#for (idZ, 0, 4)
|
#for (idZ, 0, 4)
|
||||||
|
|
||||||
#local posX = (idX * 4.56) - 7.5 + (rand(Rng1)-0.5);
|
#local posX = (idX * 4.56) - 9.5 + (rand(Rng1)-0.5);
|
||||||
#local posY = 2.6 + (1.2*(rand(Rng1)-0.5));
|
#local posY = 2.6 + (1.2*(rand(Rng1)-0.5));
|
||||||
#local posZ = (idZ * 4.24) - 7.9;
|
#local posZ = (idZ * 4.24) - 7.9;
|
||||||
#local Rx = (rand(Rng1) - 0.5) * 8;
|
#local Rx = (rand(Rng1) - 0.5) * 8;
|
||||||
@ -39,7 +39,7 @@
|
|||||||
|
|
||||||
object { Le_Decor }
|
object { Le_Decor }
|
||||||
|
|
||||||
// object { Repere scale 5 }
|
// object { Repere scale 5 translate y }
|
||||||
|
|
||||||
#local CamX = -8.7+(6.6*NormClock);
|
#local CamX = -8.7+(6.6*NormClock);
|
||||||
#local CamY = 2.1+(13.37*Cos_01(NormClock));
|
#local CamY = 2.1+(13.37*Cos_01(NormClock));
|
||||||
|
145
essai.pov
145
essai.pov
@ -8,145 +8,54 @@
|
|||||||
#include "globals.inc"
|
#include "globals.inc"
|
||||||
|
|
||||||
#include "contexte.inc"
|
#include "contexte.inc"
|
||||||
|
#include "gadgets.inc"
|
||||||
#include "elements.inc"
|
#include "elements.inc"
|
||||||
#include "hexabenz.inc"
|
#include "hexabenz.inc"
|
||||||
|
|
||||||
// =======================================================
|
// =======================================================
|
||||||
/*
|
|
||||||
* nouveau debut fevrier 2025 - we love raytracing
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
#macro GGG_Un_Cone ()
|
||||||
* deux textures
|
merge {
|
||||||
*/
|
#local RA = R_basecone;
|
||||||
#declare T_Beton_1 = texture
|
cone { 0, RA, y*0.89, 0.000001 }
|
||||||
{
|
sphere { 0, RA }
|
||||||
pigment { color <0.9, 0.8, 0.8> }
|
|
||||||
normal { dents 0.75 scale 0.3 }
|
|
||||||
}
|
|
||||||
|
|
||||||
#declare T_Beton_2 = texture
|
|
||||||
{
|
|
||||||
pigment { color <0.9, 0.8, 0.8> }
|
|
||||||
normal { dents 0.25 scale 2 }
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* une seule forme de cabane pour le moment
|
|
||||||
*/
|
|
||||||
#declare Base_cabane_forme = object
|
|
||||||
{
|
|
||||||
difference {
|
|
||||||
box { <-0.90, 0, 0>, <0.90, 1.00, 0.80> }
|
|
||||||
box { <-0.89, -1, -1> <0.89, 0.99, 0.79> }
|
|
||||||
cylinder { <-1, 0.75, -0.23>, <1, 0.75, 0.23>, 0.09 }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* comparaison des deux textures par le rendu
|
|
||||||
* de la meme forme de cabane.
|
|
||||||
*/
|
|
||||||
#declare Cabane_Base_1 = object
|
|
||||||
{
|
|
||||||
object { Base_cabane_forme }
|
|
||||||
texture { T_Beton_1 }
|
|
||||||
}
|
|
||||||
|
|
||||||
#declare Cabane_Base_2 = object
|
|
||||||
{
|
|
||||||
object { Base_cabane_forme }
|
|
||||||
texture { T_Beton_2 }
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* assemblage des deux versions face a face
|
|
||||||
*/
|
|
||||||
#declare Les_Cabanes = object
|
|
||||||
{
|
|
||||||
union {
|
|
||||||
#local E = 1.10;
|
|
||||||
object { Cabane_Base_1 rotate 270*y translate -x*E }
|
|
||||||
object { Cabane_Base_2 rotate 90*y translate x*E }
|
|
||||||
#undef E
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// =======================================================
|
|
||||||
|
|
||||||
#declare QuadriPole = object
|
|
||||||
{
|
|
||||||
#local R = 0.02;
|
|
||||||
#local E = 0.25;
|
|
||||||
#local H = H_cone*2;
|
|
||||||
union {
|
|
||||||
cylinder { 0, y*H, R translate -x*E }
|
|
||||||
cylinder { 0, y*H, R translate x*E }
|
|
||||||
cylinder { 0, y*H, R translate -z*E }
|
|
||||||
cylinder { 0, y*H, R translate z*E }
|
|
||||||
}
|
|
||||||
texture { WIP_color }
|
|
||||||
#undef E
|
|
||||||
#undef H
|
|
||||||
#undef R
|
|
||||||
}
|
|
||||||
// =======================================================
|
|
||||||
|
|
||||||
#macro Bubble ()
|
|
||||||
sphere {
|
|
||||||
0, 0.065
|
|
||||||
#if ( rand(Rng1) < 0.333 )
|
|
||||||
texture { Ruby_Glass }
|
|
||||||
#elseif ( rand(Rng1) < 0.666 )
|
|
||||||
texture { Orange_Glass }
|
|
||||||
#else
|
|
||||||
texture { Gold_Nugget }
|
|
||||||
#end
|
|
||||||
}
|
}
|
||||||
#end
|
#end
|
||||||
|
|
||||||
#macro Un_Machin ()
|
#macro GGG_Cones ()
|
||||||
union {
|
union {
|
||||||
#for (Y, 1, 8, 1)
|
#for (foo, 0, 360, 60)
|
||||||
object { Bubble() translate y*Y*0.1 }
|
#local E = 0.50;
|
||||||
#end
|
#local Tx = 1.333 * E * sin(radians(foo));
|
||||||
|
#local Tz = E * cos(radians(foo));
|
||||||
|
object {
|
||||||
|
GGG_Un_Cone ()
|
||||||
|
#if ( rand(Rng1) < 0.5001 )
|
||||||
|
texture { T_Wood32 rotate 17 scale 1.50 }
|
||||||
|
#else
|
||||||
|
texture { T_Wood23 scale 2.50 }
|
||||||
|
#end
|
||||||
|
// rotate -z*foo
|
||||||
|
translate <Tx, 0, Tz>
|
||||||
|
}
|
||||||
|
#end // end for
|
||||||
}
|
}
|
||||||
#end
|
#end
|
||||||
|
|
||||||
#declare Les_Machins = object
|
object { GGG_Cones () translate y*0.5 }
|
||||||
{
|
|
||||||
union {
|
|
||||||
#local Rk = 3.95 + NormClock;
|
|
||||||
#for (foo, 0, 359, 45)
|
|
||||||
#local Xpos = Rk * sin(radians(foo));
|
|
||||||
#local Zpos = Rk * cos(radians(foo));
|
|
||||||
#local RND = rand(Rng1);
|
|
||||||
object { Un_Machin () translate <Xpos, 0, Zpos> }
|
|
||||||
#end
|
|
||||||
#undef RND
|
|
||||||
#undef Rk
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// =======================================================
|
// =======================================================
|
||||||
|
|
||||||
|
object { OpenBox translate y*1.2 }
|
||||||
object { GroundBase }
|
|
||||||
object { Les_Cabanes rotate -y*(clock*0.75) translate y*H_base }
|
|
||||||
|
|
||||||
// object { OpenBox translate y*1.2 }
|
|
||||||
object { Les_Machins translate y*1.5 }
|
|
||||||
object { Le_Decor }
|
object { Le_Decor }
|
||||||
|
|
||||||
object { Repere translate y*2 }
|
// object { Repere translate y*2 }
|
||||||
|
|
||||||
// =======================================================
|
// =======================================================
|
||||||
|
|
||||||
// light_source { <-8, 7, -9>, rgb <0.81, 0.65, NormClock> }
|
#local CamX = -2.7 + (3.8*Cos_010(NormClock));
|
||||||
// light_source { < 11, 7, 4>, rgb <1-NormClock, 0.28, 0.80> }
|
|
||||||
|
|
||||||
#local CamX = -2.7 + (3.8*Cos_01(NormClock));
|
|
||||||
#local CamY = 1.81 + (4*sqrt(NormClock));
|
#local CamY = 1.81 + (4*sqrt(NormClock));
|
||||||
#local CamZ = 1.7 + (3.8*Cos_01(NormClock));
|
#local CamZ = 1.7 + (3.8*Cos_010(NormClock));
|
||||||
camera {
|
camera {
|
||||||
// fisheye
|
// fisheye
|
||||||
location <CamX, CamY, 9.99>
|
location <CamX, CamY, 9.99>
|
||||||
|
@ -1,15 +1,19 @@
|
|||||||
|
# Le silo des frames
|
||||||
|
|
||||||
Avant tout, il faut créer ces répertoires :
|
Avant tout, il faut créer ces répertoires :
|
||||||
|
|
||||||
```
|
```
|
||||||
frames/
|
frames/
|
||||||
├── essai
|
+--- essai
|
||||||
├── orbite
|
+--- orbite
|
||||||
├── passage
|
+--- passage
|
||||||
├── scene
|
+--- scene
|
||||||
├── scene
|
+--- scene
|
||||||
├── orbite
|
+--- orbite
|
||||||
├── escadrille
|
+--- survol
|
||||||
└── topview
|
+--- escadrille
|
||||||
|
+--- topview
|
||||||
|
+--- Spool
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
object { Le_Decor }
|
object { Le_Decor }
|
||||||
|
|
||||||
#declare PosX = 1.55;
|
#declare PosX = 1.55;
|
||||||
#declare PosY = 2.10 + (NormClock*0.28);
|
#declare PosY = 2.20 + (NormClock*0.28);
|
||||||
#declare PosZ = (NormClock-0.5) * 53.27;
|
#declare PosZ = (NormClock-0.5) * 53.27;
|
||||||
|
|
||||||
object { HexaBenz () translate <PosX, PosY, PosZ> }
|
object { HexaBenz () translate <PosX, PosY, PosZ> }
|
||||||
|
@ -14,12 +14,14 @@
|
|||||||
// =======================================================
|
// =======================================================
|
||||||
|
|
||||||
#declare A = <-SzSol, 16, -8>;
|
#declare A = <-SzSol, 16, -8>;
|
||||||
#declare B = <SzSol+4, 18, -11>;
|
#declare B = <SzSol+4, 18, -1>;
|
||||||
#declare P = Interpolate(A, B, NormClock);
|
#declare P = Interpolate(A, B, NormClock);
|
||||||
object { HexaCone () rotate y*((6*NormClock)+80) translate P }
|
object { HexaCone () rotate y*((6*NormClock)+80) translate P }
|
||||||
|
|
||||||
object { Le_Decor }
|
object { Le_Decor }
|
||||||
|
|
||||||
|
// object { Repere translate y*2 }
|
||||||
|
|
||||||
// =======================================================
|
// =======================================================
|
||||||
|
|
||||||
#declare Debut = <-3, 42, 47> ;
|
#declare Debut = <-3, 42, 47> ;
|
||||||
@ -32,6 +34,6 @@ object { Le_Decor }
|
|||||||
camera {
|
camera {
|
||||||
location PosCam
|
location PosCam
|
||||||
look_at LatCam
|
look_at LatCam
|
||||||
angle 52
|
angle 53
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,10 +2,25 @@
|
|||||||
|
|
||||||
Build system and utilities.
|
Build system and utilities.
|
||||||
|
|
||||||
|
## Make a sequence
|
||||||
|
|
||||||
|
Un argument pour construire la séquence entière ou deux pour démarrer au milieu, c'est pratique quand le disjoncteur fait un *beu-beu*. Exemples :
|
||||||
|
|
||||||
|
|
||||||
|
```
|
||||||
|
$ tools/mkloop.sh survol
|
||||||
|
$ tools/mkloop.sh survol 133
|
||||||
|
```
|
||||||
|
|
||||||
## Linkfarming
|
## Linkfarming
|
||||||
|
|
||||||
|
C'est le directeur de la production, le grand script
|
||||||
|
d'assemblage des séquendes avec générique et intertitres.
|
||||||
|
|
||||||
## Encoding
|
## Encoding
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Plot the timing
|
## Plot the timing
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ convert "WS/negatif.png" \
|
|||||||
-kerning 6 \
|
-kerning 6 \
|
||||||
-fill $TEXTCOL \
|
-fill $TEXTCOL \
|
||||||
-strokewidth 2 -stroke $STROKOL \
|
-strokewidth 2 -stroke $STROKOL \
|
||||||
-annotate +0+490 "$1" \
|
-annotate +0+530 "$1" \
|
||||||
${INTER}
|
${INTER}
|
||||||
for foo in $(seq 0 $NBRE)
|
for foo in $(seq 0 $NBRE)
|
||||||
do
|
do
|
||||||
@ -88,7 +88,7 @@ do
|
|||||||
-kerning 6 \
|
-kerning 6 \
|
||||||
-fill $TEXTCOL \
|
-fill $TEXTCOL \
|
||||||
-strokewidth 3 -stroke $STROKOL \
|
-strokewidth 3 -stroke $STROKOL \
|
||||||
-annotate +0+${Ypos} "HexaCones" \
|
-annotate +0+${Ypos} "La famille\nHexaCone" \
|
||||||
${TMP}
|
${TMP}
|
||||||
# identify ${TMP}
|
# identify ${TMP}
|
||||||
copy_a_file ${TMP}
|
copy_a_file ${TMP}
|
||||||
@ -141,6 +141,7 @@ faire_le_titre
|
|||||||
linkfarm hexabenz
|
linkfarm hexabenz
|
||||||
linkfarm hexacone
|
linkfarm hexacone
|
||||||
linkfarm escadrille
|
linkfarm escadrille
|
||||||
|
linkfarm survol
|
||||||
linkfarm topview
|
linkfarm topview
|
||||||
linkfarm passage
|
linkfarm passage
|
||||||
linkfarm scene
|
linkfarm scene
|
||||||
|
@ -41,6 +41,7 @@ do
|
|||||||
convert ${TMPIMG} \
|
convert ${TMPIMG} \
|
||||||
-font Courier-Bold \
|
-font Courier-Bold \
|
||||||
-pointsize 14 \
|
-pointsize 14 \
|
||||||
|
-kerning 3 \
|
||||||
-fill ${TEXTCOL} \
|
-fill ${TEXTCOL} \
|
||||||
-gravity north \
|
-gravity north \
|
||||||
-annotate +12+5 "$txt" \
|
-annotate +12+5 "$txt" \
|
||||||
|
@ -27,20 +27,24 @@ BEGIN { \
|
|||||||
count[foo] = 0; \
|
count[foo] = 0; \
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
\
|
|
||||||
|
# for every line \
|
||||||
{ \
|
{ \
|
||||||
accu[$2] += $3; \
|
accu[$2] += $3; \
|
||||||
count[$2]++; \
|
count[$2]++; \
|
||||||
if (mini[$2] > $3) mini[$2] = $3; \
|
if (mini[$2] > $3) mini[$2] = $3; \
|
||||||
if (maxi[$2] < $3) maxi[$2] = $3; \
|
if (maxi[$2] < $3) maxi[$2] = $3;
|
||||||
|
last[$2] = $3 \
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
END { \
|
END { \
|
||||||
for (foo=0; foo<nbframes; foo++) { \
|
for (foo=0; foo<nbframes; foo++) { \
|
||||||
if (count[foo] > 0) { \
|
if (count[foo] > 0) { \
|
||||||
mean = accu[foo] / count[foo]; \
|
mean = accu[foo] / count[foo]; \
|
||||||
printf "%4d %4f %4d %4d\n", foo, mean, \
|
printf "%4d %4f %4d %4d %4d\n",
|
||||||
mini[foo], maxi[foo]; \
|
foo, mean,
|
||||||
|
mini[foo], maxi[foo],
|
||||||
|
last[foo];
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
@ -57,9 +61,14 @@ gnuplot << __EOC__
|
|||||||
set title "Séquence '${sequence}'"
|
set title "Séquence '${sequence}'"
|
||||||
set xlabel "numéro de la trame"
|
set xlabel "numéro de la trame"
|
||||||
set ylabel "temps en secondes"
|
set ylabel "temps en secondes"
|
||||||
plot "/dev/shm/plot-timing.tmp" u 1:4 w l lc "#ff0000" t "maximum", \
|
plot "/dev/shm/plot-timing.tmp" u 1:4 w l \
|
||||||
"/dev/shm/plot-timing.tmp" u 1:3 w l lc "#0000ff" t "minimum", \
|
lc "#ff0000" t "maximum", \
|
||||||
"/dev/shm/plot-timing.tmp" u 1:2 w l lc "#000000" t "moyenne",
|
"/dev/shm/plot-timing.tmp" u 1:3 w l \
|
||||||
|
lc "#0000ff" t "minimum", \
|
||||||
|
"/dev/shm/plot-timing.tmp" u 1:2 w l \
|
||||||
|
lc "#00ff00" t "moyenne", \
|
||||||
|
"/dev/shm/plot-timing.tmp" u 1:5 w l \
|
||||||
|
lc "#000000" t "last"
|
||||||
__EOC__
|
__EOC__
|
||||||
|
|
||||||
convert -negate -level -33% $IMAGE WS/negatif.png
|
convert -negate -level -33% $IMAGE WS/negatif.png
|
||||||
|
Loading…
Reference in New Issue
Block a user