Three-dimensional modelling apparatus and method

Abstract: A three-dimensional model is formed from information of two-dimensional drawings. Information representing cut surfaces is formed from the two-dimensional drawing information. Three dimensional geometrical phase information is then extracted, and the three-dimensional model is thereby formed.

Description: This invention relates to a three-dimensional modeling apparatus which generates a three-dimensional model from two-dimensional drawings. The following methods of generating a three-dimensional solid model from two-dimensional drawings have been known: H. Sakurai and D.C. Gossard, "Solid Model Input Through Orthographic View", ACM Computer Graphics , Vol. 17, No. 3, July 1985, pp. 243 - 252. In such a method, a three-dimensional wireframe model is first provided from three two-dimensional projections, and a solid model is then provided based on the wireframe model. V. N. Agasamy and N.A. Langrana, "Reconstruction of 3D Objects Using a KD Environment", ASME Computers in Engineering 1989 , Vol. 1, July 1989, pp. 117 - 126. In such a method, basic solids constituting a given solid ace extracted from drawings, and a solid model is generated by combining these basic solids. In utilization of CAD in product developing processes, it is desirable to use two-dimensional drawings easy to operate and express in the design process, and to use a three-dimensional model capable of exactly expressing the form of a product in processes after design. For that purpose, it is necessary to convert two-dimensional drawings into a higher-degree solid model. At present, however, no methods which can convert two-dimensional drawings into a solid model on a practical level have been established. A method using a wireframe, represented by the above-described first publication, has the following disadvantages: (1) Unnecessary edges are generated in a process of first generating a three-dimensional wireframe model, and an operation to remove the edges is therefore needed. (2) Various restrictions are present in converting a wireframe model into a solid model. (3) Since candidates for a solid model include all shapes which can be considered from a wireframe model, the calculation load is very high. Furthermore, since any candidates which can be solid models are selected from among the above-described candidates, a plurality of models are in some cases provided. (4) Errors in drawings and calculation cannot be tolerated. A method represented by the second publication has the following disadvantages, though the method is eftective for simple drawings: (5) Basically, since pattern matching is performed inside a solid, the method cannot deal with a complicated shape. (6) If small errors are included in drawings, the calculation process tends to run away. In a conventional method of providing a three-dimensional solid model, as described in Toyomitshu Senda, "Automatic Restoration of an Original Solid from Three Projections", Collection of Papers Presented at 8-th Design Symposium in Tokyo , July 1990, as an example of providing a three-dimensional solid model from a three-dimensional wireframe, surfaces are extracted from a three-dimensional wireframe, candidates for a solid are generated by combining these surfaces, and a solid model is produced while comparing the model with three projections. The conventional method has the disadvantage that geometrical information which is inconsistent with respect to phase may be generated due to errors in the shape and calculation, and therefore stable processing cannot be performed. "Automatic Reconstruction of 3D Solid Objects from 2D Orthographic Views" by Chen and Perng in Pattern Recognition, vol. 21, no. 5, 1988, pages 439-449 discloses a method for reconstructing 3D mechanical parts comprising polyhedra, cylinders or partial cylinders from 2D orthographic views by computer. The process consists of three phases: (1) Decomposition, in which geometric primitives of straight lines, circles and circular arcs are segmented from the three-view 2D drawing, and the drawing is decomposed for each view into disjoint subviews, that is, a closed edge loop formed from circles, arcs and/or straight lines in which each vertex of the loop has only two adjacent vertices. (2) Reconstruction, in which the closed loop of edges of an isolated subview is used as a sweep base to perform a translational sweep operation to reconstruct a polyhedral 3D subpart. To check whether the constructed polyhedron is the correct subpart or not, orthographic back projection is performed to obtain three-view data which are then compared with the original three-view data. If both are identified, the reconstruction process is finished. If not, the boundary planes of a spurious subpart are located and the spurious subpart removed by cutting along these places. (3) Composition, in which the constructed subparts are composed to form a final part. According to the present invention, there is provided a three-dimensional modelling apparatus as set out in claim 1. The invention also provides a method of operating a three-dimensional modelling apparatus as set out in claim 6. The invention also provides a computer program product as set out in claim 10. Optional features are set out in claims 2 to 5, 7 to 9 and 11. An embodiment of the present invention provides a three-dimensional model by including means for forming cut-surface information of a substance existence space expressed by two-dimensional drawings, and extraction means for extracting three-dimensional geometrical phase information. In order to form a three-dimensional model from two-dimensional drawings, in an embodiment the two-dimensional drawings are first converted into 2.5-dimensional drawings. Connection information, relating to connections of surfaces constituting the three-dimensional solid, and characteristics of the surfaces themselves, that is, topological information and geometrical information about the surfaces, are extracted from the shapes of cut surfaces of solids formed while recognizing a substance existence space (space where the solid is present) expressed by the 2.5-dimensional drawings. A three-dimensional solid model is formed from the above-described two kinds of information entirely indendently of the two-dimensional drawings. In an embodiment, since edges for generating a three-dimensional solid model are calculated after first determining topological information and geometrical information of surfaces extracted from the two-dimensional drawings, the load of calculation is light even in the case of a complicated shape, calculation does not run away due to errors, and a plurality of uncertain shapes are not output. Accordingly, two-dimensional drawings can be stably converted into a three-dimensional solid model. Even when dealing with drawings which include possible inconsistency and errors in future, the drawings can be flexibly dealt with by performing interactive correction for obtained topological information and geometrical information. FIG. 1 is a block diagram illustrating an embodiment of the present invention; FIG. 2 is a diagram illustrating a processing procedure of the embodiment of FIG. 1; FIG. 3a is a diagram showing an example of information processed in the embodiment of FIG. 1; FIG. 3b is a diagram showing another example of information processed in the embodiment of FIG. 1; FIG. 4 is a diagram showing still another example of information processed in the embodiment of FIG. 1; and FIG. 5 is a diagram showing still another example of information processed in the embodiment of FIG. 1. FIG. 1 is a block diagram illustrating an embodiment of the present invention. In FIG. 1, a memory within a processor 10 stores a processing program for the procedure shown in FIG. 2. A solid modeling system 11 is realized in the processor 10 by execution of the program by a CPU (a calculating unit) of the processor 10. A display unit 12 displays a model obtained as a result of the processing, input drawings, or drawings during processing. An input device 13 inputs to the processor 10 a command or message for editing, correction, a position, or compensation, using a key, a cursor or an icon. A storage unit 14 stores two-dimensional CAD drawings, serving as input data to be processed. An external storage unit 15 outputs a three-dimensional solid model which is the result of processing. A network interface 16 performs communication with an external system. The modeling system 11 includes a topological and geometrical information extraction unit 20. A storage unit 21 stores topological data of extracted surfaces. A storage unit 22 stores geometrical data of surfaces. The modeling system 11 also includes an edge trace/solid model formation unit 23. The processing of this embodiment will now be explained with reference to the above-described configuration. First, according to a command from the input device 13, two-dimensional CAD drawing data are loaded from the external storage unit 14 into the memory in the processor 10. A command for processing is then input from the input device 13, so that the topological and geometrical information extraction unit 20 generates topolopical data and geometrical data of surfaces constituting a three-dimensional solid expressed by drawings based on the two-dimensional drawing data, and the generated data are stored in the storage units 21 and 22. After the completion of such processing, the edge trace/solid model formation unit 23 performs processing in which a three-dimensional solid model is generated from the topological data and the geometrical data of the surfaces. The three-dimensional solid model generated by such processing is stored in the external storage unit 15. The result is also displayed on the display unit 12. An explanation will now be provided of detailed processing in the above-described respective processing units. As shown in FIG. 2, the topological and geometrical information extraction unit 20 shown in FIG. 1 performs the following processing: formation of 2.5-dimensional drawings in a first step; setting of a cutting level in a second step; information of cut surfaces in a third step; topological scanning in a fourth step; and generation of topological and geometrical data of surfaces in a fifth step. Step 1. Formation of 2.5-dimensional drawings As shown in FIG. 3a, information associated to the shapes (the shapes of surfaces) of closed regions on two-dimensional drawings in the direction of depth are added to the regions, whereby 2.5-dimensional surface data as shown in FIG. 3b are formed. 1) The depth of a surface is defined for a region whose information in the direction of depth can be uniquely recognized from the drawings. 2) A region which is clearly determined to be a hole from the drawings is defined as a hole. 3) The depth of a surface for a region which cannot be automatically recognized is input by the operator. That is, a message is displayed on the display unit 12 to make the operator input instructions via the input device 13. Step 2. Setting of a cutting level In the present apparatus, geometrical phases of the entire shape are determined by reading changes in geometrical phases of cut surfaces in the X, Y and Z directions. For that purpose, any small change in any direction must not be overlooked. Hence, all points whose geometrical phases might change are picked up, and a cutting level so as to cut a section (a characteristic section of the shape) between these points is set. Step 3. Generation of cut surfaces As shown in FIG. 4, the shapes of cut surfaces in characteristic sections of the shape in the X, Y and Z directions are determined, keeping in mind a substance existence space based on 2.5-dimensional data. With respect to such formation of cut surfaces: No substance is present in front of (= the direction of the line of light) surfaces defined as substances on 2.5-dimensional drawings. A semi-infinite space (= a substance existence space) where a substance is present is present behind regions defined as substances on the 2.5-dimensional drawings. No substance is present either in front of or behind a region defined as a hole on the 2.5-dimensional drawings. An actual solid space expressed by the drawings is expressed in the form of a logical product of substance existence spaces claimed by respective views (drawings) on the drawings. In consideration of the above-described items, the following processing is performed. 1) A cutting plane is set. 2) Semi-infinite (actually, finite) cut shapes which express semi-infinite substance existence spaces claimed by respective views are formed within the cutting plane. 3) The shape of a cut surface of the solid is obtained by obtaining a logical product of semi-infinite cut shapes of respective views. Step 4. Topological scanning As shown in FIG. 5, the shape of the cut surface is scanned in the X, Y and Z directions. A change in phase between adjacent surfaces is thereby recognized, and connecting information of surfaces is stored. That is, processing is performed in consideration of the following items. If cut surfaces are formed with fine pitches in time X, Y and Z directions, and the formed cut surfaces are scanned, a change in connection relationship between surfaces constituting the cut surfaces can be recognized. In comparison in the scanning direction, if a combination of surfaces not present in the immediately preceding cutting level has appeared, this is recognized as connection information of surfaces constituting the solid. The actual cutting position is a section (= the characteristic section of the shape) between characteristic points of the shape in the X, Y and Z directions on the drawing. In consideration of the above-described items, the following processing is performed: 1) Attribute information of the surface is added to each element of the shape of a cut surface. 2) A change in the phase of the cut surface in the scanning direction is recognized while scanning in the X, Y and Z directions. Connection information (information on connections) between respective elements of the cut surface of a portion having any change is stored as connection information of surfaces, serving as attribute information added to respective elements of the cut surface. • Step 5. Generation of topological/geometrical data of surfaces 1) Connection information of respective surfaces is arranged in units of a surface, and the arranged information is stored as connection information of surfaces. 2) Geometrical data of surfaces are penetrated from the kinds of respective surfaces and the shapes of the surfaces. The edge trace/solid model formation unit 23 shown in FIG. 1 will now be explained in detail. First, a graph search is performed based on connection information of a recognized surface, and loop ordering for adjacent surfaces is performed. Calculation of edges is performed from surfaces for which connection relationship is established, and a B-reps-type solid model having a winged-edge structure is formed. That is: Edges of a surface are established according to connection information (topology) of the surface extracted from the drawings by topological scanning, and information of the shape (geometry) of the surface. A graph search method is used in order to determine looping of adjacent surfaces and arrangement of adjacent surfaces. Edges are established by calculating a line of intersection of surfaces for which the connection relationship is established. In consideration of the above-described items, the following processing steps are performed: 1) Topological data (information of adjacent surfaces and, information of projections and recesses) and geometrical data (information of the shape of the surface) of the surface are received. 2) Looping of the surface and arrangement order of adjacent surfaces within a loop are determined using graph search based on information of adjacent surfaces. 3) Calculation of a line of intersection of adjacent surfaces is sequentially performed in accordance with the determined arrangement order within the loop to form edges. 4) Solid model data are generated from information of the formed edges. By performing the above-described processing, the processing for forming a three-dimensional model from two-dimensional drawings can be efficiently realized.

Claims: A three-dimensional modelling apparatus (10,11), comprising: means (20) for processing data defining a plurality of two-dimensional drawings representing respective views of a three-dimensional object from respective viewing directions to recognise closed regions within the drawings; characterised by: means (20) for generating information for each respective two-dimensional drawing concerning the depth of said closed regions recognised within the drawings; means (20) for generating data defining cross-sections from respective drawings using the depth information and for combining generated cross-sections to generate data defining cut surfaces representing the cross-sectional shape of the three-dimensional object at a plurality of positions in each of three orthogonal directions; and means (20,23) for generating data defining a three-dimensional computer model of the object on the basis of changes in the cut surfaces in the respective orthogonal directions. Apparatus according to claim 1, wherein the plurality of two-dimensional drawings comprise first, second and third drawings of the object from respective first, second and third viewing directions. Apparatus according to claim 1 or claim 2, further comprising display means (12) for displaying an image of the three-dimensional computer model. Apparatus according to any preceding claim, further comprising means (13) to enable an operator to input information defining the depth of a closed region. Apparatus according to any preceding claim, further comprising storage means (10,14) for storing the data defining the two-dimensional drawings. A method of operating a three-dimensional modelling apparatus, comprising: processing data defining a plurality of two-dimensional drawings representing respective views of a three-dimensional object from respective viewing directions to recognise closed regions within the drawings; characterised by: generating information for each respective two-dimensional drawing concerning the depth of said closed regions recognised within the drawings; generating data defining cross-sections from respective drawings using the depth information and combining generated cross-sections to generate data defining cut surfaces representing the cross-sectional shape of the three-dimensional object at a plurality of positions in each of three orthogonal directions; and generating data defining a three-dimensional computer model of the object on the basis of changes in the cut surfaces in the respective orthogonal directions. A method according to claim 6, wherein the plurality of two-dimensional drawings comprise first, second and third drawings of the object from respective first, second and third viewing directions. A method according to claim 6 or claim 7, further comprising the step of displaying an image of the three-dimensional computer model. A method according to any of claims 6 to 8, wherein information is input from a user defining the depth of a closed region. A computer program product comprising instructions for causing a programmable processing apparatus to become operable to perform a method as set out in at least one of claims 6 to 9. A computer program product according to claim 10, when embodied as a memory device storing the instructions.

Inventors: KONDO SATOSHI, SATO YUICHI, SHIMIZU KAZUMA, KONDO, SATOSHI, SATO, YUICHI, SHIMIZU, KAZUMA, Kondo, Satoshi, c/o Canon Kabushiki Kaisha, Sato, Yuichi, c/o Canon Kabushiki Kaisha, Shimizu, Kazuma, c/o Canon Kabushiki Kaisha
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1991
Main classification: G06T17
IPC codes: G06T17