METHOD AND COMPUTER PROGRAM FOR DESIGNING GEOMETRIC SHAPES DESCRIBED BY MEANS OF TRIANGLES, OF PRODUCTS TO BE MANUFACTURED IN A DIE MOLDING PROCESS

Abstract: In a method for designing geometric shapes of products to be manufactured in a die molding process, which geometric shapes are described by means of multiangular basic figures, in particular triangles, in STL (structural triangulation language), by determining the draft angles of separate sides of these basic figures and determining the displacement vectors of the ends of the sides whose draft angles have been determined, a shape is given to the products allowing them, during their manufacture, to be readily removed from the relevant dies.

Description: Title: Method and computer program for designing geometric shapes described by means of triangles, of products to be manufactured in a die molding process. The present invention relates to a method for designing geometric _ shapes of products to be manufactured in a die molding process, which geometric shapes are described by means of multiangular basic figures, in particular triangles, in STL (structural triangulation language). Here, the term 'die' is also understood to mean various types of punches and further tools required for manufacturing specific product forms. For designing and manufacturing products, CAD/CAM systems are often used. For keeping the exchange of data from a CAD system to a CAM system as reliable as possible, the sometimes complex mathematical description needed for defining a three-dimensional geometry in a CAD model is abandoned from the moment when a model enters the CAM path. As a result, drastic changes to the model have become virtually impossible from that moment onwards, or at least highly time-consuming in that in each case, the CAD model should be fallen back on. In particular when a model is to be manufactured in a die molding process through injection molding, the model is seldom, if ever, directly suitable for making dies therefrom, because no regard is had to the releasability of the product, i.e. after hardening, the product can no longer, or only in an extremely troublesome manner, be removed from the molding cavity of die. In other words, the proper draft angles and parting lines for the die molding process have not been taken into account. Consequently, much time is wasted on having to redraw the models each time. In practice, a product should be slightly more releasing than seems to be necessary for overcoming the stresses created between die and molded piece. The degree to which this is necessary depends on the material with which the molding takes place and the material of which the die consists. The condition which a model is required to meet with regard to this last is referred to as the minimum draft angle. To solve the above-mentioned draft angle problem, it is known to place surfaces of products designed via CAD systems at a draft angle of, for- instance, 1-2°. However, this manner of operating does not satisfy in practice. In more advanced designing and manufacturing techniques, a CAD model is fed to the CAM system in structural triangulation language (STL), wherein a model is described through a set of triangles over the surface of the geometry. This is a simple and reliable description of a solid model (this is a model described by a closed surface in a three-dimensional space), partly because it involves no complex mathematics. Accordingly, the transfer of this model to a CAM system is highly reliable. However, STL models to be manufactured in a die molding process often lack the proper draft angles, so that here, too, the design of a draft via a manufacturing technique to an injection molding model does not work well in practice. The object of the invention is to overcome the problems outlined hereinabove and to provide a method for designing geometric forms, described by means of triangles, of products to be manufactured in a die molding process, wherein, before a model enters the CAM path, the draft angles are provided in the STL files in a simple manner. In accordance with the invention, this object is realized when the method as described in the preamble is characterized in that by determining the draft angles of separate sides of said basic figures and determining the displacement vectors of the ends of the sides whose draft angles have been determined, a shape is given to the products allowing them, during their manufacture, to be readily removed from the relevant dies. In practice, in particular in a CAD system, STL files obtained are converted by means of a program present in the computer therefor, into STL files for product forms corrected for draft angles. Before a draft angle correction is effected in the STL files, these files are converted into CTL (connected triangulation language) files, described- by nodes and normal vectors. This means that when a triangle side is positioned at relevant draft angles, the adjoining triangles which have the end to be displaced of such side in common, are formed along to enable maintaining a solid model. When a model is rendered releasing, material may be added or removed, depending on the direction from which the model is rendered releasing. In a preferred embodiment, a draft angle correction is performed on a model from a joining face between die parts to be used for manufacturing a product. This has the advantage of providing a better connection in the joining face of the molding piece in the die parts and means that when the model is rendered releasing, material is removed. However, there will be situations where it is better to perform a draft angle correction in the direction towards a joining face, hence by adding material, for instance for maintaining roundings or when a product, such as a cooling block with thin, sufficiently spaced-apart ribs is to be molded. In a concrete embodiment, the draft angles (φ u , φ v ) of a line section (qs) relative to the projections of the normal vectors of two adjoining triangles of which this line section forms a part on the joining face (xz), are determined and from this, the displacement of an end point (s) of this line section, needed for rendering the line section releasing, is determined. For maintaining the original form as much as possible during the provision of the draft angles, it is preferred that in each case, for the normal vectors, the normal vectors be used as defined for the triangles of the uncorrected model. The invention does not only relate to a method for designing geometric shapes of products to be manufactured in a die molding process, but also to a method for converting a model in STL into a model in model data corrected for draft angles. In a more concrete embodiment of such method, the STL files are converted into CTL (connected triangulation language) files described by nodes and normal vectors, after which, by determining the draft angles of separate sides of the triangles whereby geometric shapes are described, and by determining the displacement vectors of the ends of the sides whose draft angles have been determined, the model data corrected for draft angles are obtained. The invention further relates to a computer program for converting STL files into files for a model corrected for draft angles. More concretely, the invention relates to a computer program for designing geometric shapes of products to be manufactured in a die molding process, which geometric shapes are described in STL by means of triangles, characterized in that by determining the draft angles of separate sides of these triangles and determining the displacement vectors of the ends of the sides whose draft angles have been determined, a shape can be given to the products to be manufactured, whereby they can, during their manufacture, readily be removed from the relevant dies. Finally, the invention further relates to a computer system, in particular a CAD-CAM system, provided with means for realizing a draft angle correction of the data provided by a CAD system in STL, for designing dies in a CAM system, said means being formed by the above-mentioned computer program. The invention will now be further explained with reference to the accompanying drawings. In these drawings: Fig. 1 shows a diagram on the basis of which the operation of rendering a line section releasing will be explained; Fig, 2 shows a diagram on the basis of which the displacement of an end point of a line section whose draft angles have been determined will be explained; Figs. 3A-3C show the manner in which a simple model is rendered releasing; Figs. 4A-4I show a number of diagrams on the basis of which a solution for overlaps and folds in a model is explained; Figs. 5A-5C show a number of diagrams on the basis of which the conflict situation is explained which may occur when a sharp fold is created through the change of surrounding triangles,; Figs. 6A, 6B show a number of diagrams on the basis of which a further conflict situation is explained; and Figs. 7A-7E show a number of diagrams on the basis of which a possible solution to the conflict situation shown in Figs. 6A, 6B is explained. The method according to the invention starts from STL files as provided by a CAD system when a rapid prototyping technique is used. The STL file comprises a set of triangles, each of which is described by three coordinates and a normal vector. It contains no information about the interrelationship of the triangles. Hence, if a triangle is displaced or acquires a different shape, the surrounding triangles do no change along. Thus, a hole is created in the surface of the model, which detracts from the solid model definition. By coupling the coordinates of the triangles, such hole cannot be created, because through the change of a triangle, the surrounding triangles adjust themselves automatically. The triangles in the STL file can be coupled by describing the triangles through nodes. By joining nodes of corresponding coordinates into one node, this node forms part of several triangles. If a node is displaced, all triangles containing this node will change along. For this reason, the STL files will hence first be converted to CTL files, i.e. files described in connected triangulation language. Triangles in CTL files are defined by three nodes and one normal vector. The angle made by a normal with a joining face represents the draft angle of the triangle. On the basis of these draft angles, it can readily be determined whether the total model is non-releasing and by which triangles this is caused. When it is known which triangles do not meet the releasing requirement, the model as such can be modified so as to render these triangles releasing. Changing the model is effected by displacing the nodes. When a node of a triangle is displaced in such a manner that this triangle has become releasing, the other triangles containing this node will change as well. For displacing a node to render a relevant object releasing, a joining face is started from and correcting takes successively place in the direction away from this joining face. Displacing a node means rotating the line section on which this node lies. Whether or not the node should be displaced depends on this line section being releasing. Because the line section forms part of two triangles, the releasability of the line section should be assessed in two directions. Fig. 1 shows a Cartesian coordinate system xyz, the xz-plane representing a joining face in respect of which it should be assessed whether the line section qs is releasing and how far and in what direction the node s should be displaced so as to render the line section qs releasing. The line section qs forms part of the triangles qrs and pqs. The normal vectors of these triangles are represented by u and v respectively. The draft angles φ u and φ v can be represented by the relationships: wherein Lqs y is the length of the component of the line section qs in the y-direction, α is the difference between the angle made by the projection qs xz of the line section qs on the joining face xz with the x-axis, and the angle made by the projection of the normal vector u on the joining face xz with the x-axis, while β is the difference between the angle made by the projection of ps xz of the line section qs on the joining face xz with the x-axis, and the angle made by the projection of the normal vector v on the joining face xz with the x-axis, and Lqs xz is the length of the projection of the line section qs on the joining face xz. If or β equals zero, the corresponding draft angle becomes zero. In the case of a negative outcome of a draft angle, as holds for φ u , anti-release is involved. If the outcome is positive, the line section relative to the direction of the projection of the relevant normal vector in the joining face is, it is true, releasing, but it depends on the minimum draft angle whether the line section is sufficiently releasing. On the basis of the line being or not being releasing, the point s should be displaced until the line section is sufficiently releasing relative to the two directions in question. Fig. 1 clearly demonstrates that the line section qs is not releasing relative to the direction of the vector u xz (this is the projection of the normal vector u in the joining face xz). The node s will hence have to be displaced. Because in each case two draft angles per line section are calculated, there are two displacement vectors. From this, a total vector should be calculated, such that the line section qs becomes releasing relative to the two vectors v xz and u xz . The point s should be displaced in the negative direction of the vector u xz through a distance ai = s u + L.cotg γ, γ being the desired draft angle and s u = cosα.Lqs xz . Since the line section qs was already releasing in the direction of the vector v xz , yet insufficiently releasing at the most, to this it will apply that the point would have to be displaced through a distance a 2 = -s v + L.cotg γ, wherein Sv ^ cosβ.Lqs xz . To obtain the total displacement vector a, the vectors aiand a 2 should be added up vectorially. The distance and direction of the displacement of the point s are thus determined. After a line section has been corrected by displacing a node according to the calculated displacement vectors, the normal vectors of the triangles associated with the line section are no longer in correct position. Fig. 2 shows how the node s has been displaced according to the above calculation. It also clearly shows that the normal vectors of the triangles qrs and pqs differ from those of the triangles qrs' and pqs' respectively. The normal vectors should be reconstructed to provide that upon further adjustments, the original shape is maintained as much as possible. When the node t is to be subsequently displaced to render the line section rt releasing, the normal vector of the triangle trs will have to be started from, rather than that of the triangle trs'. Figs. 3A-3C show three diagrams on the basis of which it will be explained how a simple model, formed by a vertical beam, is rendered releasing. Each side face of the beam is described by four triangles. The node f forms part of the triangles abf, bcf, aef, cfg, efi, fgk, fij and fjk. First, the line section bf is rendered releasing, for which purpose the point f is to be displaced both in the direction of the line fe and in the direction of the line fg. To obtain a minimum draft angle in both directions, the point f should be displaced to f . As a result, in STL, these triangles are all slightly moved along. When the line sections ae, dh and eg are subsequently rendered releasing, the points e, h and g respectively are all displaced slightly inwards, the relevant triangles are moved along and a shape as shown in Fig. 3B is created. After that, the line section fj is rendered releasing, for which purpose the point j is displaced to j' and subsequently also the line sections e'i, h'l and g'k, to create a shape as shown in Fig. 3C. Ultimately, a model in STL is formed which can become the basis for a die to be designed in a CAM system. At a draft angle to the order of 1°, the beam in Figs. 3A-3C is converted into a truncated pyramid. At greater draft angles, in particular when the specific shape of a model requires a very fine triangle structure, problems may occur. A number of triangles may then become redundant and overlaps and folds may occur in the model. Due to the influence of the triangles on one another, unpredictable faults may occur in the model at first sight. Such situation will be explained with reference to Figs. 4A-4I. Fig. 4A shows a cube in which only the top face is divided into triangles. It is assumed that only the right-hand side face M should be rendered releasing according to a very great draft angle, as indicated in Fig. 4B. In the present exemplary embodiment, for rendering the face M releasing, a number of triangles are taken along in the top face and these triangles form overlaps with other triangles in the top face. Fig. 4C is a top plan view of Fig. 4A; the dotted line herein indicates where the top side of the face to be corrected will be located. When the line bf is displaced to the dotted line, the triangles abc, cde, edg and ehf will be converted into triangles ab'c, cd'e, ed'f and efh respectively, which results in an overlap face. Accordingly, a number of triangles is redundant and should be removed. Because folding over 180° involves reversal of direction of the normal vector, the triangles where this occurs can be removed one by one. For removing the triangle ed'f (Fig. 4D), the node e is displaced to d' to form Fig. 4F, due to the fact that triangles are taken along. Next, node c is displaced to b' to form Fig. 4G. After that, node g is displaced to b' to form Fig. 4H, whereupon, finally, node h is displaced to d' to form Fig. 41. Hence, after draft angle correction of face M, i.e. of all triangles from which this face M is built up, the top face only contains four triangles. A further conflict situation may occur when, through the change of surrounding triangles, a sharp fold is formed. Fig. 5A shows a wedge having a relatively sharp angle. Generally, such sharp angles do not occur in an STL model intended for injection molding; however, this situation may in fact occur due to a "faulty" generation of an STL file in a CAD system. If the xz-plane is again the joining face, the result of the released model can be seen in Fig. 5B. However, when the desired draft angle is so great that the point q is to be displaced in such a manner that it falls outside the model, an incorrect model is created (Fig. 5C). For this reason, triangles forming parfc- of a sharp fold are removed. Other, more complicated adjusting methods are possible. Yet another conflict situation is shown in Figs. 6A, 6B. In the model shown in Fig. 6A, the triangles upt, pqs and qrs are non-releasing. If the model is rendered releasing in the manner described hereinabove, the situation as shown in Fig. 6B occurs. At first, triangle pqt met the releasing requirement set, but after correction of the triangle pqs, pqt has assumed a faulty position. This situation only occurs with line sections which adjoin both a releasing and a non-releasing triangle. When the displacement vectors for the line section pq are calculated, only a displacement of the node q is needed to render the line section of the triangle pqs releasing, because the line section is already releasing relative to the triangle pqt. This one displacement vector is then also the total displacement vector. Figs. 6A, 6B clearly demonstrate that when node q is displaced according to the total displacement vector, triangle pqt assumes a faulty position. Generally, the deviation thus caused is so small that it falls within the rounding-off margin of the calculations and is not considered to be a fault in the result of the correction. In some cases, however, the fault will not be negligible. To enable solving that conflict, the draft angle of the triangle which need not be handled should be kept intact. A possible solution to this problem will be explained with reference to Figs 7A-7E. Fig. 7A shows a model of which the two triangles of one plane are non-releasing. When the triangle A herein were rendered releasing in the above-described manner, the triangle B, which is already releasing, would become non-releasing as a result thereof. Fig. 7B is a top plan view of the model in Fig. 7A. To isolate the problem, a top plan view of only the triangles A and B has been drawn in Fig. 7A. First, the displacement of point P, i.e. the displacement vector a, is determined relative to the plane A and a perpendicular k to the vector point is defined. If the draft angle of the triangle B should remain intact, a line m can be drawn along the point to be displaced, perpendicular to the direction of the normal vector associated with triangle B. The intersection Q of the two lines then represents the new position of the point to be displaced, so that both triangles become releasing. The result hereof is shown in Figs. 7D and 7E. After the STL files have been converted into CTL files and, in the manner described hereinabove, the line sections associated with in each case two juxtaposed triangles have been defined and selected in terms of being anti-releasing, the displacement vectors are determined and subsequently, if required, the above-described conflict situations are solved. This method for rendering a model releasing can be performed by means of a computer program in a CAD-CAM system. The invention is not limited to the exemplary embodiment here described with reference to the drawings, but comprises all types of modifications hereof, of course in so far as they fall within the protective scope of the following claims. In particular, it is pointed out that the draft angle correction here described is not bound to a model description in STL form, but that this calculation also holds for multiangular basic figures. However, because in practice, a model is presented in STL configuration, this would mean that a conversion from STL to a description in multiangular basic figures had to be performed, which implies an unnecessarily complicated manner of operating. Further, it is pointed out that the expressions STL and CTL do not everywhere have the same literal meaning. Accordingly, it is not the name indication as such that is important, but the actual meaning of what files in STL and CTL imply, which is clearly expressed in the present description of the drawings.

Claims: CLAIMS 1. A method for designing geometric shapes of products to be manufactured in a die molding process, said geometric shapes being described by means of multiangular basic figures, in particular triangles, in STL (structural triangulation language), characterized in that by determining the draft angles of separate sides of said basic figures and determining the displacement vectors of the ends of the sides whose draft angles have been determined, a shape is given to the products allowing them, during their manufacture, to be readily removed from the relevant dies. 2. A method according to claim 1, characterized in that, in particular in a CAD system, obtained STL files are converted, by means of a program present for that purpose in the computer, into data files for product forms corrected for draft angles. 3. A method according to claim 2, characterized in that before a draft angle correction is provided in the STL files, said files are converted into CTL (connected triangulation language) files described by nodes and normal vectors. 4. A method according to claim 3, characterized in that a draft angle correction is performed on a model from a joining face between die parts to be used for manufacturing a product. 5. A method according to claim 4, characterized in that the draft angles (φ u , φv) of a line section (qs) relative to the projections of the normal vectors of two adjoining triangles of which said line section forms a part on the joining face (xz), are determined and from this the displacement of an end point (s) of said line section, needed for rendering the line section releasing, is determined. 6. A method according to claim 5, characterized in that for the normal vectors, in each case the normal vectors are used as defined for the triangles of the uncorrected model. 7. A method for converting a model in STL into a model in model data corrected for draft angles. 8. A method according to claim 7, characterized in that the STL files are converted into CTL (connected triangulation language) files described by nodes and normal vectors, whereupon, by determining the draft angles of separate sides of the triangles whereby geometric shapes are described, and determining the displacement vectors of the ends of the sides of which the draft angles have been determined, the model data corrected for draft angles are obtained. 9. A computer program for converting STL files into files for a model corrected for draft angles. 10. A computer program for designing by means of triangles, geometric shapes, described in STL, of products to be manufactured in a die molding process, characterized in that by determining the draft angles of separate sides of said triangles and determining the displacement vectors of the ends of the sides of which the draft angles have been determined, a shape can be given to the products to be manufactured, so that, during their manufacture, they can easily be removed from relevant dies. 11. A computer system, in particular a CAD-CAM system, provided with means for realizing a draft angle correction of the data provided by a CAD system in STL, for designing dies in a CAM system, said means being formed by a computer program according to claim 9 or 10.

Inventors: KNOPPERS GERMAN ENRIQUE, VAN DEN HOUT JEROEN, KNOPPERS, GERMAN, ENRIQUE, VAN DEN HOUT, JEROEN
Applicants: DEN HOUT JEROEN VAN, KNOPPERS GERMAN ENRIQUE, TNO, KNOPPERS, GERMAN, ENRIQUE, NEDERLANDSE ORGANISATIE VOOR TOEGEPAST-NATUURWETENSCHAPPELIJK ONDERZOEK TNO, VAN DEN HOUT, JEROEN
Application year: 2000
Main classification: G06T17
IPC codes: B21J13, B29C45, G06F17, G06T17