Revision: 75549
          http://sourceforge.net/p/brlcad/code/75549
Author:   n_reed
Date:     2020-04-22 19:01:53 +0000 (Wed, 22 Apr 2020)
Log Message:
-----------
Fix vlist drawing by nirt, rtcheck, etc. broken by r75470.

Fixing transparency exposed a problem in calls to invent_solid, all of which 
had "0.0" as the transparency argument. It's pretty clear the intention was to 
make temp vlists opaque (0% transparent), but confusingly we use "transparency" 
as a synonym for "alpha", so a transparency value of 0 actually means fully 
transparent.

Modified Paths:
--------------
    brlcad/trunk/src/libged/draw.c
    brlcad/trunk/src/libged/vdraw.c
    brlcad/trunk/src/mged/dodraw.c

Modified: brlcad/trunk/src/libged/draw.c
===================================================================
--- brlcad/trunk/src/libged/draw.c      2020-04-22 17:18:11 UTC (rev 75548)
+++ brlcad/trunk/src/libged/draw.c      2020-04-22 19:01:53 UTC (rev 75549)
@@ -577,7 +577,7 @@
        if (BU_LIST_IS_EMPTY(&(vbp->head[i])))
            continue;
        snprintf(namebuf, 64, "%s%lx", shortname, vbp->rgb[i]);
-       invent_solid(gedp->ged_gdp->gd_headDisplay, gedp->ged_wdbp->dbip, 
gedp->ged_create_vlist_solid_callback, gedp->ged_free_vlist_callback, namebuf, 
&vbp->head[i], vbp->rgb[i], copy, 0.0, 0, gedp->freesolid, 0);
+       invent_solid(gedp->ged_gdp->gd_headDisplay, gedp->ged_wdbp->dbip, 
gedp->ged_create_vlist_solid_callback, gedp->ged_free_vlist_callback, namebuf, 
&vbp->head[i], vbp->rgb[i], copy, 1.0, 0, gedp->freesolid, 0);
     }
 }
 

Modified: brlcad/trunk/src/libged/vdraw.c
===================================================================
--- brlcad/trunk/src/libged/vdraw.c     2020-04-22 17:18:11 UTC (rev 75548)
+++ brlcad/trunk/src/libged/vdraw.c     2020-04-22 19:01:53 UTC (rev 75549)
@@ -542,7 +542,7 @@
     }
 
     /* 0 means OK, -1 means conflict with real solid name */
-    idx = invent_solid(gedp->ged_gdp->gd_headDisplay, gedp->ged_wdbp->dbip, 
gedp->ged_create_vlist_solid_callback, gedp->ged_free_vlist_callback, 
solid_name, &(gedp->ged_gdp->gd_currVHead->vdc_vhd), 
gedp->ged_gdp->gd_currVHead->vdc_rgb, 1, 0.0, 0, gedp->freesolid, 0);
+    idx = invent_solid(gedp->ged_gdp->gd_headDisplay, gedp->ged_wdbp->dbip, 
gedp->ged_create_vlist_solid_callback, gedp->ged_free_vlist_callback, 
solid_name, &(gedp->ged_gdp->gd_currVHead->vdc_vhd), 
gedp->ged_gdp->gd_currVHead->vdc_rgb, 1, 1.0, 0, gedp->freesolid, 0);
 
     bu_vls_printf(gedp->ged_result_str, "%d", idx);
 

Modified: brlcad/trunk/src/mged/dodraw.c
===================================================================
--- brlcad/trunk/src/mged/dodraw.c      2020-04-22 17:18:11 UTC (rev 75548)
+++ brlcad/trunk/src/mged/dodraw.c      2020-04-22 19:01:53 UTC (rev 75549)
@@ -62,7 +62,7 @@
 
        snprintf(namebuf, sizeof(namebuf), "%s%lx",     shortname, vbp->rgb[i]);
        /*invent_solid(namebuf, &vbp->head[i], vbp->rgb[i], copy);*/
-       invent_solid(GEDP->ged_gdp->gd_headDisplay, DBIP, createDListSolid, 
GEDP->ged_free_vlist_callback, namebuf, &vbp->head[i], vbp->rgb[i], copy, 
0.0,0, GEDP->freesolid, 0);
+       invent_solid(GEDP->ged_gdp->gd_headDisplay, DBIP, createDListSolid, 
GEDP->ged_free_vlist_callback, namebuf, &vbp->head[i], vbp->rgb[i], copy, 1.0, 
0, GEDP->freesolid, 0);
     }
 }
 

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