| Previous Topic | Next Topic | Contents | Features |
The line-drawing algorithm attempts to find edges of solid bodies and intersections with other bodies. The lines in three-dimensional space are the intersection of two surfaces. In body geometry, the intersection of two surfaces belonging to the same body is explicitly known. The intersection of two surfaces belonging to different bodies is generated by points given by the intersection of "scanning'' rays, that are confined to the surface of one body, with other bodies. For each point of intersection, there is a path back to the viewpoint. The intersection of these paths with an imaginary viewplane produces the three-dimensional projection of the geometry.
The path to the viewpoint may be traced to determine if the point is hidden by an opaque body; if so, the line segment(s) connected to that point is considered obscured and not drawn. All projections are determined before the plot is displayed so that the extent of the image on the viewplane can be calculated and the image thereby scaled to fill the window; a priori knowledge of the spatial bounds is not required.
Line drawing works well for simple, body-defined models. The time required increases as the square of the number of bodies, and will exceed the time required for a ray-traced rendering of a complex model. Drawing may be limited to a subset of defined bodies, known as a drawset, thereby increasing rendering speed.
In surface mode, the algorithms are sometimes confused by infinite surfaces and draw lines that extend far beyond the model. Line drawing of surface geometry is neither recommended nor supported. Line drawings are invoked by the DRAW button and the RDRAW and DRAW commands.
Line drawing cannot handle surface descriptions which include infinite bodies. Cutter bodies cannot be used; a body introduced to serve as a cutter body is considered just one more object to be drawn.
Even though more geometries can be handled with ray tracing, there are situations when line drawing is preferable. Line drawing offers greater resolution than lines made by ray tracing with ETCH, which, unless very high resolution is used, shows jagged lines.