temp

TAPESTRY: The Art of Representation and Abstraction

Data Types - Wire-frame



What's it all about?

The development of 3D modeling and rendering applications can be seen as the evolution of both, taking the results of the previous generation of software and wrapping it in a more complicated set of needs. This evolution begins with wire frame data and simple projection of the 3D lines to the 2D picture plane.

Primitives

"Line" is used here to describe what mathematicians would call a "line segment", the portion of an infinite line between two points in space. Wire-frame data involves using lines or "polylines" (a multi-segment line connecting several points in space) to delineate the object. Higher order primitives (polygons, circles, etc.) are possible, but not common. (The exception to this is that many b-rep and solid systems permit definition of wire-frame objects as "degenerate" forms of data.)

Attributes

Individual lines usually have color, possibly line type, and layer.

Relationships

It is fairly likely, though not universal, that the system assigned lines to "layers". A more likely condition in these early systems was that lines could be assigned to collections (groups, sets, or objects). The relationship was usually simply one of membership (i.e., the line was one of a list of lines in the "object").

Examples of Wire-frame Data

All 3D polylines in AutoCAD. All un-thickened entities and 2D polylines in AutoCAD. DXF data of "lines". Data from programs such as VISIT.

Detailed Example

The following example may help illustrate the nature of wire-frame data, and the difference between wire-frame data and boundary-representation data.
The Verticies (Pn...)Wireframe Edges (E)B-Rep Faces (F)
E1 = (P1,P2)	
E2 = (P2,P3)	
E3 = (P3,P4)	
E4 = (P4,P1)	
E5 = (P5,P6)	
E6 = (P6,P7)	
...	
E9 = (P1,P5)	
E10 = (P2,P6)
E11 = (P3,P7)
E12 = (P4,P8)
F1=(P1,P2,P3,P4) bottom 
F2=(P1,P5,P6,P2) front 
F3=(P2,P6,P7,P3) right side 
F4=(P3,P7,P8,P4) back 
F5=(P4,P8,P5,P1) left side 
F6=(P5,P8,P7,P6) top 

Last updated: April, 2014

Valid HTML 4.01 Transitional Valid CSS! [report bug]