Revision: 76704
http://sourceforge.net/p/brlcad/code/76704
Author: starseeker
Date: 2020-08-11 14:19:35 +0000 (Tue, 11 Aug 2020)
Log Message:
-----------
Merge changes from RELEASE: r76693 through r76703
Modified Paths:
--------------
brlcad/trunk/src/libged/blast/blast.c
brlcad/trunk/src/libged/clone/clone.c
brlcad/trunk/src/libged/draw/draw.c
brlcad/trunk/src/libged/draw/loadview.c
brlcad/trunk/src/libged/draw/preview.c
brlcad/trunk/src/libged/killall/killall.c
brlcad/trunk/src/libged/osg.cpp
brlcad/trunk/src/libged/putmat/putmat.c
brlcad/trunk/src/mged/cmd.c
Property Changed:
----------------
brlcad/trunk/
Index: brlcad/trunk
===================================================================
--- brlcad/trunk 2020-08-11 13:38:43 UTC (rev 76703)
+++ brlcad/trunk 2020-08-11 14:19:35 UTC (rev 76704)
Property changes on: brlcad/trunk
___________________________________________________________________
Modified: svn:mergeinfo
## -1,4 +1,4 ##
-/brlcad/branches/RELEASE:57439,57447-57860,69901-69913,70323-70333,71915-72242,72525-72534,72826-72858,74376-74454,74964-75140,75372-75685,76001-76451,76693
+/brlcad/branches/RELEASE:57439,57447-57860,69901-69913,70323-70333,71915-72242,72525-72534,72826-72858,74376-74454,74964-75140,75372-75685,76001-76451,76693-76703
/brlcad/branches/bioh:75720-75736,75740-75742,75860-75891,75894-75986,76088-76153,76354-76506,76577
/brlcad/branches/brep-debug:61373,61375,61404,61427,61429,61470,61544,61567,61576,61999,62018,62094,62098,62107,62117,62406,62416-62519,62521-62584,62593-62614,62623,62658,62660-62674,62681-62771,62876,62901,62907,62910,62925,62928,62931-63025,63027,63051,63054-63056,63069,63071-63073,63122,63160-63161,63165,63171,63184,63187,63189-63190,63193-63196,63200,63202,63205-63210,63213,63219-63225,63232-63233,63236,63238,63338,63350-63353,63481,63618,63669,64173-64174,64176-64177,64229-64233,64242,64244,64360-64362,65165,65245,65249,65334,65833-65834,66370-66375,66931-66932,66934,67012-67015,67018-67019,67021-67022,67406,67740,67746-67748,67950,67952,68144-68145,68636,68640-68643,68820,69081,69109,69168,69206,69289,69346,69460-69461,69582-69583,69719-69721,69857-69859,69927,69995-69996,70148-70149,70347-70349,70377,70526-70527,71006-71007,71009-71022,71046-71047,71049,71096-71100
/brlcad/branches/bullet:62518
Modified: brlcad/trunk/src/libged/blast/blast.c
===================================================================
--- brlcad/trunk/src/libged/blast/blast.c 2020-08-11 13:38:43 UTC (rev
76703)
+++ brlcad/trunk/src/libged/blast/blast.c 2020-08-11 14:19:35 UTC (rev
76704)
@@ -60,6 +60,7 @@
}
/* Draw the new object(s) */
+ argv[0] = "draw";
return ged_draw(gedp, argc, argv);
}
@@ -66,17 +67,17 @@
#ifdef GED_PLUGIN
#include "../include/plugin.h"
-struct ged_cmd_impl blast_cmd_impl = {
- "blast",
- ged_blast_core,
- GED_CMD_DEFAULT
-};
-
+struct ged_cmd_impl blast_cmd_impl = {"blast", ged_blast_core,
GED_CMD_DEFAULT};
const struct ged_cmd blast_cmd = { &blast_cmd_impl };
-const struct ged_cmd *blast_cmds[] = { &blast_cmd, NULL };
-static const struct ged_plugin pinfo = { blast_cmds, 1 };
+struct ged_cmd_impl B_cmd_impl = {"B", ged_blast_core, GED_CMD_DEFAULT};
+const struct ged_cmd B_cmd = { &B_cmd_impl };
+
+const struct ged_cmd *blast_cmds[] = { &blast_cmd, &B_cmd, NULL };
+
+static const struct ged_plugin pinfo = { blast_cmds, 2 };
+
COMPILER_DLLEXPORT const struct ged_plugin *ged_plugin_info()
{
return &pinfo;
Modified: brlcad/trunk/src/libged/clone/clone.c
===================================================================
--- brlcad/trunk/src/libged/clone/clone.c 2020-08-11 13:38:43 UTC (rev
76703)
+++ brlcad/trunk/src/libged/clone/clone.c 2020-08-11 14:19:35 UTC (rev
76704)
@@ -420,7 +420,7 @@
bu_vls_strcpy(&obj_list.names[idx].dest[i], bu_vls_addr(name));
/* actually copy the primitive to the new name */
- argv[0] = "clone_copy";
+ argv[0] = "copy";
argv[1] = proto->d_namep;
argv[2] = bu_vls_addr(name);
argv[3] = (char *)0;
Modified: brlcad/trunk/src/libged/draw/draw.c
===================================================================
--- brlcad/trunk/src/libged/draw/draw.c 2020-08-11 13:38:43 UTC (rev 76703)
+++ brlcad/trunk/src/libged/draw/draw.c 2020-08-11 14:19:35 UTC (rev 76704)
@@ -1315,9 +1315,6 @@
struct ged_cmd_impl e_cmd_impl = {"e", ged_draw_core, GED_CMD_DEFAULT};
const struct ged_cmd e_cmd = { &e_cmd_impl };
-struct ged_cmd_impl B_cmd_impl = {"B", ged_draw_core, GED_CMD_DEFAULT};
-const struct ged_cmd B_cmd = { &B_cmd_impl };
-
struct ged_cmd_impl ev_cmd_impl = {"ev", ged_ev_core, GED_CMD_DEFAULT};
const struct ged_cmd ev_cmd = { &ev_cmd_impl };
@@ -1329,9 +1326,9 @@
struct ged_cmd_impl preview_cmd_impl = {"preview", ged_preview_core,
GED_CMD_DEFAULT};
const struct ged_cmd preview_cmd = { &preview_cmd_impl };
-const struct ged_cmd *draw_cmds[] = { &draw_cmd, &e_cmd, &B_cmd, &ev_cmd,
&loadview_cmd, &preview_cmd, NULL };
+const struct ged_cmd *draw_cmds[] = { &draw_cmd, &e_cmd, &ev_cmd,
&loadview_cmd, &preview_cmd, NULL };
-static const struct ged_plugin pinfo = { draw_cmds, 6 };
+static const struct ged_plugin pinfo = { draw_cmds, 5 };
COMPILER_DLLEXPORT const struct ged_plugin *ged_plugin_info()
{
Modified: brlcad/trunk/src/libged/draw/loadview.c
===================================================================
--- brlcad/trunk/src/libged/draw/loadview.c 2020-08-11 13:38:43 UTC (rev
76703)
+++ brlcad/trunk/src/libged/draw/loadview.c 2020-08-11 14:19:35 UTC (rev
76704)
@@ -199,7 +199,8 @@
* TODO: should only zap if the objects to be displayed
* all exist.
*/
- (void)ged_zap(gedp, 1, NULL);
+ const char *Z_cmd = "Z";
+ (void)ged_zap(gedp, 1, &Z_cmd);
/* now get the objects listed */
ret = fscanf(fp, "%10000s", objects);
Modified: brlcad/trunk/src/libged/draw/preview.c
===================================================================
--- brlcad/trunk/src/libged/draw/preview.c 2020-08-11 13:38:43 UTC (rev
76703)
+++ brlcad/trunk/src/libged/draw/preview.c 2020-08-11 14:19:35 UTC (rev
76704)
@@ -236,8 +236,8 @@
};
-int
-ged_loadframe(struct ged *gedp, FILE *fp)
+static int
+_loadframe(struct ged *gedp, FILE *fp)
{
char *cmd;
@@ -401,7 +401,7 @@
bu_vls_strcpy(&name, image_name);
}
}
- while (ged_loadframe(gedp, fp) == GED_OK) {
+ while (_loadframe(gedp, fp) == GED_OK) {
if (image_name) {
struct bu_vls fullname = BU_VLS_INIT_ZERO;
const char *screengrab_args[3];
@@ -413,7 +413,6 @@
preview_currentframe, bu_vls_addr(&extension));
screengrab_args[screengrab_argc++] = bu_vls_addr(&fullname);
- /* ged_png(gedp, screengrab_argc, screengrab_args); */
ged_screen_grab(gedp, screengrab_argc, screengrab_args);
bu_vls_free(&fullname);
Modified: brlcad/trunk/src/libged/killall/killall.c
===================================================================
--- brlcad/trunk/src/libged/killall/killall.c 2020-08-11 13:38:43 UTC (rev
76703)
+++ brlcad/trunk/src/libged/killall/killall.c 2020-08-11 14:19:35 UTC (rev
76704)
@@ -67,6 +67,7 @@
nflag = 0;
gedp->ged_internal_call = 1;
+ argv[0] = "killrefs";
if ((ret = ged_killrefs(gedp, argc, argv)) != GED_OK) {
gedp->ged_internal_call = 0;
bu_vls_printf(gedp->ged_result_str, "KILL skipped because of earlier
errors.\n");
Modified: brlcad/trunk/src/libged/osg.cpp
===================================================================
--- brlcad/trunk/src/libged/osg.cpp 2020-08-11 13:38:43 UTC (rev 76703)
+++ brlcad/trunk/src/libged/osg.cpp 2020-08-11 14:19:35 UTC (rev 76704)
@@ -42,7 +42,7 @@
__BEGIN_DECLS
-void ged_osgLoadScene(struct bu_list *hdlp, void *osgData);
+void _ged_osgLoadScene(struct bu_list *hdlp, void *osgData);
__END_DECLS
@@ -69,7 +69,7 @@
int begin;
int nverts;
- bu_log("ged_osgLoadSolid: enter\n");
+ bu_log("_ged_osgLoadSolid: enter\n");
@@ -101,7 +101,7 @@
normals->push_back(osg::Vec3(0.0f,-1.0f,0.0f));
begin += nverts;
nverts = 1;
- //bu_log("ged_osgLoadSolid: loaded point - (%lf %lf
%lf)\n", (*pt)[X], (*pt)[Y], (*pt)[Z]);
+ //bu_log("_ged_osgLoadSolid: loaded point - (%lf %lf
%lf)\n", (*pt)[X], (*pt)[Y], (*pt)[Z]);
break;
case BN_VLIST_POLY_START:
normals->push_back(osg::Vec3d((*pt)[X], (*pt)[Y],
(*pt)[Z]));
@@ -115,7 +115,7 @@
vertices->push_back(osg::Vec3d((*pt)[X], (*pt)[Y],
(*pt)[Z]));
++nverts;
- //bu_log("ged_osgLoadSolid: loaded point - (%lf %lf
%lf)\n", (*pt)[X], (*pt)[Y], (*pt)[Z]);
+ //bu_log("_ged_osgLoadSolid: loaded point - (%lf %lf
%lf)\n", (*pt)[X], (*pt)[Y], (*pt)[Z]);
break;
case BN_VLIST_POLY_END:
//vertices->push_back(osg::Vec3d((*pt)[X], (*pt)[Y],
(*pt)[Z]));
@@ -142,12 +142,12 @@
//geode->addDrawable(geom);
}
- bu_log("ged_osgLoadSolid: leave\n");
+ bu_log("_ged_osgLoadSolid: leave\n");
}
void
-ged_osgLoadScene(struct bu_list *hdlp, void *osgData)
+_ged_osgLoadScene(struct bu_list *hdlp, void *osgData)
{
register struct display_list *gdlp;
register struct display_list *next_gdlp;
@@ -154,7 +154,7 @@
struct solid *sp;
struct osg_stuff *osp = (struct osg_stuff *)osgData;
- bu_log("ged_osgLoadScene: part B\n");
+ bu_log("_ged_osgLoadScene: part B\n");
osg::Group* root = new osg::Group();
// create the Geode (Geometry Node) to contain all our osg::Geometry
objects.
@@ -161,7 +161,7 @@
osg::Geode* geode = new osg::Geode();
bu_log("before: max frame rate - %lf\n",
osp->viewer->getRunMaxFrameRate());
- bu_log("ged_osgLoadScene: enter\n");
+ bu_log("_ged_osgLoadScene: enter\n");
gdlp = BU_LIST_NEXT(display_list, hdlp);
while (BU_LIST_NOT_HEAD(gdlp, hdlp)) {
next_gdlp = BU_LIST_PNEXT(display_list, gdlp);
@@ -192,7 +192,7 @@
bu_log("after: max frame rate - %lf\n", osp->viewer->getRunMaxFrameRate());
- bu_log("ged_osgLoadScene: loaded geode\n");
+ bu_log("_ged_osgLoadScene: loaded geode\n");
}
// Local Variables:
Modified: brlcad/trunk/src/libged/putmat/putmat.c
===================================================================
--- brlcad/trunk/src/libged/putmat/putmat.c 2020-08-11 13:38:43 UTC (rev
76703)
+++ brlcad/trunk/src/libged/putmat/putmat.c 2020-08-11 14:19:35 UTC (rev
76704)
@@ -32,8 +32,8 @@
#include "../ged_private.h"
-int
-ged_getmat(struct ged *gedp, int argc, const char *argv[])
+static int
+_getmat(struct ged *gedp, int argc, const char *argv[])
{
struct directory *dp;
struct rt_db_internal intern;
@@ -196,7 +196,7 @@
}
if (argc == 2)
- return ged_getmat(gedp, argc, argv);
+ return _getmat(gedp, argc, argv);
if (argc < 3 || 18 < argc) {
bu_vls_printf(gedp->ged_result_str, "Usage: %s %s", argv[0], usage);
Modified: brlcad/trunk/src/mged/cmd.c
===================================================================
--- brlcad/trunk/src/mged/cmd.c 2020-08-11 13:38:43 UTC (rev 76703)
+++ brlcad/trunk/src/mged/cmd.c 2020-08-11 14:19:35 UTC (rev 76704)
@@ -1807,29 +1807,75 @@
extern int edit_com(int argc, const char *argv[], int kind);
/**
- * ZAP the display -- then edit anew
+ * Run ged_blast, then update the views
* Format: B object
*/
int
cmd_blast(ClientData UNUSED(clientData), Tcl_Interp *UNUSED(interpreter), int
argc, const char *argv[])
{
- const char *av[2];
int ret;
if (GEDP == GED_NULL)
return TCL_OK;
- av[0] = "Z";
- av[1] = (char *)0;
-
- ret = ged_zap(GEDP, 1, av);
+ ret = ged_blast(GEDP, argc, argv);
if (ret)
return TCL_ERROR;
- if (argc == 1) /* "B" alone is same as "Z" */
- return TCL_OK;
+ /* update and resize the views */
+ struct dm_list *save_dmlp = curr_dm_list;
+ struct cmd_list *save_cmd_list = curr_cmd_list;
+ struct dm_list *dmlp;
+ struct display_list *gdlp;
+ struct display_list *next_gdlp;
+ FOR_ALL_DISPLAYS(dmlp, &head_dm_list.l) {
+ int non_empty = 0; /* start out empty */
- return edit_com(argc, argv, 1);
+ set_curr_dm(dmlp);
+
+ if (curr_dm_list->dml_tie) {
+ curr_cmd_list = curr_dm_list->dml_tie;
+ } else {
+ curr_cmd_list = &head_cmd_list;
+ }
+
+ GEDP->ged_gvp = view_state->vs_gvp;
+
+ gdlp = BU_LIST_NEXT(display_list, GEDP->ged_gdp->gd_headDisplay);
+
+ while (BU_LIST_NOT_HEAD(gdlp, GEDP->ged_gdp->gd_headDisplay)) {
+ next_gdlp = BU_LIST_PNEXT(display_list, gdlp);
+
+ if (BU_LIST_NON_EMPTY(&gdlp->dl_headSolid)) {
+ non_empty = 1;
+ break;
+ }
+
+ gdlp = next_gdlp;
+ }
+
+ if (mged_variables->mv_autosize && non_empty) {
+ struct view_ring *vrp;
+ char *av[2];
+
+ av[0] = "autoview";
+ av[1] = (char *)0;
+ ged_autoview(GEDP, 1, (const char **)av);
+
+ (void)mged_svbase();
+
+ for (BU_LIST_FOR(vrp, view_ring, &view_state->vs_headView.l)) {
+ vrp->vr_scale = view_state->vs_gvp->gv_scale;
+ }
+ }
+ }
+
+ set_curr_dm(save_dmlp);
+ curr_cmd_list = save_cmd_list;
+ GEDP->ged_gvp = view_state->vs_gvp;
+
+
+ return TCL_OK;
}
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