3
** updates the text fields when the sliders have changed
4
** and also updates the sliders if the text fields have changed
13
/* use own system of getting vals from sliders to make it easier to
14
change the slider's range dynamically */
16
init_default_slider_vals1(Nv_data * dc, float *min, float *max, float *val)
20
GS_get_longdim(&longdim);
24
val[MAIN_PSP] = UNIT_OF(120, 3, 40);
43
max[COL_RED] = max[COL_GRN] = max[COL_BLU] = 255;
51
max[SITE_SIZ] = longdim / 20.;
56
int Nget_first_exag_cmd(Nv_data * data, Tcl_Interp * interp, /* Current interpreter. */
57
int argc, char **argv)
60
int nsurfs, i, *surf_list;
63
surf_list = GS_get_surf_list(&nsurfs);
66
for (i = 0; i < nsurfs; i++) {
67
if (GS_get_exag_guess(surf_list[i], &texag) > -1) {
69
exag = (texag > exag) ? texag : exag;
75
sprintf(buf, "%f", exag);
80
Tcl_SetResult(interp, buf, TCL_VOLATILE);
85
/* after initial data has been loaded, & maybe again later */
86
int Nget_height_cmd(Nv_data * data, Tcl_Interp * interp, /* Current interpreter. */
87
int argc, char **argv)
89
float longdim, exag, texag, hmin, hmax;
90
int nsurfs, i, *surf_list;
97
surf_list = GS_get_surf_list(&nsurfs);
99
GS_get_longdim(&longdim);
100
GS_get_zrange_nz(&hmin, &hmax);
103
for (i = 0; i < nsurfs; i++) {
104
if (GS_get_exag_guess(surf_list[i], &texag) > -1)
106
exag = texag > exag ? texag : exag;
111
fmin = hmin - (2. * longdim / exag);
112
fmax = hmin + (3 * longdim / exag);
119
/* The one decimal place of accuracy is necessary to force Tcl to */
120
/* parse these values as floating point rather than integers. This */
121
/* avoids problems with integers which are too large to represent. */
122
sprintf(min, "%.1f", fmin);
123
sprintf(max, "%.1f", fmax);
124
sprintf(val, "%.1f", fmin + (fmax - fmin) / 2.0);
130
Tcl_SetResult(interp, Tcl_Merge(3, list), TCL_DYNAMIC);