Abstract:
A curved surface forming system for forming a curved surface which is constituted by a plurality of curves and represented by two curved surface parameters, comprising an inputting unit for inputting the plurality of curves, a judging unit for determining a definition direction, a data storing unit for storing a direction data representing the definition direction, a curve consulting unit for consulting the curve in the opposite direction, and a curved surface forming unit for forming a curved surface.

Description:
BACKGROUND OF THE INVENTION 
     This invention relates to CAD/CAM systems and automatic programming units, and more particularly to a curve-surface forming system of forming curved surfaces by using curves. 
     One example of the conventional technology of this type is the curve-surface defining and forming system disclosed by the publication &#34;Kikai Gijutsu (Mechanical Technology) Vol. 35, No. 13&#34; p 105-106, which is as shown in FIG. 1. 
     In FIG. 1, reference numeral 1 designates a curve inputting means for inputting curves forming a curved surface; 6, a curve consulting means for referring to a curve to obtain data on the curve in a parametric mode; and 5, a curved surface forming means for forming a curve surface by using the data on the curve thus obtained. This system is practiced by an electrical circuit as shown in FIG. 2. In FIG. 2, reference numeral 17 designates an inputting unit comprising a key board, mouse, function keys, etc.; 18, a CPU; 19, a memory unit including memories, magnetic discs, etc.; and 20, an outputting unit including a CRT, puncher, printer, plotter, etc. 
     The operation of the system will be described. As a premise for description, the term &#34;curve definition direction&#34; as used herein is intended to mean the direction in which, in referring to a curve in a parametric mode, the curve advances spatially with increasing parameters. In the figures referred to below, the curve definition direction is indicated by the arrow. And it is assumed that in a coordinate system on a curved surface, i.e., in a spherical coordinate system, the positions of points on the curve surface are determined by two curved-surface parameters U and V. 
     A curved-surface forming procedure shown in FIG. 3 will be described with reference to FIG. 4. In FIG. 4, reference characters A 1 , A 2 , B 1  and B 2  designate parametric curves. First, the curves are inputted using the curve inputting means, and each curve is consulted in the curve definition direction by the curve consulting means 6, so that a curved surface is formed by the curve surface forming means 5 using the curve line data obtained through the consultation. 
     As is apparent from the above description, in the conventional method, the curves forming the curved surface must be defined in the same direction as the curved-surface parameters U and V as shown in FIG. 4. Therefore, in defining a curved surface, the curves must be inputted in accordance with the rule of curve definition direction which intuitively is difficult to understand. If an error is made with the curve definition direction, then the aimed curved surface will not be formed at all. 
     SUMMARY OF THE INVENTION 
     An object of this invention is to eliminate the above-described difficulties accompanying a conventional curved surface forming system. More specifically, an object of the invention is to provide a curved surface forming system which can form a curved surface even when the curve definition direction is not coincided with the curved-surface parameter direction. 
     The foregoing object of the invention has been achieved by the provision of a curved surface forming system for forming a curved surface which is made up of a plurality of curves and represented by two curved surface parameters, which, according to the invention comprises: inputting means for inputting the plurality of curves forming the curved surface; judging means for judging whether or not, in each of the curves, the definition direction thereof coincides with the parameter direction of the curved surface; data storing means for storing, when the definition direction is opposite to the parameter direction of the curved surface, reverse direction data provided for the curve; curve consulting means for consulting, when, in reference to each curve, the reverse direction data has been provided for the curve, the curve in the opposite direction; and curved-surface forming means for forming a curved surface by using the data of the curves thus consulted. 
     In the curved-surface forming system according to the invention, the curve-definition-direction judging means determines whether the definition direction of each curve coincides with the parameter direction of the curved surface, and if not, the curve consulting means allows the reference of the curve in the opposite direction. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 6 is a block diagram for a description of one example of a curved-surface forming system according to this invention. FIGS. 7A to 7C are a flow chart for a description of the operation of the system according to the invention. FIGS. 8A to 8C is an explanatory diagram showing a data storing format. FIGS. 9 and 10 are explanatory diagrams showing examples of a curved surface to be formed. FIG. 1 is a block diagram showing a conventional curved-surface forming system. FIG. 2 is a block diagram showing the arrangement of an apparatus for practicing the system of the invention and the conventional system. FIGS. 3 through 5 are explanatory diagrams showing curved surfaces to be formed. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     One example of a curved surface forming system according to this invention will be described with reference to FIG. 6. In FIG. 6, reference numeral 1 designates a curve inputting means for inputting curves forming a curved surface; 2, a judging means for determining whether or not curve definition directions are the same as curved-surface parameter directions; 3, a data storing means for storing, when the defining direction of a curve is opposite to the parameter direction of the curved surface, reverse direction data together with the data of the curve; 4, a curve consulting means for consulting, when the reverse direction data is added to a curve, the curve in the opposite direction; and 5, a curved surface forming means for forming a curved surface using the curve data referred to by the curve consulting means 4. Similarly as in the conventional curved surface forming system described above, these means are practiced by the electrical apparatus as shown in FIG. 2. 
     The operation of the curved surface forming system thus organized will be described. In forming a curved surface as shown in FIG. 3, in practice curves extended as shown in FIG. 5 are inputted. 
     More specifically, the curves A 1 , A 2 , B 1  and B 2  are inputted in the stated order according to a flow chart of FIG. 7 (Step S1). Then, the curve data are stored in a table as shown in FIG. 8 (Step S2). As a manner of the inputting the curves, for example, the case of inputting a train of passing points will be described. Regarding the curve A 1 , if the train of passing points (P 1 , P 2 , . . . . . Pi . . . ) having the values of X, Y and Z are inputted successively, these data are stored in the curve data A 1  of FIG. 8(a), specifically, in the item of the passing points of FIG. 8(b), successively. 
     After the inputting of curves, the tangential vectors V i  at each point P i  and the curve parameter t i  are calculated as preparation for the consulting of the curves. The tangential vectors V i  are calculated as follow, for example. ##EQU1## Assuming that the number of points is n, the curve parameter t i  (0≦t i  ≦1) are calculated as follows. ##EQU2## The relation of P i , V i  and t i  is shown in FIG. 8(c). And the curve definition directions are detected. For the first curve A 1 , its definition direction is determined as a forward direction, the direction of the curve A 1  being the same as the curved surface parameter direction U (Step S3). Since the forward direction being detected, the forward direction flag is stored in the table in FIG. 8 (Step S4). Next, the curve A 2  is inputted similarly as in the case of the curve A 1 . In detection of the definition direction of the curve (Step S3), the vectors d[A 1  (0.5)]/du and d[A 2  (0.5)]/du of the tangents at the mid points of the curves A 1  and A 2  are obtained (U=0.5 being the mid points). And it is determined from the angle formed by the vectors thus obtained whether the vectors are substantially in the same direction or opposite in direction to each other. In this case, the curves A 1  and A 2  are extended in the same direction, and the forward direction flag is set in the table of FIG. 8 (Step S4). 
     The curve B 1  is inputted in the same manner. The curve B 1  is one which connects the start points of the curves A 1  and A 2 . Therefore, the vector ##STR1## extended from the curve A 1  to the curve A 2 , and the vector d[B 1  (0.5)]/dV of the tangent of the curve B 1  at the mid point are subjected to comparison. These vectors being opposite in direction, the reverse direction flag is stored in the table of FIG. 8. The above-described operations are carried out for all the curves (Step S5). Thereafter, the points on the curves are referred to by using the table of FIG. 8 (Step S6). And the forward and reverse direction flags are checked (Step S7). With the forward direction flag, the consultation is made in the curve definition direction (Step S8); and with the reverse direction flag, the consultation is made in the opposite direction (Step S9), to read curve data. As a manner of the consulting of the curve, for example on the case of the curve A 1 , that is, when the parameter t is provided, the manner of obtaining the corresponding points P on the curve A 1  will be described. A parameter section between t i  and t i=1  including t (t i  ≦t≦t i+1 ) is obtained from FIG. 8(b). In the section, portion parameters t are obtained as follow. ##EQU3## By using the tertiary Hermite interpolation the points are calculated as follows. 
     
         P=h.sub.1(t) ·P.sub.i +h.sub.2(t) ·P.sub.i +.sub.1 +h.sub.3(t) ·V.sub.i +h.sub.4(t) ·V.sub.i+1 
    
     Where 
     h 1 (t) =2t 3  -3t 2+1   
     h 2 (t) =-2t 3  +3t 2   
     h 3 (t) =t 3  -2t 2  +t 
     h 4 (t) =t 3  -t 2   
     In the case of reverse direction, the above described processing are performed by replacing t to 1-t. (t=1-t) As a result, it is possible to consult the points on the curved surface forming by the form of P=A 1  (t) independent to the definition direction of the curve. Linear interpolation, B-spline interpolation or the like may by used to obtain the points P, but the suitable preparation data for each interpolation method s required. The curve data thus read are used to form a curved surface (Step S10). A manner of the curved surface forming will be described with reference to FIG. 5. By the processing of consulting of the curve the points on the curve are able to consult as A 1  (t), for example. For that reason, for example, points P on the curved surface are formed as the Coons surface patch from the curved surface parameter U.V. as follow. ##EQU4## where Ψ is blending function which is obtains as follow for example. Ψ.sub.(t) =2t 3  -3t 2  +1. 
     FIG. 7C shows a Step S11 which is effected instead of Step S4 in FIG. 7A. That is, it is determined whether or not the curve definition direction is forward or reverse (Step S3), and if it is forward the curve data are stored by taking them in the curve definition direction, and if it reverse, the curve data are stored by taking them in the opposite direction (Step S11). In the following curve consultation, similarly as in the above-described conventional system, the curves stored are referred to as they are, with the same effect as that in the above-described embodiment. 
     In the above described embodiment, four curves are used to form a curved surface. However, the technical concept of the invention can be equally applied to the case where a curved surface is formed using less than or more than four curves as shown in FIG. 9 or 10. 
     In the apparatus for practicing the system as shown in FIG. 2, the outputting unit 20 may be replaced by an NC device for applying control instructions to a drive unit for a numerically controlled machine. 
     As was described above, in the system of the invention, it is determined whether or not the curve definition direction coincides with the curved surface parameter direction, and if not, the curve consulting means is operated so that the reference of the curve is made in the direction opposite to the curve definition direction. Therefore, with the system, curves forming a curved surface can be inputted independently of their definition directions, with the result that the curved surface defining efficiency is greatly improved.