On 2011-02-25 17:09-0800 Alan W. Irwin wrote: > [...]The > consistency of these really bad even-odd results means, I think, that > the X fill implementation is being used by all drivers other than the > bitmapped ones (e.g., pngqt), and for those bitmapped ones, I suspect > they must have copied their (bad even-odd fill) code from X. > > [...] For all those devices [using the winding number fill rule], > page 14 of example 27, for example, gives consistently wrong results > with asymmetric fill results for a symmetrical boundary.
I have followed up with both Debian (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=615491) and X (https://bugs.freedesktop.org/show_bug.cgi?id=34877) bug reports about the fill issue in X (which I believe is the origin of all the other Linux platform fill problems we have for the self-intersecting boundaries of example 27). In light of a warning from one Debian developer that the X fill code was old and untouched for years so there would probably be reluctance from the X developers to learn enough about it to fix it, then the alternate course of developing our own solution for filling self-intersecting boundaries based on the Master's thesis referred to below gains some urgency. Does anybody here want to have a go at that? > Finally, because of these fill issues for polygons with > self-intersecting boundaries we should probably want to implement our > own even-odd _and_ non-zero filling rules by, e.g., partitioning > (using the appropriate fill rule) a fill of a self-intersecting > polygon into fills of simpler polygons that do not self-intersect. If > you google for <partition complex polygon>, > http://www.cis.usouthal.edu/~hain/general/Theses/Subramaniam_thesis.pdf > is the top result. That master's thesis (University of South Alabama, > 2003) is low enough level so even I can understand large parts of it. > He even includes his code for implementing > such partitions. However, that code has no licensing terms and is > partially copied from others at that faculty (presumably with personal > permission for him to do so). That means anyone who copies that code > would be in violation of Subramaniam's copyright as well as the > copyright of others at that faculty. Thus, we should completely > ignore his code and instead use Subramaniam's _ideas_ which he has very > clearly expressed in the body of the thesis as a pseudo-algorithm for > such partitioning. > > I think this would be a really interesting project for anyone who > would like to see better-looking fill results for example 27. > Unfortunately, I don't have time to pursue this myself for the > forseeable future, but I hope someone else here is inspired to look > into this. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ Free Software Download: Index, Search & Analyze Logs and other IT data in Real-Time with Splunk. Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. http://p.sf.net/sfu/splunk-dev2dev _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel