1. Field of the Invention
The present invention is related to a free-form surface generation method for generating a free-form surface, and particularly to a method and arrangement for generating a multisided patch used in a surface modeler for design.
2. Description of the Related Art
In the prior surface design system, a surface is usually generated by inputting and editing the control points of its surface model (a method for mathematical definition of a surface). Most of the conventional design systems have handled only four-sided patches represented by tensor product surfaces, because the object of interest often had a surface shape formed mainly of rectangular regions as in a car body. However, as the shape of the object of interest became complicated, a method for generating a patch defined by an arbitrary number of sides (topology) has become a technical problem.
The following are rough classifications of the mathematical models proposed up to now of patch surfaces which are free from topology restrictions:
(a) A surface generation method using a three-sided patch which is represented by a rational polynomial of three variables representing a barycentric coordinate system. PA0 (b) An algorithm for generating a multisided patch by a polynomial consisting of a multivariable coordinate system.
This approach is disclosed, for instance, in:
Hagen, H. and Portmann, H., "Curvature continuous triangular interpolants", Lyche, T. and Schumaker, L., eds., Mathematical Methods in Computer Aided Geometric Design, pp. 373-384, Academic Press, (1989); and PA1 Nielson, G. M., "Transfinite, Visually Continuous, Triangular Interpolant", Farin, G. ed. , Geometric Modeling: Algorithms and New Trends, pp. 235-246, SIAM, (1987).
This approach is disclosed, for instance, in: Loop, C. T. and DeRose, T. D. , "A Multisided Generalization of Bezier Surfaces", ACM Trans. on Graphics, Vol. 8, No. 3, pp. 204-234, (1989).
The restriction common to the above-mentioned approaches resides in that, since a multisided patch is to interpolate the data corresponding to each vertex of a polygon representing a region, the form of expressing a curve corresponding to each side of the polygonal region is limited. For instance, in Loop's approach, each boundary curve should be expressed by one Bezier polynomial.
Also, in Japanese Patent Application Laid-Open No. 80373/1991 official gazette, there is described a method for generating a free-form surface in a solid shape including rational curves. In this invention, an extended cubic rational Bezier patch is used as a formula-defining curve. Since this type is to generate only a four-sided patch, the surface of which is defined by two variables u and v, in order to span a surface over a region other than a four-sided shape, the region needs to be subdivided into a plurality of four-sided regions as depicted in FIGS. 5, 6 and 12 of the application. A surface formula has a restriction that the curve formula representing the boundaries of a surface is expressed by one rational cubic formula, so that there are many restrictions on the form of parametric expression of a curve formula. In addition, only continuity of G1 class is guaranteed to continuity of the connection between the generated surfaces. Although it may be possible to generate a surface having continuity of a higher degree (Gn, n.gtoreq.2nd class) by increasing the degree of a surface, no specific calculation method of control points in that case is shown.
Further, in Japanese Patent Application Laid-Open No. 221073/1987 official gazette, a method for creating a free-form surface using a Bezier surface is disclosed, but it can deal with only a four-sided patch surface as in the invention described in the previously stated official gazette, and there are also restrictions on the form of parametric expression of boundary curves. Moreover, a cubic Bezier patch surface does not guarantee even continuity of G1 class in regards to the connection between patches.
In addition, in Japanese Patent Application Laid-Open Nos. 216076/1987, 135965/1987 and 248280/1989 official gazettes, methods for generating a free-form surface are disclosed, wherein continuity of the connection between surface patches is of G1 class, but in any of them, the restrictions on the number of sides of a patch and the form of parametric expression of boundary curves still remain unresolved.
As described above, since the prior methods have many restrictions on the form of expressing a patch, the relationship between the control points of a surface model and a generated surface is defined by the used surface model when the control points are inputted and edited, and it does not always coincide with the intuition of a designer. For example, in a B-spline model, the control points need to be inputted as points which are not existing on a target surface, and it is also required to observe a restriction that they must be disposed on a two-dimensional lattice. For this, complex work must be performed even if a shape such as of an egg is inputted, which seems simple to the human eye.
Accordingly, in a site where a free-form surface is actually designed, a designer expresses the shape desired to be designed by a sketch or model, an operator familiar with the internal model of a surface design system inputs a surface model while measuring the above-mentioned sketch or model, the designer instructs the operator to perform more detailed editing work while checking the input figure, and the operator translates it to an edit operation prepared by the design system and inputs it. Such work is obviously inefficient because a third party called an operator intervenes between the designer and the design system.