Revision: 76248
http://sourceforge.net/p/brlcad/code/76248
Author: starseeker
Date: 2020-07-01 16:50:47 +0000 (Wed, 01 Jul 2020)
Log Message:
-----------
Set up to start pushing bview-only functionality down the library stack. This
won't impact functionality, but will make it more immediately clear when
functions are operating on the libtclcad, libged, or bview levels.
Modified Paths:
--------------
brlcad/trunk/include/dm/CMakeLists.txt
brlcad/trunk/include/dm/util.h
brlcad/trunk/src/libdm/CMakeLists.txt
brlcad/trunk/src/libged/autoview.c
brlcad/trunk/src/libged/eye_pos.c
brlcad/trunk/src/libged/ged.c
brlcad/trunk/src/libged/ged_private.h
brlcad/trunk/src/libged/grid.c
brlcad/trunk/src/libged/loadview.c
brlcad/trunk/src/libged/lookat.c
brlcad/trunk/src/libged/mirror.c
brlcad/trunk/src/libged/orient.c
brlcad/trunk/src/libged/perspective.c
brlcad/trunk/src/libged/pmat.c
brlcad/trunk/src/libged/preview.c
brlcad/trunk/src/libged/qvrot.c
brlcad/trunk/src/libged/rect.c
brlcad/trunk/src/libged/rmat.c
brlcad/trunk/src/libged/scale.c
brlcad/trunk/src/libged/setview.c
brlcad/trunk/src/libged/view/aet.c
brlcad/trunk/src/libged/view/center.cpp
brlcad/trunk/src/libged/view/eye.c
brlcad/trunk/src/libged/view/quat.c
brlcad/trunk/src/libged/view/size.c
brlcad/trunk/src/libged/view/snap.c
brlcad/trunk/src/libged/view/ypr.c
brlcad/trunk/src/libged/vutil.c
brlcad/trunk/src/libged/zoom/zoom.c
brlcad/trunk/src/mged/mged.c
Added Paths:
-----------
brlcad/trunk/include/dm/bview_util.h
brlcad/trunk/src/libdm/bview_util.c
Modified: brlcad/trunk/include/dm/CMakeLists.txt
===================================================================
--- brlcad/trunk/include/dm/CMakeLists.txt 2020-06-30 22:45:21 UTC (rev
76247)
+++ brlcad/trunk/include/dm/CMakeLists.txt 2020-07-01 16:50:47 UTC (rev
76248)
@@ -1,5 +1,6 @@
set(dm_headers
bview.h
+ bview_util.h
defines.h
util.h
)
Added: brlcad/trunk/include/dm/bview_util.h
===================================================================
--- brlcad/trunk/include/dm/bview_util.h (rev 0)
+++ brlcad/trunk/include/dm/bview_util.h 2020-07-01 16:50:47 UTC (rev
76248)
@@ -0,0 +1,54 @@
+/* B V I E W _ U T I L . H
+ * BRL-CAD
+ *
+ * Copyright (c) 1993-2020 United States Government as represented by
+ * the U.S. Army Research Laboratory.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License
+ * version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this file; see the file named COPYING for more
+ * information.
+ */
+/** @addtogroup bview
+ *
+ * @brief
+ * Functions related to bview.h
+ *
+ */
+#ifndef DM_BVIEW_UTIL_H
+#define DM_BVIEW_UTIL_H
+
+#include "common.h"
+#include "dm/defines.h"
+#include "dm/bview.h"
+
+/** @{ */
+/** @file bview_util.h */
+
+__BEGIN_DECLS
+
+DM_EXPORT void bview_update(struct bview *gvp);
+
+__END_DECLS
+
+/** @} */
+
+#endif /* DM_BVIEW_UTIL_H */
+
+/*
+ * Local Variables:
+ * mode: C
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * c-file-style: "stroustrup"
+ * End:
+ * ex: shiftwidth=4 tabstop=8
+ */
Property changes on: brlcad/trunk/include/dm/bview_util.h
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: brlcad/trunk/include/dm/util.h
===================================================================
--- brlcad/trunk/include/dm/util.h 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/include/dm/util.h 2020-07-01 16:50:47 UTC (rev 76248)
@@ -27,7 +27,7 @@
#include "vmath.h"
-#include "./dm/defines.h"
+#include "dm/defines.h"
#ifndef DM_UTIL_H
#define DM_UTIL_H
Modified: brlcad/trunk/src/libdm/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/libdm/CMakeLists.txt 2020-06-30 22:45:21 UTC (rev
76247)
+++ brlcad/trunk/src/libdm/CMakeLists.txt 2020-07-01 16:50:47 UTC (rev
76248)
@@ -58,6 +58,7 @@
adc.c
asize.c
axes.c
+ bview_util.c
clip.c
dm-generic.c
dm_init.cpp
Added: brlcad/trunk/src/libdm/bview_util.c
===================================================================
--- brlcad/trunk/src/libdm/bview_util.c (rev 0)
+++ brlcad/trunk/src/libdm/bview_util.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -0,0 +1,85 @@
+/* B V I E W _ U T I L . C
+ * BRL-CAD
+ *
+ * Copyright (c) 2020 United States Government as represented by
+ * the U.S. Army Research Laboratory.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License
+ * version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this file; see the file named COPYING for more
+ * information.
+ */
+/** @file bview_util.c
+ *
+ * Utility functions for operating on BRL-CAD views
+ *
+ */
+
+#include "common.h"
+#include "vmath.h"
+#include "bn/mat.h"
+#include "dm/defines.h"
+#include "dm/bview_util.h"
+
+void
+bview_update(struct bview *gvp)
+{
+ vect_t work, work1;
+ vect_t temp, temp1;
+
+ if (!gvp)
+ return;
+
+ bn_mat_mul(gvp->gv_model2view,
+ gvp->gv_rotation,
+ gvp->gv_center);
+ gvp->gv_model2view[15] = gvp->gv_scale;
+ bn_mat_inv(gvp->gv_view2model, gvp->gv_model2view);
+
+ /* Find current azimuth, elevation, and twist angles */
+ VSET(work, 0.0, 0.0, 1.0); /* view z-direction */
+ MAT4X3VEC(temp, gvp->gv_view2model, work);
+ VSET(work1, 1.0, 0.0, 0.0); /* view x-direction */
+ MAT4X3VEC(temp1, gvp->gv_view2model, work1);
+
+ /* calculate angles using accuracy of 0.005, since display
+ * shows 2 digits right of decimal point */
+ bn_aet_vec(&gvp->gv_aet[0],
+ &gvp->gv_aet[1],
+ &gvp->gv_aet[2],
+ temp, temp1, (fastf_t)0.005);
+
+ /* Force azimuth range to be [0, 360] */
+ if ((NEAR_EQUAL(gvp->gv_aet[1], 90.0, (fastf_t)0.005) ||
+ NEAR_EQUAL(gvp->gv_aet[1], -90.0, (fastf_t)0.005)) &&
+ gvp->gv_aet[0] < 0 &&
+ !NEAR_ZERO(gvp->gv_aet[0], (fastf_t)0.005))
+ gvp->gv_aet[0] += 360.0;
+ else if (NEAR_ZERO(gvp->gv_aet[0], (fastf_t)0.005))
+ gvp->gv_aet[0] = 0.0;
+
+ /* apply the perspective angle to model2view */
+ bn_mat_mul(gvp->gv_pmodel2view, gvp->gv_pmat, gvp->gv_model2view);
+
+ if (gvp->gv_callback)
+ (*gvp->gv_callback)(gvp, gvp->gv_clientData);
+}
+
+
+/*
+ * Local Variables:
+ * tab-width: 8
+ * mode: C
+ * indent-tabs-mode: t
+ * c-file-style: "stroustrup"
+ * End:
+ * ex: shiftwidth=4 tabstop=8
+ */
Property changes on: brlcad/trunk/src/libdm/bview_util.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: brlcad/trunk/src/libged/autoview.c
===================================================================
--- brlcad/trunk/src/libged/autoview.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/autoview.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -105,7 +105,7 @@
gedp->ged_gvp->gv_size = factor * gedp->ged_gvp->gv_scale;
gedp->ged_gvp->gv_isize = 1.0 / gedp->ged_gvp->gv_size;
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/eye_pos.c
===================================================================
--- brlcad/trunk/src/libged/eye_pos.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/eye_pos.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -88,7 +88,7 @@
/* update perspective matrix */
mike_persp_mat(gedp->ged_gvp->gv_pmat, gedp->ged_gvp->gv_eye_pos);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/ged.c
===================================================================
--- brlcad/trunk/src/libged/ged.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/ged.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -380,7 +380,7 @@
gvp->gv_snap_tol_factor = 10;
gvp->gv_snap_lines = 0;
- ged_view_update(gvp);
+ bview_update(gvp);
}
Modified: brlcad/trunk/src/libged/ged_private.h
===================================================================
--- brlcad/trunk/src/libged/ged_private.h 2020-06-30 22:45:21 UTC (rev
76247)
+++ brlcad/trunk/src/libged/ged_private.h 2020-07-01 16:50:47 UTC (rev
76248)
@@ -37,6 +37,7 @@
#include "rt/db4.h"
#include "raytrace.h"
#include "rt/geom.h"
+#include "dm/bview_util.h"
#include "ged.h"
__BEGIN_DECLS
Modified: brlcad/trunk/src/libged/grid.c
===================================================================
--- brlcad/trunk/src/libged/grid.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/grid.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -101,7 +101,7 @@
ged_snap_to_grid(gedp, &view_pt[X], &view_pt[Y]);
MAT4X3PNT(model_pt, gedp->ged_gvp->gv_view2model, view_pt);
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, model_pt);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
}
Modified: brlcad/trunk/src/libged/loadview.c
===================================================================
--- brlcad/trunk/src/libged/loadview.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/loadview.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -398,7 +398,7 @@
*/
MAT_COPY(_ged_current_gedp->ged_gvp->gv_rotation, _ged_viewrot);
MAT_DELTAS_VEC_NEG(_ged_current_gedp->ged_gvp->gv_center, _ged_eye_model);
- ged_view_update(_ged_current_gedp->ged_gvp);
+ bview_update(_ged_current_gedp->ged_gvp);
bu_vls_printf(&eye, "%lf %lf %lf", V3ARGS(_ged_eye_model));
bu_argv_from_string(eye_argv+1, 4, bu_vls_addr(&eye));
Modified: brlcad/trunk/src/libged/lookat.c
===================================================================
--- brlcad/trunk/src/libged/lookat.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/lookat.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -102,7 +102,7 @@
VJOIN1(new_center, eye, -gedp->ged_gvp->gv_scale, dir);
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, new_center);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/mirror.c
===================================================================
--- brlcad/trunk/src/libged/mirror.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/mirror.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -24,6 +24,7 @@
*/
#include "bu/getopt.h"
+#include "dm/bview_util.h"
#include "ged.h"
@@ -209,7 +210,7 @@
e_argv[2] = NULL;
(void)ged_draw(gedp, 2, e_argv);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
}
return GED_OK;
Modified: brlcad/trunk/src/libged/orient.c
===================================================================
--- brlcad/trunk/src/libged/orient.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/orient.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -77,7 +77,7 @@
}
quat_quat2mat(gedp->ged_gvp->gv_rotation, quat);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/perspective.c
===================================================================
--- brlcad/trunk/src/libged/perspective.c 2020-06-30 22:45:21 UTC (rev
76247)
+++ brlcad/trunk/src/libged/perspective.c 2020-07-01 16:50:47 UTC (rev
76248)
@@ -68,7 +68,7 @@
MAT_COPY(gedp->ged_gvp->gv_pmat, bn_mat_identity);
}
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/pmat.c
===================================================================
--- brlcad/trunk/src/libged/pmat.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/pmat.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -54,7 +54,7 @@
return GED_ERROR;
MAT_COPY(gedp->ged_gvp->gv_pmat, pmat);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/preview.c
===================================================================
--- brlcad/trunk/src/libged/preview.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/preview.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -113,7 +113,7 @@
/* First step: put eye at view center (view 0, 0, 0) */
MAT_COPY(_ged_current_gedp->ged_gvp->gv_rotation, _ged_viewrot);
MAT_DELTAS_VEC_NEG(_ged_current_gedp->ged_gvp->gv_center, _ged_eye_model);
- ged_view_update(_ged_current_gedp->ged_gvp);
+ bview_update(_ged_current_gedp->ged_gvp);
/*
* Compute camera orientation notch to right (+X) and up (+Y)
@@ -134,7 +134,7 @@
VSET(xlate, 0.0, 0.0, -1.0); /* correction factor */
MAT4X3PNT(new_cent, _ged_current_gedp->ged_gvp->gv_view2model, xlate);
MAT_DELTAS_VEC_NEG(_ged_current_gedp->ged_gvp->gv_center, new_cent);
- ged_view_update(_ged_current_gedp->ged_gvp);
+ bview_update(_ged_current_gedp->ged_gvp);
/* If new treewalk is needed, get new objects into view. */
if (preview_tree_walk_needed) {
Modified: brlcad/trunk/src/libged/qvrot.c
===================================================================
--- brlcad/trunk/src/libged/qvrot.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/qvrot.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -113,7 +113,7 @@
bn_mat_angles(gedp->ged_gvp->gv_rotation, 270.0 + el * RAD2DEG, 0.0, 270.0
- az * RAD2DEG);
usejoy(gedp, 0.0, 0.0, theta*DEG2RAD);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/rect.c
===================================================================
--- brlcad/trunk/src/libged/rect.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/rect.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -268,7 +268,7 @@
/* set the new model center */
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, new_model_center);
gedp->ged_gvp->gv_scale *= sf;
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/rmat.c
===================================================================
--- brlcad/trunk/src/libged/rmat.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/rmat.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -54,7 +54,7 @@
return GED_ERROR;
MAT_COPY(gedp->ged_gvp->gv_rotation, rotation);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/scale.c
===================================================================
--- brlcad/trunk/src/libged/scale.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/scale.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -115,7 +115,7 @@
gedp->ged_gvp->gv_scale = RT_MINVIEWSIZE;
gedp->ged_gvp->gv_size = 2.0 * gedp->ged_gvp->gv_scale;
gedp->ged_gvp->gv_isize = 1.0 / gedp->ged_gvp->gv_size;
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/setview.c
===================================================================
--- brlcad/trunk/src/libged/setview.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/setview.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -85,7 +85,7 @@
}
bn_mat_angles(gedp->ged_gvp->gv_rotation, rvec[X], rvec[Y], rvec[Z]);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/view/aet.c
===================================================================
--- brlcad/trunk/src/libged/view/aet.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/view/aet.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -76,7 +76,7 @@
VMOVE(gedp->ged_gvp->gv_aet, aet);
}
_ged_mat_aet(gedp->ged_gvp);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
@@ -111,7 +111,7 @@
VMOVE(gedp->ged_gvp->gv_aet, aet);
}
_ged_mat_aet(gedp->ged_gvp);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/view/center.cpp
===================================================================
--- brlcad/trunk/src/libged/view/center.cpp 2020-06-30 22:45:21 UTC (rev
76247)
+++ brlcad/trunk/src/libged/view/center.cpp 2020-07-01 16:50:47 UTC (rev
76248)
@@ -145,7 +145,7 @@
VSCALE(center, center, gedp->ged_wdbp->dbip->dbi_local2base);
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, center);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/view/eye.c
===================================================================
--- brlcad/trunk/src/libged/view/eye.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/view/eye.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -95,7 +95,7 @@
/* First step: put eye at view center (view 0, 0, 0) */
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, eye_model);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
/* Second step: put eye at view 0, 0, 1.
* For eye to be at 0, 0, 1, the old 0, 0, -1 needs to become 0, 0, 0.
@@ -103,7 +103,7 @@
VSET(xlate, 0.0, 0.0, -1.0); /* correction factor */
MAT4X3PNT(new_cent, gedp->ged_gvp->gv_view2model, xlate);
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, new_cent);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/view/quat.c
===================================================================
--- brlcad/trunk/src/libged/view/quat.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/view/quat.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -71,7 +71,7 @@
HMOVE(quat, scan);
quat_quat2mat(gedp->ged_gvp->gv_rotation, quat);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/view/size.c
===================================================================
--- brlcad/trunk/src/libged/view/size.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/view/size.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -68,7 +68,7 @@
gedp->ged_gvp->gv_size = RT_MINVIEWSIZE;
gedp->ged_gvp->gv_isize = 1.0 / gedp->ged_gvp->gv_size;
gedp->ged_gvp->gv_scale = 0.5 * gedp->ged_gvp->gv_size;
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/view/snap.c
===================================================================
--- brlcad/trunk/src/libged/view/snap.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/view/snap.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -270,7 +270,7 @@
ged_snap_to_lines(gedp, &view_pt[X], &view_pt[Y]);
MAT4X3PNT(model_pt, gedp->ged_gvp->gv_view2model, view_pt);
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, model_pt);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
}
int
Modified: brlcad/trunk/src/libged/view/ypr.c
===================================================================
--- brlcad/trunk/src/libged/view/ypr.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/view/ypr.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -85,7 +85,7 @@
anim_dy_p_r2mat(mat, V3ARGS(ypr));
anim_v_permute(mat);
bn_mat_trn(gedp->ged_gvp->gv_rotation, mat);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/vutil.c
===================================================================
--- brlcad/trunk/src/libged/vutil.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/vutil.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -28,52 +28,6 @@
#include "./ged_private.h"
-
-void
-ged_view_update(struct bview *gvp)
-{
- vect_t work, work1;
- vect_t temp, temp1;
-
- if (!gvp)
- return;
-
- bn_mat_mul(gvp->gv_model2view,
- gvp->gv_rotation,
- gvp->gv_center);
- gvp->gv_model2view[15] = gvp->gv_scale;
- bn_mat_inv(gvp->gv_view2model, gvp->gv_model2view);
-
- /* Find current azimuth, elevation, and twist angles */
- VSET(work, 0.0, 0.0, 1.0); /* view z-direction */
- MAT4X3VEC(temp, gvp->gv_view2model, work);
- VSET(work1, 1.0, 0.0, 0.0); /* view x-direction */
- MAT4X3VEC(temp1, gvp->gv_view2model, work1);
-
- /* calculate angles using accuracy of 0.005, since display
- * shows 2 digits right of decimal point */
- bn_aet_vec(&gvp->gv_aet[0],
- &gvp->gv_aet[1],
- &gvp->gv_aet[2],
- temp, temp1, (fastf_t)0.005);
-
- /* Force azimuth range to be [0, 360] */
- if ((NEAR_EQUAL(gvp->gv_aet[1], 90.0, (fastf_t)0.005) ||
- NEAR_EQUAL(gvp->gv_aet[1], -90.0, (fastf_t)0.005)) &&
- gvp->gv_aet[0] < 0 &&
- !NEAR_ZERO(gvp->gv_aet[0], (fastf_t)0.005))
- gvp->gv_aet[0] += 360.0;
- else if (NEAR_ZERO(gvp->gv_aet[0], (fastf_t)0.005))
- gvp->gv_aet[0] = 0.0;
-
- /* apply the perspective angle to model2view */
- bn_mat_mul(gvp->gv_pmodel2view, gvp->gv_pmat, gvp->gv_model2view);
-
- if (gvp->gv_callback)
- (*gvp->gv_callback)(gvp, gvp->gv_clientData);
-}
-
-
/**
* FIXME: this routine is suspect and needs investigating. if run
* during view initialization, the shaders regression test fails.
@@ -158,7 +112,7 @@
/* pure rotation */
bn_mat_mul2(rmat, gedp->ged_gvp->gv_rotation);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
@@ -171,7 +125,7 @@
MAT4X3PNT(model_center, gedp->ged_gvp->gv_view2model, svec);
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, model_center);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
@@ -206,7 +160,7 @@
VSUB2(nvc, vc, delta);
MAT_DELTAS_VEC_NEG(gedp->ged_gvp->gv_center, nvc);
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/libged/zoom/zoom.c
===================================================================
--- brlcad/trunk/src/libged/zoom/zoom.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/libged/zoom/zoom.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -20,6 +20,7 @@
#include "common.h"
+#include "dm/bview_util.h"
#include "ged.h"
HIDDEN int
@@ -30,7 +31,7 @@
gedp->ged_gvp->gv_scale = RT_MINVIEWSCALE;
gedp->ged_gvp->gv_size = 2.0 * gedp->ged_gvp->gv_scale;
gedp->ged_gvp->gv_isize = 1.0 / gedp->ged_gvp->gv_size;
- ged_view_update(gedp->ged_gvp);
+ bview_update(gedp->ged_gvp);
return GED_OK;
}
Modified: brlcad/trunk/src/mged/mged.c
===================================================================
--- brlcad/trunk/src/mged/mged.c 2020-06-30 22:45:21 UTC (rev 76247)
+++ brlcad/trunk/src/mged/mged.c 2020-07-01 16:50:47 UTC (rev 76248)
@@ -69,6 +69,7 @@
#include "raytrace.h"
#include "libtermio.h"
#include "rt/db4.h"
+#include "dm/bview_util.h"
#include "ged.h"
#include "tclcad.h"
@@ -392,7 +393,7 @@
void
new_mats(void)
{
- ged_view_update(view_state->vs_gvp);
+ bview_update(view_state->vs_gvp);
}
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