Premier commit
[powerfractal.git] / CD / Src / Spider - Graphic Library / Include / SpiderDraw.h
1 /****************************************************************************/
2 /* Nom du fichier : SpiderDraw.h */
3 /* */
4 /* Auteur(s) : Philippe Girardet, de l'Ecole d'ingenieurs du */
5 /* canton de Vaud (eivd). */
6 /* */
7 /* A l'aide des */
8 /* travaux de : L.Righetti, G.Corba, P.Breguet, P.Girardet, */
9 /* M.Salamin, A.Jossevel, H.Roethlisberger */
10 /* de l'Ecole d'ingenieurs du canton de Vaud (eivd) */
11 /* */
12 /* Version : 3.0 */
13 /* Date de creation : 31 mars 2000 */
14 /* */
15 /* But : Outils graphiques completant Spider. */
16 /* */
17 /* */
18 /* Date de modif. : */
19 /* Raison : */
20 /* */
21 /* */
22 /* Modules appeles : Spider.h et dependant de l'implementation */
23 /* Mat. particulier : Dependant de l'implementation */
24 /* */
25 /* Compilation : Dependant de l'implementation . */
26 /* Edition de liens : Dependant de l'implementation */
27 /* */
28 /****************************************************************************/
29
30
31 /* ATTENTION : Pour l'implementation UNIX (XWindows) plusieurs procedures */
32 /* ou fonctions de la librairie Spider envoient des requetes */
33 /* au serveur X actif, mais leur terminaison ne signifie pas */
34 /* que la ou les requêtes ont abouti. */
35
36 /* Remarque: Attention la barre de titre de la fenetre fait partie de la */
37 /* zone couverte par le systeme d'axes */
38
39 #include "Spider.h"
40
41 namespace Spider
42 {
43 namespace Draw
44 {
45 /* Type de remplissage pour les formes */
46 enum Fill {fill, noFill};
47
48 /* Type pour les couleur */
49 struct Color
50 {
51 int r;
52 int g;
53 int b;
54 };
55
56 const Color black = { 0, 0, 0};
57 const Color blue = { 0, 0,255};
58 const Color green = { 0,255, 0};
59 const Color cyan = { 0,255,255};
60 const Color red = {255, 0, 0};
61 const Color magenta = {255, 0,255};
62 const Color brown = {128, 64, 0};
63 const Color lightGray = {192,192,192};
64 const Color darkGray = {128,128,128};
65 const Color lightBlue = {128,128,255};
66 const Color lightGreen = {128,255,128};
67 const Color lightCyan = {128,255,255};
68 const Color lightRed = {255,128,128};
69 const Color lightMagenta = {255,128,255};
70 const Color yellow = {255,255, 0};
71 const Color white = {255,255,255};
72
73 /*--------------------------------------------------------------------------*/
74 /* Nom : getColorPen */
75 /* But : Indique la couleur utilisee pour les dessins. */
76 /* Entrees : - */
77 /* Sorties : - la couleur utilisee. */
78 /*--------------------------------------------------------------------------*/
79 extern "C" Color getColorPen(void);
80
81 /*--------------------------------------------------------------------------*/
82 /* Nom : getColorBackground */
83 /* But : Indique la couleur de l'arriere plan. */
84 /* Entrees : - */
85 /* Sorties : - la couleur de l'arriere plan. */
86 /*--------------------------------------------------------------------------*/
87 extern "C" Color getColorBackground(void);
88
89 /*--------------------------------------------------------------------------*/
90 /* Nom : getColorText */
91 /* But : Indique la couleur du texte. */
92 /* Entrees : - */
93 /* Sorties : - la couleur du texte. */
94 /*--------------------------------------------------------------------------*/
95 extern "C" Color getColorText(void);
96
97 /*--------------------------------------------------------------------------*/
98 /* Nom : getWidthChar */
99 /* But : Indique la largeur max en pixel des caracteres de la font */
100 /* utilisee. */
101 /* Entrees : - */
102 /* Sorties : - la largeur max */
103 /*--------------------------------------------------------------------------*/
104 extern "C" int getWidthChar(void);
105
106 /*--------------------------------------------------------------------------*/
107 /* Nom : getHeightChar */
108 /* But : Indique la hauteur max en pixel des caracteres de la font */
109 /* utilisee. */
110 /* Entrees : - */
111 /* Sorties : - la hauteur max */
112 /*--------------------------------------------------------------------------*/
113 extern "C" int getHeightChar(void);
114
115 /*--------------------------------------------------------------------------*/
116 /* Nom : setColorPen */
117 /* But : Defini la couleur pour les dessins. */
118 /* Entrees : - color: la couleur a appliquer */
119 /* Sorties : - */
120 /*--------------------------------------------------------------------------*/
121 extern "C" void setColorPen(Color color);
122
123 /*--------------------------------------------------------------------------*/
124 /* Nom : setColorBackground */
125 /* But : Defini la couleur de l'arriere plan. */
126 /* Entrees : - color: la couleur a appliquer */
127 /* Sorties : - */
128 /*--------------------------------------------------------------------------*/
129 extern "C" void setColorBackground(Color color);
130
131 /*--------------------------------------------------------------------------*/
132 /* Nom : setColorText */
133 /* But : Defini la couleur du texte. */
134 /* Entrees : - color: la couleur a appliquer */
135 /* Sorties : - */
136 /*--------------------------------------------------------------------------*/
137 extern "C" void setColorText(Color color);
138
139 /*--------------------------------------------------------------------------*/
140 /* Nom : displayText */
141 /* But : Affiche un texte dans la fenetre graphique a partir de la */
142 /* position courante. */
143 /* Entrees : - text: chaine de caracteres a afficher */
144 /* Sorties : - */
145 /*--------------------------------------------------------------------------*/
146 extern "C" void displayText(char *text);
147
148 /*--------------------------------------------------------------------------*/
149 /* Nom : circle */
150 /* But : Dessine un cercle dans la fenetre graphique dont le centre */
151 /* est a la position courante. */
152 /* Entrees : radius : Rayon du cercle */
153 /* filled : Indique si il est plein ou si il n'y a que le */
154 /* contour */
155 /* Sorties : */
156 /*--------------------------------------------------------------------------*/
157 extern "C" void circle(int radius, Fill filled = noFill);
158
159 /*--------------------------------------------------------------------------*/
160 /* Nom : box */
161 /* But : Dessine un rectangle dans la fenetre graphique dont le coin */
162 /* superieur gauche est a la position courante */
163 /* Entrees : - width : Longueur du rectangle */
164 /* - height : Largeur du rectangle */
165 /* - filled : Indique si il est plein ou si il n'y a que le */
166 /* contour */
167 /* Sorties : */
168 /*--------------------------------------------------------------------------*/
169 extern "C" void box(int width, int height, Fill filled = noFill);
170
171 /*--------------------------------------------------------------------------*/
172 /* Nom : putPixel */
173 /* But : Dessine un point dans la fenetre graphique a la position */
174 /* courante. */
175 /* Entrees : */
176 /* Sorties : */
177 /*--------------------------------------------------------------------------*/
178 extern "C" void putPixel(void);
179
180 /*--------------------------------------------------------------------------*/
181 /* Nom : getPixel */
182 /* But : Indique la couleur du point dans la fenetre graphique a la */
183 /* position courante. */
184 /* Entrees : */
185 /* Sorties : la couleur du pixel */
186 /*--------------------------------------------------------------------------*/
187 extern "C" Color getPixel(void);
188 };
189 };
190