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

Reply via email to