Revision: 69025
http://sourceforge.net/p/brlcad/code/69025
Author: starseeker
Date: 2016-10-11 20:03:54 +0000 (Tue, 11 Oct 2016)
Log Message:
-----------
move a couple of vlist plotting functions to libbn. bn_plot_vlblock probably
shouldn't be public API, but it was exposed in librt's public API as
rt_plot_vlblock so going with rename for now to be minimally implacting.
Modified Paths:
--------------
brlcad/trunk/CHANGES
brlcad/trunk/include/bn/vlist.h
brlcad/trunk/include/rt/vlist.h
brlcad/trunk/src/conv/jack/g-jack.c
brlcad/trunk/src/conv/off/g-off.c
brlcad/trunk/src/libbn/vlist.c
brlcad/trunk/src/libdm/dm-plot.c
brlcad/trunk/src/libged/display_list.c
brlcad/trunk/src/librt/prep.c
brlcad/trunk/src/librt/primitives/nmg/nmg_fcut.c
brlcad/trunk/src/librt/primitives/nmg/nmg_plot.c
brlcad/trunk/src/librt/vlist.c
brlcad/trunk/src/proc-db/tea_nmg.c
Modified: brlcad/trunk/CHANGES
===================================================================
--- brlcad/trunk/CHANGES 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/CHANGES 2016-10-11 20:03:54 UTC (rev 69025)
@@ -1217,3 +1217,8 @@
fixed misleading name [7.26]
s/(#[[:space:]]*include[[:space:]]+["<])bu\/rb\.h/\1bu\/redblack.h/g
clearer header name [7.26]
+s/rt_plot_vlblock/bn_plot_vlblock/g
+ move function to libbn [7.26]
+s/rt_vlist_to_uplot/bn_vlist_to_uplot/g
+ move function to libbn [7.26]
+
Modified: brlcad/trunk/include/bn/vlist.h
===================================================================
--- brlcad/trunk/include/bn/vlist.h 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/include/bn/vlist.h 2016-10-11 20:03:54 UTC (rev 69025)
@@ -22,6 +22,7 @@
#define BN_VLIST_H
#include "common.h"
+#include <stdio.h> /* for FILE */
#include "vmath.h"
#include "bu/magic.h"
#include "bu/list.h"
@@ -278,7 +279,21 @@
BN_EXPORT void bn_vlist_rpp(struct bu_list *vlists, struct bu_list *hd, const
point_t minn, const point_t maxx);
+/**
+ * Output a bn_vlblock object in extended UNIX-plot format, including
+ * color.
+ */
+BN_EXPORT extern void bn_plot_vlblock(FILE *fp,
+ const struct bn_vlblock *vbp);
+/**
+ * Output a vlist as an extended 3-D floating point UNIX-Plot file.
+ * You provide the file. Uses libplot3 routines to create the
+ * UNIX-Plot output.
+ */
+BN_EXPORT extern void bn_vlist_to_uplot(FILE *fp,
+ const struct bu_list *vhead);
+
/** @} */
__END_DECLS
Modified: brlcad/trunk/include/rt/vlist.h
===================================================================
--- brlcad/trunk/include/rt/vlist.h 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/include/rt/vlist.h 2016-10-11 20:03:54 UTC (rev 69025)
@@ -50,21 +50,6 @@
* *
************************************************************************/
-/**
- * Output a bn_vlblock object in extended UNIX-plot format, including
- * color.
- */
-RT_EXPORT extern void rt_plot_vlblock(FILE *fp,
- const struct bn_vlblock *vbp);
-
-
-/**
- * Output a vlist as an extended 3-D floating point UNIX-Plot file.
- * You provide the file. Uses libplot3 routines to create the
- * UNIX-Plot output.
- */
-RT_EXPORT extern void rt_vlist_to_uplot(FILE *fp,
- const struct bu_list *vhead);
RT_EXPORT extern int rt_process_uplot_value(struct bu_list **vhead,
struct bn_vlblock *vbp,
FILE *fp,
Modified: brlcad/trunk/src/conv/jack/g-jack.c
===================================================================
--- brlcad/trunk/src/conv/jack/g-jack.c 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/src/conv/jack/g-jack.c 2016-10-11 20:03:54 UTC (rev 69025)
@@ -388,7 +388,7 @@
/* nmg_pl_r(fp, r); */
BU_LIST_INIT(&vhead);
nmg_r_to_vlist(&vhead, r, 0);
- rt_vlist_to_uplot(fp, &vhead);
+ bn_vlist_to_uplot(fp, &vhead);
fclose(fp);
RT_FREE_VLIST(&vhead);
if (verbose) bu_log("*** Wrote %s\n", bu_vls_addr(&file));
Modified: brlcad/trunk/src/conv/off/g-off.c
===================================================================
--- brlcad/trunk/src/conv/off/g-off.c 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/src/conv/off/g-off.c 2016-10-11 20:03:54 UTC (rev 69025)
@@ -360,7 +360,7 @@
/* nmg_pl_r( fp, r ); */
BU_LIST_INIT( &vhead );
nmg_r_to_vlist( &vhead, r, 0 );
- rt_vlist_to_uplot( fp, &vhead );
+ bn_vlist_to_uplot( fp, &vhead );
fclose(fp);
if (verbose) bu_log("*** Wrote %s\n", bu_vls_addr(&file));
}
Modified: brlcad/trunk/src/libbn/vlist.c
===================================================================
--- brlcad/trunk/src/libbn/vlist.c 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/src/libbn/vlist.c 2016-10-11 20:03:54 UTC (rev 69025)
@@ -31,6 +31,7 @@
#include "bu/list.h"
#include "bu/log.h"
#include "bu/str.h"
+#include "bn/plot3.h"
#include "bn/vlist.h"
int
@@ -466,6 +467,61 @@
BN_ADD_VLIST(vlists, hd, p, BN_VLIST_LINE_DRAW)
}
+void
+bn_plot_vlblock(FILE *fp, const struct bn_vlblock *vbp)
+{
+ size_t i;
+
+ BN_CK_VLBLOCK(vbp);
+
+ for (i=0; i < vbp->nused; i++) {
+ if (vbp->rgb[i] == 0) continue;
+ if (BU_LIST_IS_EMPTY(&(vbp->head[i]))) continue;
+ pl_color(fp,
+ (vbp->rgb[i]>>16) & 0xFF,
+ (vbp->rgb[i]>> 8) & 0xFF,
+ (vbp->rgb[i]) & 0xFF);
+ bn_vlist_to_uplot(fp, &(vbp->head[i]));
+ }
+}
+
+
+void
+bn_vlist_to_uplot(FILE *fp, const struct bu_list *vhead)
+{
+ register struct bn_vlist *vp;
+
+ for (BU_LIST_FOR(vp, bn_vlist, vhead)) {
+ register int i;
+ register int nused = vp->nused;
+ register const int *cmd = vp->cmd;
+ register point_t *pt = vp->pt;
+
+ for (i = 0; i < nused; i++, cmd++, pt++) {
+ switch (*cmd) {
+ case BN_VLIST_POLY_START:
+ case BN_VLIST_TRI_START:
+ break;
+ case BN_VLIST_POLY_MOVE:
+ case BN_VLIST_LINE_MOVE:
+ case BN_VLIST_TRI_MOVE:
+ pdv_3move(fp, *pt);
+ break;
+ case BN_VLIST_POLY_DRAW:
+ case BN_VLIST_POLY_END:
+ case BN_VLIST_LINE_DRAW:
+ case BN_VLIST_TRI_DRAW:
+ case BN_VLIST_TRI_END:
+ pdv_3cont(fp, *pt);
+ break;
+ default:
+ bu_log("bn_vlist_to_uplot: unknown vlist cmd x%x\n",
+ *cmd);
+ }
+ }
+ }
+}
+
/*
* Local Variables:
* mode: C
Modified: brlcad/trunk/src/libdm/dm-plot.c
===================================================================
--- brlcad/trunk/src/libdm/dm-plot.c 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/src/libdm/dm-plot.c 2016-10-11 20:03:54 UTC (rev 69025)
@@ -168,7 +168,7 @@
int useful = 0;
if (((struct plot_vars *)dmp->dm_vars.priv_vars)->floating) {
- rt_vlist_to_uplot(((struct plot_vars *)dmp->dm_vars.priv_vars)->up_fp,
&vp->l);
+ bn_vlist_to_uplot(((struct plot_vars *)dmp->dm_vars.priv_vars)->up_fp,
&vp->l);
return BRLCAD_OK;
}
Modified: brlcad/trunk/src/libged/display_list.c
===================================================================
--- brlcad/trunk/src/libged/display_list.c 2016-10-11 17:54:52 UTC (rev
69024)
+++ brlcad/trunk/src/libged/display_list.c 2016-10-11 20:03:54 UTC (rev
69025)
@@ -1416,7 +1416,7 @@
pl_linmod(fp, "solid");
Dashing = sp->s_soldash;
}
- rt_vlist_to_uplot(fp, &(sp->s_vlist));
+ bn_vlist_to_uplot(fp, &(sp->s_vlist));
}
gdlp = next_gdlp;
Modified: brlcad/trunk/src/librt/prep.c
===================================================================
--- brlcad/trunk/src/librt/prep.c 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/src/librt/prep.c 2016-10-11 20:03:54 UTC (rev 69025)
@@ -654,7 +654,7 @@
(int)(255*regp->reg_mater.ma_color[2]));
}
- rt_vlist_to_uplot(fp, &vhead);
+ bn_vlist_to_uplot(fp, &vhead);
RT_FREE_VLIST(&vhead);
return 0; /* OK */
Modified: brlcad/trunk/src/librt/primitives/nmg/nmg_fcut.c
===================================================================
--- brlcad/trunk/src/librt/primitives/nmg/nmg_fcut.c 2016-10-11 17:54:52 UTC
(rev 69024)
+++ brlcad/trunk/src/librt/primitives/nmg/nmg_fcut.c 2016-10-11 20:03:54 UTC
(rev 69025)
@@ -46,8 +46,9 @@
#include <math.h>
#include "bio.h"
+#include "vmath.h"
#include "bu/sort.h"
-#include "vmath.h"
+#include "bn/plot3.h"
#include "nmg.h"
#include "raytrace.h"
@@ -1540,7 +1541,7 @@
}
sprintf(buf, "wedge%d.plot3", num++);
fp = fopen(buf, "wb");
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
fclose(fp);
bu_log("wrote %s\n", buf);
bu_free((char *)b, "nmg_special_wedge_processing flag[]");
Modified: brlcad/trunk/src/librt/primitives/nmg/nmg_plot.c
===================================================================
--- brlcad/trunk/src/librt/primitives/nmg/nmg_plot.c 2016-10-11 17:54:52 UTC
(rev 69024)
+++ brlcad/trunk/src/librt/primitives/nmg/nmg_plot.c 2016-10-11 20:03:54 UTC
(rev 69025)
@@ -48,10 +48,10 @@
#include "bio.h"
#include "vmath.h"
+#include "bn/plot3.h"
#include "nmg.h"
#include "raytrace.h"
#include "rt/nurb.h"
-#include "bn/plot3.h"
#define US_DELAY 10 /* Additional delay between frames */
@@ -712,7 +712,7 @@
struct bn_vlblock *vbp = bn_vlblock_init(vlfree, 32);
nmg_vlblock_lu(vbp, lu, b, red, green, blue, 0);
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
bn_vlblock_free(vbp);
}
@@ -732,7 +732,7 @@
nmg_vlblock_lu(vbp, lu, b, red, green, blue, 1);
}
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
bn_vlblock_free(vbp);
}
@@ -747,7 +747,7 @@
struct bn_vlblock *vbp = bn_vlblock_init(vlfree, 32);
nmg_vlblock_s(vbp, s, 0);
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
bn_vlblock_free(vbp);
}
@@ -758,7 +758,7 @@
struct bn_vlblock *vbp = bn_vlblock_init(vlfree, 32);
nmg_vlblock_s(vbp, s, fancy);
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
bn_vlblock_free(vbp);
}
@@ -769,7 +769,7 @@
struct bn_vlblock *vbp = bn_vlblock_init(vlfree, 32);
nmg_vlblock_r(vbp, r, 0);
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
bn_vlblock_free(vbp);
}
@@ -780,7 +780,7 @@
struct bn_vlblock *vbp = bn_vlblock_init(vlfree, 32);
nmg_vlblock_m(vbp, m, 0);
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
bn_vlblock_free(vbp);
}
@@ -1295,7 +1295,7 @@
}
}
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
bn_vlblock_free(vbp);
bu_free((char *)b, "nmg_pl_isect flags[]");
@@ -1343,7 +1343,7 @@
}
bu_log("overlay %s\n", name);
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
(void)fclose(fp);
}
@@ -1408,7 +1408,7 @@
perror(name);
return;
}
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
(void)fclose(fp);
}
@@ -1839,7 +1839,7 @@
sprintf(buf, "cbroke%d.plot3", num++);
fp = fopen(buf, "wb");
if (fp) {
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
fclose(fp);
bu_log("overlay %s for %s\n", buf, a_string);
}
@@ -1888,7 +1888,7 @@
perror(name);
return;
}
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
(void)fclose(fp);
}
@@ -2144,7 +2144,7 @@
eur = eur->radial_p->eumate_p;
} while (eur != eu);
- rt_plot_vlblock(fp, vbp);
+ bn_plot_vlblock(fp, vbp);
(void)fclose(fp);
bn_vlblock_free(vbp);
bu_free((char *)tab, "bit vec");
Modified: brlcad/trunk/src/librt/vlist.c
===================================================================
--- brlcad/trunk/src/librt/vlist.c 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/src/librt/vlist.c 2016-10-11 20:03:54 UTC (rev 69025)
@@ -61,63 +61,6 @@
bn_vlist_import(&RTG.rtg_vlfree, hp, namevls, buf);
}
-
-void
-rt_plot_vlblock(FILE *fp, const struct bn_vlblock *vbp)
-{
- size_t i;
-
- BN_CK_VLBLOCK(vbp);
-
- for (i=0; i < vbp->nused; i++) {
- if (vbp->rgb[i] == 0) continue;
- if (BU_LIST_IS_EMPTY(&(vbp->head[i]))) continue;
- pl_color(fp,
- (vbp->rgb[i]>>16) & 0xFF,
- (vbp->rgb[i]>> 8) & 0xFF,
- (vbp->rgb[i]) & 0xFF);
- rt_vlist_to_uplot(fp, &(vbp->head[i]));
- }
-}
-
-
-void
-rt_vlist_to_uplot(FILE *fp, const struct bu_list *vhead)
-{
- register struct bn_vlist *vp;
-
- for (BU_LIST_FOR(vp, bn_vlist, vhead)) {
- register int i;
- register int nused = vp->nused;
- register const int *cmd = vp->cmd;
- register point_t *pt = vp->pt;
-
- for (i = 0; i < nused; i++, cmd++, pt++) {
- switch (*cmd) {
- case BN_VLIST_POLY_START:
- case BN_VLIST_TRI_START:
- break;
- case BN_VLIST_POLY_MOVE:
- case BN_VLIST_LINE_MOVE:
- case BN_VLIST_TRI_MOVE:
- pdv_3move(fp, *pt);
- break;
- case BN_VLIST_POLY_DRAW:
- case BN_VLIST_POLY_END:
- case BN_VLIST_LINE_DRAW:
- case BN_VLIST_TRI_DRAW:
- case BN_VLIST_TRI_END:
- pdv_3cont(fp, *pt);
- break;
- default:
- bu_log("rt_vlist_to_uplot: unknown vlist cmd x%x\n",
- *cmd);
- }
- }
- }
-}
-
-
#define TBAD 0 /* no such command */
#define TNONE 1 /* no arguments */
#define TSHORT 2 /* Vax 16-bit short */
Modified: brlcad/trunk/src/proc-db/tea_nmg.c
===================================================================
--- brlcad/trunk/src/proc-db/tea_nmg.c 2016-10-11 17:54:52 UTC (rev 69024)
+++ brlcad/trunk/src/proc-db/tea_nmg.c 2016-10-11 20:03:54 UTC (rev 69025)
@@ -227,7 +227,7 @@
bu_log("Cannot open plot3 file: %s\n", uplot_name);
perror("teapot_nmg");
} else {
- rt_vlist_to_uplot(fp, &vhead);
+ bn_vlist_to_uplot(fp, &vhead);
}
bu_log(" done.\n");
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits