Upcoming SlideShare
×

# 0000556

198 views

Published on

Published in: Education
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total views
198
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
0
0
Likes
0
Embeds 0
No embeds

No notes for slide

### 0000556

1. 1. Reconstruction of curvedsolids from two polygonalorthographic viewsD Dutta and Y L Srinivas the front, top and right-side views. While simple objectsIt has long been known that the 2-view orthographic such as cylinders, bushings and bolts can typically berepresentation of a mechanical part is ambiguous. Existing described by only a pair of orthographic views, the preciseliterature addresses the recognition~reconstruction of description of complex machine elements often requiressolids (mostly polyhedral solids)from either 1-view sectional and/or auxiliary views in addition to the three(perspective) drawings, or from three orthographic views. views.The paper presents algorithms for reconstructing curved This paper is interested in the inverse problem, thatsolids from only two polygonal orthographic views. First, of developing solids whose orthographic views are given.all the polyhedral solids that correspond to the pair of In particular, the problem in which only two of the threeprespecified orthogonai views are reconstructed, and then views are given is considered. There are two aspects ofthe associated third views are developed. Then, for each this problem that contribute to its complexity. First, itsolid, the three views are analyzed simultaneously, and the is well known that a pair of orthogonal views (e.g. theauthors reason about the possibilities of including circular front and top views) correspond, in general, to more thanarcs in the newly generated third view. This corresponds one solid, each giving rise to a unique third view (i.e. theto the inclusion of solids that are bounded by quadrics. right-side view). Thus, the 2-view representation of mostPossible application areas include computer-aided design, objects is ambiguous. Second, straight lines in one of themachine vision and automated inspection systems. two views can correspond to curves in the missing thirdorthographic views, solid reconstruction, line-drawings automatic conver- view, giving rise to solids bounded by nonplanar surfaces.sion Fundamental in engineering graphics and descriptive geometry, and usually encountered by students in their first engineering drawing/graphics course, is the missing-INTRODUCTION view problem: given two views, generate the third2-view orthographic representation view(s). This problem can be surprisingly complicated. It is so because every correct solution to this problemThe use of parallel projections for unambiguous repre- first requires the visualization of a solid that correspondssentations of solid objects was developed by the French to the two given views. The third view can then bemathematician Gaspard Monge in the middle of the 18th determined. Therefore, visualization in 3D is required,century. It has since formed the basis of what is now and this, in itself, is a cause of frustration. Further, as areferred to as engineering drawing, multiview drawing and 2-view representation is nonunique, the completeness oforthographic drawing. In this paradigm, every 3D object the solution can be difficult to verify.can be completely described by a set of three orthographic If an object has several features that project to a singleviews (projections) on mutually perpendicular planes. Of line in one or more views, the reconstruction of the samethe six possible orthographic views (obtained when the object starting from the three views can be veryobject is thought of as being enclosed in a transparent complicated. Lines and points on the given views mustbox), the views most commonly used in engineering are be systematically analyzed in the process of developing a correct solid. When only two views are given, theDesignLaboratory,DepartmentofMechanicalEngineering,University problem is clearly more difficult. For a simple object, itof Michigan,Ann Arbor, MI 48109, USA is best to visualize it partially from the two given views,Paper received: 31 July 1991. Revised: 14 October 1991 and then complete the process by the addition ofvolume 24 number 3 march 1992 0010-4485/92/030149-11 © 1992 Butterworth-Heinemann Ltd 149
2. 2. D Dutta and Y L Srinivasconsistent right-side views, one by one. However, if the method to construct polyhedral solids from the threegiven views are complex, the powers of spatial visualization orthographic projections ~. Methods for the extraction ofbecome inadequate in the guidance of the analysis, which 3D information from orthographic views can also beis inherently combinatorial. That there has been no found in References 6 and 7. In Reference 8, the Wesleyreliable way to determine exactly how many solids and Markowsky approach was extended to includecorrespond to a given pair of orthogonal views is circular arcs in the orthographic views. The resultingtherefore not surprising. solids, therefore, could include quadrics and toroidal This paper presents an algorithm for the reconstruction surfaces.of all the solids that are bounded by planes and The problem of generating all solids from only twoquadrics when only two orthographic views are given. views was, to the best of the authors knowledge, firstFirst, the algorithm generates all the polygonal third examined by Wilde 9. Wilde examined the difficultiesviews (i.e. the views that are composed of straight lines involved in spatial visualization, and, in particular, inonly ) that correspond to a given pair of orthogonal views. the reconstruction of solids from two orthogonal views.It does so by reconstructing all the polyhedral solids that This paper presents algorithms for the reconstruction ofcorrespond to the orthogonal views. The three views are polyhedral and curved solids from two views.then analyzed to identify the line segments in the rightview that can be replaced by circular arcs (other conics Applicationscan be included easily). Finally, the nonpolyhedral solidsare generated from the modified three views. An automatic procedure to generate solids from line The reconstruction procedure, which is akin to the drawings has many applications in engineering. Forgift-wrapping method of generating convex hulls, begins example, one can then verify the consistency of compli-from a vertex, and faces are added one by one, until a cated engineering drawings automatically. Such ansolid is generated. Considering every valid triple of algorithm can also be part of an interactive system tovertices, the algorithm evaluates all candidate faces for assist a designer during the development of new productinclusion. It considers all the valid configurations of faces, designs. Moreover, drawings continue to be the mostand determines the complete set of valid solids that natural way of conveying geometric information forcorrespond to the given views. An empty solution set designers. Therefore, a system to convert automaticallyproves that the given views are inconsistent. engineering drawings into solid models can be very useful. This section of the paper is concluded by a review of The conversion of engineering drawings into solid modelsprior work on the generation of solids from line is a task that many industries have to address in thedrawings, and potential applications are mentioned. The process of adopting solid-modelling systems. The recog-second section of the paper analyzes the problem and nition of orthographic projects also has applications indiscusses the algorithm. The third and fourth sections machine vision and automated inspection.contain the algorithms for polyhedral- and curved-solidsgeneration. Examples are given in the fifth section. ANALYSIS OF RECONSTRUCTION PROBLEMPrevious work Canonical orientationAs a result of the use of digital computers for image It is a common practice in engineering drawing to orientprocessing, various aspects of the automatic recognition the object such that it yields the simplest orthographicand reconstruction of line drawings have been researched views. It is easy to see that a simple object can producesince the 1960s. In particular, two variants of the problem complicated orthographic views if it is not oriented indiscussed in this paper, i.e. reconstruction from single- the best possible way. For example, a cube standing onview and 3-view drawings, have received attention thus its vertex would produce a rather complicated set offar. orthographic views, with all its edges foreshortened. An excellent survey of the research on the machine However, when three sides of the cube are parallel to theinterpretation of line drawings can be found in the first three principal planes of projection, the orthographicfew pages of a text by Sugihara 1. In this book, Sugihara views are three squares. In the latter orientation, thereaddressed, in particular, the recognition of polyhedral is no foreshortening of the edges, and they appear in theirobjects and scenes described by single-view line drawings true lengths. That orientation of an object that maximizes(which are also referred to as perspective drawings). the number of edges that appear in true lengths in allAn important subclass of this problem is the interpretation three views is referred to as the objects canonicalof multiview line drawings. orientation. However, not all objects can be oriented such Idesawa presented a method for the reconstruction of that the edges comprising the three views appear in theirsolid models from three orthographic projections z. This true lengths (e.g. an equilateral tetrahedron).method, however, was capable of producing invalidobjects. Lafue developed heuristics to detect such invalid Edge and vertex multiplicitiesobjects by the imposition of a prespecified input format 3.In 1980, Wesley and Markowsky4 developed an algorithm When three orthographic views are provided, there isfor the production of orthographic views from wireframe enough information in the drawings for it to be deducedmodels of mechanical parts. They further extended the which lines appear in true lengths. The reconstruction of150 computer-aided design
3. 3. Reconstruction of curved solids from two polygonal orthographic viewsthe solid is not difficult thereafter. However, when only TQtwo views are provided, the reconstruction procedure /requires a systematic analysis of the views. Central tothis analysis is the detection of line multiplicity, which /is achieved by reasoning about vertex multiplicities. It is I I /easy to see that more than one edge of a solid can projectto the same line in one orthographic view. Such lines are /considered as multiple lines. The multiplicity m of a linel in any view refers to the maximum number of edges that 45°mitrel i n e ~can project onto l while being consistent with the otherview. Multiple edges are able to be detected by reasoningabout multiple vertices, as each edge must correspondto a pair of vertices. Therefore, the multiplicity m of vertexv refers to the maximum number of distinct vertices thatit can conceal, in consistency with the views. Themultiplicity of vertex v in the top/front can be obtainedby the vertices in the front/top view that lie on the vertical " Iline through v being counted. The following is intuitive. Ill FQ RQProposition 1 ." If vertices with multiplicities larger than 1 Figure 1. Construction of right view from top and frontexist in two orthographic views, the pair corresponds viewsto more than one valid solid. Consider a vertex set Vk of cardinality m. With mCombinatorial analysis vertices, there can be O(mt) trees*. However, the orthographic views cannot contain any trees, as trees An important difference between the problem discussed correspond to dangling faces and edges (i.e. unbounded in this paper and its two well known variations (i.e. the solids). Therefore, the set of valid right views P, which generation of solids from a perspective view and from corresponds to vertex set Vk, consists of all the graphs, three orthographic views) is that the problem has multiple but no trees or dangling edges. For example, every solutions, whereas the other two have exactly one triangulation of Vk is a topologically valid right view, as it solution each. In other words, it is necessary for both contains cycles. It is easy to see that the cardinality of the correctness and the completeness of the solution to the set P is, in general, exponential in m. As there are be determined for this problem, whereas the other two C~ such vertex sets, the possibilities for right views are problems are solved by a correct solution. It is this exponential in number. Clearly, this is a loose bound on difference that leads to the combinatorial nature of this the number of right views, as consistency with the top problem. and front views is the final check for a valid right view. A bound on the number of right views (and, hence, Moreover, the inclusion of nonpolyhedral solids in the the distinct polyhedral solids) that correspond to a pair above analysis results in an infinite number of valid right of orthographic views can be derived by analysis of the views. standard technique used in engineering drawing to develop third views from two given views. The procedure is illustrated in Figure 1, but discussions are not included. Correctness of procedure An explanation can be found in any standard text on It is asserted that a 2-view representation can be unique engineering drawing, e.g. Reference 10. under special conditions. In Figure 1, assume that the top and front views, shownin the top quadrant TQ and the front quadrant FQ, Lemma 1." If at least one of the two given orthographic respectively, were generated by the analysis of a solid S views has no multiple vertices, the 2-view representation with m vertices and n edges. By construction, all the is unambiguous.candidate vertices in the right quadrant RQ are theintersections of the horizontal and the vertical lines drawn Proof." Let the top and front views be given, the formerfrom the vertices in FQ and TQ, respectively. There are without any multiple vertices. The top view thenO(m) vertices in TQ and in FQ. Therefore, RQ has determines the total number of vertices in the object andO (m 2 ) candidate vertices. However, the right view cannot their unique connectivities (i.e. the edges). Clearly, thehave more vertices than its progenitor S. Thus, each top view determines the unique topology of the solid. Bycorrect right view R i developed from the candidate definition, the front view contains the elevation of eachvertices in RQ is a graph Gi( V, E), and V = O(m). (Note vertex that appears in the top view. Therefore, the giventhat firm lines in the right view cannot intersect, except representation is unambiguous. []at the candidate vertices. However, intersections betweenfirm and hidden lines can create new vertices. ) If M = m2, * For example,with three verticesA, B and C, there can be trees suchthere are C~ possibilities for the vertex set V. as A-B-C, A-C-B, B-A-C and so on.volume 24 number 3 march 1992 151
4. 4. D Dutta and Y L SrinivasNote that a pair of orthographic views, as per L e m m a l, that correspond to valid representations of solids aredoes not, in general, facilitate visualization. However, for identified and stored. As all the candidate configurationsthe purposes of the reconstruction algorithms, they are are enumerated, the algorithm ensures that the solutionvalid inputs. If the multiplicity of a vertex is n, it can set is complete, i.e. that there are no solids other thanconceal up to n - 1 vertices in the view. Therefore, such those in the solution set that generate the given pair ofa vertex is accounted for in the construction procedure orthographic views.by consideration of the view in which the vertex appearsn times, once with each value of the vertex multiplicity OVERVIEW OF ALGORITHM(i.e. 0, 1. . . . . n - l ) . Algorithm inputTheorem 1: In the reconstruction of all the valid solids The inputs to the algorithm are two vertex connectivityfrom a pair of orthographic views, it is necessary and matrices that correspond to the given views. Thesufficient to analyze only one view, and to account for coordinates of each vertex are also supplied to theall the vertices in that view that have a multiplicity larger algorithm. Each connectivity matrix is an n x n squarethan 1. matrix, where n is the n u m b e r of distinct vertices in the corresponding view. Figure 2 shows a pair of orthographicProof: The necessity follows from Proposition 1; this views. The associated connectivity matrices are as followsproof covers sufficiency. Accounting for a multiple vertex (the first matrix corresponds to the top view, and thev in a view requires consideration of n instances of the second matrix corresponds to the front view):view, once with each value of the multiplicity of v. Thec o m p a n i o n view is used for validity checks. Clearly such -1 1 1 0 0 0 0 0 0 0 0-an accounting procedure is exhaustive. Sufficiency is then 1 1 0 0 0 0 0 0 0 0 1an immediate consequence of L e m m a 1. [] 1 0 1 1 l 1 0 0 0 0 0Any procedure that does not account for all the vertices 0 0 1 1 1 1 l 0 0 1 0with multiplicities larger than 1 is, by T h e o r e m 1,incomplete. The multiple vertices are accounted for in 0 0 1 1 1 1 0 1 0 0 0one view by the direct construction of the solid while the 0 0 1 1 1 1 0 0 1 0 !other view is used to verify consistency. The algorithmis based on an e n u m e r a t i o n scheme. It considers all the 0 0 0 1 0 0 1 1 1 1 0possible configurations that can arise from the two given 0 0 0 0 1 0 1 1 1 0 0views. F r o m these candidate configurations, only those 0 0 0 0 0 1 1 1 1 0 1 1 2 0 0 0 1 0 0 1 0 0 1 1 0 1 0 0 0 1 0 0 1 1 1 10 11 -1 1 1 1 0 0 0 1 0 0 0 8 1 1 l 1 1 0 0 0 1 0 0 7 9 1 1 l 1 0 1 0 0 0 l 0 1 1 1 1 0 0 1 0 0 0 1 3 4 5 6 0 1 0 0 1 1 2 0 1 0 0 a 0 0 1 0 1 1 2 0 0 1 0 0 0 0 1 2 2 1 0 0 0 1 1 2 3 4 1 0 0 0 0 0 0 1 1 1 l 0 1 0 0 1 0 0 1 1 1 1 5 ------ 7 6 0 0 1 0 0 1 0 l 1 1 l 0 0 0 1 0 0 1 1 1 1 1_ An element C(i, j) of the matrix has a value of 0 if node i is not connected to node j, a value of 1 if node i is connected to node j by a complete solid line, and a value 8 9 10 11 of 2 if node i is connected to node j by a complete or partially hidden line. F o r example, in Figure 2b, vertex 5 b is connected to vertex 7 by a partially hidden line, andFigure 2. Orthogonal views; ( a ) top view, ( b )front view so C (5, 7 ) = 2. The connectivity matrices are symmetric.152 computer-aided design
5. 5. Reconstruction of curved solids from two polygonal orthographic viewsDescription of algorithm the right view. If it corresponds to an inclined line I1 = (u, v), it can be replaced directly by a circular arc C.The algorithm works as follows. As a vertex in any view C passes through u and v, and it has 12 and l 3 as tangents,can actually correspond to the orthogonal projections of where 12 and 13 intersect I~ at u and v, respectively. If theone or more lines, a vertex analysis is first performed to vertical line in the top view corresponds to a horizontaldetect such multiple vertices, and their multiplicities are line in the right view, the corresponding solid has a sharprecorded. For example, vertex 11 in Figure 2b has a corner (and an edge) that is a candidate for roundingmultiplicity of 4, as there are, at most, four vertices in or filleting. Further checks are carried out to ensurethe top view, i.e. 6, 9, 11 and 2, whose projections can consistency with the front view, and the corner/edge incoincide with it. the solid is rounded, or filleted, by the replacement of Next, the vertex with the lowest multiplicity, vl say, the appropriate vertex in the right view with a circularis selected. From the connectivity matrices, all the arc. The blend radius can be chosen by the user, and itneighbors of vl are identified and stored in V. Every determines the point of tangencies.noncollinear triple in V containing Vl defines a plane thatpasses through v~. These planes are generated and storedin P. Finally, a set of faces F is created by the systematicdetection of all the vertices, except v~ and its neighbors, ALGORITHMthat lie on each element of P. Therefore, each element The main algorithm invokes three substeps: the form-of F is a face that contains the vertex v~. face, expand-face and curves steps. The first two steps are Next, the faces in F are analyzed. In particular, it is recursive.necessary to determine how many faces of F can lead toa valid solid. A solid is considered to be valid only if itcorresponds to the given views. The analysis involves the MAIN algorithmexpansion of faces of F, and it proceeds as follows. A MAIN algorithmface f~ is selected from F. I f f l is to be the face of a validsolid, each edge o f f l must be shared by exactly one moreface*. The neighbors of f l are identified and stored in Input: connectivity matrices for orthographic view RG1. This process is repeated for every face in F. The set and TG~ includes only those faces encountered in the analysis Output: solids corresponding to R and Tthat do not intersect any face in G~_ 1, G~-2 . . . . . G1 (i.e.it excludes nonmanifolds). Further, consistency with the begingiven orthographic views is verified prior to the addition for each vertex in R, compute multiplicityof a face in G~. A depth-first strategy is used, and the faces of G~ are for minimum-multiplicity vertex vl, while multiplicityexpanded next. Concurrently with the face-expansion >0procedure for G~, the constructed solids are checked for F ~ form-face (v~)completeness (i.e. that they are bounded solids) and while F not empty, expand-face (F)validity (i.e. consistency with the given orthographic P ~ polyhedral solids ; Q ~ right viewsprojections). Any solid that passes this check is a valid while Q not empty, curves(Q)solid, and it is stored in the solution set. The connectivity c ~ curved solidsmatrix that corresponds to the right view is then output P and Cgenerated. The face-expansion process is carried out forall sets G~ until all the faces are expanded. The algorithm endthen terminates, as all the solids that correspond to thegiven pair of orthographic views have been identified,and their right-view connectivity matrices have been The MAIN algorithm requires that, in the orthographicstored. views, there be a path from each vertex to every other Now the three views for each solid have been obtained. vertex (i.e. no edge loop is properly contained in another).The last step is to identify from these views which lines in This condition disqualifies solids that have holes orthe right view can be replaced by circular arcs. (Note pockets that open on planes. The algorithm can bethat the concern is only to introduce curves in the right modified to overcome this limitation by the addition ofview, and not in the top and front views, which were dummy edges between the appropriate vertices of theprespecified. ) It is assumed that the solid being analyzed disconnected loops.is in a canonical orientation. Once again, one view is A brief description of the procedures used by the MAINanalyzed, and the other is used to check consistency. program is given below:Clearly, all the vertical lines in the top view are candidates • Input-connectivity-matrices (top-view, front-view): Thisfor curved edges when they are viewed from the right. reads the data for both views from the input file, andFurther, a vertical line in the top view can only returns the data in matrices top-view and front-view.correspond to an inclined line, or a horizontal line, in • Generate-multiple-nodes ( top-view, front-view, multiple- node-list): This generates all the possible multiple* Nonmanifoldobjects are not considered. nodes in the front view from the information given involume 24 number 3 march 1992 153
6. 6. D Dutta and Y L Srinivas the top-view and front-view matrices, and returns the plane is a candidate that is evaluated by the form-face list of multiple nodes, properly labelled, in multiple- algorithm. node-list.• Get-min-mnode (multiple-node-list, min-loc): This de- termines the node in the front view that has the least Form-face algorithm number of multiple nodes in the front view, and returns The form-face procedure recursively generates all the the identification of the node in min-loc. possible faces that can be produced from the vertex set.• Get-mnodes (min-loc, multiple-node-list, mnode-list ): This extracts all the mnodes at node min-loc in the front view from the multiple-node-list, and returns the Form-face algorithm resulting list in mnode-list.• Get-connected nodes (mnode, connected-list): This determines all the mnodes in the multiple-node-list that (1) Identify all the neighbors of the last vertex of the face are connected to mnode, and returns the resulting set in connected-list. (2) For each of the vertices in this list, repeat• Get-next-plane (mnode, connected-list, Jace): This (2.1) Add the vertex to face at the current last vertex determines the next candidate plane in the connected- (2.2) If the face is complete and valid add to the list of list that passes through mnode. The previous plane, if possible faces any, is passed via face. The resulting plane is returned (2.3) Mark this vertex as USED in the list of vertices in face. that lie in the plane• Get-nodes-in-plane (.face, vertices). This determines (2.4) Invoke form-face( ) to generate the possible all mnodes that lie in the plane defined by.face, and faces for the updated face returns this mnodes list in vertices. (2.5) Remove this vertex (the last vertex ) from the face• Initial-solid (solid, face): This sets up the initial solid (2.6) Mark the vertex as FREEin the list of vertices that with a single face that is defined by face. lie in the plane• Output-solution( ): This outputs the solution set of (3) End of procedure ; Return solids.Maintenance of candidate list The procedures used by the form-face algorithm areIn a process that is inherently combinatorial, the prompt briefly described below:rejection of invalid elements can substantially reduce acandidate list. Throughout the reconstruction process, • Get-next-vertex-list (./ace, vertices, next-list)." Thistopological and geometric inconsistencies in each con- procedure returns all the FREE members of vertex listfiguration of candidate faces, edges and vertices are vertices that can be connected to the last vertex ofdetected, and the invalid elements are rejected outright. .lace. The list of these vertices is returned in next-list. In the ,gIN algorithm, vertex triples define an initial • Add-vertex-to-lace (face, vertex)." This procedureset of candidate planes through the chosen vertex v 2. expands the partially constructed]ace by adding vertexThese planes are carriers of faces that pass through v 1. to the last vertex of the face and updating vertex asHowever, not all vertex triples are candidates. All the last vertex of Jace.collinear triples and dependent triples of vertices are • Valid-face (.[ace)." This procedure verifies whether arejected (see, for example, Figure 3). In Figure 3, vertex given.face is a complete and consistent face, i.e. thetriples (l, 2, 3) and (5, 2, 4) define the same plane, and edges form a closed loop, and do not cross each other.so (5, 2, 4) is considered as a dependent triple, and it is • Add-face (.face): This procedure stores face in the listrejected. of candidate valid faces. When ~giY invokes the form-face algorithm, each valid • Mark-vertex-list (vertices, vertex, value). This pro-vertex triple (vi, vj, Vk) (i.e. a carrier plane for some face) cedure marks vertex in the list vertices with the valueis passed along with lists of additional vertices, if any, value. IF value is USED, then vertex will not be used asthat also lie on the same carrier plane. Every such carrier a candidate in subsequent searches. If value is VREE, vertex will be used. • Remove-vertex:/rom-face (Jace, vertex). This pro- cedure removes vertex from the end of the partially%",,% 2 constructed ./ace. The previous vertex in Jace now becomes the last vertex. Maintenance of candidate list , , The form-face algorithm seeks to construct valid faces 3 iI II for the solid from the set of carrier planes supplied by MAIY and a set of vertices obtained from the connectivity 5 4 matrices. The size of the candidate list of faces is kept atFigure 3. Invalid vertex triples in MAINprocedure a minimum by the performance of checks to preserve the154 computer-aided design