From: Maurice L. <ml...@us...> - 2001-01-08 06:45:30
|
Update of /cvsroot/plplot/plplot/src In directory usw-pr-cvs1:/tmp/cvs-serv5306 Modified Files: plot3d.c Log Message: Fixed several glaring problems with 3d plotter as applied to shading. First, calculated boundary color table value to prevent garbage values being passed. Second, in the shading routine I weed out duplicate coordinate values. For some reason the algorithm will occasionally ask for the same segment to be drawn several times, which has no effect when simply line following, but this is disastrous when filling polygons. Third, I changed the plabv (returns 1 if one point is above 2 others) to return true if the three points are collinear (boundary case). This apparently has no effect on the line following plots but is a marked improvement when shading -- many triangles are filled that previously were missed. There is still at least one major bug dealing with shading boundaries, which I have an idea how to fix, but this is a good stopping point. To clearly see the difference between the old and new, try running old/new copies of x08c with a color background e.g. 'x08c -bg 0000FF'. This clearly shows which polygons are being missed. |