The present invention relates to the field of Computer-Aided Design and more particularly to the methods of representation of a solid object within such a framework.
Prior art CAD systems approach the design from solely a geometry point of view.
A strong interest exists to allow attaching physical meaning to such designs. Previous attempts in merging or integrating the CAD systems with the Finite Element Methods of simulation have failed or provide unsatisfactory results. The inventors of the present invention believe that it is due to the way the geometry is represented by only its boundaries.
The present invention introduces a new way to represent an object in CAD systems, allowing to address the problem of attaching physical meaning to designs and to represent objects that are changing their position, orientation and shape in time.
In a first aspect, the invention provides a method for achieving a representation of an object within a data structure for a Computer Aided Design (CAD) system employing a Medial Axis Transformation (MAT), the representation of the object comprising a set of adjacent bounded surface elements called medial axis transformation faces, the medial axis transformation faces being bound by sets of medial axis transformation edges, which are portions of curves lying on a surface of the medial axis transformation faces on either side of the edge, and points where several medial axis transformation faces meet are called medial axis transformation vertices. The method comprises at least defining each of the medial axis transformation vertices as points in a space domain; assigning a radius function to each of the medial axis transformation vertices, based on only a single value; defining each of the medial axis transformation edges as a curve in space; defining limits of each of the medial axis transformation edges as two medial axis transformation vertexes which lie on the curve; assigning a radius function to each of the medial axis transformation edges; defining each of medial axis transformation faces as a surface in space; defining the limits of each of the medial axis transformation faces as a medial axis transformation loop, comprising at least three medial axis transformation edges, sharing each a medial axis transformation node, whereby a direction, clockwise or counter-clockwise, of the medial axis transformation loop defines on which side of the medial axis transformation loop the medial axis transformation face will be formed; defining the medial axis transformation links as the edges which are shared by at least two medial axis transformation faces; assigning a radius function to each of the medial axis transformation faces; and defining a medial axis transformation object as a connected set of medial axis transformation faces, edges and vertices.
In a preferred embodiment, in the step of assigning the radius function to each of the medial axis transformation edges, the function is linear, whereby the radius varies linearly along the medial axis transformation edge.
In a further preferred embodiment, in the step of assigning the radius function to each of the medial axis transformation edges, the function is non-linear, whereby the radius does not vary linearly along the medial axis transformation edge.
In a further preferred embodiment, in the step of assigning the radius function to each of the medial axis transformation edges, the function is defined numerically, piece-wise linear or by other methods to define numerical functions.
In a further preferred embodiment, in the step of assigning the radius function to each of the medial axis transformation faces, the function is linear, whereby the medial axis transformation vertices and medial axis transformation edges are linear and coplanar.
In a further preferred embodiment, in the step of assigning the radius function to each of the medial axis transformation faces, the function is non-linear.
In a further preferred embodiment, in the step of assigning the radius function to each of the medial axis transformation edges, the function is defined numerically, piece-wise linear or other methods for defining numerical functions.
In a further preferred embodiment, the representation of the object is achieved together with a Boundary Representation (BREP), and the method further comprises for each medial axis transformation data structure element, assigning a link to boundary representation data structure elements defining the respective medial axis transformation element; and for each boundary representation data structure element assign a link to the medial axis transformation data structure elements defining the respective boundary representation element.
In a second aspect, the invention provides a Computer Aided Design CAD system configured to implement geometric engine functions that use a medial axis transformation based data structure as a solid representation method.
In a further preferred embodiment of the system, the geometric engine functions use the medial axis transformation based data structure solid representation method together with a boundary representation method.
In a third aspect, the invention provides a Computer Aided Design CAD system configured to implement part and assembly modeling functions that use a medial axis transformation based data structure as a solid representation method.
In a further preferred embodiment of the system, the part and assembly modeling functions use the medial axis transformation based data structure solid representation method together with a boundary representation method.
In a fourth aspect, the invention provides a user interface configured to enable a creation and manipulation of objects represented by a medial axis transformation-based data structure at least as a solid representation method.
In a further preferred embodiment of the method for achieving a representation of an object within a data structure for a Computer Aided Design (CAD) system, the representation of the object further comprises a 4th parameter corresponding to time and a medial axis transformation shell, thereby enabling a 4-dimensional solid representation method.
In a fifth aspect, the invention provides a Computer Aided Design CAD system configured to implement geometric engine functions that use a 4-dimensional solid representation method.
In a sixth aspect, the invention provides a Computer Aided Design CAD system configured to implement part and assembly modeling functions that use a 4-dimensional solid representation method.
In a seventh aspect, the invention provides a user interface configured to enable a creation and manipulation of objects represented in a 4-dimensional environment by a 4-dimensional solid representation method.
The invention will be better understood in view of the detailed description of preferred embodiments, and in reference to the figures, wherein
Computer Aided Design (CAD) is the use of a computer system to assist with the creation, modification, analysis or optimization of a design. One particular interest of CAD systems—and in particular to ones for mechanical design—is the task of representing and manipulating an object's shape.
A typical architecture of a modern CAD system according to prior art is exemplified in
An object may be represented geometrically, i.e., as a set of geometrical data, or parametrically, i.e., a geometric object plus an ordered set of features, e.g., functions used in the creation of the objects-104 in
Differences exist in current CAD system in the way the objects are created and manipulated. However, all of them make use of a single method to represent the object in the database, the so-called Boundary Representation (BREP). The representation of the geometrical model is referred to as solid modeling, which is a consistent set of principles for mathematical and computer modeling of 3D solids. Unlike related topics as computer graphics or geometric modeling, the solid modeling emphasizes on physical fidelity, by guaranteeing a proof of integrity of the solid.
A solid modeling representation model is a method to capture geometrical and topological data of a virtual object in the form of a data structure. The minimum requirement for a solid modeling representation model is to provide a point classification function, i.e., to be able to tell whatever a point is inside or outside a solid object—in other words to provide a proof that the object is fully defined.
Several modeling representation models exist:
Boundary representation (BRep) is used in most of CAD systems and consists in representing and manipulating solid models in terms of the “skin” surrounding them. The skin—or shell—is composed of a set of adjacent bounded surface elements, called faces. Faces are bound by sets of edges, which are portions of curves lying on the surface of the faces on either side of the edge. The points where several faces meet are called vertices. In
The first introduction of the Boundary Representation is accredited to (Braid I., 1974) and (Braid, Hillyard, & Stroud, 1980) while the current state-of-art is more elaborated in (Stroud I., 2006).
Around the data structure, the complete functionality of a CAD system is constructed in an onion-like structure as illustrated in
The Medial Axis (MA) of a solid object is the locus of the center points of all maximal spheres inside an object. A maximal inscribed sphere is a sphere that is contained in the object but which is not a proper subset of, i.e., completely contained in, any other sphere inside the object. In other words, Medial Axis is the set of all points having more than one closest point on the object's boundary. It is sometimes referred to as the topological skeleton. To the Medial Axis, a radius function can be assigned with the value of the radius of the corresponding maximal sphere at each point of the Medial Axis. The Medial Axis together with the radius function is called the Medial Axis Transform (MAT). The Medial Axis of 3D solid is a structure containing basically faces and therefore, sometimes referred to as “medial surface”.
The Medial Axis was first introduced by (Blum, 1973) as a means to describe biological shapes and since then it is used mostly in the academic world in various algorithms and applications. Up to now it was exclusively regarded as a property of an object containing additional sought-after topological information.
The present invention, proposes a solid modeling representation model based on the Medial Axis Transformation principle to be used for application to Computer-Aided Design systems.
It should be noted that each MAT element is defined, i.e., linked, by several BREP elements. For exemplification, MAT vertex 7 (mv7) is defined as the center of the circle tangent to BREP edge 2 (be2); BREP edge 3 (be3) and BREP edge 4 (be4). Consequently, each BREP element can be defined (or linked) by several MAT elements. For example, BREP edge 4 (be4) is defined as the edge tangent to the circles corresponding to MAT elements mv5, me4, me5, mv6, me6, mv7 and me8; furthermore, the zero-radius MAT nodes (mv5 and mv9) define the limits of the edge. It should be noted also that MAT edges me5 and me3 are not linear. For this particular case, they are parabolic curves. The radius function along these edges is also defined as a 2nd degree single parameter function.
A similar representation can be developed for 3-dimensional objects.
A data structure to capture the full extent of MAT information has been developed as introduced in
As it will be shown below, the MAT data-structure can be used alone to represent an object in a CAD environment or in relationship with a BREP data-structure to form a hybrid-representation.
Various methods have been proposed by the research community to calculate the medial axis of solid models, among which the so-called “divide and conquer” algorithm by (Stroud, Renner, & Xirouchakis, 2007). The named algorithm, calculates the MAT structure based on the triangulation of the modified-DUAL, as introduced in
By extending the above mentioned algorithm (Stroud, Renner, & Xirouchakis, 2007) or potentially employing equivalent ones, the conversion can be assured between the BREP and MAT representations.
For comparison,
The above example is considered in 2D space for simplification. The data structure concept is extendable to 3D objects as illustrated in
The two representations are equivalent and by various algorithms, as introduced before, the information may be converted. Furthermore, the two representations can be simultaneously kept in the data structure, which might or might not be linked: each MAT vertex is defined as the center of the circle—or sphere in 3D—tangent to at least 3 BREP elements or each BREP edge is fully defined by being tangent to the circles—or spheres in 3D—defined by at least two MAT vertices.
The representation method is extensible to objects defined by complex surfaces.
To assure a proof of integrity (fully defined solid object), a function has been developed to determine whatever a random point lies inside, outside or on the boundary of the object by using only the MAT data structure. An equivalent function exists for the BREP representation.
Based on the MAT representation, new creation and manipulation functions for solid objects can be derived. These functions may or may not make use of the information stored in the BREP data structure. Consequently, functions build for the BREP representation can be modified to make use of the MAT data structure improving their performance.
An object represented by a MAT method can be created from scratch or converted from a BREP object. The creation will make use of certain functions through which a CAD user can populate the data structure with the needed information; while the conversion (which can be manual or automatic) will make use of certain algorithms to calculate the needed information. Conceptually, by representing an object by the MAT method, the following steps are required:
Depending on the creation or modification method, algorithm or purpose, the order of the steps might be different and might include additional steps specific to the function. Additional steps to check the integrity of the MAT object might be considered.
A hybrid MAT/BREP representation method will include conceptually the following additional steps—it is assumed the BREP elements are already constructed and valid:
Among the advantages of employing the MAT representation in a CAD system we enumerate:
Many other functions and applications are possible.
The current solid modeling representations are suitable for representing and manipulating 3D objects. However, in many products designed using CAD systems, various parts are either in motion, or shape changing, and these changes are typically the ones defining the function of the product. Employing assembly functions, the position and orientation of objects can be changed relative to others. However, the results of these functions cannot be stored in the current BREP data structures, in order to edit and further manipulate this information in a structured manner.
The proposed MAT data structure as in
The BREP representation model can also be extended to 4D, but only by adding a few more elements and concepts, therefore allowing a hybrid representation method to function in 4-dimensions. Existing and/or new functions for creating and manipulating 4D objects will be used to allow the user to create and modify functional products.
The following advantages are noted when employing a 4D data structure inside a CAD system:
Number | Date | Country | Kind |
---|---|---|---|
PCT/IB2014/064857 | Sep 2014 | IB | international |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/IB2015/057359 | 9/24/2015 | WO | 00 |