Revision: 76583
http://sourceforge.net/p/brlcad/code/76583
Author: starseeker
Date: 2020-07-29 20:21:22 +0000 (Wed, 29 Jul 2020)
Log Message:
-----------
Collapse ged_dm_view into bview
Modified Paths:
--------------
brlcad/branches/bioh/include/dm/bview.h
brlcad/branches/bioh/include/ged/defines.h
brlcad/branches/bioh/include/tclcad.h
brlcad/branches/bioh/src/libtclcad/fb.c
brlcad/branches/bioh/src/libtclcad/tclcad_mouse.c
brlcad/branches/bioh/src/libtclcad/tclcad_obj.c
brlcad/branches/bioh/src/libtclcad/tclcad_obj_wrapper.c
brlcad/branches/bioh/src/libtclcad/tclcad_polygons.c
brlcad/branches/bioh/src/libtclcad/tclcad_private.h
brlcad/branches/bioh/src/libtclcad/view/arrows.c
brlcad/branches/bioh/src/libtclcad/view/autoview.c
brlcad/branches/bioh/src/libtclcad/view/axes.c
brlcad/branches/bioh/src/libtclcad/view/draw.c
brlcad/branches/bioh/src/libtclcad/view/faceplate.c
brlcad/branches/bioh/src/libtclcad/view/labels.c
brlcad/branches/bioh/src/libtclcad/view/lines.c
brlcad/branches/bioh/src/libtclcad/view/refresh.c
brlcad/branches/bioh/src/libtclcad/view/util.c
brlcad/branches/bioh/src/libtclcad/view/view.h
Modified: brlcad/branches/bioh/include/dm/bview.h
===================================================================
--- brlcad/branches/bioh/include/dm/bview.h 2020-07-29 19:47:21 UTC (rev
76582)
+++ brlcad/branches/bioh/include/dm/bview.h 2020-07-29 20:21:22 UTC (rev
76583)
@@ -253,6 +253,8 @@
fastf_t gv_data_vZ;
size_t gv_bot_threshold;
int gv_hidden;
+ void *dmp; /* Display manager pointer, if one is
associated with this view */
+ void *u_data; /* Caller data associated with this
view */
struct bu_ptbl *callbacks;
};
Modified: brlcad/branches/bioh/include/ged/defines.h
===================================================================
--- brlcad/branches/bioh/include/ged/defines.h 2020-07-29 19:47:21 UTC (rev
76582)
+++ brlcad/branches/bioh/include/ged/defines.h 2020-07-29 20:21:22 UTC (rev
76583)
@@ -74,7 +74,6 @@
#define GED_DISPLAY_LIST_NULL ((struct display_list *)0)
#define GED_DRAWABLE_NULL ((struct ged_drawable *)0)
#define GED_VIEW_NULL ((struct bview *)0)
-#define GED_DM_VIEW_NULL ((struct ged_dm_view *)0)
#define GED_RESULT_NULL ((void *)0)
@@ -253,7 +252,7 @@
void (*ged_delete_io_handler)(void *interp, void *chan, struct bu_process
*p, int fd, void *data, ged_io_handler_callback_t callback);
// Other callbacks...
- // ged_dm_view: gdv_callback, gdv_edit_motion_delta_callback
+ // Tcl command strings: gdv_callback, gdv_edit_motion_delta_callback
// ged_obj: go_more_args_callback, go_rt_end_callback
// fbserv_obj: fbs_callback
// bview.h gv_callback, vo_callback
Modified: brlcad/branches/bioh/include/tclcad.h
===================================================================
--- brlcad/branches/bioh/include/tclcad.h 2020-07-29 19:47:21 UTC (rev
76582)
+++ brlcad/branches/bioh/include/tclcad.h 2020-07-29 20:21:22 UTC (rev
76583)
@@ -139,16 +139,9 @@
struct ged_obj *gdv_gop;
};
-struct ged_dm_view {
- struct bu_list l;
- struct bview *gdv_view;
- struct dm *gdv_dmp;
- void *gdv_data;
-};
-
struct ged_obj {
struct ged *go_gedp;
- struct ged_dm_view go_head_views;
+ struct bview go_head_views;
struct bu_vls go_name;
struct bu_vls go_more_args_callback;
struct bu_vls go_rt_end_callback;
@@ -351,107 +344,107 @@
int argc,
const char
*argv[]);
TCLCAD_EXPORT extern void go_refresh(struct ged_obj *gop,
- struct ged_dm_view *gdvp);
+ struct bview *gdvp);
TCLCAD_EXPORT extern void go_refresh_draw(struct ged_obj *gop,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int restore_zbuffer);
TCLCAD_EXPORT extern int go_view_axes(struct ged_obj *gop,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_labels(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_arrows(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_pick(struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_axes(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_lines(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_move(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_move_object_mode(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_move_point_mode(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_data_polygons(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_mouse_poly_circ(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_mouse_poly_cont(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_mouse_poly_ell(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_mouse_poly_rect(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_poly_circ_mode(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_poly_ell_mode(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_poly_rect_mode(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
@@ -460,13 +453,13 @@
struct bu_vls *result_str);
TCLCAD_EXPORT extern int go_poly_cont_build(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
TCLCAD_EXPORT extern int go_poly_cont_build_end(Tcl_Interp *UNUSED(interp),
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
Modified: brlcad/branches/bioh/src/libtclcad/fb.c
===================================================================
--- brlcad/branches/bioh/src/libtclcad/fb.c 2020-07-29 19:47:21 UTC (rev
76582)
+++ brlcad/branches/bioh/src/libtclcad/fb.c 2020-07-29 20:21:22 UTC (rev
76583)
@@ -908,7 +908,7 @@
void
to_fbs_callback(void *clientData)
{
- struct ged_dm_view *gdvp = (struct ged_dm_view *)clientData;
+ struct bview *gdvp = (struct bview *)clientData;
to_refresh_view(gdvp);
}
@@ -915,9 +915,9 @@
int
-to_close_fbs(struct ged_dm_view *gdvp)
+to_close_fbs(struct bview *gdvp)
{
- struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (tvd->gdv_fbs.fbs_fbp == FB_NULL)
return TCL_OK;
@@ -933,14 +933,14 @@
* Open/activate the display managers framebuffer.
*/
int
-to_open_fbs(struct ged_dm_view *gdvp, Tcl_Interp *interp)
+to_open_fbs(struct bview *gdvp, Tcl_Interp *interp)
{
/* already open */
- struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (tvd->gdv_fbs.fbs_fbp != FB_NULL)
return TCL_OK;
- tvd->gdv_fbs.fbs_fbp = dm_get_fb(gdvp->gdv_dmp);
+ tvd->gdv_fbs.fbs_fbp = dm_get_fb((struct dm *)gdvp->dmp);
if (tvd->gdv_fbs.fbs_fbp == FB_NULL) {
Tcl_Obj *obj;
@@ -969,7 +969,7 @@
int UNUSED(maxargs))
{
int mode;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* initialize result */
bu_vls_trunc(gedp->ged_result_str, 0);
@@ -985,8 +985,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -997,7 +997,7 @@
/* Get fb mode */
if (argc == 2) {
- struct tclcad_view_data *tvd = (struct tclcad_view_data
*)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
bu_vls_printf(gedp->ged_result_str, "%d", tvd->gdv_fbs.fbs_mode);
return GED_OK;
}
@@ -1014,7 +1014,7 @@
mode = TCLCAD_OBJ_FB_MODE_OVERLAY;
{
- struct tclcad_view_data *tvd = (struct tclcad_view_data
*)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
tvd->gdv_fbs.fbs_mode = mode;
}
to_refresh_view(gdvp);
@@ -1031,7 +1031,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* initialize result */
bu_vls_trunc(gedp->ged_result_str, 0);
@@ -1047,8 +1047,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1057,7 +1057,7 @@
return GED_ERROR;
}
- struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (tvd->gdv_fbs.fbs_fbp == FB_NULL) {
bu_vls_printf(gedp->ged_result_str, "%s listen: framebuffer not
open!\n", argv[0]);
return GED_ERROR;
Modified: brlcad/branches/bioh/src/libtclcad/tclcad_mouse.c
===================================================================
--- brlcad/branches/bioh/src/libtclcad/tclcad_mouse.c 2020-07-29 19:47:21 UTC
(rev 76582)
+++ brlcad/branches/bioh/src/libtclcad/tclcad_mouse.c 2020-07-29 20:21:22 UTC
(rev 76583)
@@ -41,7 +41,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* initialize result */
bu_vls_trunc(gedp->ged_result_str, 0);
@@ -57,8 +57,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -67,7 +67,7 @@
return GED_ERROR;
}
- bu_vls_printf(gedp->ged_result_str, "%d %d",
(int)gdvp->gdv_view->gv_prevMouseX, (int)gdvp->gdv_view->gv_prevMouseY);
+ bu_vls_printf(gedp->ged_result_str, "%d %d", (int)gdvp->gv_prevMouseX,
(int)gdvp->gv_prevMouseY);
return GED_OK;
}
@@ -84,7 +84,7 @@
char *av[4];
point_t view;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -103,8 +103,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -119,11 +119,11 @@
return GED_ERROR;
}
- x = screen_to_view_x(gdvp->gdv_dmp, x);
- y = screen_to_view_y(gdvp->gdv_dmp, y);
+ x = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ y = screen_to_view_y((struct dm *)gdvp->dmp, y);
VSET(view, x, y, 0.0);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
int snapped = 0;
if (gedp->ged_gvp->gv_snap_lines) {
snapped = ged_snap_to_lines(gedp, &view[X], &view[Y]);
@@ -134,7 +134,7 @@
bu_vls_printf(&pt_vls, "%lf %lf %lf", view[X], view[Y], view[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = (char *)argv[0];
av[1] = (char *)argv[2];
av[2] = bu_vls_addr(&pt_vls);
@@ -164,7 +164,7 @@
{
const char *cmd_argv[11] = {"brep", NULL, "selection", "append", "active"};
int ret, cmd_argc = (int)(sizeof(cmd_argv) / sizeof(const char *));
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
char *brep_name;
char *end;
struct bu_vls bindings = BU_VLS_INIT_ZERO;
@@ -179,8 +179,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -202,15 +202,15 @@
}
/* stash point coordinates for future drag handling */
- gdvp->gdv_view->gv_prevMouseX = screen_pt[X];
- gdvp->gdv_view->gv_prevMouseY = screen_pt[Y];
+ gdvp->gv_prevMouseX = screen_pt[X];
+ gdvp->gv_prevMouseY = screen_pt[Y];
/* convert screen point to model-space start point and direction */
- view_pt[X] = screen_to_view_x(gdvp->gdv_dmp, screen_pt[X]);
- view_pt[Y] = screen_to_view_y(gdvp->gdv_dmp, screen_pt[Y]);
+ view_pt[X] = screen_to_view_x((struct dm *)gdvp->dmp, screen_pt[X]);
+ view_pt[Y] = screen_to_view_y((struct dm *)gdvp->dmp, screen_pt[Y]);
view_pt[Z] = 1.0;
- MAT4X3PNT(model_pt, gdvp->gdv_view->gv_view2model, view_pt);
+ MAT4X3PNT(model_pt, gdvp->gv_view2model, view_pt);
VSET(view_dir, 0.0, 0.0, -1.0);
bn_mat_inv(invRot, gedp->ged_gvp->gv_rotation);
@@ -234,7 +234,7 @@
cmd_argv[9] = bu_vls_addr(&dir[Y]);
cmd_argv[10] = bu_vls_addr(&dir[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ret = ged_brep(gedp, cmd_argc, cmd_argv);
bu_vls_free(&start[X]);
@@ -248,12 +248,12 @@
return GED_ERROR;
}
- if (dm_get_pathname(gdvp->gdv_dmp)) {
+ if (dm_get_pathname((struct dm *)gdvp->dmp)) {
bu_vls_printf(&bindings, "bind %s <Motion> {%s
mouse_brep_selection_translate %s %s %%x %%y; "
"%s brep %s plot SCV}",
- bu_vls_addr(dm_get_pathname(gdvp->gdv_dmp)),
+ bu_vls_addr(dm_get_pathname((struct dm *)gdvp->dmp)),
bu_vls_addr(¤t_top->to_gop->go_name),
- bu_vls_addr(&gdvp->gdv_view->gv_name),
+ bu_vls_addr(&gdvp->gv_name),
brep_name,
bu_vls_addr(¤t_top->to_gop->go_name),
brep_name);
@@ -277,7 +277,7 @@
{
const char *cmd_argv[8] = {"brep", NULL, "selection", "translate",
"active"};
int ret, cmd_argc = (int)(sizeof(cmd_argv) / sizeof(const char *));
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
char *brep_name;
char *end;
point_t screen_end, view_start, view_end, model_start, model_end;
@@ -289,8 +289,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -311,15 +311,15 @@
}
/* convert screen-space delta to model-space delta */
- view_start[X] = screen_to_view_x(gdvp->gdv_dmp,
gdvp->gdv_view->gv_prevMouseX);
- view_start[Y] = screen_to_view_y(gdvp->gdv_dmp,
gdvp->gdv_view->gv_prevMouseY);
+ view_start[X] = screen_to_view_x((struct dm *)gdvp->dmp,
gdvp->gv_prevMouseX);
+ view_start[Y] = screen_to_view_y((struct dm *)gdvp->dmp,
gdvp->gv_prevMouseY);
view_start[Z] = 1;
- MAT4X3PNT(model_start, gdvp->gdv_view->gv_view2model, view_start);
+ MAT4X3PNT(model_start, gdvp->gv_view2model, view_start);
- view_end[X] = screen_to_view_x(gdvp->gdv_dmp, screen_end[X]);
- view_end[Y] = screen_to_view_y(gdvp->gdv_dmp, screen_end[Y]);
+ view_end[X] = screen_to_view_x((struct dm *)gdvp->dmp, screen_end[X]);
+ view_end[Y] = screen_to_view_y((struct dm *)gdvp->dmp, screen_end[Y]);
view_end[Z] = 1;
- MAT4X3PNT(model_end, gdvp->gdv_view->gv_view2model, view_end);
+ MAT4X3PNT(model_end, gdvp->gv_view2model, view_end);
VSUB2(model_delta, model_end, model_start);
@@ -346,8 +346,8 @@
/* need to tell front-end that we've modified the db */
tclcad_eval_noresult(current_top->to_interp, "$::ArcherCore::application
setSave", 0, NULL);
- gdvp->gdv_view->gv_prevMouseX = screen_end[X];
- gdvp->gdv_view->gv_prevMouseY = screen_end[Y];
+ gdvp->gv_prevMouseX = screen_end[X];
+ gdvp->gv_prevMouseY = screen_end[Y];
cmd_argc = 2;
cmd_argv[0] = "draw";
@@ -373,7 +373,7 @@
fastf_t dx, dy;
fastf_t sf;
struct bu_vls rot_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -392,8 +392,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -413,24 +413,24 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- dx *= gdvp->gdv_view->gv_rscale;
- dy *= gdvp->gdv_view->gv_rscale;
+ dx *= gdvp->gv_rscale;
+ dy *= gdvp->gv_rscale;
if (fabs(dx) > fabs(dy))
sf = dx;
@@ -448,7 +448,7 @@
bu_vls_printf(&rot_vls, "0 0 %lf", -sf);
}
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 3;
av[0] = "rot";
av[1] = "-m";
@@ -459,7 +459,7 @@
bu_vls_free(&rot_vls);
if (ret == GED_OK) {
- struct tclcad_view_data *tvd = (struct tclcad_view_data
*)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_callback)) {
tclcad_eval_noresult(current_top->to_interp,
bu_vls_addr(&tvd->gdv_callback), 0, NULL);
}
@@ -487,7 +487,7 @@
fastf_t sf;
fastf_t inv_width;
struct bu_vls tran_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -506,8 +506,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -527,26 +527,26 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
- dx *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_local2base;
- dy *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_local2base;
+ dx *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_local2base;
+ dy *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_local2base;
if (fabs(dx) > fabs(dy))
sf = dx;
@@ -564,7 +564,7 @@
bu_vls_printf(&tran_vls, "0 0 %lf", -sf);
}
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 3;
av[0] = "tra";
av[1] = "-m";
@@ -575,7 +575,7 @@
bu_vls_free(&tran_vls);
if (ret == GED_OK) {
- struct tclcad_view_data *tvd = (struct tclcad_view_data
*)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_callback)) {
tclcad_eval_noresult(current_top->to_interp,
bu_vls_addr(&tvd->gdv_callback), 0, NULL);
}
@@ -598,7 +598,7 @@
char *av[6];
point_t view;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -617,8 +617,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -633,13 +633,13 @@
return GED_ERROR;
}
- x = screen_to_view_x(gdvp->gdv_dmp, x);
- y = screen_to_view_y(gdvp->gdv_dmp, y);
+ x = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ y = screen_to_view_y((struct dm *)gdvp->dmp, y);
VSET(view, x, y, 0.0);
bu_vls_printf(&pt_vls, "%lf %lf %lf", view[X], view[Y], view[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "find_arb_edge_nearest_pnt";
av[1] = (char *)argv[2];
av[2] = bu_vls_addr(&pt_vls);
@@ -664,7 +664,7 @@
char *av[6];
point_t view;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -683,8 +683,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -699,13 +699,13 @@
return GED_ERROR;
}
- x = screen_to_view_x(gdvp->gdv_dmp, x);
- y = screen_to_view_y(gdvp->gdv_dmp, y);
+ x = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ y = screen_to_view_y((struct dm *)gdvp->dmp, y);
VSET(view, x, y, 0.0);
bu_vls_printf(&pt_vls, "%lf %lf %lf", view[X], view[Y], view[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "find_bot_edge_nearest_pnt";
av[1] = (char *)argv[2];
av[2] = bu_vls_addr(&pt_vls);
@@ -729,7 +729,7 @@
char *av[6];
point_t view;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -748,8 +748,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -764,13 +764,13 @@
return GED_ERROR;
}
- x = screen_to_view_x(gdvp->gdv_dmp, x);
- y = screen_to_view_y(gdvp->gdv_dmp, y);
+ x = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ y = screen_to_view_y((struct dm *)gdvp->dmp, y);
VSET(view, x, y, 0.0);
bu_vls_printf(&pt_vls, "%lf %lf %lf", view[X], view[Y], view[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "find_bot_pnt_nearest_pnt";
av[1] = (char *)argv[2];
av[2] = bu_vls_addr(&pt_vls);
@@ -795,7 +795,7 @@
point_t model;
point_t view;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -814,8 +814,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -830,14 +830,14 @@
return GED_ERROR;
}
- x = screen_to_view_x(gdvp->gdv_dmp, x);
- y = screen_to_view_y(gdvp->gdv_dmp, y);
+ x = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ y = screen_to_view_y((struct dm *)gdvp->dmp, y);
VSET(view, x, y, 0.0);
- MAT4X3PNT(model, gdvp->gdv_view->gv_view2model, view);
+ MAT4X3PNT(model, gdvp->gv_view2model, view);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "find_metaball_pnt_nearest_pnt";
av[1] = (char *)argv[2];
av[2] = bu_vls_addr(&pt_vls);
@@ -862,7 +862,7 @@
point_t model;
point_t view;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -881,8 +881,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -897,14 +897,14 @@
return GED_ERROR;
}
- x = screen_to_view_x(gdvp->gdv_dmp, x);
- y = screen_to_view_y(gdvp->gdv_dmp, y);
+ x = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ y = screen_to_view_y((struct dm *)gdvp->dmp, y);
VSET(view, x, y, 0.0);
- MAT4X3PNT(model, gdvp->gdv_view->gv_view2model, view);
+ MAT4X3PNT(model, gdvp->gv_view2model, view);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "find_pipe_pnt_nearest_pnt";
av[1] = (char *)argv[2];
av[2] = bu_vls_addr(&pt_vls);
@@ -928,7 +928,7 @@
{
const char *cmd_argv[11] = {"joint2", NULL, "selection", "replace",
"active"};
int ret, cmd_argc = (int)(sizeof(cmd_argv) / sizeof(const char *));
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
char *joint_name;
char *end;
struct bu_vls bindings = BU_VLS_INIT_ZERO;
@@ -943,8 +943,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -966,15 +966,15 @@
}
/* stash point coordinates for future drag handling */
- gdvp->gdv_view->gv_prevMouseX = screen_pt[X];
- gdvp->gdv_view->gv_prevMouseY = screen_pt[Y];
+ gdvp->gv_prevMouseX = screen_pt[X];
+ gdvp->gv_prevMouseY = screen_pt[Y];
/* convert screen point to model-space start point and direction */
- view_pt[X] = screen_to_view_x(gdvp->gdv_dmp, screen_pt[X]);
- view_pt[Y] = screen_to_view_y(gdvp->gdv_dmp, screen_pt[Y]);
+ view_pt[X] = screen_to_view_x((struct dm *)gdvp->dmp, screen_pt[X]);
+ view_pt[Y] = screen_to_view_y((struct dm *)gdvp->dmp, screen_pt[Y]);
view_pt[Z] = 1.0;
- MAT4X3PNT(model_pt, gdvp->gdv_view->gv_view2model, view_pt);
+ MAT4X3PNT(model_pt, gdvp->gv_view2model, view_pt);
VSET(view_dir, 0.0, 0.0, -1.0);
bn_mat_inv(invRot, gedp->ged_gvp->gv_rotation);
@@ -998,7 +998,7 @@
cmd_argv[9] = bu_vls_addr(&dir[Y]);
cmd_argv[10] = bu_vls_addr(&dir[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ret = ged_joint2(gedp, cmd_argc, cmd_argv);
bu_vls_free(&start[X]);
@@ -1012,11 +1012,11 @@
return GED_ERROR;
}
- if (dm_get_pathname(gdvp->gdv_dmp)) {
+ if (dm_get_pathname((struct dm *)gdvp->dmp)) {
bu_vls_printf(&bindings, "bind %s <Motion> {%s
mouse_joint_selection_translate %s %s %%x %%y}",
- bu_vls_addr(dm_get_pathname(gdvp->gdv_dmp)),
+ bu_vls_addr(dm_get_pathname((struct dm *)gdvp->dmp)),
bu_vls_addr(¤t_top->to_gop->go_name),
- bu_vls_addr(&gdvp->gdv_view->gv_name),
+ bu_vls_addr(&gdvp->gv_name),
joint_name);
Tcl_Eval(current_top->to_interp, bu_vls_addr(&bindings));
}
@@ -1039,7 +1039,7 @@
{
const char *cmd_argv[8] = {"joint2", NULL, "selection", "translate",
"active"};
int ret, cmd_argc = (int)(sizeof(cmd_argv) / sizeof(const char *));
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
char *joint_name;
char *end;
point_t screen_end, view_start, view_end, model_start, model_end;
@@ -1051,8 +1051,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1073,15 +1073,15 @@
}
/* convert screen-space delta to model-space delta */
- view_start[X] = screen_to_view_x(gdvp->gdv_dmp,
gdvp->gdv_view->gv_prevMouseX);
- view_start[Y] = screen_to_view_y(gdvp->gdv_dmp,
gdvp->gdv_view->gv_prevMouseY);
+ view_start[X] = screen_to_view_x((struct dm *)gdvp->dmp,
gdvp->gv_prevMouseX);
+ view_start[Y] = screen_to_view_y((struct dm *)gdvp->dmp,
gdvp->gv_prevMouseY);
view_start[Z] = 1;
- MAT4X3PNT(model_start, gdvp->gdv_view->gv_view2model, view_start);
+ MAT4X3PNT(model_start, gdvp->gv_view2model, view_start);
- view_end[X] = screen_to_view_x(gdvp->gdv_dmp, screen_end[X]);
- view_end[Y] = screen_to_view_y(gdvp->gdv_dmp, screen_end[Y]);
+ view_end[X] = screen_to_view_x((struct dm *)gdvp->dmp, screen_end[X]);
+ view_end[Y] = screen_to_view_y((struct dm *)gdvp->dmp, screen_end[Y]);
view_end[Z] = 1;
- MAT4X3PNT(model_end, gdvp->gdv_view->gv_view2model, view_end);
+ MAT4X3PNT(model_end, gdvp->gv_view2model, view_end);
VSUB2(model_delta, model_end, model_start);
@@ -1107,8 +1107,8 @@
/* need to tell front-end that we've modified the db */
Tcl_Eval(current_top->to_interp, "$::ArcherCore::application setSave");
- gdvp->gdv_view->gv_prevMouseX = screen_end[X];
- gdvp->gdv_view->gv_prevMouseY = screen_end[Y];
+ gdvp->gv_prevMouseX = screen_end[X];
+ gdvp->gv_prevMouseY = screen_end[Y];
cmd_argc = 3;
cmd_argv[0] = "get";
@@ -1187,7 +1187,7 @@
point_t view;
mat_t inv_rot;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1206,8 +1206,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1222,34 +1222,34 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
/* ged_move_arb_edge expects things to be in local units */
- dx *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
- dy *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
+ dx *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
+ dy *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
VSET(view, dx, dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "move_arb_edge";
av[1] = "-r";
av[2] = (char *)argv[2];
@@ -1288,7 +1288,7 @@
point_t view;
mat_t inv_rot;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1307,8 +1307,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1323,34 +1323,34 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
/* ged_move_arb_face expects things to be in local units */
- dx *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
- dy *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
+ dx *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
+ dy *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
VSET(view, dx, dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "move_arb_face";
av[1] = "-r";
av[2] = (char *)argv[2];
@@ -1391,7 +1391,7 @@
point_t view;
mat_t v2m_mat;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1424,8 +1424,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1440,31 +1440,31 @@
return GED_ERROR;
}
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
if (rflag) {
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
dz = 0.0;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- bn_mat_inv(v2m_mat, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(v2m_mat, gdvp->gv_rotation);
- dx *= inv_width * gdvp->gdv_view->gv_size;
- dy *= inv_width * gdvp->gdv_view->gv_size;
+ dx *= inv_width * gdvp->gv_size;
+ dy *= inv_width * gdvp->gv_size;
} else {
struct rt_db_internal intern;
struct rt_bot_internal *botip;
@@ -1508,11 +1508,11 @@
return GED_ERROR;
}
- MAT4X3PNT(view, gdvp->gdv_view->gv_model2view,
&botip->vertices[vertex_i*3]);
- MAT_COPY(v2m_mat, gdvp->gdv_view->gv_view2model);
+ MAT4X3PNT(view, gdvp->gv_model2view, &botip->vertices[vertex_i*3]);
+ MAT_COPY(v2m_mat, gdvp->gv_view2model);
- dx = screen_to_view_x(gdvp->gdv_dmp, x);
- dy = screen_to_view_y(gdvp->gdv_dmp, y);
+ dx = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ dy = screen_to_view_y((struct dm *)gdvp->dmp, y);
dz = view[Z];
rt_db_free_internal(&intern);
@@ -1525,7 +1525,7 @@
VSCALE(model, model, gedp->ged_wdbp->dbip->dbi_base2local);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "bot_move_pnt";
if (rflag) {
@@ -1574,7 +1574,7 @@
point_t view;
mat_t v2m_mat;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1595,8 +1595,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1611,30 +1611,30 @@
return GED_ERROR;
}
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
dz = 0.0;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- bn_mat_inv(v2m_mat, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(v2m_mat, gdvp->gv_rotation);
- dx *= inv_width * gdvp->gdv_view->gv_size;
- dy *= inv_width * gdvp->gdv_view->gv_size;
+ dx *= inv_width * gdvp->gv_size;
+ dy *= inv_width * gdvp->gv_size;
VSET(view, dx, dy, dz);
MAT4X3PNT(model, v2m_mat, view);
@@ -1643,7 +1643,7 @@
VSCALE(model, model, gedp->ged_wdbp->dbip->dbi_base2local);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
{
register int i, j;
@@ -1691,7 +1691,7 @@
point_t view;
mat_t inv_rot;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1710,8 +1710,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1726,34 +1726,34 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
/* ged_pipe_move_pnt expects things to be in local units */
- dx *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
- dy *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
+ dx *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
+ dy *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
VSET(view, dx, dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = (char *)argv[0];
av[1] = "-r";
av[2] = (char *)argv[2];
@@ -1790,7 +1790,7 @@
struct bu_vls rot_x_vls = BU_VLS_INIT_ZERO;
struct bu_vls rot_y_vls = BU_VLS_INIT_ZERO;
struct bu_vls rot_z_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1809,8 +1809,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1825,27 +1825,27 @@
return GED_ERROR;
}
- dx = y - gdvp->gdv_view->gv_prevMouseY;
- dy = x - gdvp->gdv_view->gv_prevMouseX;
+ dx = y - gdvp->gv_prevMouseY;
+ dy = x - gdvp->gv_prevMouseX;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- dx *= gdvp->gdv_view->gv_rscale;
- dy *= gdvp->gdv_view->gv_rscale;
+ dx *= gdvp->gv_rscale;
+ dy *= gdvp->gv_rscale;
VSET(view, dx, dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
bu_vls_printf(&rot_x_vls, "%lf", model[X]);
@@ -1852,9 +1852,9 @@
bu_vls_printf(&rot_y_vls, "%lf", model[Y]);
bu_vls_printf(&rot_z_vls, "%lf", model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
- struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_edit_motion_delta_callback)) {
const char *command = bu_vls_addr(&tvd->gdv_edit_motion_delta_callback);
const char *args[4];
@@ -1902,7 +1902,7 @@
fastf_t sf;
fastf_t inv_width;
struct bu_vls sf_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1921,8 +1921,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1937,26 +1937,26 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
- dx *= inv_width * gdvp->gdv_view->gv_sscale;
- dy *= inv_width * gdvp->gdv_view->gv_sscale;
+ dx *= inv_width * gdvp->gv_sscale;
+ dy *= inv_width * gdvp->gv_sscale;
if (fabs(dx) < fabs(dy))
sf = 1.0 + dy;
@@ -1965,9 +1965,9 @@
bu_vls_printf(&sf_vls, "%lf", sf);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
- struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_edit_motion_delta_callback)) {
struct bu_vls tcl_cmd;
@@ -2014,7 +2014,7 @@
struct bu_vls tran_x_vls = BU_VLS_INIT_ZERO;
struct bu_vls tran_y_vls = BU_VLS_INIT_ZERO;
struct bu_vls tran_z_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -2033,8 +2033,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -2049,27 +2049,27 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
/* ged_otranslate expects things to be in local units */
- dx *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
- dy *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
+ dx *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
+ dy *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
VSET(view, dx, dy, 0.0);
bu_vls_printf(&tran_x_vls, "%lf", model[X]);
@@ -2076,9 +2076,9 @@
bu_vls_printf(&tran_y_vls, "%lf", model[Y]);
bu_vls_printf(&tran_z_vls, "%lf", model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
- struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_edit_motion_delta_callback)) {
const char *path_string = argv[2];
vect_t dvec;
@@ -2088,7 +2088,7 @@
if (!params) {
BU_GET(params, struct path_edit_params);
- params->edit_mode = gdvp->gdv_view->gv_mode;
+ params->edit_mode = gdvp->gv_mode;
params->dx = params->dy = 0.0;
(void)bu_hash_set(current_top->to_gop->go_edited_paths,
(uint8_t *)path_string,
@@ -2098,7 +2098,7 @@
params->dx += dx;
params->dy += dy;
VSET(view, params->dx, params->dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
MAT_IDN(params->edit_mat);
@@ -2136,7 +2136,7 @@
int
go_mouse_poly_circ(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage)
@@ -2171,7 +2171,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
int ret;
/* initialize result */
@@ -2188,8 +2188,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -2215,7 +2215,7 @@
int
to_mouse_poly_circ_func(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int UNUSED(argc),
const char *argv[],
const char *usage)
@@ -2230,9 +2230,9 @@
bview_data_polygon_state *gdpsp;
if (argv[0][0] == 's')
- gdpsp = &gdvp->gdv_view->gv_sdata_polygons;
+ gdpsp = &gdvp->gv_sdata_polygons;
else
- gdpsp = &gdvp->gdv_view->gv_data_polygons;
+ gdpsp = &gdvp->gv_data_polygons;
if (bu_sscanf(argv[1], "%d", &x) != 1 ||
bu_sscanf(argv[2], "%d", &y) != 1) {
@@ -2240,11 +2240,11 @@
return GED_ERROR;
}
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- fx = screen_to_view_x(gdvp->gdv_dmp, x);
- fy = screen_to_view_y(gdvp->gdv_dmp, y);
+ fx = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ fy = screen_to_view_y((struct dm *)gdvp->dmp, y);
int snapped = 0;
if (gedp->ged_gvp->gv_snap_lines) {
@@ -2262,7 +2262,7 @@
fastf_t curr_fx, curr_fy;
register int nsegs, n;
- VSET(v_pt, fx, fy, gdvp->gdv_view->gv_data_vZ);
+ VSET(v_pt, fx, fy, gdvp->gv_data_vZ);
VSUB2(vdiff, v_pt, gdpsp->gdps_prev_point);
r = MAGNITUDE(vdiff);
@@ -2274,7 +2274,7 @@
* circumference / 4 = PI * diameter / 4
*
*/
- nsegs = M_PI_2 * r * gdvp->gdv_view->gv_scale;
+ nsegs = M_PI_2 * r * gdvp->gv_scale;
if (nsegs < 32)
nsegs = 32;
@@ -2285,8 +2285,8 @@
curr_fx = cos(ang*DEG2RAD) * r + gdpsp->gdps_prev_point[X];
curr_fy = sin(ang*DEG2RAD) * r + gdpsp->gdps_prev_point[Y];
- VSET(v_pt, curr_fx, curr_fy, gdvp->gdv_view->gv_data_vZ);
- MAT4X3PNT(m_pt, gdvp->gdv_view->gv_view2model, v_pt);
+ VSET(v_pt, curr_fx, curr_fy, gdvp->gv_data_vZ);
+ MAT4X3PNT(m_pt, gdvp->gv_view2model, v_pt);
bu_vls_printf(&plist, " {%lf %lf %lf}", V3ARGS(m_pt));
}
}
@@ -2294,7 +2294,7 @@
bu_vls_printf(&plist, " }");
bu_vls_printf(&i_vls, "%zu", gdpsp->gdps_curr_polygon_i);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 4;
av[0] = "data_polygons";
av[1] = "replace_poly";
@@ -2313,7 +2313,7 @@
int
go_mouse_poly_cont(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage)
@@ -2348,7 +2348,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
int ret;
/* initialize result */
@@ -2365,8 +2365,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -2392,7 +2392,7 @@
int
to_mouse_poly_cont_func(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int UNUSED(argc),
const char *argv[],
const char *usage)
@@ -2405,9 +2405,9 @@
bview_data_polygon_state *gdpsp;
if (argv[0][0] == 's')
- gdpsp = &gdvp->gdv_view->gv_sdata_polygons;
+ gdpsp = &gdvp->gv_sdata_polygons;
else
- gdpsp = &gdvp->gdv_view->gv_data_polygons;
+ gdpsp = &gdvp->gv_data_polygons;
if (bu_sscanf(argv[1], "%d", &x) != 1 ||
bu_sscanf(argv[2], "%d", &y) != 1) {
@@ -2415,15 +2415,15 @@
return GED_ERROR;
}
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- fx = screen_to_view_x(gdvp->gdv_dmp, x);
- fy = screen_to_view_y(gdvp->gdv_dmp, y);
- VSET(v_pt, fx, fy, gdvp->gdv_view->gv_data_vZ);
+ fx = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ fy = screen_to_view_y((struct dm *)gdvp->dmp, y);
+ VSET(v_pt, fx, fy, gdvp->gv_data_vZ);
- MAT4X3PNT(m_pt, gdvp->gdv_view->gv_view2model, v_pt);
- gedp->ged_gvp = gdvp->gdv_view;
+ MAT4X3PNT(m_pt, gdvp->gv_view2model, v_pt);
+ gedp->ged_gvp = gdvp;
{
struct bu_vls i_vls = BU_VLS_INIT_ZERO;
@@ -2456,7 +2456,7 @@
int
go_mouse_poly_ell(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage)
@@ -2491,7 +2491,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
int ret;
/* initialize result */
@@ -2508,8 +2508,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -2535,7 +2535,7 @@
int
to_mouse_poly_ell_func(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int UNUSED(argc),
const char *argv[],
const char *usage)
@@ -2550,9 +2550,9 @@
bview_data_polygon_state *gdpsp;
if (argv[0][0] == 's')
- gdpsp = &gdvp->gdv_view->gv_sdata_polygons;
+ gdpsp = &gdvp->gv_sdata_polygons;
else
- gdpsp = &gdvp->gdv_view->gv_data_polygons;
+ gdpsp = &gdvp->gv_data_polygons;
if (bu_sscanf(argv[1], "%d", &x) != 1 ||
bu_sscanf(argv[2], "%d", &y) != 1) {
@@ -2560,11 +2560,11 @@
return GED_ERROR;
}
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- fx = screen_to_view_x(gdvp->gdv_dmp, x);
- fy = screen_to_view_y(gdvp->gdv_dmp, y);
+ fx = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ fy = screen_to_view_y((struct dm *)gdvp->dmp, y);
int snapped = 0;
if (gedp->ged_gvp->gv_snap_lines) {
snapped = ged_snap_to_lines(gedp, &fx, &fy);
@@ -2592,8 +2592,8 @@
* note that sin(alpha) is cos(90-alpha).
*/
- VSET(A, a, 0, gdvp->gdv_view->gv_data_vZ);
- VSET(B, 0, b, gdvp->gdv_view->gv_data_vZ);
+ VSET(A, a, 0, gdvp->gv_data_vZ);
+ VSET(B, 0, b, gdvp->gv_data_vZ);
/* use a variable number of segments based on the size of the
* circle being created so small circles have few segments and
@@ -2603,7 +2603,7 @@
* circumference / 4 = PI * diameter / 4
*
*/
- nsegs = M_PI_2 * FMAX(a, b) * gdvp->gdv_view->gv_scale;
+ nsegs = M_PI_2 * FMAX(a, b) * gdvp->gv_scale;
if (nsegs < 32)
nsegs = 32;
@@ -2614,7 +2614,7 @@
fastf_t sina = sin(n * arc * DEG2RAD);
VJOIN2(ellout, gdpsp->gdps_prev_point, cosa, A, sina, B);
- MAT4X3PNT(m_pt, gdvp->gdv_view->gv_view2model, ellout);
+ MAT4X3PNT(m_pt, gdvp->gv_view2model, ellout);
bu_vls_printf(&plist, " {%lf %lf %lf}", V3ARGS(m_pt));
}
}
@@ -2622,7 +2622,7 @@
bu_vls_printf(&plist, " }");
bu_vls_printf(&i_vls, "%zu", gdpsp->gdps_curr_polygon_i);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 4;
av[0] = "data_polygons";
av[1] = "replace_poly";
@@ -2641,7 +2641,7 @@
int
go_mouse_poly_rect(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage)
@@ -2676,7 +2676,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
int ret;
/* initialize result */
@@ -2693,8 +2693,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -2720,7 +2720,7 @@
int
to_mouse_poly_rect_func(Tcl_Interp *interp,
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int UNUSED(argc),
const char *argv[],
const char *usage)
@@ -2735,9 +2735,9 @@
bview_data_polygon_state *gdpsp;
if (argv[0][0] == 's')
- gdpsp = &gdvp->gdv_view->gv_sdata_polygons;
+ gdpsp = &gdvp->gv_sdata_polygons;
else
- gdpsp = &gdvp->gdv_view->gv_data_polygons;
+ gdpsp = &gdvp->gv_data_polygons;
if (bu_sscanf(argv[1], "%d", &x) != 1 ||
bu_sscanf(argv[2], "%d", &y) != 1) {
@@ -2745,11 +2745,11 @@
return GED_ERROR;
}
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- fx = screen_to_view_x(gdvp->gdv_dmp, x);
- fy = screen_to_view_y(gdvp->gdv_dmp, y);
+ fx = screen_to_view_x((struct dm *)gdvp->dmp, x);
+ fy = screen_to_view_y((struct dm *)gdvp->dmp, y);
int snapped = 0;
if (gedp->ged_gvp->gv_snap_lines) {
snapped = ged_snap_to_lines(gedp, &fx, &fy);
@@ -2759,7 +2759,7 @@
}
- if (gdvp->gdv_view->gv_mode == TCLCAD_POLY_SQUARE_MODE) {
+ if (gdvp->gv_mode == TCLCAD_POLY_SQUARE_MODE) {
fastf_t dx, dy;
dx = fx - gdpsp->gdps_prev_point[X];
@@ -2778,23 +2778,23 @@
}
}
- MAT4X3PNT(m_pt, gdvp->gdv_view->gv_view2model, gdpsp->gdps_prev_point);
+ MAT4X3PNT(m_pt, gdvp->gv_view2model, gdpsp->gdps_prev_point);
bu_vls_printf(&plist, "{0 {%lf %lf %lf} ", V3ARGS(m_pt));
- VSET(v_pt, gdpsp->gdps_prev_point[X], fy, gdvp->gdv_view->gv_data_vZ);
- MAT4X3PNT(m_pt, gdvp->gdv_view->gv_view2model, v_pt);
+ VSET(v_pt, gdpsp->gdps_prev_point[X], fy, gdvp->gv_data_vZ);
+ MAT4X3PNT(m_pt, gdvp->gv_view2model, v_pt);
bu_vls_printf(&plist, "{%lf %lf %lf} ", V3ARGS(m_pt));
- VSET(v_pt, fx, fy, gdvp->gdv_view->gv_data_vZ);
- MAT4X3PNT(m_pt, gdvp->gdv_view->gv_view2model, v_pt);
+ VSET(v_pt, fx, fy, gdvp->gv_data_vZ);
+ MAT4X3PNT(m_pt, gdvp->gv_view2model, v_pt);
bu_vls_printf(&plist, "{%lf %lf %lf} ", V3ARGS(m_pt));
- VSET(v_pt, fx, gdpsp->gdps_prev_point[Y], gdvp->gdv_view->gv_data_vZ);
- MAT4X3PNT(m_pt, gdvp->gdv_view->gv_view2model, v_pt);
+ VSET(v_pt, fx, gdpsp->gdps_prev_point[Y], gdvp->gv_data_vZ);
+ MAT4X3PNT(m_pt, gdvp->gv_view2model, v_pt);
bu_vls_printf(&plist, "{%lf %lf %lf} }", V3ARGS(m_pt));
bu_vls_printf(&i_vls, "%zu", gdpsp->gdps_curr_polygon_i);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 4;
av[0] = "data_polygons";
av[1] = "replace_poly";
@@ -2837,7 +2837,7 @@
int dx, dy;
struct bu_vls dx_vls = BU_VLS_INIT_ZERO;
struct bu_vls dy_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* initialize result */
bu_vls_trunc(gedp->ged_result_str, 0);
@@ -2853,8 +2853,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -2869,12 +2869,12 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = dm_get_height(gdvp->gdv_dmp) - y - gdvp->gdv_view->gv_prevMouseY;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = dm_get_height((struct dm *)gdvp->dmp) - y - gdvp->gv_prevMouseY;
bu_vls_printf(&dx_vls, "%d", dx);
bu_vls_printf(&dy_vls, "%d", dy);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 4;
av[0] = "rect";
av[1] = "dim";
@@ -2906,7 +2906,7 @@
char *av[4];
fastf_t dx, dy;
struct bu_vls rot_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -2925,8 +2925,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -2941,28 +2941,28 @@
return GED_ERROR;
}
- dx = gdvp->gdv_view->gv_prevMouseY - y;
- dy = gdvp->gdv_view->gv_prevMouseX - x;
+ dx = gdvp->gv_prevMouseY - y;
+ dy = gdvp->gv_prevMouseX - x;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- dx *= gdvp->gdv_view->gv_rscale;
- dy *= gdvp->gdv_view->gv_rscale;
+ dx *= gdvp->gv_rscale;
+ dy *= gdvp->gv_rscale;
bu_vls_printf(&rot_vls, "%lf %lf 0", dx, dy);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 3;
av[0] = "rot";
av[1] = "-v";
@@ -2973,7 +2973,7 @@
bu_vls_free(&rot_vls);
if (ret == GED_OK) {
- struct tclcad_view_data *tvd = (struct tclcad_view_data
*)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_callback)) {
Tcl_Eval(current_top->to_interp, bu_vls_addr(&tvd->gdv_callback));
}
@@ -3000,7 +3000,7 @@
point_t view;
mat_t inv_rot;
struct bu_vls pt_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -3019,8 +3019,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -3035,32 +3035,32 @@
return GED_ERROR;
}
- dx = y - gdvp->gdv_view->gv_prevMouseY;
- dy = x - gdvp->gdv_view->gv_prevMouseX;
+ dx = y - gdvp->gv_prevMouseY;
+ dy = x - gdvp->gv_prevMouseX;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- dx *= gdvp->gdv_view->gv_rscale;
- dy *= gdvp->gdv_view->gv_rscale;
+ dx *= gdvp->gv_rscale;
+ dy *= gdvp->gv_rscale;
VSET(view, dx, dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
bu_vls_printf(&pt_vls, "%lf %lf %lf", model[X], model[Y], model[Z]);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "rotate_arb_face";
av[1] = (char *)argv[2];
av[2] = (char *)argv[3];
@@ -3105,8 +3105,8 @@
return GED_ERROR; \
} \
\
- for (BU_LIST_FOR((_gdvp), ged_dm_view,
¤t_top->to_gop->go_head_views.l)) { \
- if (BU_STR_EQUAL(bu_vls_addr(&(_gdvp)->gdv_view->gv_name),
(_argv)[1])) \
+ for (BU_LIST_FOR((_gdvp), bview,
¤t_top->to_gop->go_head_views.l)) { \
+ if (BU_STR_EQUAL(bu_vls_addr(&(_gdvp)->gv_name), (_argv)[1])) \
break; \
} \
\
@@ -3121,26 +3121,26 @@
return GED_ERROR; \
} \
\
- _dx = _x - (_gdvp)->gdv_view->gv_prevMouseX; \
- _dy = (_gdvp)->gdv_view->gv_prevMouseY - _y; \
+ _dx = _x - (_gdvp)->gv_prevMouseX; \
+ _dy = (_gdvp)->gv_prevMouseY - _y; \
\
- (_gdvp)->gdv_view->gv_prevMouseX = _x; \
- (_gdvp)->gdv_view->gv_prevMouseY = _y; \
+ (_gdvp)->gv_prevMouseX = _x; \
+ (_gdvp)->gv_prevMouseY = _y; \
\
- if (_dx < (_gdvp)->gdv_view->gv_minMouseDelta) \
- _dx = (_gdvp)->gdv_view->gv_minMouseDelta; \
- else if ((_gdvp)->gdv_view->gv_maxMouseDelta < _dx) \
- _dx = (_gdvp)->gdv_view->gv_maxMouseDelta; \
+ if (_dx < (_gdvp)->gv_minMouseDelta) \
+ _dx = (_gdvp)->gv_minMouseDelta; \
+ else if ((_gdvp)->gv_maxMouseDelta < _dx) \
+ _dx = (_gdvp)->gv_maxMouseDelta; \
\
- if (_dy < (_gdvp)->gdv_view->gv_minMouseDelta) \
- _dy = (_gdvp)->gdv_view->gv_minMouseDelta; \
- else if ((_gdvp)->gdv_view->gv_maxMouseDelta < _dy) \
- _dy = (_gdvp)->gdv_view->gv_maxMouseDelta; \
+ if (_dy < (_gdvp)->gv_minMouseDelta) \
+ _dy = (_gdvp)->gv_minMouseDelta; \
+ else if ((_gdvp)->gv_maxMouseDelta < _dy) \
+ _dy = (_gdvp)->gv_maxMouseDelta; \
\
- _width = dm_get_width((_gdvp)->gdv_dmp); \
+ _width = dm_get_width((struct dm *)(_gdvp)->dmp); \
_inv_width = 1.0 / (fastf_t)_width; \
- _dx *= _inv_width * (_gdvp)->gdv_view->gv_sscale; \
- _dy *= _inv_width * (_gdvp)->gdv_view->gv_sscale; \
+ _dx *= _inv_width * (_gdvp)->gv_sscale; \
+ _dy *= _inv_width * (_gdvp)->gv_sscale; \
\
if (fabs(_dx) > fabs(_dy)) \
_sf = 1.0 + _dx; \
@@ -3162,7 +3162,7 @@
int UNUSED(maxargs))
{
register int i;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
fastf_t sf;
/* initialize result */
@@ -3180,8 +3180,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -3197,7 +3197,7 @@
/* scale data arrows */
{
- struct bview_data_arrow_state *gdasp = &gdvp->gdv_view->gv_data_arrows;
+ struct bview_data_arrow_state *gdasp = &gdvp->gv_data_arrows;
point_t vcenter = {0, 0, 0};
/* Scale the length of each arrow */
@@ -3216,7 +3216,7 @@
/* scale data labels */
{
- struct bview_data_label_state *gdlsp = &gdvp->gdv_view->gv_data_labels;
+ struct bview_data_label_state *gdlsp = &gdvp->gv_data_labels;
point_t vcenter = {0, 0, 0};
point_t vpoint;
@@ -3249,10 +3249,10 @@
int ret;
char *av[4];
struct bu_vls scale_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
TO_COMMON_MOUSE_SCALE(gdvp, scale_vls, argc, argv, usage);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "to_data_scale";
av[1] = (char *)argv[1];
@@ -3278,10 +3278,10 @@
int ret;
char *av[3];
struct bu_vls zoom_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
TO_COMMON_MOUSE_SCALE(gdvp, zoom_vls, argc, argv, usage);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "zoom";
av[1] = bu_vls_addr(&zoom_vls);
@@ -3290,7 +3290,7 @@
bu_vls_free(&zoom_vls);
if (ret == GED_OK) {
- struct tclcad_view_data *tvd = (struct tclcad_view_data
*)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_callback)) {
Tcl_Eval(current_top->to_interp, bu_vls_addr(&tvd->gdv_callback));
}
@@ -3317,7 +3317,7 @@
point_t view;
mat_t inv_rot;
struct bu_vls mrot_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -3336,8 +3336,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -3352,32 +3352,32 @@
return GED_ERROR;
}
- dx = y - gdvp->gdv_view->gv_prevMouseY;
- dy = x - gdvp->gdv_view->gv_prevMouseX;
+ dx = y - gdvp->gv_prevMouseY;
+ dy = x - gdvp->gv_prevMouseX;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- dx *= gdvp->gdv_view->gv_rscale;
- dy *= gdvp->gdv_view->gv_rscale;
+ dx *= gdvp->gv_rscale;
+ dy *= gdvp->gv_rscale;
VSET(view, dx, dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
bu_vls_printf(&mrot_vls, "%lf %lf %lf", V3ARGS(model));
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "protate";
av[1] = (char *)argv[2];
av[2] = (char *)argv[3];
@@ -3412,7 +3412,7 @@
fastf_t sf;
fastf_t inv_width;
struct bu_vls sf_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -3431,8 +3431,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -3447,26 +3447,26 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
- dx *= inv_width * gdvp->gdv_view->gv_sscale;
- dy *= inv_width * gdvp->gdv_view->gv_sscale;
+ dx *= inv_width * gdvp->gv_sscale;
+ dy *= inv_width * gdvp->gv_sscale;
if (fabs(dx) < fabs(dy))
sf = 1.0 + dy;
@@ -3475,7 +3475,7 @@
bu_vls_printf(&sf_vls, "%lf", sf);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "pscale";
av[1] = "-r";
av[2] = (char *)argv[2];
@@ -3513,7 +3513,7 @@
fastf_t inv_width;
mat_t inv_rot;
struct bu_vls tvec_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -3532,8 +3532,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -3548,34 +3548,34 @@
return GED_ERROR;
}
- dx = x - gdvp->gdv_view->gv_prevMouseX;
- dy = gdvp->gdv_view->gv_prevMouseY - y;
+ dx = x - gdvp->gv_prevMouseX;
+ dy = gdvp->gv_prevMouseY - y;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
/* ged_ptranslate expects things to be in local units */
- dx *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
- dy *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_base2local;
+ dx *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
+ dy *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_base2local;
VSET(view, dx, dy, 0.0);
- bn_mat_inv(inv_rot, gdvp->gdv_view->gv_rotation);
+ bn_mat_inv(inv_rot, gdvp->gv_rotation);
MAT4X3PNT(model, inv_rot, view);
bu_vls_printf(&tvec_vls, "%lf %lf %lf", V3ARGS(model));
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
av[0] = "ptranslate";
av[1] = "-r";
av[2] = (char *)argv[2];
@@ -3611,7 +3611,7 @@
fastf_t dx, dy;
fastf_t inv_width;
struct bu_vls trans_vls = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -3630,8 +3630,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -3646,30 +3646,30 @@
return GED_ERROR;
}
- dx = gdvp->gdv_view->gv_prevMouseX - x;
- dy = y - gdvp->gdv_view->gv_prevMouseY;
+ dx = gdvp->gv_prevMouseX - x;
+ dy = y - gdvp->gv_prevMouseY;
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
- if (dx < gdvp->gdv_view->gv_minMouseDelta)
- dx = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dx)
- dx = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dx < gdvp->gv_minMouseDelta)
+ dx = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dx)
+ dx = gdvp->gv_maxMouseDelta;
- if (dy < gdvp->gdv_view->gv_minMouseDelta)
- dy = gdvp->gdv_view->gv_minMouseDelta;
- else if (gdvp->gdv_view->gv_maxMouseDelta < dy)
- dy = gdvp->gdv_view->gv_maxMouseDelta;
+ if (dy < gdvp->gv_minMouseDelta)
+ dy = gdvp->gv_minMouseDelta;
+ else if (gdvp->gv_maxMouseDelta < dy)
+ dy = gdvp->gv_maxMouseDelta;
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
inv_width = 1.0 / (fastf_t)width;
- dx *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_local2base;
- dy *= inv_width * gdvp->gdv_view->gv_size *
gedp->ged_wdbp->dbip->dbi_local2base;
+ dx *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_local2base;
+ dy *= inv_width * gdvp->gv_size * gedp->ged_wdbp->dbip->dbi_local2base;
bu_vls_printf(&trans_vls, "%lf %lf 0", dx, dy);
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
ac = 3;
av[0] = "tra";
av[1] = "-v";
@@ -3680,7 +3680,7 @@
bu_vls_free(&trans_vls);
if (ret == GED_OK) {
- struct tclcad_view_data *tvd = (struct tclcad_view_data
*)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (0 < bu_vls_strlen(&tvd->gdv_callback)) {
Tcl_Eval(current_top->to_interp, bu_vls_addr(&tvd->gdv_callback));
}
Modified: brlcad/branches/bioh/src/libtclcad/tclcad_obj.c
===================================================================
--- brlcad/branches/bioh/src/libtclcad/tclcad_obj.c 2020-07-29 19:47:21 UTC
(rev 76582)
+++ brlcad/branches/bioh/src/libtclcad/tclcad_obj.c 2020-07-29 20:21:22 UTC
(rev 76583)
@@ -138,7 +138,7 @@
const char *usage,
int maxargs);
HIDDEN int to_data_move_func(struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
@@ -149,7 +149,7 @@
const char *usage,
int maxargs);
HIDDEN int to_data_move_object_mode_func(struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
@@ -160,7 +160,7 @@
const char *usage,
int maxargs);
HIDDEN int to_data_move_point_mode_func(struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
@@ -172,7 +172,7 @@
int maxargs);
HIDDEN int
to_data_pick_func(struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage);
@@ -1093,7 +1093,7 @@
to_deleteProc(ClientData clientData)
{
struct tclcad_obj *top = (struct tclcad_obj *)clientData;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
if (current_top == top)
current_top = TCLCAD_OBJ_NULL;
@@ -1107,11 +1107,11 @@
free_path_edit_params(top->to_gop->go_edited_paths);
bu_hash_destroy(top->to_gop->go_edited_paths);
- while (BU_LIST_WHILE(gdvp, ged_dm_view, &top->to_gop->go_head_views.l)) {
+ while (BU_LIST_WHILE(gdvp, bview, &top->to_gop->go_head_views.l)) {
/* This removes the view related command and results in a call
* to to_deleteViewProc to release resources.
*/
- Tcl_DeleteCommand(top->to_interp,
bu_vls_addr(dm_get_pathname(gdvp->gdv_dmp)));
+ Tcl_DeleteCommand(top->to_interp, bu_vls_addr(dm_get_pathname((struct
dm *)gdvp->dmp)));
}
bu_free((void *)top, "struct ged_obj");
@@ -1334,7 +1334,7 @@
int UNUSED(maxargs))
{
int r, g, b;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* initialize result */
bu_vls_trunc(gedp->ged_result_str, 0);
@@ -1350,8 +1350,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1362,7 +1362,7 @@
/* get background color */
if (argc == 2) {
- unsigned char *dm_bg = dm_get_bg(gdvp->gdv_dmp);
+ unsigned char *dm_bg = dm_get_bg((struct dm *)gdvp->dmp);
if (dm_bg) {
bu_vls_printf(gedp->ged_result_str, "%d %d %d",
dm_bg[0],
@@ -1384,8 +1384,8 @@
b < 0 || 255 < b)
goto bad_color;
- (void)dm_make_current(gdvp->gdv_dmp);
- (void)dm_set_bg(gdvp->gdv_dmp, (unsigned char)r, (unsigned char)g,
(unsigned char)b);
+ (void)dm_make_current((struct dm *)gdvp->dmp);
+ (void)dm_set_bg((struct dm *)gdvp->dmp, (unsigned char)r, (unsigned
char)g, (unsigned char)b);
to_refresh_view(gdvp);
@@ -1405,7 +1405,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
fastf_t bounds[6];
/* must be double for scanf */
@@ -1425,8 +1425,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1437,8 +1437,8 @@
/* get window bounds */
if (argc == 2) {
- vect_t *cmin = dm_get_clipmin(gdvp->gdv_dmp);
- vect_t *cmax = dm_get_clipmax(gdvp->gdv_dmp);
+ vect_t *cmin = dm_get_clipmin((struct dm *)gdvp->dmp);
+ vect_t *cmax = dm_get_clipmax((struct dm *)gdvp->dmp);
if (cmin && cmax) {
bu_vls_printf(gedp->ged_result_str, "%g %g %g %g %g %g",
(*cmin)[X], (*cmax)[X], (*cmin)[Y], (*cmax)[Y],
(*cmin)[Z], (*cmax)[Z]);
@@ -1463,13 +1463,13 @@
* use it for controlling the location of the zclipping plane in
* dm-ogl.c. dm-X.c uses dm_clipmin and dm_clipmax.
*/
- if (dm_get_clipmax(gdvp->gdv_dmp) && (*dm_get_clipmax(gdvp->gdv_dmp))[2]
<= GED_MAX)
- dm_set_bound(gdvp->gdv_dmp, 1.0);
+ if (dm_get_clipmax((struct dm *)gdvp->dmp) && (*dm_get_clipmax((struct dm
*)gdvp->dmp))[2] <= GED_MAX)
+ dm_set_bound((struct dm *)gdvp->dmp, 1.0);
else
- dm_set_bound(gdvp->gdv_dmp,
GED_MAX/((*dm_get_clipmax(gdvp->gdv_dmp))[2]));
+ dm_set_bound((struct dm *)gdvp->dmp, GED_MAX/((*dm_get_clipmax((struct
dm *)gdvp->dmp))[2]));
- (void)dm_make_current(gdvp->gdv_dmp);
- (void)dm_set_win_bounds(gdvp->gdv_dmp, bounds);
+ (void)dm_make_current((struct dm *)gdvp->dmp);
+ (void)dm_set_win_bounds((struct dm *)gdvp->dmp, bounds);
return GED_OK;
}
@@ -1483,7 +1483,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
int status;
/* initialize result */
@@ -1494,8 +1494,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1505,12 +1505,12 @@
}
/* configure the display manager window */
- status = dm_configure_win(gdvp->gdv_dmp, 0);
+ status = dm_configure_win((struct dm *)gdvp->dmp, 0);
/* configure the framebuffer window */
- struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->gdv_data;
+ struct tclcad_view_data *tvd = (struct tclcad_view_data *)gdvp->u_data;
if (tvd->gdv_fbs.fbs_fbp != FB_NULL)
- (void)fb_configure_window(tvd->gdv_fbs.fbs_fbp,
dm_get_width(gdvp->gdv_dmp), dm_get_height(gdvp->gdv_dmp));
+ (void)fb_configure_window(tvd->gdv_fbs.fbs_fbp, dm_get_width((struct dm
*)gdvp->dmp), dm_get_height((struct dm *)gdvp->dmp));
{
char cdimX[32];
@@ -1517,8 +1517,8 @@
char cdimY[32];
char *av[5];
- snprintf(cdimX, 32, "%d", dm_get_width(gdvp->gdv_dmp));
- snprintf(cdimY, 32, "%d", dm_get_height(gdvp->gdv_dmp));
+ snprintf(cdimX, 32, "%d", dm_get_width((struct dm *)gdvp->dmp));
+ snprintf(cdimY, 32, "%d", dm_get_height((struct dm *)gdvp->dmp));
av[0] = "rect";
av[1] = "cdim";
@@ -1526,7 +1526,7 @@
av[3] = cdimY;
av[4] = NULL;
- gedp->ged_gvp = gdvp->gdv_view;
+ gedp->ged_gvp = gdvp;
(void)ged_rect(gedp, 4, (const char **)av);
}
@@ -1548,7 +1548,7 @@
int UNUSED(maxargs))
{
struct bu_vls bindings = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1567,8 +1567,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1590,15 +1590,15 @@
return GED_ERROR;
}
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
- gdvp->gdv_view->gv_mode = TCLCAD_CONSTRAINED_ROTATE_MODE;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
+ gdvp->gv_mode = TCLCAD_CONSTRAINED_ROTATE_MODE;
- if (dm_get_pathname(gdvp->gdv_dmp)) {
+ if (dm_get_pathname((struct dm *)gdvp->dmp)) {
bu_vls_printf(&bindings, "bind %s <Motion> {%s mouse_constrain_rot %s
%s %%x %%y}; break",
- bu_vls_addr(dm_get_pathname(gdvp->gdv_dmp)),
+ bu_vls_addr(dm_get_pathname((struct dm *)gdvp->dmp)),
bu_vls_addr(¤t_top->to_gop->go_name),
- bu_vls_addr(&gdvp->gdv_view->gv_name),
+ bu_vls_addr(&gdvp->gv_name),
argv[2]);
Tcl_Eval(current_top->to_interp, bu_vls_addr(&bindings));
}
@@ -1617,7 +1617,7 @@
int UNUSED(maxargs))
{
struct bu_vls bindings = BU_VLS_INIT_ZERO;
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* must be double for scanf */
double x, y;
@@ -1636,8 +1636,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1659,15 +1659,15 @@
return GED_ERROR;
}
- gdvp->gdv_view->gv_prevMouseX = x;
- gdvp->gdv_view->gv_prevMouseY = y;
- gdvp->gdv_view->gv_mode = TCLCAD_CONSTRAINED_TRANSLATE_MODE;
+ gdvp->gv_prevMouseX = x;
+ gdvp->gv_prevMouseY = y;
+ gdvp->gv_mode = TCLCAD_CONSTRAINED_TRANSLATE_MODE;
- if (dm_get_pathname(gdvp->gdv_dmp)) {
+ if (dm_get_pathname((struct dm *)gdvp->dmp)) {
bu_vls_printf(&bindings, "bind %s <Motion> {%s mouse_constrain_trans %s
%s %%x %%y}; break",
- bu_vls_addr(dm_get_pathname(gdvp->gdv_dmp)),
+ bu_vls_addr(dm_get_pathname((struct dm *)gdvp->dmp)),
bu_vls_addr(¤t_top->to_gop->go_name),
- bu_vls_addr(&gdvp->gdv_view->gv_name),
+ bu_vls_addr(&gdvp->gv_name),
argv[2]);
Tcl_Eval(current_top->to_interp, bu_vls_addr(&bindings));
}
@@ -1806,7 +1806,7 @@
int
go_data_move(Tcl_Interp *UNUSED(interp),
struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage)
@@ -1844,7 +1844,7 @@
const char *usage,
int UNUSED(maxargs))
{
- struct ged_dm_view *gdvp;
+ struct bview *gdvp;
/* initialize result */
bu_vls_trunc(gedp->ged_result_str, 0);
@@ -1860,8 +1860,8 @@
return GED_ERROR;
}
- for (BU_LIST_FOR(gdvp, ged_dm_view,
¤t_top->to_gop->go_head_views.l)) {
- if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gdv_view->gv_name), argv[1]))
+ for (BU_LIST_FOR(gdvp, bview, ¤t_top->to_gop->go_head_views.l)) {
+ if (BU_STR_EQUAL(bu_vls_addr(&gdvp->gv_name), argv[1]))
break;
}
@@ -1878,7 +1878,7 @@
HIDDEN int
to_data_move_func(struct ged *gedp,
- struct ged_dm_view *gdvp,
+ struct bview *gdvp,
int argc,
const char *argv[],
const char *usage)
@@ -1905,9 +1905,9 @@
goto bad;
}
- width = dm_get_width(gdvp->gdv_dmp);
+ width = dm_get_width((struct dm *)gdvp->dmp);
cx = 0.5 * (fastf_t)width;
- height = dm_get_height(gdvp->gdv_dmp);
+ height = dm_get_height((struct dm *)gdvp->dmp);
cy = 0.5 * (fastf_t)height;
sf = 2.0 / width;
vx = (mx - cx) * sf;
@@ -1915,7 +1915,7 @@
if (BU_STR_EQUAL(argv[1], "data_polygons")) {
size_t i, j, k;
- bview_data_polygon_state *gdpsp = &gdvp->gdv_view->gv_data_polygons;
+ bview_data_polygon_state *gdpsp = &gdvp->gv_data_polygons;
if (bu_sscanf(argv[2], "%zu %zu %zu", &i, &j, &k) != 3)
goto bad;
@@ -1927,16 +1927,16 @@
return GED_OK;
/* This section is for moving more than a single point on a contour */
- if (gdvp->gdv_view->gv_mode == TCLCAD_DATA_MOVE_OBJECT_MODE) {
+ if (gdvp->gv_mode == TCLCAD_DATA_MOVE_OBJECT_MODE) {
point_t old_mpoint, new_mpoint;
vect_t diff;
VMOVE(old_mpoint,
gdpsp->gdps_polygons.polygon[i].contour[j].point[k]);
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdpsp->gdps_polygons.polygon[i].contour[j].point[k]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view,
gdpsp->gdps_polygons.polygon[i].contour[j].point[k]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(new_mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(new_mpoint, gdvp->gv_view2model, vpoint);
VSUB2(diff, new_mpoint, old_mpoint);
/* Move all polygons and all their respective contours. */
@@ -1961,10 +1961,10 @@
}
} else {
/* This section is for moving a single point on a contour */
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdpsp->gdps_polygons.polygon[i].contour[j].point[k]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view,
gdpsp->gdps_polygons.polygon[i].contour[j].point[k]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(gdpsp->gdps_polygons.polygon[i].contour[j].point[k],
gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(gdpsp->gdps_polygons.polygon[i].contour[j].point[k],
gdvp->gv_view2model, vpoint);
}
to_refresh_view(gdvp);
@@ -1972,14 +1972,14 @@
}
if (BU_STR_EQUAL(argv[1], "data_arrows")) {
- struct bview_data_arrow_state *gdasp = &gdvp->gdv_view->gv_data_arrows;
+ struct bview_data_arrow_state *gdasp = &gdvp->gv_data_arrows;
/* Silently ignore */
- if (dindex >= gdvp->gdv_view->gv_data_arrows.gdas_num_points)
+ if (dindex >= gdvp->gv_data_arrows.gdas_num_points)
return GED_OK;
/* This section is for moving the entire arrow */
- if (gdvp->gdv_view->gv_mode == TCLCAD_DATA_MOVE_OBJECT_MODE) {
+ if (gdvp->gv_mode == TCLCAD_DATA_MOVE_OBJECT_MODE) {
int dindexA, dindexB;
point_t old_mpoint, new_mpoint;
vect_t diff;
@@ -1992,19 +1992,19 @@
VMOVE(old_mpoint, gdasp->gdas_points[dindexA]);
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdasp->gdas_points[dindexA]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdasp->gdas_points[dindexA]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(new_mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(new_mpoint, gdvp->gv_view2model, vpoint);
VSUB2(diff, new_mpoint, old_mpoint);
VMOVE(gdasp->gdas_points[dindexA], new_mpoint);
VADD2(gdasp->gdas_points[dindexB], gdasp->gdas_points[dindexB],
diff);
} else {
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdasp->gdas_points[dindex]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdasp->gdas_points[dindex]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(mpoint, gdvp->gv_view2model, vpoint);
VMOVE(gdasp->gdas_points[dindex], mpoint);
}
@@ -2013,14 +2013,14 @@
}
if (BU_STR_EQUAL(argv[1], "sdata_arrows")) {
- struct bview_data_arrow_state *gdasp = &gdvp->gdv_view->gv_sdata_arrows;
+ struct bview_data_arrow_state *gdasp = &gdvp->gv_sdata_arrows;
/* Silently ignore */
- if (dindex >= gdvp->gdv_view->gv_sdata_arrows.gdas_num_points)
+ if (dindex >= gdvp->gv_sdata_arrows.gdas_num_points)
return GED_OK;
/* This section is for moving the entire arrow */
- if (gdvp->gdv_view->gv_mode == TCLCAD_DATA_MOVE_OBJECT_MODE) {
+ if (gdvp->gv_mode == TCLCAD_DATA_MOVE_OBJECT_MODE) {
int dindexA, dindexB;
point_t old_mpoint, new_mpoint;
vect_t diff;
@@ -2033,19 +2033,19 @@
VMOVE(old_mpoint, gdasp->gdas_points[dindexA]);
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdasp->gdas_points[dindexA]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdasp->gdas_points[dindexA]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(new_mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(new_mpoint, gdvp->gv_view2model, vpoint);
VSUB2(diff, new_mpoint, old_mpoint);
VMOVE(gdasp->gdas_points[dindexA], new_mpoint);
VADD2(gdasp->gdas_points[dindexB], gdasp->gdas_points[dindexB],
diff);
} else {
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdasp->gdas_points[dindex]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdasp->gdas_points[dindex]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(mpoint, gdvp->gv_view2model, vpoint);
VMOVE(gdasp->gdas_points[dindex], mpoint);
}
@@ -2054,16 +2054,16 @@
}
if (BU_STR_EQUAL(argv[1], "data_axes")) {
- struct bview_data_axes_state *gdasp = &gdvp->gdv_view->gv_data_axes;
+ struct bview_data_axes_state *gdasp = &gdvp->gv_data_axes;
/* Silently ignore */
- if (dindex >= gdvp->gdv_view->gv_data_axes.num_points)
+ if (dindex >= gdvp->gv_data_axes.num_points)
return GED_OK;
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view, gdasp->points[dindex]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdasp->points[dindex]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(mpoint, gdvp->gv_view2model, vpoint);
VMOVE(gdasp->points[dindex], mpoint);
to_refresh_view(gdvp);
@@ -2071,16 +2071,16 @@
}
if (BU_STR_EQUAL(argv[1], "sdata_axes")) {
- struct bview_data_axes_state *gdasp = &gdvp->gdv_view->gv_sdata_axes;
+ struct bview_data_axes_state *gdasp = &gdvp->gv_sdata_axes;
/* Silently ignore */
- if (dindex >= gdvp->gdv_view->gv_sdata_axes.num_points)
+ if (dindex >= gdvp->gv_sdata_axes.num_points)
return GED_OK;
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view, gdasp->points[dindex]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdasp->points[dindex]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(mpoint, gdvp->gv_view2model, vpoint);
VMOVE(gdasp->points[dindex], mpoint);
to_refresh_view(gdvp);
@@ -2089,16 +2089,16 @@
if (BU_STR_EQUAL(argv[1], "data_labels")) {
- struct bview_data_label_state *gdlsp = &gdvp->gdv_view->gv_data_labels;
+ struct bview_data_label_state *gdlsp = &gdvp->gv_data_labels;
/* Silently ignore */
- if (dindex >= gdvp->gdv_view->gv_data_labels.gdls_num_labels)
+ if (dindex >= gdvp->gv_data_labels.gdls_num_labels)
return GED_OK;
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdlsp->gdls_points[dindex]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdlsp->gdls_points[dindex]);
vpoint[X] = vx;
vpoint[Y] = vy;
- MAT4X3PNT(mpoint, gdvp->gdv_view->gv_view2model, vpoint);
+ MAT4X3PNT(mpoint, gdvp->gv_view2model, vpoint);
VMOVE(gdlsp->gdls_points[dindex], mpoint);
to_refresh_view(gdvp);
@@ -2106,16 +2106,16 @@
}
if (BU_STR_EQUAL(argv[1], "sdata_labels")) {
- struct bview_data_label_state *gdlsp = &gdvp->gdv_view->gv_sdata_labels;
+ struct bview_data_label_state *gdlsp = &gdvp->gv_sdata_labels;
/* Silently ignore */
- if (dindex >= gdvp->gdv_view->gv_sdata_labels.gdls_num_labels)
+ if (dindex >= gdvp->gv_sdata_labels.gdls_num_labels)
return GED_OK;
- MAT4X3PNT(vpoint, gdvp->gdv_view->gv_model2view,
gdlsp->gdls_points[dindex]);
+ MAT4X3PNT(vpoint, gdvp->gv_model2view, gdlsp->gdls_points[dindex]);
vpoint[X] = vx;
vpoint[Y] = vy;
@@ Diff output truncated at 100000 characters. @@
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits