~ubuntu-branches/ubuntu/wily/grass/wily

« back to all changes in this revision

Viewing changes to visualization/nviz/src/interface.h

Tags: 7.0.0~rc1+ds1-1~exp1
* New upstream release candidate.
* Repack upstream tarball, remove precompiled Python objects.
* Add upstream metadata.
* Update gbp.conf and Vcs-Git URL to use the experimental branch.
* Update watch file for GRASS 7.0.
* Drop build dependencies for Tcl/Tk, add build dependencies:
  python-numpy, libnetcdf-dev, netcdf-bin, libblas-dev, liblapack-dev
* Update Vcs-Browser URL to use cgit instead of gitweb.
* Update paths to use grass70.
* Add configure options: --with-netcdf, --with-blas, --with-lapack,
  remove --with-tcltk-includes.
* Update patches for GRASS 7.
* Update copyright file, changes:
  - Update copyright years
  - Group files by license
  - Remove unused license sections
* Add patches for various typos.
* Fix desktop file with patch instead of d/rules.
* Use minimal dh rules.
* Bump Standards-Version to 3.9.6, no changes.
* Use dpkg-maintscript-helper to replace directories with symlinks.
  (closes: #776349)
* Update my email to use @debian.org address.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#define TRACE_GS_FUNCS
2
 
 
3
 
/*----------------- this is the include file section -----------------*/
4
 
/*
5
 
 */
6
 
 
7
 
#include <stdio.h>
8
 
#include <string.h>
9
 
#include <math.h>
10
 
#include <tk.h>
11
 
 
12
 
#include <grass/config.h>
13
 
 
14
 
#if defined(OPENGL_X11) || defined(OPENGL_WINDOWS)
15
 
#include <GL/gl.h>
16
 
#include <GL/glu.h>
17
 
#elif defined(OPENGL_AQUA)
18
 
#include <OpenGL/gl.h>
19
 
#include <OpenGL/glu.h>
20
 
#endif
21
 
 
22
 
#include <grass/gis.h>
23
 
#include <grass/gsurf.h>
24
 
#include <grass/gstypes.h>
25
 
 
26
 
/* extern int *GV_get_vect_list(int *);
27
 
   extern int *GS_get_surf_list(int *);
28
 
   extern int *GP_get_site_list(int *); */
29
 
 
30
 
 
31
 
/*-------------- this is the data define section ---------------*/
32
 
 
33
 
#define X 0
34
 
#define Y 1
35
 
#define Z 2
36
 
#define W 3
37
 
 
38
 
#define SURF 0
39
 
#define VECT 1
40
 
#define SITE 2
41
 
#define VOL  3
42
 
 
43
 
/* I don't like this - to be consistant, should really do all scaling
44
 
   in library, so can send real world coords. (seems like it would make
45
 
   type-ins & sliders easier, too) */
46
 
#define RANGE (5 * GS_UNIT_SIZE)
47
 
#define RANGE_OFFSET (2 * GS_UNIT_SIZE)
48
 
#define ZRANGE (3 * GS_UNIT_SIZE)
49
 
#define ZRANGE_OFFSET (1 * GS_UNIT_SIZE)
50
 
 
51
 
#define DEFAULT_SURF_COLOR 0x33BBFF
52
 
#define DEFAULT_WIRE_COLOR 0x999999
53
 
#define DEFAULT_WIRE_CNT 10
54
 
#define DEFAULT_POLY_CNT 2
55
 
 
56
 
/* Attributes for vector and site files */
57
 
#define SV_ATT_WIDTH    -1
58
 
#define SV_ATT_MARKER   -2
59
 
#define SV_ATT_SIZE     -3
60
 
#define SV_ATT_USEATT   -4
61
 
#define SV_ATT_DISPLAY  -5
62
 
#define SV_ATT_MAP      -6
63
 
#define SV_ATT_FLAT     -7
64
 
 
65
 
#ifdef FontBase_MAIN
66
 
GLuint FontBase;
67
 
#else
68
 
extern GLuint FontBase;
69
 
#endif
70
 
 
71
 
/*------------------------------------------------------------------------
72
 
-            this is the data type declaration section                   -
73
 
------------------------------------------------------------------------*/
74
 
 
75
 
typedef struct
76
 
{
77
 
    int id;
78
 
    float brt;
79
 
    float r, g, b;
80
 
    float ar, ag, ab;           /* ambient rgb */
81
 
    float x, y, z, w;           /* position */
82
 
} light_data;
83
 
 
84
 
typedef struct
85
 
{
86
 
    float Zrange, XYrange;
87
 
 
88
 
    int NumCplanes;
89
 
    int CurCplane, Cp_on[MAX_CPLANES];
90
 
    float Cp_trans[MAX_CPLANES][3];
91
 
    float Cp_rot[MAX_CPLANES][3];
92
 
 
93
 
    light_data light[MAX_LIGHTS];
94
 
 
95
 
    int BGcolor;
96
 
} Nv_data;
97
 
 
98
 
/* - The following structure is used to associate client data with surfaces.
99
 
 * We do this so that we don't have to rely on the surface ID (which is libal to change
100
 
 * between subsequent executions of nviz) when saving set-up info to files.
101
 
 */
102
 
 
103
 
typedef struct
104
 
{
105
 
    /* We use logical names to assign textual names to map objects.
106
 
       When Nviz needs to refer to a map object it uses the logical name
107
 
       rather than the map ID.  By setting appropriate logical names, we
108
 
       can reuse names inbetween executions of Nviz.  The Nviz library
109
 
       also provides a mechanism for aliasing between logical names.
110
 
       Thus several logical names may refer to the same map object.
111
 
       Aliases are meant to support the case in which two logical names
112
 
       happen to be the same.  The Nviz library automatically assigns
113
 
       logical names uniquely if they are not specified in the creation
114
 
       of a map object.  When loading a saved file containing several map
115
 
       objects, it is expected that the map 0bjects will be aliased to
116
 
       their previous names.  This ensures that old scripts will work.
117
 
     */
118
 
 
119
 
    char *logical_name;
120
 
 
121
 
} Nv_clientData;
122
 
 
123
 
/* Here are the functions that use these structures */
124
 
 
125
 
/* anim_support.c */
126
 
int Nset_interp_mode_cmd(Nv_data *, Tcl_Interp *, int, char **);
127
 
int Nset_tension_cmd(Nv_data *, Tcl_Interp *, int, char **);
128
 
int Nshowtension_start_cmd(Nv_data *, Tcl_Interp *, int, char **);
129
 
int Nupdate_tension_cmd(Nv_data *, Tcl_Interp *, int, char **);
130
 
int Nshowtension_stop_cmd(Nv_data *, Tcl_Interp *, int, char **);
131
 
int Nupdate_frames_cmd(Nv_data *, Tcl_Interp *, int, char **);
132
 
int Nset_numsteps_cmd(Nv_data *, Tcl_Interp *, int, char **);
133
 
int Nclear_keys_cmd(Nv_data *, Tcl_Interp *, int, char **);
134
 
int Nadd_key_cmd(Nv_data *, Tcl_Interp *, int, char **);
135
 
int Ndelete_key_cmd(Nv_data *, Tcl_Interp *, int, char **);
136
 
int Nmove_key_cmd(Nv_data *, Tcl_Interp *, int, char **);
137
 
int Ndo_framestep_cmd(Nv_data *, Tcl_Interp *, int, char **);
138
 
int Nshow_site_cmd(Nv_data *, Tcl_Interp *, int, char **);
139
 
int Nshow_vect_cmd(Nv_data *, Tcl_Interp *, int, char **);
140
 
int Nshow_vol_cmd(Nv_data *, Tcl_Interp *, int, char **);
141
 
int Nshow_lab_cmd(Nv_data *, Tcl_Interp *, int, char **);
142
 
int Nshow_path_cmd(Nv_data *, Tcl_Interp *, int, char **);
143
 
 
144
 
/* change_view.c */
145
 
int Nchange_persp_cmd(Nv_data *, Tcl_Interp *, int, char **);
146
 
int Nchange_position_cmd(Nv_data *, Tcl_Interp *, int, char **);
147
 
int Nchange_height_cmd(Nv_data *, Tcl_Interp *, int, char **);
148
 
int Nset_light_to_view_cmd(Nv_data *, Tcl_Interp *, int, char **);
149
 
int Nchange_exag_cmd(Nv_data *, Tcl_Interp *, int, char **);
150
 
 
151
 
/* cutplane_obj.c */
152
 
int Nset_fence_color_cmd(Nv_data *, Tcl_Interp *, int, char **);
153
 
int Nget_fence_color_cmd(Nv_data *, Tcl_Interp *, int, char **);
154
 
int Ncutplane_obj_cmd(Nv_data *, Tcl_Interp *, int, char **);
155
 
int Nnew_cutplane_obj_cmd(Nv_data *, Tcl_Interp *, int, char **);
156
 
int Nnum_cutplane_obj_cmd(Nv_data *, Tcl_Interp *, int, char **);
157
 
int Nset_current_cutplane_cmd(Nv_data *, Tcl_Interp *, int, char **);
158
 
int Nget_current_cutplane_cmd(Nv_data *, Tcl_Interp *, int, char **);
159
 
int Nget_cutplane_list_cmd(Nv_data *, Tcl_Interp *, int, char **);
160
 
void cp_draw(int, Nv_data *, int, int);
161
 
int draw_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
162
 
int on_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
163
 
int off_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
164
 
int state_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
165
 
int cp_set_rot(Nv_data *, Tcl_Interp *, int, char **, int);
166
 
int cp_set_trans(Nv_data *, Tcl_Interp *, int, char **, int);
167
 
int cp_get_rot(Nv_data *, Tcl_Interp *, int, char **, int);
168
 
int cp_get_trans(Nv_data *, Tcl_Interp *, int, char **, int);
169
 
int get_cp_idnum(char *);
170
 
 
171
 
/* draw.c */
172
 
void CancelFunc_Hook(void);
173
 
int Nunset_cancel_func_cmd(Nv_data *, Tcl_Interp *, int, char **);
174
 
int Nset_cancel_func_cmd(Nv_data *, Tcl_Interp *, int, char **);
175
 
int Nset_draw_cmd(Nv_data *, Tcl_Interp *, int, char **);
176
 
int Ntransp_is_set_cmd(Nv_data *, Tcl_Interp *, int, char **);
177
 
int Nis_masked_cmd(Nv_data *, Tcl_Interp *, int, char **);
178
 
int Nhas_transparency_cmd(Nv_data *, Tcl_Interp *, int, char **);
179
 
int Nget_def_color_cmd(Nv_data *, Tcl_Interp *, int, char **);
180
 
int Nclear_cmd(Nv_data *, Tcl_Interp *, int, char **);
181
 
int Ndraw_wire_cmd(Nv_data *, Tcl_Interp *, int, char **);
182
 
int Ndraw_X_cmd(Nv_data *, Tcl_Interp *, int, char **);
183
 
int Ndraw_line_on_surf_cmd(Nv_data *, Tcl_Interp *, int, char **);
184
 
int Ndraw_model_cmd(Nv_data *, Tcl_Interp *, int, char **);
185
 
int Nsurf_draw_one_cmd(Nv_data *, Tcl_Interp *, int, char **);
186
 
int sort_surfs_max(int *, int *, int *, int);
187
 
int Nvect_draw_one_cmd(Nv_data *, Tcl_Interp *, int, char **);
188
 
int Nsite_draw_one_cmd(Nv_data *, Tcl_Interp *, int, char **);
189
 
int Nvol_draw_one_cmd(Nv_data *, Tcl_Interp *, int, char **);
190
 
int Nsurf_draw_all_cmd(Nv_data *, Tcl_Interp *, int, char **);
191
 
int Nset_cancel_cmd(Nv_data *, Tcl_Interp *, int, char **);
192
 
int Nvect_draw_all_cmd(Nv_data *, Tcl_Interp *, int, char **);
193
 
int Nsite_draw_all_cmd(Nv_data *, Tcl_Interp *, int, char **);
194
 
int Nvol_draw_all_cmd(Nv_data *, Tcl_Interp *, int, char **);
195
 
int Nready_draw_cmd(void);
196
 
int Ndone_draw_cmd(void);
197
 
int check_blank(Tcl_Interp *, int);
198
 
 
199
 
/* exag.c */
200
 
int Nget_first_exag_cmd(Nv_data *, Tcl_Interp *, int, char **);
201
 
int Nget_height_cmd(Nv_data *, Tcl_Interp *, int, char **);
202
 
 
203
 
/* glwrappers.c */
204
 
int tcl_color_to_int(const char *);
205
 
int Nresize_cmd(Nv_data *, Tcl_Interp *, int, char **);
206
 
int Nfinish_cmd(ClientData, Tcl_Interp *, int, char **);
207
 
int Nset_background_cmd(Nv_data *, Tcl_Interp *, int, char **);
208
 
 
209
 
/* init_commands.c */
210
 
int init_commands(Tcl_Interp *, Nv_data *);
211
 
 
212
 
/* label.c */
213
 
int Nplace_label_cmd(Nv_data *, Tcl_Interp *, int, char **);
214
 
void G_site_destroy_struct(void *);
215
 
 
216
 
/* lights.c */
217
 
int Nlight_obj_cmd(Nv_data *, Tcl_Interp *, int, char **);
218
 
int Nnew_light_cmd(Nv_data *, Tcl_Interp *);
219
 
int Nlights_cmd(Nv_data *, Tcl_Interp *, int, char **);
220
 
 
221
 
/* map_obj.c */
222
 
int Nliteral_from_logical_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
223
 
int Nlogical_from_literal_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
224
 
int Nget_surf_list_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
225
 
int Nget_vect_list_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
226
 
int Nget_site_list_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
227
 
int Nget_vol_list_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
228
 
int Nnew_map_obj_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
229
 
int Nmap_obj_cmd(Nv_data *, Tcl_Interp *, int, char *[]);
230
 
int get_idnum(char *);
231
 
int get_type(char *);
232
 
int att_atoi(char *);
233
 
int slice(int, int, Tcl_Interp *, int, char *[]);
234
 
int isosurf(int, int, Tcl_Interp *, int, char *[]);
235
 
 
236
 
/* misc.c */
237
 
int Nlibinit_cmd(Nv_data *, Tcl_Interp *, int, char **);
238
 
int Nget_cancel_cmd(Nv_data *, Tcl_Interp *, int, char **);
239
 
int Nset_SDsurf_cmd(Nv_data *, Tcl_Interp *, int, char **);
240
 
int Nunset_SDsurf_cmd(Nv_data *, Tcl_Interp *, int, char **);
241
 
int Nset_SDscale_cmd(Nv_data *, Tcl_Interp *, int, char **);
242
 
 
243
 
/* nviz_init.c */
244
 
int Ninit(Tcl_Interp *, Tk_Window);
245
 
int Ninitdata(Tcl_Interp *, Nv_data *);
246
 
 
247
 
/* position.c */
248
 
int Ninit_view_cmd(Nv_data *, Tcl_Interp *, int, char **);
249
 
int Nget_to_cmd(Nv_data *, Tcl_Interp *, int, char **);
250
 
int Nget_from_cmd(Nv_data *, Tcl_Interp *, int, char **);
251
 
int Nlook_here_cmd(Nv_data *, Tcl_Interp *, int, char **);
252
 
int Nhas_focus_cmd(Nv_data *, Tcl_Interp *, int, char **);
253
 
int Nset_focus_cmd(Nv_data *, Tcl_Interp *, int, char **);
254
 
int Nset_focus_state_cmd(Nv_data *, Tcl_Interp *, int, char **);
255
 
int Nset_focus_map_cmd(Nv_data *, Tcl_Interp *, int, char **);
256
 
int Nmove_to_cmd(Nv_data *, Tcl_Interp *, int, char **);
257
 
int Nset_fov_cmd(Nv_data *, Tcl_Interp *, int, char **);
258
 
int Nget_region_cmd(Nv_data *, Tcl_Interp *, int, char **);
259
 
int Nget_point_on_surf_cmd(Nv_data *, Tcl_Interp *, int, char **);
260
 
int Nget_dist_along_surf_cmd(Nv_data *, Tcl_Interp *, int, char **);
261
 
int Nget_cat_at_xy_cmd(Nv_data *, Tcl_Interp *, int, char **);
262
 
int Nget_val_at_xy_cmd(Nv_data *, Tcl_Interp *, int, char **);
263
 
int Nget_focus_cmd(Nv_data *, Tcl_Interp *, int, char **);
264
 
int Nget_longdim_cmd(Nv_data *, Tcl_Interp *, int, char **);
265
 
int Nget_zrange_cmd(Nv_data *, Tcl_Interp *, int, char **);
266
 
int Nget_xyrange_cmd(Nv_data *, Tcl_Interp *, int, char **);
267
 
int Nget_zextents_cmd(Nv_data *, Tcl_Interp *, int, char **);
268
 
int Nget_exag_cmd(Nv_data *, Tcl_Interp *, int, char **);
269
 
int Nset_exag_cmd(Nv_data *, Tcl_Interp *, int, char **);
270
 
int Nsave_3dview_cmd(Nv_data *, Tcl_Interp *, int, char **);
271
 
int Nload_3dview_cmd(Nv_data *, Tcl_Interp *, int, char **);
272
 
 
273
 
/* quick_draw.c */
274
 
int Nquick_draw_cmd(Nv_data *, Tcl_Interp *);
275
 
 
276
 
/* script_support.c */
277
 
int ScriptAddString_Cmd(ClientData, Tcl_Interp *, int, char **);
278
 
int CloseScripting_Cmd(ClientData, Tcl_Interp *, int, char **);
279
 
int SetState_Cmd(ClientData, Tcl_Interp *, int, char **);
280
 
int SetScriptFile_Cmd(ClientData, Tcl_Interp *, int, char **);
281
 
 
282
 
/* do_zoom.c */
283
 
int Create_OS_Ctx(int, int);
284
 
int Destroy_OS_Ctx(void);
285
 
 
286
 
/* query_vect.c */
287
 
char *query_vect(char *, double, double);
288
 
 
289
 
/* togl_flythrough.c */
290
 
int Nset_viewdir_cmd(Nv_data * data, Tcl_Interp * interp, int argc,
291
 
                     char **argv);
292
 
int Nget_viewdir_cmd(Nv_data * data, Tcl_Interp * interp, int argc,
293
 
                     char **argv);
294
 
int Ndraw_all_together_cmd(Nv_data * data, Tcl_Interp * interp, int argc,
295
 
                           char **argv);
296
 
void togl_flythrough_init_tcl(Tcl_Interp *, Nv_data *);
297
 
void flythrough_postdraw_cb_remove();
298
 
void flythrough_postdraw_cb();
299
 
 
300
 
/* togl_cb.c */
301
 
GLuint load_font(char *);
302
 
void hide_togl_win(void);
303
 
void show_togl_win(void);
304
 
 
305
 
#ifdef OPENGL_X11
306
 
Display *togl_display(void);
307
 
Screen *togl_screen(void);
308
 
int togl_screen_number(void);
309
 
#endif
310
 
 
311
 
 
312
 
/* tkAppInit.c */
313
 
int Tcl_AppInit(Tcl_Interp *);
314
 
 
315
 
/* tkBind.c */
316
 
int TkCopyAndGlobalEval(Tcl_Interp *, char *);
317
 
 
318
 
/* tkSend.c */
319
 
#if TK_MAJOR_VERSION==8 && TK_MINOR_VERSION > 3
320
 
CONST char *Tk_SetAppName(Tk_Window, CONST char *);
321
 
#else
322
 
char *Tk_SetAppName(Tk_Window, char *);
323
 
#endif
324
 
int Tk_SendCmd(ClientData, Tcl_Interp *, int, char **);
325
 
int TkGetInterpNames(Tcl_Interp *, Tk_Window);
326
 
 
327
 
/* tkSend_old.c */
328
 
int Tk_RegisterInterp(Tcl_Interp *, char *, Tk_Window);
329
 
int Tk_SendCmd(ClientData, Tcl_Interp *, int, char **);
330
 
int TkGetInterpNames(Tcl_Interp *, Tk_Window);
331
 
 
332
 
/* tkSpecial_Wait.c */
333
 
int Tk_Tkspecial_waitCmd(ClientData, Tcl_Interp *, int, char **);
334
 
int update_ranges(Nv_data *);
335
 
void cp_draw(int, Nv_data *, int, int);
336
 
int draw_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
337
 
int on_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
338
 
int off_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
339
 
int state_cp_obj(Nv_data *, Tcl_Interp *, int, char **, int);
340
 
int cp_set_rot(Nv_data *, Tcl_Interp *, int, char **, int);
341
 
int cp_set_trans(Nv_data *, Tcl_Interp *, int, char **, int);
342
 
int cp_get_rot(Nv_data *, Tcl_Interp *, int, char **, int);
343
 
int cp_get_trans(Nv_data *, Tcl_Interp *, int, char **, int);
344
 
int surf_draw_all(Nv_data *, Tcl_Interp *);
345
 
int init_default_slider_vals1(Nv_data *, float *, float *, float *);
346
 
int set_drawmode(Tcl_Interp *, int, int, Nv_data *, int, char *[]);
347
 
int get_drawmode(int, int, Nv_data *, Tcl_Interp *);
348
 
int delete_obj(int, int, Nv_data *, Tcl_Interp *);
349
 
int set_wirecolor(Tcl_Interp *, int, int, Nv_data *, int, char *[]);
350
 
int get_wirecolor(int, int, Nv_data *, Tcl_Interp *);
351
 
int set_nozero(Tcl_Interp *, int, int, Nv_data *, int, char *[]);
352
 
int get_nozero(int, int, Nv_data *, Tcl_Interp *, int, char *[]);
353
 
int load_obj(int, int, Nv_data *, int, char *[], Tcl_Interp *);
354
 
int get_att(int, int, Nv_data *, Tcl_Interp *, int, char *[]);
355
 
int set_att(int, int, Nv_data *, Tcl_Interp *, int, char *[]);
356
 
int get_mask_mode(int, int, Nv_data *, Tcl_Interp *);
357
 
int set_mask_mode(int, int, Nv_data *, Tcl_Interp *, int, char *[]);
358
 
int set_default_wirecolors(Nv_data *, int);
359
 
 
360
 
/* volume.c */
361
 
int isosurf_set_res(int, Tcl_Interp *, int, char *[]);
362
 
int isosurf_get_res(int, Tcl_Interp *, int, char *[]);
363
 
int isosurf_set_drawmode(int, Tcl_Interp *, int, char *[]);
364
 
int isosurf_get_drawmode(int, Tcl_Interp *, int, char *[]);
365
 
int isosurf_num_isosurfs(int, Tcl_Interp *, int, char *[]);
366
 
int isosurf_add(int, Tcl_Interp *, int, char *[]);
367
 
int isosurf_del(int, Tcl_Interp *, int, char *[]);
368
 
int isosurf_move_up(int, Tcl_Interp *, int, char *[]);
369
 
int isosurf_move_down(int, Tcl_Interp *, int, char *[]);
370
 
int isosurf_get_att(int, Tcl_Interp *, int, char *[]);
371
 
int isosurf_set_att(int, Tcl_Interp *, int, char *[]);
372
 
int isosurf_unset_att(int, Tcl_Interp *, int, char *[]);
373
 
int isosurf_att_atoi(char *);
374
 
int isosurf_get_mask_mode(int, Tcl_Interp *, int, char *[]);
375
 
int isosurf_set_mask_mode(int, Tcl_Interp *, int, char *[]);
376
 
int isosurf_get_flags(int, Tcl_Interp *, int, char *[]);
377
 
int isosurf_set_flags(int, Tcl_Interp *, int, char *[]);
378
 
int slice_set_res(int, Tcl_Interp *, int, char *[]);
379
 
int slice_get_res(int, Tcl_Interp *, int, char *[]);
380
 
int slice_set_drawmode(int, Tcl_Interp *, int, char *[]);
381
 
int slice_get_drawmode(int, Tcl_Interp *, int, char *[]);
382
 
int slice_num_slices(int, Tcl_Interp *, int, char *[]);
383
 
int slice_set_pos(int, Tcl_Interp *, int, char *[]);
384
 
int slice_get_pos(int, Tcl_Interp *, int, char *[]);
385
 
int slice_add(int, Tcl_Interp *, int, char *[]);
386
 
int slice_del(int, Tcl_Interp *, int, char *[]);
387
 
int slice_move_up(int, Tcl_Interp *, int, char *[]);
388
 
int slice_move_down(int, Tcl_Interp *, int, char *[]);
389
 
int slice_get_transp(int, Tcl_Interp *, int, char *[]);
390
 
int slice_set_transp(int, Tcl_Interp *, int, char *[]);
391
 
 
392
 
struct Map_info;
393
 
 
394
 
/* site_attr_commands.c */
395
 
int site_attr_open_map(geosite *, int, struct Map_info **, int *, char ***,
396
 
                       int **, int **);
397
 
int site_attr_set_color(geosite *, int, int, int, const char **,
398
 
                        const char **);
399
 
int site_attr_set_size(geosite *, int, int, int, const char **,
400
 
                       const char **);
401
 
int site_attr_set_fixed_color(geosite *, int, unsigned int);
402
 
int site_attr_set_fixed_size(geosite *, int, float);
403
 
int site_attr_set_fixed_marker(geosite *, int, int);
404
 
int site_attr_set(Tcl_Interp *, geosite *, int, char *, int, char *, char *);
405
 
int site_attr_unset(Tcl_Interp *, geosite *, int, char *);
406
 
int site_attr_get(Tcl_Interp *, geosite *, int);
407
 
void site_attr_init_tcl(Tcl_Interp *, Nv_data *);
408
 
void site_attr_init(int);
409
 
int attr_interp_entries(int, const char **, const char **, float **, float **,
410
 
                        float **);
411
 
int attr_interp_colors(int, const char **, const char **, float **, float **,
412
 
                       float **, float **, float **, float **, float **);
413
 
int attr_get_int_BBGGRR(const char *);
414
 
float attr_get_RRGGBB(const char *, float *, float *, float *);
415
 
int attr_interp_entries_string(int, const char **, float **);
416
 
int attr_interp_colors_string(int, const char **, float **, float **,
417
 
                              float **);
418
 
int attr_eval_color(float, int, float *, float *, float *, float *, float *,
419
 
                    float *, float *);
420
 
int attr_eval_color_string(const char *, int, const char **, float *, float *,
421
 
                           float *);
422
 
float attr_eval_entry_string(const char *, int, const char **, float *);
423
 
 
424
 
/* pick_vect_commands.c */
425
 
void pick_init_tcl(Tcl_Interp *, Nv_data *);
426
 
 
427
 
/* site_highlight_commands.c */
428
 
void site_highlight_init_tcl(Tcl_Interp *, Nv_data *);