Deduped images

This commit is contained in:
James Gregory 2013-12-30 12:25:34 +11:00
commit 9e52de9586
233 changed files with 128 additions and 128 deletions

View file

@ -42,7 +42,7 @@
<P>After I wrote the columns on polygons in <I>Dr. Dobb&#146;s Journal</I> that became Chapters 38&#150;40, long-time reader Bill Huber wrote to take me to task&#151;and a well-deserved kick in the fanny it was, I might add&#151;for my use of non-standard polygon terminology in those columns. Unix&#146;s X-Window System (XWS) defines three categories of polygons: complex, nonconvex, and convex. These three categories, each a specialized subset of the preceding category, not-so-coincidentally map quite nicely to three increasingly fast polygon filling techniques. Therefore, I used the XWS names to describe the sorts of polygons that can be drawn with each of the polygon filling techniques.</P>
<P>The problem is that those names don&#146;t accurately describe all the sorts of polygons that the techniques are capable of drawing. Convex polygons are those for which no interior angle is greater than 180 degrees. The &#147;convex&#148; drawing approach described in the previous few chapters actually handles a number of polygons that are not convex; in fact, it can draw any polygon through which no horizontal line can be drawn that intersects the boundary more than twice. (In other words, the boundary reverses the Y direction exactly twice, disregarding polygons that have degenerated into horizontal lines, which I&#146;m going to ignore.)</P>
<P>Bill was kind enough to send me the pages out of <I>Computational Geometry, An Introduction</I> (Springer-Verlag, 1988) that describe the correct terminology; such polygons are, in fact, &#147;monotone with respect to a vertical line&#148; (which unfortunately makes a rather long <B>#define</B> variable). Actually, to be a tad more precise, I&#146;d call them &#147;monotone with respect to a vertical line and simple,&#148; where &#147;simple&#148; means &#147;not self-intersecting.&#148; Similarly, the polygon type I called &#147;nonconvex&#148; is actually &#147;simple,&#148; and I suppose what I called &#147;complex&#148; should be referred to as &#147;nonsimple,&#148; or maybe just &#147;none of the above.&#148;</P>
<TABLE WIDTH="100%"><TD WIDTH="5%" VALIGN="TOP"><IMG SRC="images/41-01i.jpg"><TD WIDTH="95%"><SMALL><I>This may seem like nit-picking, but actually, it isn&#146;t; what it&#146;s really about is the tremendous importance of having a shared language. In one of his books, Richard Feynman describes having developed his own mathematical framework, complete with his own notation and terminology, in high school. When he got to college and started working with other people who were at his level, he suddenly understood that people can&#146;t share ideas effectively unless they speak the same language; otherwise, they waste a great deal of time on misunderstandings and explanation.</I></SMALL>
<TABLE WIDTH="100%"><TD WIDTH="5%" VALIGN="TOP"><IMG SRC="images/i.jpg"><TD WIDTH="95%"><SMALL><I>This may seem like nit-picking, but actually, it isn&#146;t; what it&#146;s really about is the tremendous importance of having a shared language. In one of his books, Richard Feynman describes having developed his own mathematical framework, complete with his own notation and terminology, in high school. When he got to college and started working with other people who were at his level, he suddenly understood that people can&#146;t share ideas effectively unless they speak the same language; otherwise, they waste a great deal of time on misunderstandings and explanation.</I></SMALL>
</TABLE>
<P>Or, as Bill Huber put it, &#147;You are free to adopt your own terminology when it suits your purposes well. But you risk losing or confusing those who could be among your most astute readers&#151;those who already have been trained in the same or a related field.&#148; Ditto. Likewise. <I>D&#146;accord</I>. And <I>mea culpa</I> ; I shall endeavor to watch my language in the future.</P>
<H3><A NAME="Heading3"></A><FONT COLOR="#000077">Nomenclature in Action</FONT></H3>