WO2020064761A1 - Method, computer program product and computer device for evaluating volumetric subdivision models - Google Patents

Method, computer program product and computer device for evaluating volumetric subdivision models Download PDF

Info

Publication number
WO2020064761A1
WO2020064761A1 PCT/EP2019/075750 EP2019075750W WO2020064761A1 WO 2020064761 A1 WO2020064761 A1 WO 2020064761A1 EP 2019075750 W EP2019075750 W EP 2019075750W WO 2020064761 A1 WO2020064761 A1 WO 2020064761A1
Authority
WO
WIPO (PCT)
Prior art keywords
subdivision
irregular
evaluated
location
edge
Prior art date
Application number
PCT/EP2019/075750
Other languages
German (de)
French (fr)
Inventor
Daniel Weber
Joel Müller
André STORK
Christian ALTENHOFEN
Original Assignee
Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. filed Critical Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V.
Publication of WO2020064761A1 publication Critical patent/WO2020064761A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Definitions

  • the invention relates to a method, a computer program product and a
  • Computer-Aided Design creates a virtual 3D model of an object. This model is then examined in a simulation phase to determine how e.g. acting forces, temperatures or other influences, for which numerical simulation approaches are usually used.
  • the simulation phase can also be called CAE [Computer-Aided Engineering].
  • Adjustments can be simulated.
  • the transition between design and simulation usually means converting the continuous CAD representation into a CAE or simulation-compatible, discrete geometry (e.g. in the form of discrete finite elements). This conversion is also known as “discretization” or “meshing". On the one hand, this step is time-consuming and often involves manual intervention and error handling. On the other hand, CAD geometry information is irretrievably lost. A conversion in the opposite direction to, for example, automated conclusions Drawing the simulation results is usually also not possible with the current approaches.
  • FEM finite element method
  • the invention particularly relates to the last variant.
  • One advantage of subdivision or cell decomposition is the avoidance of loss of information between a CAD model and a model used for the simulation. Often the same object description (or the same discrete control point network) can be used as the basis for both models, for example if the CAD models are also generated as a volumetric subdivision model. With the previously known modeling and simulation approaches, however, this is not always possible.
  • checkpoint networks are also generally referred to as control networks.
  • the invention presented here is based on a subdivision, which can also be referred to as a subdivision and / or cell division.
  • a subdivision which can also be referred to as a subdivision and / or cell division.
  • an output volume model and / or an output checkpoint network is used in accordance with
  • predetermined rules further subdivided, in particular in such a way that the resulting control point network is successively further refined.
  • a so-called limit volume can be achieved, which represents the greatest possible refinement. Since carrying out such a maximum limit refinement is computationally complex, a direct mathematical evaluation of the limit is preferred instead, ie a mathematical calculation and evaluation of points of the limit volume without actually having to form the limit volume completely.
  • Catmull-Clark algorithm for volumes (Catmull Clark Solids), the rules of which are summarized, for example, in the following scientific work, which is also referred to below as “Burkhart et al.”: Daniel Burkhart, Bernd Hamann and Georg Umlauf: Iso-geometric Finite Element Analysis Based on Catmull-Clark: Subdivision Solids In Computer Graphics Forum, Vol. 29.Wiley Online Library, 1575-1584. Reference is also made to the following
  • the Catmull-Clark algorithm generally provides for a refined network to be calculated on the basis of an initial network of control points connected by edges, new control points being determined in each subdivision step, which subdivide the network into cells with a smaller area (or with a smaller volume in three dimensions).
  • a problem with such subdivision models is often that they merely approximate the shape of an object volume (or even just the object surface) via a grid of control points.
  • the individual control points can be defined as so-called nodes or control nodes by functions describing the object shape and in particular surface shape (for example by B-spline functions). Therefore, one would like to evaluate a specific location of the object, for example, on its surface or in its volume (i.e.
  • Control points 100 of defined B-spline functions but without being part of the object 102 itself or lying within its area.
  • DE 699 15 837 T2 describes the problem of directly evaluating any location in the subdivision model in such a way that the coordinates of the control points of a subdivision model can define basic B-spline functions to describe the contour of individual patches within a two-dimensional (patch) model of an object.
  • the checkpoints can be general
  • Space coordinates can be defined (for example, as X, Y and Z values). Since the
  • control points do not always match actual locations within the area
  • another parameter set is used that actually describes locations within the area or is defined in a corresponding coordinate system of the area.
  • a so-called u-v coordinate system or a u-v parameter set is defined for this.
  • the u-v parameters can be translated into three-dimensional spatial coordinates in space.
  • the corresponding X, Y and Z values can be determined for a location defined in the area by means of u-v parameters using the basic functions.
  • a relationship between the parameters for the locations in space and the area definition is defined by the B-spline basic functions in order to finally be able to specify the coordinates of any object location in a preferably ordinary Cartesian spatial coordinate system (for example in an ordinary X-, Y and Z coordinate system).
  • the basic functions can do more than just the object shape
  • object properties such as a material density or a material type. Consequently, the described parameterization can also be used to determine specific properties of a given u-v location using the basic functions.
  • each object location is mathematically clearly defined and / or its coordinates (preferably in the form of XYZ spatial coordinates) as well as gradient (derivation of the coordinate according to u and v for surfaces, or according to u, v, w for subdivision volumes) or properties using the B -Spline basic functions of the subdivision model can be determined, this model can be evaluated at any location.
  • this model can be evaluated at any location.
  • the matrix C contains control points of a surface element under consideration and the matrix contains the coefficients of the bicubic B-spline basic functions on the
  • this equation would be expanded by a further dimension w.
  • checkpoints In particular, it is a piece of land that is spanned by a network of 4 x 4 control points and only regular
  • Control points contains (i.e. the control points within the network must be regular, whereas control points on the edges or outside edges of the network do not necessarily have to be regular).
  • a checkpoint is said to be regular if it has a valence (or even a degree or node degree) of four.
  • the valence corresponds to the number of edges that originate from or meet at a control point.
  • a network with an irregular checkpoint becomes a regular network by (arithmetically) performing a certain number of further subdivision steps.
  • new control points are defined and / or calculated in the course of these subdivision steps, which ultimately lead to a piece of land (in particular a piece of land defined by a network (output network)) with an originally irregular control point being divided into pieces of land with only regular control points .
  • the subdivision is carried out in such a way that the area or its output network is subdivided until the control point to be evaluated lies in a regular 4 x 4 control point network which is smaller than the output network.
  • the areal portion of the checkpoint network containing the irregular checkpoint and resulting from the subdivision is reduced. More specifically, the subdivision of the irregular starting network or
  • Area that contains the irregular control point is subdivided by calculation, but not necessarily the entire model, this can be called a local subdivision.
  • some matrix expressions can be calculated in advance and for the arithmetic execution of the further subdivision steps can only be read from a memory.
  • this calculation can be carried out essentially with a constant regardless of the position of a location to be examined and also the additional subdivision steps required
  • any location within the area can be evaluated in a simulation using a set of B-spline basic functions.
  • a detailed description of the calculation steps required for this can be found, for example, in paragraphs [0042-0088] of DE 699 15 837 T2, for example in paragraph [0080] dealing with information that can be calculated and stored in advance.
  • volume-metric subdivision models have so far not been able to be used in the desired manner for simulating object properties, for example to calculate forces or stresses acting in the object and to suitably adapt the construction of the object. There is therefore no satisfactory way to take advantage of the real advantage of subdivision models in the form of the described slight loss of information during the transition between CAD and CAE in the context of corresponding simulations.
  • the object of the present invention is therefore to better coordinate a computer-aided design phase and simulation phase in the development of technical objects or systems, in particular in such a way that precise determinations of relevant properties are made possible with a limited computing time.
  • This object is achieved by a method, a computer program product and a computer device according to the attached independent claims.
  • the invention solves the technical problem that computing times of a computer for simulations of the above type should not be arbitrarily high.
  • the technical means proposed for this purpose is to align the irregular edges
  • the inventors have generally recognized that it is possible to use a volumetric
  • irregular structures can be converted into so-called layered structures, which are explained below and which are regular in at least one dimension and are irregular in planes or layers extending to this dimension. These can then be in constant time (i.e.
  • a surprising finding of the invention is in particular that irregular elements of a volumetric subdivision model taking into account the
  • the Dimension can be strung together or layered.
  • the third dimension preferably extends along the irregular edge, the orientation of which is determined and taken into account as an essential new feature according to the invention.
  • a coordinate system used for evaluation can therefore preferably be aligned along this edge with one of its dimensions.
  • equation (17) this makes it possible to reuse the self-basis functions cp (u, v) known from equation (11) of the 2D case and for the most part previously calculated, and with a further basis function, which is also aligned along the irregular edge, to multiply. This is discussed below by way of example using equations (17) - (19) and, inter alia, FIG. 7b and FIG. 9.
  • control points are preferably numbered according to a fixed scheme and are consistent for the particular irregular configuration found in the cell. This consistent numbering allows a calculation of the own structure of the subdivision matrix and the transfer of Stams evaluation algorithm to such irregular ones volumetric subdivision models, which is why irregular cells with more than one irregular edge can be evaluated in constant time.
  • Finite element analysis FEA
  • IGA isogeometric analysis
  • Calculation of the simulation results or to solve the simulation scenario must be calculated at different points in the simulation algorithm integrals via finite elements (e.g. to calculate a stiffness matrix or a volume of the component to be simulated). If volumetric subdivision models are used as the basis for the simulation, as generally provided in the present case, the procedure according to the invention can accelerate the calculation of these integrals and thus the calculation of the entire simulation, since several locations (ie integration locations) have to be evaluated for each cell (or each element) . Such an evaluation of any location succeeds
  • Additive manufacturing processes especially 3D printing with multiple materials, e.g. using the PolyJet process.
  • 3D printing processes that can process several materials in one component, the material value to be printed is required for each location within each slice.
  • volumetric subdivision models as commonly used herein, multi-material 3D printing models can be efficiently represented and even graded
  • All of the measures listed can be carried out in a computer-assisted manner, for example by means of a computing or processor unit of a conventional PC, for example a desktop or laptop, a server, a handheld device, for example a smartphone, and / or the computer device disclosed herein.
  • a combination of such computers for example a computer network
  • the measures according to at least one of the last four structuring points of the preceding list can be carried out by such a computer or a combination of such computers.
  • Intermediate and / or final results can be stored in at least one storage device of the computer or the computer network.
  • the method can include a step of storing the evaluated location in a
  • Storage means or, in other words, in a computer memory.
  • one control point can have several neighboring ones
  • Control points must be connected via individual edges, ie there are no further control points on the edges and at the ends of the edges.
  • a plurality of control points connected to one another by means of edges can define a so-called (virtual) face in the subdivision model. More precisely, an area can be delimited and / or spanned by a plurality of control points, one of the control points being connected to two others from the plurality of control points by means of edges. If this area lies in the area of the surface of the subdivision model, it can accordingly be one
  • the subdivision model can generally be used to describe and / or model an object, a workpiece, an assembly, a technical system or the like.
  • a volumetric subdivision model can generally define and / or include a three-dimensional volume and also model the interior of the volume using the cells explained above.
  • Depth dimension i.e. in depth and / or inside the volume
  • Depth dimension i.e. in depth and / or inside the volume
  • control points can be defined in the manner described above as control points or, in other words, control points or control nodes of functions which describe properties of the subdivision model.
  • functions can describe a form of the subdivision model, for example its so-called limit volume.
  • the latter corresponds to the continuous volumetric body, which is generated by conceptually infinite refinements of the checkpoint network structure of the subdivision model and can be mathematically determined for many subdivision methods. A comparatively high or the maximum possible number of subdivisions of the subdivision model results in an approximation to this limit volume.
  • a location in the volume of the subdivision model to be evaluated can also be understood to mean locations in or on a surface of the volume or of the subdivision model.
  • volume element (English: cell or element) can generally be understood to mean any volume portion of the subdivision model including the edges, control points, etc. contained therein. In particular, it can be a volume fraction that can be evaluated using the regular calculation approaches explained below or that can generally be evaluated using preferred evaluation options.
  • An example is a volume element that is defined or spanned by 4 x 4 x 4 control points and that can include 3 x 3 x 3 cells.
  • Evaluating can generally identify those 4 x 4 x 4 checkpoint arrangements that contain a location to be evaluated.
  • the volume element can be a local (control point) neighborhood of a location to be evaluated and, for example, a cell which contains the location to be evaluated. More precisely, the location to be evaluated lies in a specific cell, with this cell and its neighbors and the associated control points being considered for the evaluation of the location.
  • the cell containing the location to be evaluated can accordingly be arranged centrally or centrally (for example centrally in a regular 4 x 4 x 4 control point network or also centrally in an initially irregular one
  • a volume element can include at least one cell.
  • a cell can in particular be defined and / or surrounded by eight surfaces which are opposite one another in pairs and preferably parallel to one another in pairs.
  • a cell can be defined by any number of areas that completely surround and / or enclose a volume within the subdivision model. The corresponding volume can then form the cell. It it goes without saying that the cell is also delimited by corresponding control points and edges of the areas or comprises them.
  • the information regarding the location to be evaluated can relate to coordinates or parameter values of the location. In particular, it can be
  • Act coordinate values that indicate a position of the location in the model volume for example in a spatial coordinate system, which can also be referred to as an X, Y, Z coordinate system.
  • a cell containing the location to be evaluated can be identified and parameter values can be specified which define the position of the location in a local coordinate system of this cell.
  • This local coordinate system can, for example, be referred to as a u, v, w coordinate system.
  • the subdivision model can be described and / or stored using known data formats or general computer-aided formats. Properties of the subdivision model sought can be determined from the corresponding data sets using conventional algorithms. For example, the valence of control points and consequently also the presence and / or a position of an irregular edge can be determined. Extentions, positions or orientations of individual volume elements or cells can also be determined or defined, and in particular those cells which contain the location to be evaluated. In principle, however, it is also possible to represent the subdivision model virtually and to enable an operator to manually identify irregular properties such as control points or edges and / or individual volume elements or cells within the
  • volume elements which have or comprise irregular properties can be determined, for example on the basis of
  • An irregular edge can also be defined to have one of four different valences, which valence can be defined as the number of faces adjacent to the edge or, in other words, the number of faces originating from the edge and / or are connected via or with this.
  • the evaluation can be understood to mean the parameterization described above, in particular the determination of location coordinates or properties of or at the location to be evaluated using functions which are defined by the control points. These functions can generally be basic functions or, in the case of regular cells, (in particular trivial) B-spline functions (modified B-spline functions can be used instead for irregular cells).
  • the alignment of the edge can be used to identify areas (e.g.
  • a volume element under consideration that can be evaluated using preferred and / or conventional approaches (e.g. using the two-dimensional approaches from the scientific work of Jos Stam or from the DE 699 15 837 T2).
  • preferred and / or conventional approaches e.g. using the two-dimensional approaches from the scientific work of Jos Stam or from the DE 699 15 837 T2.
  • These can generally be irregular or regular areas or levels, wherein the irregularity can in turn depend on whether there are control points with predetermined valences and in the case of two-dimensional levels with one of four different valences.
  • the location to be evaluated is not in a volume element and / or a cell that has an irregular edge
  • a location evaluation can be carried out using regular approaches.
  • the volume element can then be defined in the form of a local neighborhood around the location to be evaluated (or the cell which contains this location), for example in the form of a 4 x 4 x 4 control point network or an arrangement of 3 c 3 c 3 cells.
  • One possibility for evaluation is then to determine trivariate basic functions from products of univariate basic functions of the control points of this volume element.
  • volume element with the location to be evaluated has a completely irregular structure, ie no dimension or plane can be defined, along or in which there are regular properties (ie regular edges and control points); and if this is the case (if not there is already a layered structure and the following step is skipped):
  • a number of (arithmetic) subdivision steps are determined (e.g.
  • an alignment of the (still) remaining irregular edge is determined and then evaluated based on the location under consideration, in particular by means of subsequent (subdivision) basic functions and / or a calculated intrinsic structure of the subdivision matrix.
  • irregular edge and in particular such that the irregular edge extends along a (e.g. predetermined and / or preferred) axis of the coordinate system.
  • Defining the coordinate system according to the orientation of the irregular edge means that the orientation of the irregular edge when defining the
  • Coordinate system is taken into account.
  • This coordinate system can be the same coordinate system to which the information relating to the location to be evaluated also relates.
  • it can be the coordinate system explained above for defining locations in a single cell, for example a so-called u, v, w coordinate system.
  • Such cell-related coordinate systems can be distinguished above all by the fact that their axes, which preferably each run orthogonally to one another, each have values from 0 to 1 and the cell is parameterized according to these axes.
  • it can be the same coordinate system in which the control points are defined, or a different one
  • Coordinate systems can be defined as Cartesian coordinate systems. It goes without saying that the definition of the coordinate system can in turn be virtual or arithmetic and generally computer-aided and / or by manual input by the user.
  • the irregular edge can be defined, for example, in such a way that the irregular edge extends, for example, along a corresponding u, v or w axis.
  • Coordinate system can be determined.
  • the coordinate system or the subdivision model can then be realigned comprehensively around the irregular edge, so that the irregular edge extends along the predetermined axis.
  • the coordinates of the control points and / or edges of the subdivision model can be transformed in a manner known per se in accordance with the adjustment to be carried out.
  • a volume element which contains a cell with the location to be evaluated, can be divided at least after at least one further (computational) division into regular planes along the irregular edge and irregular planes orthogonally thereto.
  • this enables a layer-by-layer structure and / or a layer-by-layer evaluation of the volume element to be achieved, in which two-dimensional node networks or layers of essentially or completely identical construction are strung together along the irregular edge.
  • these layers can comprise irregular control points at the same positions in each case.
  • volume elements are preferably used (ie defined and / or selected in the subdivision model), which are spanned in at least one dimension (preferably even two or three dimensions) by 4 nodes and / or 3 cells, this state in turn after at least one further (computational) subdivision can be achieved.
  • the subdivision (at least locally, that is, in the area of the cell) is carried out computationally in order to create an evaluable environment around the location to be evaluated.
  • the arithmetic subdivision can take place with a (predetermined) constant calculation time.
  • the evaluable cell is characterized in that it does not comprise a control point with one of six different valences. This applies, for example, to the case of a regular cell described below.
  • teaching disclosed herein can also be used to evaluate cells that are present in a layered structure explained below or (at most) have an irregular edge. The number n of necessary subdivisions for a location to be evaluated at the position u, v, w in one
  • the number of subdivisions required can be determined by means of the relationships explained below with reference to FIG. 9, which in turn are based on a cell-related coordinate system and in particular a predetermined alignment of the irregular edge therein.
  • the cell can be divided into eight smaller ones in a single step
  • Subdivision steps depending on a distance of the location to be evaluated from the irregular control point can be determined beforehand and stored (see also illustration of the corresponding relationships in the following FIG. 9), so that depending on the specific parameters of the location to be evaluated, a computational local division of the subdivision model is carried out immediately can be.
  • the evaluation of the cell which contains the location to be evaluated can be carried out using special subdivision basis functions, as have already been explained above for the two-dimensional case. This offers the advantage that at least some of the previously calculated matrix expressions and / or matrix-matrix multiplication can be used and the required computing time can thus be reduced and in particular kept essentially constant.
  • the given location can be evaluated with little effort, in particular with knowledge of the alignment of the irregular edge and preferably by means of partially already pre-calculated matrix expressions and / or matrix-matrix multiplication (for example as part of the subdivision basic functions).
  • Overriding can also be provided that trivariate basic functions are used for the evaluation at the given location or the given location, which are based on basic functions along an axis of the coordinate system that runs along the irregular edge.
  • the basic functions for the evaluation are also based on bivariate subdivision basic functions that are determined in planes spanned by the remaining axes of the coordinate system.
  • j denotes the respective control points in an i-th u, v plane or layer, which are each orthogonal to the irregular edge along the w axis.
  • j denotes the respective control points in an i-th u, v plane or layer, which are each orthogonal to the irregular edge along the w axis.
  • the layered structure can be created as part of a preparatory computational subdivision.
  • a subdivision matrix can be defined in a predetermined manner in order to achieve subdivision in a constant calculation time.
  • the volume element is subdivided and evaluated by means of a subdivision matrix (see e.g. the following example for subdivision matrix A) and the entries in the subdivision matrix depend on at least one structural property of the checkpoint network.
  • Entries can generally be the subdivision-based weighting factors for checkpoints or checkpoint coordinates. These should be entered in the subdivision matrix (i.e. with preferred column and row positions) in order to enable evaluation in a constant calculation time.
  • An example of this is described below, in which numbering or indexing and, based on this, entry in the subdivision matrix takes place in a specific sequence according to three different groups of control points. In particular, so-called changes of direction can be prevented during successive subdivisions, which would increase the calculation time linearly with the required subdivision steps.
  • the structural property can be a position of a checkpoint with one of six different valences (also referred to herein as irregular checkpoint) within the checkpoint network. More specifically, an irregular checkpoint can be determined and, for example, according to a distance from this irregular checkpoint
  • Checkpoint numbering or indexing of the other checkpoints is carried out in order to enter them in the subdivision matrix.
  • a control point which is an end point of the irregular edge can be selected as the irregular control point for specifying the structural properties and the entries in the division matrix.
  • a control point which is connected to all irregular edges can be selected as the control point for determining the structural properties and the entries in the division matrix.
  • the Checkpoint network can be divided once to achieve the above-mentioned state.
  • volumetric subdivision model is also described in
  • a boundary region can generally be understood to mean a region and / or volume element of the subdivision model that is positioned near an interface of the model to the surroundings and / or that contains such an interface.
  • the border region can be a neighborhood of at least 3 c 3 c 3 control points or at least 3 x 2 x 2 cells around the irregular property (for example the irregular edge)
  • At least one basic function used for the evaluation can be determined based on a sharp edge function along the axis along which the irregular edge also runs. This can be seen, for example, from equation (3), which is explained in more detail below and below, and which can be used in equation (15) below
  • Basic functions B are considered for a solid element considered at individual nodes i.
  • conventional basis functions are considered, while in the direction along the irregular edge (in the example below w) and in Direction of the edge or the boundary, a sharp edge function C, which is explained in more detail in the context of the exemplary embodiments, is considered.
  • the square brackets are a round-up operator that rounds up the content of the brackets in the case of fractions to the next higher integer, whereas the% sign indicates a modulo operator:
  • equation (3) The evaluation described above and explained on the basis of equation (3) can take place in particular if it is determined that the irregular edge is orthogonal to or in an interface of the subdivision model with the surroundings. In particular, there should be regular structures in the u and v directions, and if this is not the case, the equation (19) explained below can be used.
  • the location to be evaluated is located in a border area of the subdivision model to the surroundings and the location to be evaluated lies in a cell of the subdivision model which comprises more than one interface to the surroundings, the cell is evaluated at least once (computationally) before the evaluation. be divided.
  • the inventors have recognized that, at the latest after such a division, it is possible to use one of the evaluation options explained above for border areas, for example on the basis of sharp edge functions.
  • the invention further relates to a computer program product comprising
  • the computer program product in particular a computer program, is therefore designed to carry out the method according to the invention in one of the embodiments which are described in this description.
  • the method can be carried out using software.
  • at least parts of the method can alternatively be carried out by a combination of software and hardware designed to carry out the method, in particular with at least one integrated circuit (such as an FPGA) designed to carry out the method, or exclusively by such hardware .
  • the invention relates to a computer device comprising a processor unit and a memory unit in which a computer program product according to the
  • Fig. 1 is a schematic diagram for explaining a relationship of
  • Fig. 3 is an illustration for explaining the necessary number of
  • 5a-b are a diagram for explaining sharp edge functions
  • Fig. 6 is an illustration of a regular volume element of a volumetric
  • FIGS. 2a-c show examples of regular and irregular checkpoint networks 10, 11 for modeling two-dimensional surface pieces, such as those from one
  • the solid lines and points show an output network 10 and the dashed lines and points show a network 11 after performing a subdivision step in accordance with the Catmull-Clark algorithm (also referred to below as subdivision network 11).
  • the subdivision model can comprise a plurality of surface pieces and thus also a number of corresponding control point networks 10, 11, which then
  • FIG. 2b shows a regular checkpoint network 10 that of 4 ⁇ 4
  • Control points 12 is clamped, which are connected to one another by means of edges 14.
  • a plurality of edges 14 and control points 12 each close two-dimensional cells 13 between them.
  • the control point network 10 serves to model or mathematically describe the shape of a two-dimensional surface piece, which is not shown separately.
  • Each point within the control point network 10 (i.e. with the exception of its edge) has a valence of four and is therefore regular.
  • a 4 c 4 control point network 10 which contains only regular control points 12 (i.e. with the exception of the edge), defines a so-called regular bicubic B-spline surface piece or can be described mathematically as such. Coordinates and properties of locations within such a piece of land can be determined with little effort using the B-spline basic functions described at the beginning. An evaluation can therefore be carried out at any location within such a regular area.
  • control point network 11 is also shown in dashed lines after a further subdivision in the form of a subdivision network 11 for reasons of clarity. It can be seen that this has a finer subdivision, since its control points 12 are much closer together.
  • the fact that the subdivision network 11 and the output network 10 have common points can be attributed to the fact that the output network comprises control points 12 which are equidistant from one another and results generally from the
  • FIG. 2a shows a control point network 10, again shown with solid lines, for modeling a two-dimensional surface piece, which is not shown separately.
  • the network 10 contains an irregular or extraordinary point 18, which has a valence of three.
  • the checkpoint network 10 is therefore irregular and cannot be evaluated easily using basic B-spline functions.
  • no regular 4x4 checkpoint network 10 can be defined that contains only regular checkpoints 12 in its interior (partially overlaid by dashed checkpoints 12 of a subdivided checkpoint network explained below). Instead, it would only be possible to define a 3 c 3 network of control points 12 which are correspondingly provided with a reference symbol and which are the irregular ones Item 18 includes.
  • this network does not define a bicubic B-spline patch or cannot be mathematically described and evaluated as such.
  • control point network 10 contains an irregular point 18 which has one of four different valences, namely a valence of five.
  • the output network 10 shown again by means of solid lines (but also no possible partial network included hereof) thus does not define a regular 4 ⁇ 4 checkpoint network 10 which contains only regular points.
  • the parameter space is generally shown in the form of a cell-related u-v coordinate system 17 of a two-dimensional cell 13 or a two-dimensional subnetwork that encloses such a cell 13 (cf. FIG. 2a).
  • Each two-dimensional cell 13 can be described by means of such a two-dimensional cell-related u-v coordinate system 17, where u and v each take values between 0 and 1 (i.e. the cell 13 is parameterized in a corresponding value range).
  • n denotes the number of subdivision steps to be carried out in succession and k the number of steps
  • Subdivision step each obtained regular cells or networks.
  • any locations within the checkpoint networks 10 or cells 13, which are in themselves irregular, can be evaluated based on this with a substantially constant calculation time by reading out and using the previously stored matrix expressions .
  • FIG. 4 the illustration there to explain the indexing of individual control points 12 before and after an additional subdivision. Again one can see one shown with solid lines
  • Exit checkpoint network 10 containing an irregular point 18.
  • the exit control point network 10 further comprises a plurality of control points 12 (not all with one corresponding reference numerals), which are denoted by 1 to 2N + 8.
  • N denotes the valence of the irregular point 18.
  • a subdivision network 11 is shown in dashed lines which, as a result of the subdivision, contains control points 12 which are numbered 2N + 9 to 2N + 17. Because of their distance from the irregular point 18, these are no longer required for further local subdivision and are therefore shown in dashed lines.
  • the starting point is a matrix Co, which contains the checkpoints 12 of the starting checkpoint network 10. More precisely, the location vectors of the individual control points 12 defined in an X, Y, Z coordinate system are combined as (K x 3) - matrix Co, where K is the number 2N + 8 of control points 12 that define the output control point network 10 . The numbering of the
  • Control points 12 are also used to define the content of the matrix Co. More precisely, this defines the line number at which the coordinates of a respective point 12 are sorted into the matrix Co.
  • the x, y, z coordinates each result in a column value (i.e. the first column contains the x, the second the y and the third z coordinate).
  • a matrix Ci can be determined, the 2N + 17 location vectors of the individual control points 12 of the
  • Subdivision network 1 1 contains. More precisely, the connection applies
  • Ci ⁇ Co (4).
  • Subdivision steps are calculated in advance and stored (i.e. before the actual evaluation and / or an actual simulation). For any number of
  • Equation (5) If the diagonal form of A is inserted into equation (5) above, the following relationship is obtained, which only requires a limited number of matrix multiplications and exponentiation of a diagonal matrix, the exponentiation of the diagonal matrix against the matrix multiplications in particular that Equation (5) requires significantly less computing power and computing time:
  • the resulting regular network 20 can be evaluated on the basis of the control points 12 defining the network 20 by means of a bicubic B-spline area piece evaluation.
  • These points which are outlined in a wave shape for example in FIG. 2c for one of the regular networks 20, can be extracted from the matrix C n by means of a so-called selection matrix P k (also a recording matrix or English “picking matrix”), which is multiplied by C n outputs the required points in the correct order
  • Control points of the associated regular network 20 or regular area are multiplied with the B-spline basic functions N (u, v) at these control points:
  • equation (9) can be used to evaluate the location p an u, v in the sense of determining its coordinates and / or properties are made.
  • the expression from equation (1 1) can also be referred to as a bivariate subdivision basis function.
  • any location in a possibly also irregular exit control point network 10 is made possible, for which purpose only the number of required subdivisions n has to be determined.
  • This can be done, for example, using FIG. 3 and in particular a mathematical description or tabular summary of the relationships shown there (for example a table in which the required subdivisions n and optionally also a relevant area piece k are stored as a function of the u, v coordinates of a location to be evaluated are).
  • the number of required subdivisions n can be determined using the following equation: n [min
  • equation (1 1) or (10) can be calculated in advance and stored in a memory.
  • DE 699 15 837 T2 describes a computer-assisted implementation of the calculations described, in particular from paragraph [0080]. Accordingly, the potentiation of the diagonal matrix L as a function of the subdivision steps n is mainly or exclusively decisive for the actual calculation time, which, however, represents a comparatively low-cost arithmetic operation with an essentially constant arithmetic time. The total calculation time required can therefore be independent of the number n of local subdivision steps required
  • Three-dimensional subdivision models represent so-called sharp edges (also known as folds, English: crease edges). These can be defined by an operator, for example when creating an output network. They generally describe edges 14 within a control point network 10 at which no smoothing (i.e. finer subdivision) usually associated with advancing subdivisions or subdivisions is desired. Details on the definition of sharp edges and the special subdivision rules to be found there can be found in the following scientific work (see in particular pages 102-105 and 122 ff.): Sven Havemann: “Generative Mesh Modeling”, doctoral thesis 2005, available at https : //publikationsserver.tu-braunschweig.de/receive/dbbs_mods_00000008).
  • a B-spline curve shown in dashed lines and defined by control points pi-p 4 is shown in the left case, the control points pi-p 3 being collinearly and equally spaced from one another or also equally spaced from one another.
  • the control point pi represents the result of the extrapolation from p 3 to p 2 .
  • the edge 14 extending from pi to p 2 is an extrapolation of the edge 14 which extends from P 3 to p 2 .
  • the corresponding B-spline curve or sharp-edge functions c can therefore be formulated as follows, with the B-spline base function (one per control point pi-p) in the final column vector:
  • Control points are defined as shown in Figure 5b.
  • volumetric subdivision models consist of control points, edges and areas delimited by them. They also include cells, each delimited by a set of areas.
  • a volume fraction of the model in which an evaluation is to take place is also referred to below as
  • Volume element called. A special case is also represented by cells that lie in the outer edge areas of the model and in which at least some of the surfaces
  • extraordinary or irregular control points are defined as points that have one of six different valences.
  • extraordinary or irregular edges that have one of four different valences.
  • the valence is defined as the number of surfaces adjoining the edge or, in other words, as the number of surfaces which start from and / or are connected by the edge.
  • Subdivision model occurs when the location to be evaluated lies in a regular cell 52 without irregular control points and / or irregular edges.
  • a neighborhood of the model can be considered in the form of a volume element 50 that is spanned by 4 x 4 x 4 control points 12 or 3 c 3 c 3 cells 52.
  • FIG. 6 Such a case is shown in FIG. 6, again not all of the above or elements mentioned below are provided with a corresponding reference symbol (the same also applies to the following further figures).
  • FIG. 6 shows a central cell 52 which is delimited by six surfaces 54, each surface 54 being spanned by four control points 12 together with edges 14 connecting these control points 12.
  • Each control point 12 of a surface 54 is connected to two of the other control points 12 of this surface 54 by means of edges 14.
  • the cell to be evaluated in the example shown is located in this cell 52, which is why the corresponding neighborhood of 4 x 4 x 4 control points 12 or 3 x 3 x 3 cells 52 in the form of the volume element 50 is considered around this cell 30.
  • the subdivision model can consist of numerous further volume elements 50, which can adjoin the volume element 50 shown in FIG. 6 accordingly.
  • any location e in the central cell 52 can be evaluated as follows, taking into account the basic functions defined by the control points p:
  • N (u, v, w) at the i-th control point are defined as a product of three univariate B-spline basic functions according to the following equation (16), which also corresponds to the aforementioned equation (3), where the square brackets again denote a round-up operator and the% sign a modulo operator:
  • the evaluation of a location in the cell 30 shown in FIG. 5 is thus possible without considerable computational effort and per se in a constant calculation time.
  • the basic functions can specify coordinates and / or properties of or at the corresponding control points p by interpolation.
  • Such a structure of a volume element 50 which is only irregular in two dimensions, is also referred to below as a layered structure. If a plurality of irregular edges are present, the necessary number n of subdivision steps must be determined using FIG. 9 explained below until the layered structure is obtained, these subdivisions by calculating the intrinsic structure of the subdivision matrix in a constant calculation time
  • control points are preferably carried out, so that the topology of the control point network containing the evaluating cell for each
  • Checkpoint network (also called local checkpoint network) can be reached or, in other words, objected to by an edge or an edge length of the irregular edge.
  • These control points can also be called direct neighbors of the extraordinary edge and are numbered 1 to 3 in FIG. 13b. Metaphorically speaking, points 1 to 3 share a common edge with irregular control point 0.
  • checkpoints are numbered in ascending order, which are made by traversing two consecutive or adjacent edges in the checkpoint network containing the irregular cell (also local
  • Checkpoint network can be reached or, in other words, objected to by two edges or edge lengths of the irregular edge (see FIGS. 4 to 10 in FIG. 13c). Furthermore, these control points assume that they share an area with the irregular edge (that is, they delimit or can be assigned to a common area with the irregular edge). 3. Beginning with the number following the last checkpoint in group 2, all checkpoints are numbered in ascending order, which are made by traversing three consecutive or adjacent edges in the checkpoint network containing the irregular cell (also local
  • Called control point network can be reached or, in other words, are objected to by three edges or edge lengths of the irregular edge (see FIGS. 11 to 14 in FIG. 13d). Furthermore, these control points assume that they share a cell with the irregular edge (that is, they delimit or can be assigned to a common cell with the irregular edge).
  • control points of the lower layer are then numbered 15 to 21.
  • the control point of this layer lying along the w axis from FIG. 13 a, viewed on a line with the control point 0, is numbered 15.
  • the points surrounding this point 15, which are not necessarily connected directly via an edge are numbered 16 to 21. Metaphorically speaking, starting from point 15, the surrounding points are numbered in a star shape.
  • control point of the right (outer) layer lying along the v-axis on a line with the control point 0 is numbered 22.
  • a control point of the rear (outer) layer lying along the u-axis on a line with the control point 0 is numbered 32.
  • control point network only comprises hexahedral cells
  • control points numbered in the order 1 to 3 can also be assumed for the control points numbered in the order 1 to 3:
  • the corresponding control point in the subdivided control point network is accordingly an edge point
  • edge point or a cell point, depending on which element is shared with the irregular edge.
  • Zelltician derive from the conventional subdivision rules for Catmull-Clark surfaces or volumes, which were discussed above and for which corresponding quotations are also mentioned.
  • An edge point is a new point that is created when you perform a subdivision step on an edge to subdivide it. The same applies to area and cell points. For each cell e.g. creates a cell point in the arithmetic center of the cell when subdividing according to the Catmull-Clark rules.
  • the weights of the corresponding subdivided control points are in row i of the subdivision matrix, where i is the assigned index of the
  • control points form the three outer layers of the control point network, each layer forming a two-dimensional control point network.
  • a lowermost layer 56a (the base layer in FIG. 8b)
  • a frontal layer 56b which in the figure directly faces the viewer
  • an outer layer 56c on the right in the figure are shown as outer layers are.
  • the lowermost and frontal layers 56a, b each comprise a control point 18 with the valence 5 (see in each case marked irregular points 18 with a corresponding valence for these layers 56a, b).
  • For these layers 56a, b one can proceed as in the two-dimensional case from FIG. 4 and one
  • the right layer 56c does not include an irregular checkpoint and defines a regular two-dimensional checkpoint network.
  • the corresponding lines in the subdivision matrix can then be generated for the control points 12 of the outer layers 56a, 56b in a conventional manner. It must be taken into account that these three outer layers each share four checkpoints 12 in the exit checkpoint network and five in the subdivided checkpoint network in order to prevent these checkpoints from being taken into account twice. Furthermore, the considered (local) control network along the neighborhood relationships (which is also referred to as local
  • Neighborhoods or topological information is traversed, e.g. using a volumetric data structure created for this purpose. When creating the numbering described above, this information is taken into account and the control network is traversed based on the neighborhoods.
  • the weights and their corresponding column index can be determined by examining the local neighborhood of the corresponding control point 12.
  • the control points 12, which influence the position of a divided control point 12 can be used by using the topological Information is determined that is contained in the volumetric data structure.
  • the topological information can, for example, indicate which control points are connected to one another or which share a surface, cell or edge.
  • the diagonal matrix can be used to carry out the subdivisions, which contains the eigenvalues, as described above in
  • the M x K subdivision matrix is converted into a square matrix by removing the last M - K (ie M less K) rows, where K is the absolute number of control points in the original and M is the absolute number of control points is in the divided checkpoint network.
  • the removed rows correspond to the three outer layers of the divided checkpoint network. Taking into account that these layers are five each
  • MK 2 (Ni + N 2 + N 3 ) + 37, where Ni is the valence of the irregular edge that is adjacent to the i-th outer layer.
  • FIG. 7b shows an example of a volumetric control point network 10 which has irregular edges 15 with a valence of three. This applies in particular to the central cell 52, which contains the location to be evaluated. You can see immediately that there is no regular neighborhood for this cell 32, as shown in FIG. 6.
  • FIG. 8b shows an example of a volumetric network that has irregular edges 15 (and in particular a central cell 52 with such an edge 15) with a valence of five.
  • This example can be understood as a volumetric version of the irregular two-dimensional surface network shown in FIG. 8a.
  • an evaluation is to take place at a location which is in the inner central cell 52 and for which there is a new one
  • Volume element 50 is defined in the form of a local neighborhood around the inner cell 52. In the state shown, the volume element 50 or this neighborhood does not yet represent a regular arrangement of 4 x 4 x 4 control points 12 or 3 c 3 c 3 cells. This is particularly the case because the cell 52 still contains an irregular point 18 .
  • one of the irregular control points 18 contained therein must first be selected. This is one of the end points of an irregular edge 15 which is encompassed by the cell 52, and preferably that irregular control point 18 at which several or all of the irregular edges 15 converge. More specifically, in the case of a plurality of irregular edges 15 which delimit a common cell 52, the irregular control point 18 at which all irregular edges 15 of the cell 52 converge is generally selected.
  • an edge 14, 15 is defined in the example shown in such a way that it extends between two control points 12 but not through a plurality of control points 12.
  • the layered structure can then be obtained based on the above rules for defining a subdivision matrix and this can then be selected further.
  • a u, v, w coordinate system 57 for describing locations in the cell 52 is again defined in FIG. 7b. It can be seen that the irregular edge 15 extends along the w axis of this coordinate system 57.
  • the coordinate system 57 can be defined from the outset in such a way that its w-axis runs along the irregular edge 15.
  • the state shown in FIG. 7b represents the end result of such measures.
  • the w axis of the coordinate system 57 being inclined analogously to the slightly oblique course of the selected irregular edge 15 which delimits the cell 52 to be evaluated (in of the merely schematic FIG. 8b may not be clearly recognizable).
  • the planes extending orthogonally to the irregular edge 15 in u and v are referred to below as individual layers 56 of the volume element 50.
  • the cell 52 to be evaluated must also be locally subdivided in the three-dimensional case, since it initially contains the irregular point 18 and thus cannot be evaluated in the usual way by means of basic functions (ie not according to
  • Equation (15) can be evaluated).
  • FIG. 9 explained below is used for the corresponding subdivision.
  • the Catmull-Clark subdivision rules which are used to further subdivide the irregular cell 52, can be summarized in a subdivision matrix (or subdivision matrix) with the size 5M x 4K, at least if there are already layered structures, where K is the number of control points 12 per layer 56 of the control point network 10 or volume element 50 and M the
  • the additional local subdivision results in six sub-elements (or cells 52) that become regular, while two irregular cells remain that still contain the irregular edge 15 or adjoin it. Additional subdivisions of these irregular sub-elements would increase the volume fraction of the regular cells, but not to a complete one
  • FIG. 9 shows the volumetric variant or volumetric extension of Figure 3.
  • the formula cited in the general description section can be used.
  • the irregular control point 18 is at the position 0, 0, 0.
  • the irregular edge 15 extends from this along the w-axis. This assignment is achieved by the definition of the coordinate system 57, which is based on the previously determined alignment of the irregular edge 15. An at least theoretical possibility to evaluate any location in an irregular cell 52 would be this or its neighborhood in the form of the
  • Subdivide volume element 50 until the location to be evaluated lies within a completely regular cell 52. If a location to be evaluated is located near an irregular edge 15, but not close to an extraordinary point 18, the direction of the subdivision would have to be changed during the evaluation process.
  • Numbering scheme of the subdivision matrix can also maintain the intrinsic structure of the subdivision matrix and a constant calculation time can be achieved by exponentiating the eigenvalue matrix.
  • FIG. 10a-b show a representation of the irregular volume elements 50 from FIG. 7b and FIG. 8b after a further local division of the model (ie a division of its volume element 50) (in FIG. 10a the network from FIG. 7b and in FIG. 10b the Network from Figure 8b).
  • the case k 3 from FIG. 9 is assumed here.
  • the control point networks 10 of the respective volume elements 52 each consist of four layers 56, which each extend in the u-v plane (i.e. orthogonal to the irregular edge 15), and are strung together or, in other words, layered.
  • the inner cells 52 in which the location to be evaluated is located are also marked.
  • Pk is a picking matrix, which is analogous to the
  • Expression ⁇ p (u, v, w) is also referred to herein as a trivariate subdivision basis function (or trivariate division basis function).
  • the basic function N from equation (17) can also be found in equation (18), but there as a function of
  • Equation (18) contains the complete process described here for evaluating or calculating the limit point p, including setting up the subdivision matrix and its own structure, determining the number of subdivision steps n required and the ranges k etc.
  • Edge 15 is merely an example and that any of the other u-v axes or axes with entirely different names could also be assigned to the irregular edge 15.
  • the assignment of the u, v, w parameters in equation (17) would then have to be adapted accordingly.
  • Boundary elements 33 (a boundary element 33 comprises a plurality of cells 52, at least one of which is a boundary cell 34) are to be distinguished from the cases shown in FIGS. 1 a-e. More precisely, two first examples of border cells 34 are shown in FIG. 1 a and 11 b, and a corresponding one in FIGS. 1 a-e.
  • 1 1 d and 1 1 e show further examples of borderline cases, for which a corresponding two-dimensional configuration is shown in FIG. 1 1 f.
  • FIG. 1 a shows a first borderline case, in which an inherently regular structure of a single border layer 32 in the form of the topmost layer 56 in this figure has (the remaining edge surfaces of the border element 33 shown adjoin surfaces of adjacent volume elements 52, not shown, and therefore do not form a corresponding boundary layer 32).
  • the boundary layer 32 can generally be treated similarly to sharp edges in the bivariate (ie two-dimensional) case, which is why the boundary layer 32 in the corresponding two-dimensional configuration from FIG. 11 c is shown as a corresponding sharp edge 17 .
  • FIGS. 1 1 c and 1 1 f show that, analogously to the case of FIGS. 5a, 5b, the sharp edges 17 can be extrapolated in order to define the regular 4 ⁇ 4 (for the analog two-dimensional case shown)
  • To add neighborhood missing control points 12 see correspondingly shown control points 12 and edges in Figures 1 1 c, 1 1 f).
  • Such an actual addition of control points 12 by extrapolation does not have to take place, but legitimizes the use of the sharp-edge basic functions.
  • the B-spline basic functions from the above
  • Equation (16) replaced with sharp-edge basis functions in the w direction, since there the edge or border area to the environment is present.
  • Each of the three individual sharp edge functions from equation (14) corresponds to one of the layers 56 of the
  • the second borderline case which is shown in FIG. 11b, is characterized in that an irregular edge 15 runs orthogonally to the border layer 32.
  • a coordinate system 57 is defined such that its w-axis runs along the irregular edge 15 and the u-v plane parallel to layers 56 of the shown
  • Boundary element 33 runs orthogonal to this edge 15. For one
  • Bi j (u, V, w) ipfi III V) Ci (w) i 1, 3, j-1, K (21).
  • an irregular edge 15 extends within or along an interface.
  • the irregular edge 15 is contained in a corresponding boundary layer 32.
  • FIG. 11 d this relates to the vertical irregular edge 15 provided with a corresponding reference symbol, which runs in an interface 36 facing away from the viewer.
  • the corresponding two-dimensional case is shown in Figure 1 1 f.
  • the coordinate system 57 of the boundary cell 34 containing the location to be evaluated, which applies to both of FIGS. 1 1 d and 1 1 e, is again defined in such a way that the w axis runs along the irregular edge 15.
  • the layers 56 of the boundary elements 33 which run orthogonally to this edge 15, extend parallel to the uv plane of this coordinate system 57.
  • Subdivision basis functions in u and v are calculated and multiplied by the regular B-spline basis functions in the w dimension, which corresponds to equation (21) above. More precisely, the two-dimensional basic functions including sharp edges for the irregular surface piece, as shown in FIG. 1 1 f, are calculated and multiplied by the function in the w dimension.
  • the border cell 34 to be evaluated is positioned in such a way that two of its surfaces within an interface 36 or
  • Boundary layer 32 of the boundary element 33 lie. These are the upper boundary surface 36 marked in FIG. 1 e and the boundary surface 36 facing away from the viewer, each of which contains corresponding surfaces of the boundary element 33.
  • the irregular edge 15 is defined as an edge divided by the two interfaces 36 of the boundary cell 34 facing away from the viewer and the irregular point 18 as an end point of this irregular edge 15.
  • the number of subdivision steps n is defined, which result in a cell 34 containing the location to be evaluated and obtained after a corresponding subdivision still contains a single surface in a corresponding interface 36 of the boundary element 33.
  • the size of the Catmull-Clark subdivision matrix is reduced to 4M x 3K, where M corresponds to the number of control points 12 in each layer 56 of the subdivided network 11 and K corresponds to the corresponding number in the output network 10.
  • M corresponds to the number of control points 12 in each layer 56 of the subdivided network 11
  • K corresponds to the corresponding number in the output network 10.
  • Control points 12 with respect to a cell arranged in the interior of a volume are missing. Subsequently, one of the first to third limit cases explained above can be used and the relevant location can be evaluated directly accordingly. If a cell 34 to be evaluated has more than two surfaces which lie in boundary surface 36 or two such surfaces but which do not adjoin one another, the output network 10 of the associated boundary element 33 must be subdivided once. A resulting cell 34, which contains the location to be evaluated, then automatically falls under one of the above first to fourth limit cases and can be evaluated accordingly.
  • the solution shown thus also provides options for evaluating the subdivision model in its border or border areas in a constant time, so that in fact any locations in the entire model with a constant
  • Figure 12 is an illustration to illustrate advantages of the solution disclosed herein.
  • a first straight line 106 and a second straight line 108 are shown in detail, each of which shows a relationship between a required number of subdivision steps (i.e.
  • an output network 10 which, according to the fourth limit case above, comprises a cell 34 with at least two areas in the interfaces of the volume element 52 under consideration and an irregular point 18 which has a valence of five.
  • the first straight line 106 results from the application of a solution algorithm according to the prior art and more precisely from Burkhart et al. (Daniel Burkhart, Bernd Hamann and Georg Umlauf: Iso-geometric Finite Element Analysis Based on Catmull-Clark: Subdivision Solids In Computer Graphics Forum, Vol. 29.Wiley Online Library, 1575-1584). In the case of locations to be evaluated in irregular cells and / or volume elements, further local subdivisions are often carried out there until the location to be evaluated ultimately lies in a completely regular range.
  • the calculation time primarily results from the fact that for a given output network, essential matrix expressions such as the subdivision matrix and a calculation of its own structure are calculated in advance (i.e. before carrying out evaluations) and e.g. be stored in an electronic storage unit, and furthermore from the fact that one does not have to multiply n and with each subdivision step increasing subdivision matrices, but only potentiates the diagonal matrix.
  • the calculation can be carried out using a computer, in particular one
  • Computer device which can also include the aforementioned electronic storage unit. Subsequently, as explained above, only a diagonal matrix has to be potentiated depending on the number n of subdivision steps to be carried out, but this is characterized by generally short and, above all, essentially unchangeable calculation times.
  • Coordinate determination and / or property determination for any location of a subdivision model take place, in particular also if the basic functions define or specify material properties at individual control points.
  • the described solution can be used in particular in the context of simulations, e.g. when properties (especially physical properties) of an object that has been modeled using a volumetric subdivision model are to be simulated. Based on this, the construction of the object can be selected and / or adapted appropriately.
  • FEM finite element method
  • finite element methods investigate displacements of finite elements into which a given object has been divided. The resulting strains and stresses (and consequently also locally acting forces) are then determined from these displacements using a stiffness matrix likewise determined on the basis of the division. For a volumetric subdivision model, each cell can be understood and simulated as a finite element.
  • a displacement function u for individual control points i can therefore be based on the basic functions N defined in the respective control points, in accordance with the following
  • the basic functions N can be evaluated at any location and with a substantially constant calculation time on the basis of the above approaches, and the simulation and force determination can thus be carried out in a particularly computationally efficient manner.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)

Abstract

The invention relates to a method for the computer-aided evaluation of a volumetric subdivision model, which is described by a control point network (10) of control points (12) connected by means of edges (14), wherein the method comprises the following steps: − receiving information regarding a location which is to be evaluated and is situated in the volume of the subdivision model; − determining whether the location to be evaluated is in a volume element (52) that has an irregular edge (15) that is an edge (15) that connects a control point (12) with a valency other than six, − and, if this is the case: − determining an orientation of the irregular edge (15); − evaluating the volumetric subdivision model at the location to be evaluated based on the determined orientation. The invention further relates to a computer program product for executing such a method, and to a computer device for executing the computer program product.

Description

Verfahren, Computerprogrammprodukt und Computervorrichtung zum Auswerten volumetrischer Subdivisionsmodelle  Method, computer program product and computer device for evaluating volumetric subdivision models
Die Erfindung betrifft ein Verfahren, ein Computerprogrammprodukt und eine The invention relates to a method, a computer program product and a
Computervorrichtung zum Auswerten volumetrischer Subdivisionsmodelle. Computer device for evaluating volumetric subdivision models.
Technische Systeme, Baugruppen, Werkstücke oder allgemeine Objekte müssen oftmals hinsichtlich ihrer Eigenschaften oder ihres Verhaltens überprüft werden. Neben realen Versuchen hat sich hierfür die computergestützte Simulation als ein gängiges Mittel etabliert. Voraussetzung einer aussagekräftigen Simulation ist, dass ein Objekt möglichst genau modelliert wird. Technical systems, assemblies, workpieces or general objects often have to be checked for their properties or their behavior. In addition to real tests, computer-aided simulation has established itself as a common means of doing this. A prerequisite for a meaningful simulation is that an object is modeled as accurately as possible.
Typischerweise wird in einer sogenannten Designphase zunächst mittels Typically, in a so-called design phase,
softwarebasierter CAD-Anwendungen [Computer-Aided Design] ein virtuelles 3D-Modell eines Objekts erstellt. Anschließend wird dieses Modell in einer Simulationsphase dahingehend untersucht, wie sich z.B. einwirkende Kräfte, Temperaturen oder andere Einflüsse auswirken, wozu in der Regel numerische Simulationsansätze verwendet werden. Die Simulationsphase kann auch als CAE [Computer-Aided Engineering] bezeichnet werden. software-based CAD applications [Computer-Aided Design] creates a virtual 3D model of an object. This model is then examined in a simulation phase to determine how e.g. acting forces, temperatures or other influences, for which numerical simulation approaches are usually used. The simulation phase can also be called CAE [Computer-Aided Engineering].
Um den Entwicklungsprozess zu beschleunigen, müssen Informationen bezüglich der (insbesondere geometrischen) Eigenschaften des Produkts, wie sie am Ende der Designphase vorliegen, in einer solchen Form bereitgestellt werden, dass sie mittels einer Simulationsumgebung (zum Beispiel in Form eines Computerprogrammprodukts) möglichst ohne umfassende Umformatierungen, Umwandlungen oder zusätzliche In order to speed up the development process, information regarding the (in particular geometric) properties of the product, as it is available at the end of the design phase, must be provided in such a way that it can be done using a simulation environment (e.g. in the form of a computer program product) without extensive reformatting, if possible , Conversions or additional
Anpassungen simuliert werden können. Im gängigen CAD-CAE-Workflow steht am Übergang zwischen Design und Simulation in der Regel die Konvertierung der kontinuierlichen CAD-Repräsentation in eine CAE- bzw. simulationskompatible, diskrete Geometrie (z.B. in Form diskreter finiter Elemente). Diese Konvertierung wird auch als „Diskretisierung“ oder„Meshing“ bezeichnet. Einerseits ist dieser Schritt zeitaufwändig und oft mit manuellen Eingriffen und Fehlerbehandlungen versehen. Andererseits gehen dabei unwiederbringlich Informationen der CAD-Geometrie verloren. Eine Umwandlung in die entgegengesetzte Richtung, um zum Beispiel automatisiert Schlussfolgerungen aus den Simulationsergebnissen zu ziehen, ist mit den aktuellen Ansätzen in der Regel ebenfalls nicht möglich. Adjustments can be simulated. In the usual CAD-CAE workflow, the transition between design and simulation usually means converting the continuous CAD representation into a CAE or simulation-compatible, discrete geometry (e.g. in the form of discrete finite elements). This conversion is also known as "discretization" or "meshing". On the one hand, this step is time-consuming and often involves manual intervention and error handling. On the other hand, CAD geometry information is irretrievably lost. A conversion in the opposite direction to, for example, automated conclusions Drawing the simulation results is usually also not possible with the current approaches.
In aktuell am Markt befindlichen Simulationssystemen wird die oben genannte  In simulation systems currently on the market, the above is used
Konvertierung durchgeführt, um ein simulationskompatibles Modell zu erzeugen. Die Simulation wird dabei oftmals mit der Finiten Elemente Methode (FEM) durchgeführt. Neben linearen finiten Elementen kommen teilweise auch Elemente mit quadratischer oder kubischer Ordnung zum Einsatz, die vergleichbare Ergebnisse bei weniger Conversion done to create a simulation compatible model. The simulation is often carried out using the finite element method (FEM). In addition to linear finite elements, elements with a square or cubic order are sometimes used, which give comparable results with less
Freiheitsgraden erreichen (sh. z.B. Daniel Weber, Johannes Mueller-Roemer, Christian Altenhofen, Andre Stork und Dieter Fellner: Deformation Simulation using cubic finite elements and efficient p-multigrid methods, Computers & Graphics 53 (2015), 185-195). Wissenschaftliche Arbeiten zur Simulation auf kontinuierlichen Repräsentationsformen haben sich bisher meistens auf Darstellungen mit trivariater NURBS-Geometrie beschränkt und lassen sich unter dem Begriff„Iso-Geometrische Analyse - IGA“ zusammenfassen (sh. z. B. Thomas JR Hughes, John A Cottrell und Yuri Bazilevs: Achieve degrees of freedom (see e.g. Daniel Weber, Johannes Mueller-Roemer, Christian Altenhofen, Andre Stork and Dieter Fellner: Deformation Simulation using cubic finite elements and efficient p-multigrid methods, Computers & Graphics 53 (2015), 185-195). Scientific work on simulation on continuous forms of representation has so far mostly been limited to representations with trivial NURBS geometry and can be summarized under the term “iso-geometric analysis - IGA” (see, for example, Thomas JR Hughes, John A Cottrell and Yuri Bazilevs:
Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement, Computer methods in applied mechanics and engineering 194, 39 (2005), 4135-4195). Des Weiteren existieren wissenschaftliche Arbeiten zur Simulation von dünnwandigen Objekten (sog.„Shells“) direkt auf Limit-Oberflächen durch kontinuierliche Facettenzerlegung (siehe Fehmi Cirak, Michael J Scott, Erik K Antonsson, Michael Ortiz und Peter Schröder: Integrated modeling, finite-element analysis, and engineering design for thin-shell structures using subdivision, Computer-Aided Design 34, 2 (2002), 137-148 & A. Riffnaller-Schiefer, U.H. Augsdörfer und D.W. Fellner: Isogeometric Shell analysis with NURBS compatible subdivision surfaces Appl. Math. Comput. 272, Part 1 (2016), 139 - 147). Andere Verfahren nutzen die der hier vorgestellten Erfindung zu Grunde liegende Zellzerlegung bzw. Subdivision für eine diskrete Simulation mittels der finiten Elemente Methode (Christian Altenhofen, Felix Schuwirth, Andre Stork und Dieter Fellner: Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement, Computer methods in applied mechanics and engineering 194, 39 (2005), 4135-4195). Furthermore, there is scientific work on the simulation of thin-walled objects (so-called “shells”) directly on limit surfaces through continuous facet decomposition (see Fehmi Cirak, Michael J Scott, Erik K Antonsson, Michael Ortiz and Peter Schröder: Integrated modeling, finite-element analysis, and engineering design for thin-shell structures using subdivision, Computer-Aided Design 34, 2 (2002), 137-148 & A. Riffnaller-Schiefer, UH Augsdörfer and DW Fellner: Isogeometric Shell analysis with NURBS compatible subdivision surfaces Appl. Math. Comput. 272, Part 1 (2016), 139-147). Other methods use the cell division or subdivision on which the invention presented here is based for a discrete simulation using the finite element method (Christian Altenhofen, Felix Schuwirth, Andre Stork and Dieter Fellner:
Volumetrie subdivision for consistent implicit mesh generation Computers & Graphics 69, Supplement C (2017), 68 - 79).  Volumetry subdivision for consistent implicit mesh generation Computers & Graphics 69, Supplement C (2017), 68 - 79).
Zu unterscheiden ist ferner zwischen Modellen, die sich auf eine reine A distinction must also be made between models that focus on a pure
Oberflächenbeschreibung beschränken, und Modellen, die auch Volumenanteile berücksichtigen bzw. eine volumetrische Repräsentation zugrunde legen. Die Erfindung betrifft insbesondere die letzte Variante. Ein Vorteil der Subdivision bzw. Zellzerlegung ist die Vermeidung von Informationsverlust zwischen einem CAD-Modell und einem für die Simulation verwendeten Modell. Oftmals kann sogar die gleiche Objektbeschreibung (bzw. das gleiche diskrete Kontrollpunktnetz) beiden Modellen zugrunde gelegt werden, beispielsweise wenn die CAD-Modelle ebenfalls als volumetrisches Subdivisionsmodell erzeugt werden. Mit den bisher bekannten Modellierungs- und Simulationsansätzen ist dies hingegen nicht immer möglich. Im Rahmen der vorliegenden Offenbarung werden Kontrollpunktnetze allgemein auch als Kontrollnetze bezeichnet. Limit surface description, and models that also take volume fractions into account or use a volumetric representation. The invention particularly relates to the last variant. One advantage of subdivision or cell decomposition is the avoidance of loss of information between a CAD model and a model used for the simulation. Often the same object description (or the same discrete control point network) can be used as the basis for both models, for example if the CAD models are also generated as a volumetric subdivision model. With the previously known modeling and simulation approaches, however, this is not always possible. In the context of the present disclosure, checkpoint networks are also generally referred to as control networks.
Im Detail geht die hier vorgestellte Erfindung von einer Subdivision aus, die auch als eine Unterteilung und/oder Zellzerlegung bezeichnet werden kann. Bei der Subdivision wird ein Ausgangsvolumenmodell und/oder ein Ausgangs-Kontrollpunktnetz gemäß In detail, the invention presented here is based on a subdivision, which can also be referred to as a subdivision and / or cell division. In the subdivision, an output volume model and / or an output checkpoint network is used in accordance with
vorbestimmten Regeln weiter unterteilt, insbesondere derart, dass das resultierende Kontrollpunktnetz sukzessive weiter verfeinert wird. Theoretisch kann hierdurch ein sogenanntes Limit-Volumen erreicht werden, welches die größtmögliche Verfeinerung darstellt. Da das Durchführen einer solchen maximalen Limit-Verfeinerung rechnerisch aufwendig ist, wird stattdessen eine direkte mathematische Auswertung des Limits bevorzugt, also ein mathematisches Berechnen und Auswerten von Punkten des Limit- Volumens, ohne das Limit-Volumen tatsächlich vollständig bilden zu müssen. Ein Beispiel eines hierfür verwendbaren Algorithmus ist der Catmull-Clark-Algorithmus für Volumen (Catmull Clark Solids), dessen Regeln zum Beispiel in der folgenden wissenschaftlichen Arbeit zusammengefasst sind, die nachstehend auch mit„Burkhart et al.“ referenziert wird: Daniel Burkhart, Bernd Hamann und Georg Umlauf: Iso-geometric Finite Element Analysis Based on Catmull-Clark: Subdivision Solids In Computer Graphics Forum, Vol. 29. Wiley Online Library, 1575-1584. Ebenfalls wird verwiesen auf folgende predetermined rules further subdivided, in particular in such a way that the resulting control point network is successively further refined. In theory, a so-called limit volume can be achieved, which represents the greatest possible refinement. Since carrying out such a maximum limit refinement is computationally complex, a direct mathematical evaluation of the limit is preferred instead, ie a mathematical calculation and evaluation of points of the limit volume without actually having to form the limit volume completely. An example of an algorithm that can be used for this is the Catmull-Clark algorithm for volumes (Catmull Clark Solids), the rules of which are summarized, for example, in the following scientific work, which is also referred to below as “Burkhart et al.”: Daniel Burkhart, Bernd Hamann and Georg Umlauf: Iso-geometric Finite Element Analysis Based on Catmull-Clark: Subdivision Solids In Computer Graphics Forum, Vol. 29.Wiley Online Library, 1575-1584. Reference is also made to the following
wissenschaftliche Arbeit: The refinement rules for Catmull-Clark solids, Kl Joy, R Scientific work: The refinement rules for Catmull-Clark solids, Kl Joy, R
MacCracken, Citeseer, 1999. MacCracken, Citeseer, 1999.
Der Catmull-Clark-Algorithmus sieht allgemein vor, basierend auf einem Ausgangsnetz aus mittels Kanten verbundener Kontrollpunkte ein verfeinertes Netz zu berechnen, wobei in jedem Unterteilungsschritt neue Kontrollpunkte bestimmt werden, welche das Netz in kleinflächigere (oder im dreidimensionalen Fall kleinvolumetrigere) Zellen unterteilen. Ein Problem bei derartigen Subdivisionsmodellen besteht oftmals dahingehend, dass diese die Form eines Objektvolumens (oder auch lediglich der Objektoberfläche) über ein Gitter aus Kontrollpunkten lediglich annähern. Insbesondere können die einzelnen Kontrollpunkte als sogenannte Knotenpunkte oder Steuerknoten von die Objektform und insbesondere Oberflächenform beschreibenden Funktionen definiert sein (zum Beispiel von B-Spline-Funktionen). Möchte man daher einen bestimmten Ort des Objekts z.B. auf dessen Oberfläche oder in dessen Volumen auswerten (d. h. diesen Ort im Rahmen einer Simulation untersuchen und beispielsweise die dort entstehenden Verschiebungen und/oder Kräfte oder auch andere Eigenschaften bestimmen und/oder die Limit-Position und den Gradienten dieses Punktes bestimmen), kann man daher nicht immer unmittelbar auf einen der Kontrollpunkte des Subdivisionsmodells zurückgreifen. Dieses Problem verdeutlicht sich beispielhaft aus der beigefügten Figur 1 , in der für einen The Catmull-Clark algorithm generally provides for a refined network to be calculated on the basis of an initial network of control points connected by edges, new control points being determined in each subdivision step, which subdivide the network into cells with a smaller area (or with a smaller volume in three dimensions). A problem with such subdivision models is often that they merely approximate the shape of an object volume (or even just the object surface) via a grid of control points. In particular, the individual control points can be defined as so-called nodes or control nodes by functions describing the object shape and in particular surface shape (for example by B-spline functions). Therefore, one would like to evaluate a specific location of the object, for example, on its surface or in its volume (i.e. examine this location in the context of a simulation and, for example, determine the displacements and / or forces or other properties occurring there and / or the limit position and Gradients of this point), one cannot therefore always fall back on one of the control points of the subdivision model. This problem is illustrated by way of example from the attached FIG. 1, in which for one
zweidimensionalen Fall eine Zelle eines Subdivisionsmodells aus vier Kontrollpunkten 100 gezeigt ist. Diese beschreiben eine kreisförmige Objektform 102 mittels über die two-dimensional case, a cell of a subdivision model consisting of four control points 100 is shown. These describe a circular object shape 102 by means of the
Kontrollpunkte 100 definierter B-Spline-Funktionen, ohne aber selbst Bestandteil des Objekts 102 zu sein oder innerhalb von dessen Fläche zu liegen. Control points 100 of defined B-spline functions, but without being part of the object 102 itself or lying within its area.
Dieses Problem wird insbesondere in der folgenden wissenschaftlichen Arbeit behandelt: Jos Stam: Exact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values, In Proceedings of the 25th annual Conference on Computergraphics and This problem is dealt with in particular in the following scientific work: Jos Stam: Exact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values, In Proceedings of the 25th annual Conference on Computergraphics and
Interactive techniques ACM (1998), 395^104. Die dort dargelegten Überlegungen und Lösungsvorschläge sind auch in der DE 699 15 837 T2 zusammengefasst, die Interactive techniques ACM (1998), 395 ^ 104. The considerations and proposed solutions presented there are also summarized in DE 699 15 837 T2, which
wesentliche Grundgedanken und Berechnungsansätze enthält, auf denen auch die vorliegende Offenbarung aufbaut. Der Inhalt der DE 699 15 837 T2 und auch von dessen US-Äquivalent US 6 389 154 B1 werden daher vollumfänglich per Bezugnahme in die vorliegende Offenbarung aufgenommen. Ein Unterschied zwischen diesen Lehren und der vorliegenden Offenbarung liegt jedoch dahingehend vor, dass dort lediglich contains essential basic ideas and calculation approaches on which the present disclosure is also based. The content of DE 699 15 837 T2 and also of its US equivalent US 6 389 154 B1 are therefore fully incorporated into the present disclosure by reference. However, one difference between these teachings and the present disclosure is that there is only one
Oberflächenmodelle im dreidimensionalen Raum betrachtet werden, wohingegen sich die vorliegende Offenbarung auf dreidimensionale d.h. volumetrische Fälle richtet, bei denen Kontrollpunktnetze mit Zellen betrachtet werden, die miteinander verbunden sind und das Volumen definieren. Surface models are considered in three-dimensional space, whereas the present disclosure relates to three-dimensional i.e. volumetric cases where checkpoint networks with cells that are connected and define the volume are considered.
In der DE 699 15 837 T2 wird das Problem des direkten Auswertens eines beliebigen Ortes im Subdivisionsmodell derart beschrieben, dass die Koordinaten der Kontrollpunkte eines Subdivisionsmodells B-Spline-Basisfunktionen definieren können, um die Kontur einzelner Flächenstücke innerhalb eines zweidimensionalen (Flächen-) Modells eines Objekts zu beschreiben. Die Kontrollpunkte können dabei über allgemeine DE 699 15 837 T2 describes the problem of directly evaluating any location in the subdivision model in such a way that the coordinates of the control points of a subdivision model can define basic B-spline functions to describe the contour of individual patches within a two-dimensional (patch) model of an object. The checkpoints can be general
Raumkoordinaten definiert sein (zum Beispiel als X-, Y-und Z-Werte). Da die Space coordinates can be defined (for example, as X, Y and Z values). Since the
Kontrollpunkte aber, wie vorstehend gezeigt, nicht immer mit tatsächlichen Orten innerhalb des Flächenstücks übereinstimmen, wird ein weiterer Parametersatz herangezogen, der tatsächlich Orte innerhalb des Flächenstücks beschreibt bzw. in einem entsprechenden Koordinatensystem des Flächenstücks definiert ist. Im However, as shown above, control points do not always match actual locations within the area, another parameter set is used that actually describes locations within the area or is defined in a corresponding coordinate system of the area. in the
zweidimensionalen Fall wird hierfür ein sogenanntes u-v-Koordinatensystem bzw. ein u-v- Parametersatz definiert. In a two-dimensional case, a so-called u-v coordinate system or a u-v parameter set is defined for this.
Mittels der B-Spline-Basisfunktionen, die das Flächenstück selbst beschreiben, können die u-v-Parameter in dreidimensionale Ortskoordinaten im Raum übersetzt werden. Mit anderen Worten können für einen mittels u-v-Parametern im Flächenstück definierten Ort anhand der Basisfunktionen die korrespondierenden X-, Y-und Z-Werte ermittelt werden. Allgemein ausgedrückt wird somit ein Zusammenhang zwischen den Parametern für die Orte im Raum und der Flächenstückdefinition durch die B-Spline-Basisfunktionen definiert, um schlussendlich die Koordinaten beliebiger Objektorte in einem vorzugsweise gewöhnlichen kartesischen Raumkoordinatensystem angeben zu können (zum Beispiel in einem gewöhnlichen X-, Y-und Z-Koordinatensystem). Wie nachstehend erläutert, können die Basisfunktionen aber nicht nur lediglich die Objektform, sondern auch Using the B-Spline basic functions, which describe the area itself, the u-v parameters can be translated into three-dimensional spatial coordinates in space. In other words, the corresponding X, Y and Z values can be determined for a location defined in the area by means of u-v parameters using the basic functions. Generally speaking, a relationship between the parameters for the locations in space and the area definition is defined by the B-spline basic functions in order to finally be able to specify the coordinates of any object location in a preferably ordinary Cartesian spatial coordinate system (for example in an ordinary X-, Y and Z coordinate system). As explained below, the basic functions can do more than just the object shape
Objekteigenschaften, wie zum Beispiel eine Materialdichte oder eine Materialart definieren. Folglich können mittels der geschilderten Parametrisierung auch konkrete Eigenschaften eines vorgegebenen u-v-Ortes anhand der Basisfunktionen bestimmt werden. Define object properties, such as a material density or a material type. Consequently, the described parameterization can also be used to determine specific properties of a given u-v location using the basic functions.
Wenn jeder Objektort mathematisch eindeutig definiert ist und/oder dessen Koordinaten (vorzugsweise in Form von X-Y-Z-Raumkoordinaten) sowie Gradient (Ableitung der Koordinate nach u und v bei Flächen, bzw. nach u, v, w bei Subdivisionsvolumen) oder Eigenschaften mittels der B-Spline-Basisfunktionen des Subdivisionsmodells bestimmt werden können, kann dieses Modell an jedem beliebigen Ort ausgewertet werden. Es wird verwiesen auf die Schilderung des entsprechenden als Parametrisierung If each object location is mathematically clearly defined and / or its coordinates (preferably in the form of XYZ spatial coordinates) as well as gradient (derivation of the coordinate according to u and v for surfaces, or according to u, v, w for subdivision volumes) or properties using the B -Spline basic functions of the subdivision model can be determined, this model can be evaluated at any location. Reference is made to the description of the corresponding parameterization
bezeichneten Vorgehens in der DE 699 15 837 T2 zum Beispiel im Zusammenhang mit der dortigen Figur 4. Auch im Rahmen der vorliegenden Offenbarung kann das Auswerten eines Ortes im Subdivisionsmodell die vorstehend geschilderten bzw. Parametrisierungen umfassen. The procedure described in DE 699 15 837 T2, for example in connection with FIG. 4 there. Evaluation can also be carried out within the scope of the present disclosure of a location in the subdivision model which comprise the above-described or parameterizations.
Eine nachfolgend noch näher erläuterte Gleichung, die zum Auswerten eines beliebigen Ortes p, der ein Ort auf der Limit-Oberfläche ist und daher auch als Limit-Ort oder Limit- Punkt bezeichnet werden kann, mit den Parametern u, v verwendet wird, kann im zweidimensionalen Fall wie folgt formuliert werden:
Figure imgf000008_0001
An equation which is explained in more detail below and which is used for evaluating any location p, which is a location on the limit surface and can therefore also be referred to as a limit location or limit point, with the parameters u, v can be found in two-dimensional case can be formulated as follows:
Figure imgf000008_0001
Dabei enthält die Matrix C Kontrollpunkte eines betrachteten Oberflächen-Elements und die Matrix die Koeffizienten der bikubischen B-Spline-Basisfunktionen an den The matrix C contains control points of a surface element under consideration and the matrix contains the coefficients of the bicubic B-spline basic functions on the
entsprechenden Kontrollpunkten. Im dreidimensionalen Fall würde diese Gleichung um eine weitere Dimension w erweitert werden. corresponding checkpoints. In the three-dimensional case, this equation would be expanded by a further dimension w.
Wie ferner ausführlich in der DE 699 15 837 T2 dargelegt, ist die Auswertung an beliebigen Orten aber nur dann mit geringem Aufwand möglich, wenn der entsprechende Ort in einem Flächenstück liegt, das einen sogenannten regulären Satz von As further explained in detail in DE 699 15 837 T2, the evaluation at any location is only possible with little effort if the corresponding location is in a piece of land which is a so-called regular set of
Kontrollpunkten umfasst. Insbesondere handelt es sich dabei um ein Flächenstück, das durch ein Netz aus 4 x 4 Kontrollpunkte aufgespannt wird und lediglich reguläre Includes checkpoints. In particular, it is a piece of land that is spanned by a network of 4 x 4 control points and only regular
Kontrollpunkte enthält (d.h. die Kontrollpunkte innerhalb des Netzes müssen regulär sein, wohingegen Kontrollpunkte auf den Rändern oder auch Außenkanten des Netzes nicht zwingend regulär sein müssen). Ein Kontrollpunkt wird als regulär bezeichnet, wenn dieser eine Valenz (oder auch einen Grad oder Knotengrad) von vier aufweist. Die Valenz entspricht der Anzahl an Kanten, die von einem Kontrollpunkt ausgehen bzw. an diesem Zusammentreffen. Control points contains (i.e. the control points within the network must be regular, whereas control points on the edges or outside edges of the network do not necessarily have to be regular). A checkpoint is said to be regular if it has a valence (or even a degree or node degree) of four. The valence corresponds to the number of edges that originate from or meet at a control point.
Werden hingegen Flächenstücke betrachtet, die Kontrollpunkte mit einer von vier verschiedenen Valenz enthalten (d. h. der Kontrollpunkt mit einer von 4 verschiedenen Valenz liegt im Flächenstück und nicht an oder auf dessen Rand und ist somit im If, on the other hand, areas are considered which contain control points with one of four different valences (i.e. the control point with one of 4 different valences lies in the area and not on or on the edge of it and is therefore in the
Flächenstück enthalten), können die Koordinaten eines beliebigen Ortes innerhalb dieses Flächenstücks nicht mittels der vorstehend erläuterten Parametrisierung bzw. dem Satz von Basisfunktionen bestimmt werden. Derartige Kontrollpunkte werden allgemein als irregulär, außerordentlich oder extraordinär bezeichnet und können auf das Ausgangsnetz zurückzuführen sein, das zum Beispiel von einem Bediener zur Objektformbeschreibung definiert wurde. In derartigen Ausgangsnetzen ist es für eine genaue Formbeschreibung nicht immer möglich, irreguläre Kontrollpunkte von vornherein zu vermeiden. In der DE 699 15 837 T2 werden deshalb Ansätze vorgeschlagen, um das Auswerten beliebiger Orte auch innerhalb nicht regulärer Flächenstücke zu ermöglichen. Wie erwähnt, beschränken sich diese Ansätze allerdings rein auf den zweidimensionalen Fall. Area), the coordinates of any location within this area cannot be determined by means of the parameterization explained above or the set of basic functions. Such checkpoints are commonly referred to as irregularly, extraordinarily or extraordinarily designated and can be due to the initial network, which was defined, for example, by an operator for the description of the object shape. In such output networks, it is not always possible to avoid irregular checkpoints from the outset for a precise description of the shape. DE 699 15 837 T2 therefore proposes approaches to enable the evaluation of arbitrary locations even within non-regular patches. As mentioned, these approaches are limited to the two-dimensional case.
Kurz zusammengefasst wird in der DE 699 15 837 T2 anerkannt, dass ein Netz mit einem irregulären Kontrollpunkt durch (rechnerisches) Ausführen einer bestimmten Anzahl von weiteren Unterteilungsschritten zu einem regulären Netz wird. Mit anderen Worten werden im Rahmen dieser Unterteilungsschritte neue Kontrollpunkte definiert und/oder berechnet, welche schlussendlich dazu führen, dass ein Flächenstück (insbesondere ein durch ein Netz (Ausgangsnetz) definiertes Flächenstück) mit einem ursprünglich irregulären Kontrollpunkt in Flächenstücke mit nur noch regulären Kontrollpunkte unterteilt wird. Die Unterteilung erfolgt dabei derart, dass das Flächenstück bzw. dessen Ausgangsnetz so lange weiter unterteilt wird, bis der auszuwertenden Kontrollpunkt in einem regulären und gegenüber dem Ausgangsnetz kleinflächigeren 4 x 4 Kontrollpunktnetz liegt. Mit jedem Unterteilungsschritt verringert sich dabei der flächenmäßige Anteil des den irregulären Kontrollpunkt enthaltenen und aus der Unterteilung hervorgehenden Kontrollpunktnetzes. Genauer gesagt resultiert die Unterteilung des irregulären Ausgangsnetzes bzw. Briefly summarized, it is recognized in DE 699 15 837 T2 that a network with an irregular checkpoint becomes a regular network by (arithmetically) performing a certain number of further subdivision steps. In other words, new control points are defined and / or calculated in the course of these subdivision steps, which ultimately lead to a piece of land (in particular a piece of land defined by a network (output network)) with an originally irregular control point being divided into pieces of land with only regular control points . The subdivision is carried out in such a way that the area or its output network is subdivided until the control point to be evaluated lies in a regular 4 x 4 control point network which is smaller than the output network. With each subdivision step, the areal portion of the checkpoint network containing the irregular checkpoint and resulting from the subdivision is reduced. More specifically, the subdivision of the irregular starting network or
Flächenstücks in drei regulären und einem irregulären Flächenstück, welches, wenn es den irregulären Kontrollpunkt enthält, wiederum weiter unterteilt werden könnte, wobei der Flächenanteil des irregulären Flächenstücks an der Gesamtfläche des ursprünglichen Ausgangsnetzes mit jedem Unterteilungsschritt abnimmt. Um jedoch den damit einhergehenden Berechnungsaufwand zu reduzieren und insbesondere eine konstante Berechnungszeit zu erreichen, wird in der DE 699 15 837 T2 im Bereich eines irregulären Kontrollpunktes die Eigenstruktur einer dazugehörigen Subdivisionsmatrix berechnet.Area in three regular and one irregular area, which, if it contains the irregular control point, could in turn be further subdivided, the area share of the irregular area in the total area of the original starting network decreasing with each subdivision step. However, in order to reduce the associated calculation effort and, in particular, to achieve a constant calculation time, DE 699 15 837 T2 calculates the intrinsic structure of an associated subdivision matrix in the area of an irregular control point.
Dies ermöglicht eine rechnerische Bestimmung beliebig vieler lokaler Unterteilungsschritte und damit zusammenhängender neuer Kontrollpunkte. Da dabei lediglich das This enables a mathematical determination of any number of local subdivision steps and related new control points. Since only that
Flächenstück, das den irregulären Kontrollpunkt enthält, rechnerisch unterteilt wird, nicht aber zwingend das gesamte Modell, kann dies als ein lokales Unterteilen bezeichnet werden. Für das geschilderte Unterteilen können dabei einige Matrixausdrücke vorab berechnet und für das rechnerische Durchführen der weiteren Unterteilungsschritte lediglich aus einem Speicher ausgelesen werden. Somit kann diese Berechnung unabhängig von der Position eines zu untersuchenden Ortes und auch den erforderlichen zusätzlichen Unterteilungsschritten im Wesentlichen mit einer konstanten Area that contains the irregular control point, is subdivided by calculation, but not necessarily the entire model, this can be called a local subdivision. For the described subdivision, some matrix expressions can be calculated in advance and for the arithmetic execution of the further subdivision steps can only be read from a memory. Thus, this calculation can be carried out essentially with a constant regardless of the position of a location to be examined and also the additional subdivision steps required
Berechnungszeit ausgeführt werden. Calculation time to be executed.
Sobald die regulären Kontrollpunkte für ein entsprechendes Flächenstück berechnet wurden, können wiederum mittels einem Satz von B-Spline-Basisfunktionen beliebige Orte innerhalb des Flächenstücks im Rahmen einer Simulation ausgewertet werden. Eine detaillierte Darstellung der hierfür erforderlichen Rechenschritte findet sich beispielsweise in den Absätzen [0042-0088] der DE 699 15 837 T2, wobei zum Beispiel in Absatz [0080] auf vorab berechenbare und hinterlegbare Informationen eingegangen wird. As soon as the regular control points for a corresponding area have been calculated, any location within the area can be evaluated in a simulation using a set of B-spline basic functions. A detailed description of the calculation steps required for this can be found, for example, in paragraphs [0042-0088] of DE 699 15 837 T2, for example in paragraph [0080] dealing with information that can be calculated and stored in advance.
Die in der DE 699 15 837 T2 dargelegten Grundsätze lassen sich jedoch nicht auf volumenmetrische Subdivisionsmodelle übertragen. Dies führt dazu, dass derartige volumenmetrische Subdivisionsmodelle bisher nicht in der gewünschten Weise für das Simulieren von Objekteigenschaften verwendet werden können, beispielsweise um in dem Objekt wirkende Kräfte oder Spannungen zu berechnen und die Konstruktion des Objekts daraufhin geeignet anzupassen. Somit besteht auch keine zufriedenstellende Möglichkeit, den eigentlichen Vorteil von Subdivisionsmodellen in Form der geschilderten geringen Informationsverluste beim Übergang zwischen CAD und CAE im Rahmen entsprechender Simulationen auszunutzen. However, the principles set out in DE 699 15 837 T2 cannot be applied to volume-metric subdivision models. As a result, such volume-metric subdivision models have so far not been able to be used in the desired manner for simulating object properties, for example to calculate forces or stresses acting in the object and to suitably adapt the construction of the object. There is therefore no satisfactory way to take advantage of the real advantage of subdivision models in the form of the described slight loss of information during the transition between CAD and CAE in the context of corresponding simulations.
So ist zwar aus der vorstehend zitierten wissenschaftlichen Arbeit von Burkhart et al. eine Lösung bekannt, bei der in volumetrischen Modellen irreguläre Volumenelemente rechnerisch so oft lokal unterteilt werden können, bis diese regulär werden und mittels herkömmlicher Rechenansätze auswertbar sind. Aufgrund der erforderlichen Anzahl an zu berechnenden Unterteilungen ist die Rechenzeit jedoch stark von dem Ausmaß an Irregularitäten abhängig und kann allgemein unerwünscht hohe Werte annehmen. Thus, from the scientific work by Burkhart et al. a solution is known in which in volumetric models irregular volume elements can be subdivided locally so often until they become regular and can be evaluated using conventional calculation approaches. However, due to the required number of subdivisions to be calculated, the computing time is heavily dependent on the extent of irregularities and can generally assume undesirably high values.
Aufgabe der vorliegenden Erfindung ist es daher, eine computergestützte Designphase und Simulationsphase bei der Entwicklung technischer Objekte oder Systeme besser miteinander zu koordinieren, insbesondere derart, dass präzise Ermittlungen relevanter Eigenschaften mit einer begrenzten Rechenzeit ermöglicht werden. Diese Aufgabe wird durch ein Verfahren, ein Computerprogrammprodukt und eine Computervorrichtung gemäß den beigefügten unabhängigen Ansprüchen gelöst. The object of the present invention is therefore to better coordinate a computer-aided design phase and simulation phase in the development of technical objects or systems, in particular in such a way that precise determinations of relevant properties are made possible with a limited computing time. This object is achieved by a method, a computer program product and a computer device according to the attached independent claims.
Vorteilhafte Weiterbildungen sind in den abhängigen Ansprüchen angegeben. Ferner versteht es sich, dass die in der einleitenden Beschreibung erwähnten Merkmale einzeln oder in beliebiger Kombination auch bei der vorliegend offenbarten Lösung vorgesehen sein können, sofern nicht anders angegeben oder ersichtlich. Advantageous further developments are specified in the dependent claims. Furthermore, it goes without saying that the features mentioned in the introductory description can also be provided individually or in any combination in the solution disclosed here, unless otherwise stated or evident.
Die Erfindung löst das technische Problem, dass Rechenzeiten eines Computers für Simulationen der vorstehenden Art nicht beliebig hoch ausfallen sollen. Als technisches Mittel wird hierfür vorgeschlagen, die Ausrichtung der irregulären Kanten zu The invention solves the technical problem that computing times of a computer for simulations of the above type should not be arbitrarily high. The technical means proposed for this purpose is to align the irregular edges
berücksichtigen bzw. zur Grundlage einer Simulation zu machen. Wie nachstehend gezeigt, ermöglicht dies, umfangreich auf vorab gespeicherte Ergebnisse (insb. take into account or make the basis for a simulation. As shown below, this enables extensive results to be saved beforehand (esp.
Matrixausdrücke) zurückzugreifen, die vorteilhafterweise nicht bei jeder Einzelsimulation neu berechnet und aufgestellt werden müssen. Anders ausgedrückt wird als technisches Mittel ermöglicht, vorab berechnete Ergebnisse bedarfsweise aus einem Speicher auszulesen und in eine Simulationsberechnung einzubinden, um so die Rechenzeit eines Simulationscomputers zu begrenzen. Ein wichtiger Erfindungsgedanke, der ermöglicht, dass die vorab gespeicherten Ergebnisse verwendet werden können und der ferner die Ermittlung ermöglicht, welche dieser Ergebnisse auszulesen und anzuwenden sind, ist das Berücksichtigen der Ausrichtung irregulärer Kanten. To use matrix expressions), which advantageously do not have to be recalculated and set up for each individual simulation. In other words, as a technical means it is possible to read out previously calculated results from a memory as necessary and to include them in a simulation calculation in order to limit the computing time of a simulation computer. An important concept of the invention, which enables the results stored in advance to be used and which also makes it possible to determine which of these results are to be read out and applied, is the consideration of the alignment of irregular edges.
Die Erfinder haben allgemein erkannt, dass es möglich ist, ein volumetrisches The inventors have generally recognized that it is possible to use a volumetric
Subdivisionsmodell in Kenntnis einer räumlichen Ausrichtung wesentlicher irreguläre Eigenschaften mittels begrenztem rechnerischen Aufwand und unter Umständen sogar einer im Wesentlichen konstanten Berechnungszeit unabhängig von dem Ausmaß der Irregularität und/oder gegebenenfalls erforderlicher weiterer Unterteilungsschritte auszuwerten. Insbesondere wurde erkannt, dass durch das Bestimmen der Ausrichtung von einer sogenannten irregulären Kante, die in einem den auszuwertenden Ort enthaltenden Volumen-Element des Subdivisionsmodells liegt, das entsprechende Volumen-Element in regulär und irregulär auswertbare Bereiche und/oder Ebenen eingeteilt werden kann. Insbesondere kann in im Wesentlichen orthogonal zu der irregulären Kante verlaufenen Ebenen auf eine analoge Auswertung zurückgegriffen werden, wie für den zweidimensionalen Fall im Stand der Technik bekannt (siehe zum Beispiel DE 699 15 837 T2). Diese Ebenen können ebenfalls auf Basis der erfindungsgemäß vorgeschlagenen Ermittlung der Ausrichtung der irregulären To evaluate the subdivision model in the knowledge of a spatial orientation of essential irregular properties by means of limited computational effort and possibly even an essentially constant calculation time regardless of the extent of the irregularity and / or further subdivision steps that may be required. In particular, it was recognized that by determining the alignment of a so-called irregular edge, which lies in a volume element of the subdivision model containing the location to be evaluated, the corresponding volume element can be divided into regions and / or planes that can be evaluated regularly and irregularly. In particular, an analog evaluation can be used in planes which are essentially orthogonal to the irregular edge, as is known in the prior art for the two-dimensional case (see for example DE 699 15 837 T2). These levels can also be based on the determination of the orientation of the irregular proposed according to the invention
Eigenschaft bzw. Kante ermittelt werden. In Ebenen, welche die irreguläre Eigenschaft bzw. Kante enthalten, kann unter Umständen hingegen eine reguläre Auswertung gemäß dem zweidimensionalen Fall vorgenommen werden. Um eine tatsächliche Property or edge can be determined. On the other hand, in planes that contain the irregular property or edge, a regular evaluation according to the two-dimensional case can be carried out. To an actual one
dreidimensionale Auswertung vorzunehmen, kann ferner vorgesehen sein, die irregulären aber gemäß den zweidimensionalen Ansätzen auswertbare Ebenen mit Basisfunktionen entlang bzw. in Richtung der irregulären Eigenschaft zu kombinieren. Auch dies wird wiederum dadurch ermöglicht, dass zunächst die Ausrichtung der irregulären Eigenschaft bzw. Kante ermittelt wird. Insbesondere können auf diese Weise irreguläre Strukturen in nachfolgend erläuterte sogenannte geschichtete Strukturen umgewandelt werden, die in zumindest einer Dimension regulär sind und in sich zu dieser Dimension erstreckenden Ebenen bzw. Schichten irregulär sind. Diese können dann in konstanter Zeit (d. h. To carry out three-dimensional evaluation, it can further be provided to combine the irregular but evaluable levels according to the two-dimensional approaches with basic functions along or in the direction of the irregular property. This is also made possible by first determining the alignment of the irregular property or edge. In particular, in this way irregular structures can be converted into so-called layered structures, which are explained below and which are regular in at least one dimension and are irregular in planes or layers extending to this dimension. These can then be in constant time (i.e.
konstanter Berechnungszeit) ausgewertet werden, unabhängig von dem Grad der Irregularität. constant calculation time) are evaluated, regardless of the degree of irregularity.
Genauer gesagt wird das bisherige Vorgehen im zweidimensionalen Fall anhand der Gleichungen (9) bis (1 1 ) dieser Offenbarung zusammengefasst, wobei sämtliche More precisely, the previous procedure in the two-dimensional case is summarized using equations (9) to (11) of this disclosure, all of which
Ausdrücke zwischen„C“ und„N“ in Abhängigkeit der für eine lokale Auswertung erforderlichen n-Unterteilungen vorab gespeichert werden können. Darauf basierend können die auch in der referenzierten Arbeit von Jos Stam beschriebenen Expressions between "C" and "N" depending on the n-subdivisions required for local evaluation can be saved in advance. Based on this, those also described in the referenced work by Jos Stam
Eigenbasisfunktionen cp(u,v) aus Gleichung (1 1 ) formuliert und größtenteils vorberechnet werden. Eigen basis functions cp (u, v) from equation (1 1) are formulated and largely pre-calculated.
Wie gezeigt, wurde für den dreidimensionalen Fall z.B. bei Burkhart et al. bisher ein anderer Weg beschritten. So wurde dort zum Kompensieren von lokalen Irregularitäten zwar ebenfalls lokal (rechnerisch) unterteilt, allerdings ohne, dass kurze und vor allem konstante Rechenzeiten erreicht wurden. As shown, for the three-dimensional case e.g. in Burkhart et al. so far taken a different path. To compensate for local irregularities, there was also local (computational) subdivision, but without short and, above all, constant computing times being achieved.
Eine überraschende Erkenntnis der Erfindung liegt insbesondere darin, dass irreguläre Elemente eines volumetrischen Subdivisionsmodells unter Berücksichtigung der A surprising finding of the invention is in particular that irregular elements of a volumetric subdivision model taking into account the
Ausrichtung irregulärer Kanten entgegen Burkhart et al. mit einem vertretbaren Alignment of irregular edges against Burkhart et al. with a reasonable
Rechenaufwand auswertbar sind. Insbesondere wurde erkannt, dass dies ähnlich wie im 2D-Fall ermöglicht, umfassende Matrixausdrücke vorab zu berechnen und zu speichern, was die Rechenzeit begrenzt. Beispielsweise wurde erkannt, dass dann sogenannte geschichtete Strukturen definiert werden können, wonach gleichartige irreguläre 2D-Ebenen entlang einer dritten Computational effort can be evaluated. In particular, it was recognized that, as in the 2D case, this enables comprehensive matrix expressions to be calculated and stored beforehand, which limits the computing time. For example, it was recognized that so-called layered structures can then be defined, after which irregular 2D planes of the same type along a third
Dimension aneinandergereiht bzw. geschichtet werden können. Die dritte Dimension erstreckt sich dabei bevorzugt entlang der irregulären Kante, deren Ausrichtung als wesentliches neues erfindungsgemäßes Merkmal bestimmt und berücksichtigt wird. Ein zur Auswertung verwendetes Koordinatensystem kann also mit einer seiner Dimensionen bevorzugt entlang dieser Kante ausgerichtet werden. Dimension can be strung together or layered. The third dimension preferably extends along the irregular edge, the orientation of which is determined and taken into account as an essential new feature according to the invention. A coordinate system used for evaluation can therefore preferably be aligned along this edge with one of its dimensions.
Dies ermöglicht gemäß nachstehender Gleichung (17), die aus Gleichung (1 1 ) des 2D- Falls bekannten und größtenteils vorab berechneten Eigenbasisfunktionen cp(u,v) erneut zu verwenden und mit einer weiteren Basisfunktionen, die ebenfalls entlang der irregulären Kante ausgerichtet ist, zu multiplizieren. Dies wird nachstehend beispielhaft anhand von Gleichungen (17)-(19) sowie unter anderem Figur 7b und Figur 9 diskutiert. According to equation (17) below, this makes it possible to reuse the self-basis functions cp (u, v) known from equation (11) of the 2D case and for the most part previously calculated, and with a further basis function, which is also aligned along the irregular edge, to multiply. This is discussed below by way of example using equations (17) - (19) and, inter alia, FIG. 7b and FIG. 9.
Die Erfindung zeichnet sich insbesondere durch die folgenden Beiträge und Erkenntnisse aus, die nachstehend noch jeweils detailliert erläutert werden und die teils rein optional sind: The invention is characterized in particular by the following articles and findings, each of which is explained in detail below and which are partly purely optional:
- direktes Auswerten von geschichteten Strukturen mit einer irregulären Kante, wofür die 2D-Basisfunktionen von Stam mit regulären Basisfunktionen in der dritten, einer Ausrichtung der Kante entsprechenden Dimension multipliziert werden können und die Auswertung in konstanter Rechenzeit erfolgt;  - Direct evaluation of layered structures with an irregular edge, for which the 2D basic functions of Stam can be multiplied with regular basic functions in the third dimension corresponding to an orientation of the edge and the evaluation takes place in constant computing time;
- darauf aufbauend: direktes Auswerten von Randzellen eines Subdivisionsmodells, wofür in einer Dimension senkrecht zum Rand des Subdivisionsmodells die sog. Crease-Basisfunktionen verwendet werden können. Dies kann für reguläre und geschichtete Randzellen eingesetzt werden und kann ebenfalls in konstanter Rechenzeit erfolgen;  - Building on this: Direct evaluation of marginal cells of a subdivision model, for which the so-called increase basic functions can be used in one dimension perpendicular to the edge of the subdivision model. This can be used for regular and stratified marginal cells and can also be done in constant computing time;
- ferner darauf aufbauend: ein konstantes und/oder konsistentes  - further building on it: a constant and / or consistent
Nummerierungsverfahren für das Auswerten von komplett irregulären Zellen, die mehr als einer irregulären Kante aufweisen. Dabei erfolgt Nummerierung der Kontrollpunkte bevorzugt nach einem festen Schema und ist konsistent für die jeweilige, in der Zelle angetroffene irreguläre Konfiguration. Diese konsistente Nummerierung erlaubt eine Berechnung der Eigenstruktur der Subdivisionsmatrix und das Übertragen von Stams Auswertealgorithmus auf derart irreguläre volumetrische Subdivisionsmodelle, weshalb auch irreguläre Zellen mit mehr als einer irregulären Kante in konstanter Zeit auswertbar sind. Numbering method for the evaluation of completely irregular cells that have more than one irregular edge. The control points are preferably numbered according to a fixed scheme and are consistent for the particular irregular configuration found in the cell. This consistent numbering allows a calculation of the own structure of the subdivision matrix and the transfer of Stams evaluation algorithm to such irregular ones volumetric subdivision models, which is why irregular cells with more than one irregular edge can be evaluated in constant time.
Die Erfindung kann für technische Zwecke vorteilhafterweise wie folgt zum Einsatz kommen: The invention can advantageously be used for technical purposes as follows:
Finite-Elemente-Analyse (FEA) und/oder Isogeometrische Analyse (IGA), z.B. für Simulationen einer Hitzeausbreitung oder für die Strukturmechanik. Zur Finite element analysis (FEA) and / or isogeometric analysis (IGA), e.g. for simulating heat propagation or for structural mechanics. For
Berechnung der Simulationsergebnisse bzw. zum Lösen des Simulationsszenarios müssen an verschiedenen Stellen im Simulationsalgorithmus Integrale über finite Elemente berechnet werden (z.B. zum Berechnen einer Steifigkeitsmatrix oder eines Volumens des zu simulierenden Bauteils). Verwendet man volumetrische Subdivisionsmodelle als Basis für die Simulation, wie vorliegend allgemein vorgesehen, kann das erfindungsgemäße Vorgehen die Berechnung dieser Integrale und damit die Berechnung der gesamten Simulation beschleunigen, da für jede Zelle (bzw. jedes Element) mehrere Orte (d.h. Integrationsorte) auszuwerten sind. Eine solche Auswertung beliebiger Orte gelingt  Calculation of the simulation results or to solve the simulation scenario must be calculated at different points in the simulation algorithm integrals via finite elements (e.g. to calculate a stiffness matrix or a volume of the component to be simulated). If volumetric subdivision models are used as the basis for the simulation, as generally provided in the present case, the procedure according to the invention can accelerate the calculation of these integrals and thus the calculation of the entire simulation, since several locations (ie integration locations) have to be evaluated for each cell (or each element) . Such an evaluation of any location succeeds
erfindungsgemäß durch Rückgriff auf vorab gespeicherte Ausdrücke/Ergebnisse mit geringer und sogar konstanter Rechenzeit.  according to the invention by using previously stored expressions / results with low and even constant computing time.
Additive Fertigungsverfahren, insbesondere 3D-Druck mit mehreren Materialien, z.B. per PolyJet-Verfahren. Um ein Bauteil additiv zu fertigen, wird es für die meisten 3D-Druck-Verfahren in Schichten zerlegt (sog. Slicing). Bei 3D-Druck- Verfahren, die mehrere Materialen in einem Bauteil verarbeiten können, wird für jeden Ort innerhalb jedes Slices der zu verdruckende Materialwert benötigt. Mit volumetrischen Subdivisionsmodellen, wie hierin allgemein verwendet, kann man Multi-Material-3D-Druck-Modelle effizient darstellen und sogar gradierte Additive manufacturing processes, especially 3D printing with multiple materials, e.g. using the PolyJet process. In order to manufacture a component additively, it is broken down into layers for most 3D printing processes (so-called slicing). With 3D printing processes that can process several materials in one component, the material value to be printed is required for each location within each slice. With volumetric subdivision models, as commonly used herein, multi-material 3D printing models can be efficiently represented and even graded
Materialübergänge modellieren. Sowohl zur Bestimmung der Slices, als auch zur Bestimmung des Materialwerts an jedem Ort im Slice, sind (zum Teil mehrfache) Auswertungen an beliebigen Orten und genauer gesagt Limit-Orten eines  Model material transitions. Both to determine the slices and to determine the material value at each location in the slice, (sometimes multiple) evaluations at any location and, more precisely, limit locations are one
Subdivisionsmodells erforderlich. Mit dem hierin offenbarten Lösungsweg gelingt dies deutlich schneller als mit bisherigen Verfahren und sogar mit konstanter Rechenzeit pro auszuwertendem Ort. Im Detail wird ein Verfahren zum computergestützten Auswerten eines volumetrischen Subdivisionsmodells, das durch ein Kontrollpunktnetz aus mittels Kanten verbundener Kontrollpunkte beschrieben (oder, mit anderen Worten, definiert) wird, wobei das Verfahren umfasst: Subdivision model required. With the solution disclosed here, this succeeds much faster than with previous methods and even with constant computing time per location to be evaluated. In detail, a method for computer-assisted evaluation of a volumetric subdivision model is described (or, in other words, defined) by a checkpoint network of control points connected by edges, the method comprising:
- Erhalten von Informationen hinsichtlich eines in dem Volumen des  - Obtaining information regarding one in the volume of the
Subdivisionsmodells liegenden auszuwertenden Ortes;  Subdivision model lying to be evaluated;
- Ermitteln, ob der auszuwertende Ort in einem Volumenelement liegt, das eine irreguläre Kante aufweist, welche eine Kante ist, die einen Kontrollpunkt mit einer von sechs verschiedenen Valenz verbindet,  Determining whether the location to be evaluated lies in a volume element that has an irregular edge, which is an edge that connects a control point with one of six different valences,
- und wenn dies der Fall ist:  - and if this is the case:
- Bestimmen einer Ausrichtung der irregulären Kante;  - determining an alignment of the irregular edge;
- Auswerten des volumetrischen Subdivisionsmodells an dem auszuwertenden Ort basierend auf der ermittelten Ausrichtung.  - Evaluation of the volumetric subdivision model at the location to be evaluated based on the determined orientation.
Sämtliche aufgelisteten Maßnahmen können computergestützt ausgeführt werden, zum Beispiel mittels einer Rechen- oder Prozessoreinheit eines herkömmlichen PCs, zum Beispiel ein Desktop oder Laptop, eines Servers, eines Handheld-Geräts, zum Beispiel ein Smartphone, und/oder der hierin offenbarten Computervorrichtung. Insbesondere kann auch eine Kombination derartiger Computer (zum Beispiel ein Computer-Netzwerk) zur Ausführung verwendet werden. Insbesondere die Maßnahmen gemäß zumindest einem der letzten vier Gliederungspunkte der vorangehenden Aufzählung können von einem derartigen Computer oder einer Kombination derartiger Computer ausgeführt werden. All of the measures listed can be carried out in a computer-assisted manner, for example by means of a computing or processor unit of a conventional PC, for example a desktop or laptop, a server, a handheld device, for example a smartphone, and / or the computer device disclosed herein. In particular, a combination of such computers (for example a computer network) can also be used for execution. In particular, the measures according to at least one of the last four structuring points of the preceding list can be carried out by such a computer or a combination of such computers.
Zwischen- und/oder Endergebnisse können in zumindest einer Speichereinrichtung des Computer oder des Computer-Netzwerks gespeichert werden. Allgemein kann das Verfahren einen Schritt des Abspeicherns des ausgewerteten Orts in einer Intermediate and / or final results can be stored in at least one storage device of the computer or the computer network. In general, the method can include a step of storing the evaluated location in a
Speichereinrichtung oder, anders ausgedrückt, in einem Computerspeicher umfassen. Storage means or, in other words, in a computer memory.
In an sich bekannter Weise kann ein Kontrollpunkt mit mehreren benachbarten In a manner known per se, one control point can have several neighboring ones
Kontrollpunkten über jeweils individuelle Kanten verbunden sein, d.h. auf den Kanten und an den Enden der Kanten liegen nicht weitere Kontrollpunkte. Eine Mehrzahl von untereinander mittels Kanten verbundener Kontrollpunkte kann eine sogenannte (virtuelle) Fläche (engl face) in dem Subdivisionsmodell definieren. Genauer gesagt kann eine Fläche durch eine Mehrzahl von Kontrollpunkten begrenzt und/oder aufgespannt werden, wobei einer der Kontrollpunkte mit jeweils zwei anderen aus der Mehrzahl von Kontrollpunkten mittels Kanten verbunden ist. Liegt diese Fläche im Bereich der Oberfläche des Subdivisionsmodells kann es sich entsprechend um einen Control points must be connected via individual edges, ie there are no further control points on the edges and at the ends of the edges. A plurality of control points connected to one another by means of edges can define a so-called (virtual) face in the subdivision model. More precisely, an area can be delimited and / or spanned by a plurality of control points, one of the control points being connected to two others from the plurality of control points by means of edges. If this area lies in the area of the surface of the subdivision model, it can accordingly be one
Oberflächenbereich oder, mit anderen Worten, eine Teilfläche der Oberfläche des Surface area or, in other words, a partial surface of the surface of the
Subdivisionsmodells handeln. Act subdivision model.
Das Subdivisionsmodell kann allgemein dazu dienen, ein Objekt, ein Werkstück, eine Baugruppe, ein technisches System oder dergleichen zu beschreiben und/oder zu modellieren. Im Unterschied zu dem zweidimensionalen Fall kann ein volumetrisches Subdivisionsmodell allgemein ein dreidimensionales Volumen definieren und/oder umfassen sowie über vorstehend erläuterte Zellen auch das Innere des Volumens modellieren. Insbesondere können hierdurch auch Eigenschaften in einer The subdivision model can generally be used to describe and / or model an object, a workpiece, an assembly, a technical system or the like. In contrast to the two-dimensional case, a volumetric subdivision model can generally define and / or include a three-dimensional volume and also model the interior of the volume using the cells explained above. In particular, properties in a
Tiefendimension (d. h. in der Tiefe und/oder im Innern des Volumens) und nicht lediglich in einer Ebene auf der Oberfläche bestimmt und/oder modelliert werden. Depth dimension (i.e. in depth and / or inside the volume) and not only in one plane on the surface can be determined and / or modeled.
Die Kontrollpunkte können in der vorstehend geschilderten Weise als Kontrollpunkte oder, anders ausgedrückt, Steuerpunkte oder Steuerknoten von Funktionen definiert sein, die Eigenschaften des Subdivisionsmodells beschreiben. Insbesondere können derartige Funktionen eine Form des Subdivisionsmodells beschreiben, zum Beispiel dessen sogenanntes Limit-Volumen. Letzteres entspricht dem kontinuierlichen volumetrischen Körper, der durch konzeptionell unendliche viele Verfeinerungen der Kontrollpunktnetz- Struktur des Subdivisionsmodells erzeugt wird und für viele Subdivisionsverfahren mathematisch bestimmt werden kann. Eine vergleichsweise hohe oder auch maximal möglichen Anzahl an Unterteilungen des Subdivisionsmodells ergibt eine Annäherung an dieses Limit-Volumen. The control points can be defined in the manner described above as control points or, in other words, control points or control nodes of functions which describe properties of the subdivision model. In particular, such functions can describe a form of the subdivision model, for example its so-called limit volume. The latter corresponds to the continuous volumetric body, which is generated by conceptually infinite refinements of the checkpoint network structure of the subdivision model and can be mathematically determined for many subdivision methods. A comparatively high or the maximum possible number of subdivisions of the subdivision model results in an approximation to this limit volume.
Alternativ oder zusätzlich können derartige Funktionen allgemein auch Alternatively or additionally, such functions can also generally
Materialeigenschaften, Materialübergänge, Materialdichten oder dergleichen definieren, wobei dies individuell je Knotenpunkt erfolgen kann. Dies ist zum Beispiel vorteilhaft, um Mehr-Material-Werkstücke oder -Baugruppen zu beschreiben, die beispielsweise mittels Rapid-Prototyping-Verfahren (oder allgemeinen generativen Schichtbauverfahren) hergestellt werden. Define material properties, material transitions, material densities or the like, which can be done individually for each node. This is advantageous, for example, in order to describe multi-material workpieces or assemblies, for example by means of Rapid prototyping processes (or general generative layer construction processes) can be produced.
Unter einem auszuwertenden Ort in dem Volumen des Subdivisionsmodells können auch Orte in oder auf einer Oberfläche des Volumens bzw. des Subdivisionsmodells verstanden werden. A location in the volume of the subdivision model to be evaluated can also be understood to mean locations in or on a surface of the volume or of the subdivision model.
Neben dem bereits beschriebenen Kanten, Kontrollpunkten und Flächen kann das Subdivisionsmodell auch Volumenelemente und/oder Zellen umfassen und/oder mittels solcher definiert werden. Unter einem Volumenelement (engl.: cell oder element) kann allgemein ein beliebiger Volumenanteil des Subdivisionsmodells samt der darin enthaltenen Kanten, Kontrollpunkte etc. verstanden werden. Insbesondere kann es sich um einen mittels nachstehend erläuterter regulärer Berechnungsansätze auswertbaren oder allgemein mittels bevorzugter Auswertemöglichkeiten auswertbaren Volumenanteil handeln. Als Beispiel sei ein Volumenelement genannt, das von 4 x 4 x 4 Kontrollpunkten definiert bzw. aufgespannt wird und das 3 x 3 x 3 Zellen umfassen kann. Für ein In addition to the edges, control points and surfaces already described, the subdivision model can also include volume elements and / or cells and / or be defined by means of them. A volume element (English: cell or element) can generally be understood to mean any volume portion of the subdivision model including the edges, control points, etc. contained therein. In particular, it can be a volume fraction that can be evaluated using the regular calculation approaches explained below or that can generally be evaluated using preferred evaluation options. An example is a volume element that is defined or spanned by 4 x 4 x 4 control points and that can include 3 x 3 x 3 cells. For a
Auswerten können allgemein diejenigen 4 x 4 x 4 Kontrollpunktanordnungen identifiziert werden, welche einen auszuwertenden Ort enthalten. Insbesondere kann es sich bei dem Volumenelement um eine lokale (Kontrollpunkt-) Nachbarschaft eines auszuwertenden Ortes und beispielsweise einer Zelle handeln, welche den auszuwertenden Ort enthält. Genauer gesagt liegt der auszuwertende Ort in einer bestimmten Zelle, wobei für die Auswertung des Ortes eben diese Zelle sowie deren Nachbarn und die dazugehörigen Kontrollpunkte betrachtet werden. Die den auszuwertenden Ort enthaltende Zelle kann entsprechend mittig oder zentral angeordnet sein (zum Beispiel mittig in einem regulären 4 x 4 x 4 Kontrollpunktenetz oder auch mittig in einem zunächst irregulären Evaluating can generally identify those 4 x 4 x 4 checkpoint arrangements that contain a location to be evaluated. In particular, the volume element can be a local (control point) neighborhood of a location to be evaluated and, for example, a cell which contains the location to be evaluated. More precisely, the location to be evaluated lies in a specific cell, with this cell and its neighbors and the associated control points being considered for the evaluation of the location. The cell containing the location to be evaluated can accordingly be arranged centrally or centrally (for example centrally in a regular 4 x 4 x 4 control point network or also centrally in an initially irregular one
Kontrollpunktnetz). Übergeordnet kann ein Volumenelement wenigstens eine Zelle umfassen. Checkpoint network). A volume element can include at least one cell.
Eine Zelle kann insbesondere von acht paarweise einander gegenüberliegenden und vorzugsweise paarweise zueinander parallelen Flächen definiert und/oder umgeben sein. Allgemein ausgedrückt kann eine Zelle durch eine beliebige Anzahl von Flächen definiert werden, welche ein Volumen innerhalb des Subdivisionsmodells vollständig umgeben und/oder einschließen. Das entsprechende Volumen kann dann die Zelle bilden. Es versteht sich, dass die Zelle auch durch entsprechende Kontrollpunkte und Kanten der Flächen begrenzt ist bzw. diese umfasst. A cell can in particular be defined and / or surrounded by eight surfaces which are opposite one another in pairs and preferably parallel to one another in pairs. Generally speaking, a cell can be defined by any number of areas that completely surround and / or enclose a volume within the subdivision model. The corresponding volume can then form the cell. It it goes without saying that the cell is also delimited by corresponding control points and edges of the areas or comprises them.
Die Informationen hinsichtlich des auszuwertenden Ortes können sich auf Koordinaten oder Parameterwerte des Ortes beziehen. Insbesondere kann es sich um The information regarding the location to be evaluated can relate to coordinates or parameter values of the location. In particular, it can be
Koordinatenwerte handeln, welche eine Position des Ortes in dem Modellvolumen angeben, beispielsweise in einem Raumkoordinatensystem, das auch als X, Y, Z- Koordinatensystem bezeichnet werden kann. Alternativ kann eine Zelle enthaltend den auszuwertenden Ort identifiziert und können Parameterwerte angegeben werden, die die Position des Ortes in einem lokalen Koordinatensystem dieser Zelle definieren. Dieses lokale Koordinatensystem kann zum Beispiel als u, v, w- Koordinatensystem bezeichnet werden. Act coordinate values that indicate a position of the location in the model volume, for example in a spatial coordinate system, which can also be referred to as an X, Y, Z coordinate system. Alternatively, a cell containing the location to be evaluated can be identified and parameter values can be specified which define the position of the location in a local coordinate system of this cell. This local coordinate system can, for example, be referred to as a u, v, w coordinate system.
Das Subdivisionsmodell kann mittels bekannter Datenformate oder allgemeiner computergestützter Formate beschrieben und/oder gespeichert werden. Aus den entsprechenden Datensätzen können mittels herkömmlicher Algorithmen gesuchte Eigenschaften des Subdivisionsmodells ermittelt werden. Beispielsweise kann die Valenz von Kontrollpunkten und folglich auch das Vorhandensein und/oder eine Position einer irregulären Kante ermittelt werden. Ebenso können Erstreckungen, Positionen oder Ausrichtungen einzelner Volumenelemente oder Zellen bestimmt oder definiert werden, und insbesondere solcher Zellen, die den auszuwertenden Ort enthalten. Prinzipiell ist es aber auch möglich, dass Subdivisionsmodell virtuell darzustellen und es einem Bediener zu ermöglichen, irreguläre Eigenschaften wie Kontrollpunkte oder Kanten manuell zu identifizieren und/oder einzelne Volumenelemente oder Zellen innerhalb des The subdivision model can be described and / or stored using known data formats or general computer-aided formats. Properties of the subdivision model sought can be determined from the corresponding data sets using conventional algorithms. For example, the valence of control points and consequently also the presence and / or a position of an irregular edge can be determined. Extentions, positions or orientations of individual volume elements or cells can also be determined or defined, and in particular those cells which contain the location to be evaluated. In principle, however, it is also possible to represent the subdivision model virtually and to enable an operator to manually identify irregular properties such as control points or edges and / or individual volume elements or cells within the
Subdivisionsmodells manuell auszuwählen. Select subdivision model manually.
Gemäß dem vorliegenden Verfahren können insbesondere Volumenelemente, welche irreguläre Eigenschaften aufweisen oder umfassen (oder auch Zellen, die von derartigen Volumenelementen umfasst sind), ermittelt werden, beispielsweise anhand According to the present method, in particular volume elements which have or comprise irregular properties (or also cells which are comprised by such volume elements) can be determined, for example on the basis of
entsprechender Datensätze. Eine irreguläre Kante kann auch derart definiert werden, dass diese eine von vier verschiedene Valenz aufweist, wobei die Valenz als die Anzahl von an die Kante angrenzenden Flächen oder, mit anderen Worten, als die Anzahl von Flächen definiert sein kann, welche von der Kante ausgehen und/oder über diese bzw. mit dieser verbunden sind. Unter dem Auswerten kann die vorstehend geschilderte Parametrisierung verstanden werden, also insbesondere das Ermitteln von Ortskoordinaten oder Eigenschaften des bzw. an dem auszuwertenden Ort anhand von Funktionen, die von den Kontrollpunkten definiert sind. Bei diesen Funktionen kann es sich allgemein um Basisfunktionen oder, im Fall regulärer Zellen, um (insbesondere trivariate) B-Spline-Funktionen handeln (bei irregulären Zellen können stattdessen modifizierte B-Spline-Funktionen verwendet werden). Die Ausrichtung der Kante kann hierbei dazu verwendet werden, um Bereiche (beispielsweise Ebenen) in einem betrachteten Volumenelement zu identifizieren, die mittels bevorzugter und/oder herkömmlicher Ansätze auswertbar sind (beispielsweise mittels der zweidimensionalen Ansätze aus der wissenschaftlichen Arbeit von Jos Stam bzw. aus der DE 699 15 837 T2). Hierbei kann es sich allgemein um irreguläre oder reguläre Bereiche oder Ebenen handeln, wobei die Irregularität sich wiederum danach richten kann, ob dort Kontrollpunkte mit vorbestimmten Valenzen und im Fall von zweidimensionalen Ebenen mit einer von vier verschiedenen Valenz vorhanden sind. corresponding records. An irregular edge can also be defined to have one of four different valences, which valence can be defined as the number of faces adjacent to the edge or, in other words, the number of faces originating from the edge and / or are connected via or with this. The evaluation can be understood to mean the parameterization described above, in particular the determination of location coordinates or properties of or at the location to be evaluated using functions which are defined by the control points. These functions can generally be basic functions or, in the case of regular cells, (in particular trivial) B-spline functions (modified B-spline functions can be used instead for irregular cells). The alignment of the edge can be used to identify areas (e.g. planes) in a volume element under consideration that can be evaluated using preferred and / or conventional approaches (e.g. using the two-dimensional approaches from the scientific work of Jos Stam or from the DE 699 15 837 T2). These can generally be irregular or regular areas or levels, wherein the irregularity can in turn depend on whether there are control points with predetermined valences and in the case of two-dimensional levels with one of four different valences.
Ferner ist darauf hinzuweisen, dass dann, wenn sich der auszuwertende Ort nicht in einem Volumenelement und/oder einer Zelle befindet, das eine irreguläre Kante aufweist, eine Ortsauswertung mittels regulärer Ansätze erfolgen kann. Insbesondere kann dann das Volumenelement in Form einer lokalen Nachbarschaft um den auszuwertenden Ort (bzw. die Zelle die diesen Ort enthält) zum Beispiel in Form eines 4 x 4 x 4- Kontrollpunktnetzes oder einer Anordnung von 3 c 3 c 3 Zellen definiert werden. Eine Möglichkeit zur Auswertung besteht dann darin, trivariate Basisfunktionen aus Produkten von univariaten Basisfunktionen der Kontrollpunkte dieses Volumenelements zu bestimmen. It should also be pointed out that if the location to be evaluated is not in a volume element and / or a cell that has an irregular edge, a location evaluation can be carried out using regular approaches. In particular, the volume element can then be defined in the form of a local neighborhood around the location to be evaluated (or the cell which contains this location), for example in the form of a 4 x 4 x 4 control point network or an arrangement of 3 c 3 c 3 cells. One possibility for evaluation is then to determine trivariate basic functions from products of univariate basic functions of the control points of this volume element.
Allgemein ist im Rahmen der vorliegenden Erfindung folgender Ablauf möglich, bei dem nicht sämtliche Maßnahmen zwingend sind und dessen Reihenfolge nicht einschränkend ist: In general, the following sequence is possible within the scope of the present invention, in which not all measures are mandatory and the sequence of which is not restrictive:
Es wird ermittelt, ob das Volumenelement mit dem auszuwertenden Ort eine vollständig irreguläre Struktur aufweist, d. h. keine Dimension oder Ebene definiert werden kann, entlang bzw. in der reguläre Eigenschaften (d.h. reguläre Kanten und Kontrollpunkte) vorliegen; und wenn dies der Fall ist (falls nicht liegt bereits eine geschichtete Struktur vor und der folgende Schritt wird übersprungen): It is determined whether the volume element with the location to be evaluated has a completely irregular structure, ie no dimension or plane can be defined, along or in which there are regular properties (ie regular edges and control points); and if this is the case (if not there is already a layered structure and the following step is skipped):
Es wird eine Anzahl an (rechnerischen) Unterteilungsschritten ermittelt (z.B.  A number of (arithmetic) subdivision steps are determined (e.g.
anhand folgender Figur 9), bis eine zumindest in einer Dimension reguläre Struktur erhalten wird (sog. geschichtete Struktur, wie nachstehend noch näher erläutert), wobei für diese Unterteilung Einträge einer Unterteilungsmatrix in vorbestimmter Weise gewählt werden, insbesondere in Abhängigkeit nachfolgend erläuterter struktureller Eigenschaften des Kontrollpunktnetzes; und wenn daraufhin die geschichtete Struktur erreicht wurde oder diese bereits vorlag:  with reference to the following FIG. 9) until a structure which is regular in at least one dimension is obtained (so-called layered structure, as will be explained in more detail below), entries for a subdivision matrix being selected in a predetermined manner for this subdivision, in particular depending on the structural properties of the Checkpoint network; and if the layered structure has been reached or already existed:
Es wird, wie vorstehend erläutert, eine Ausrichtung der (noch) verbleibenden irregulären Kante bestimmt und darauf basierend an dem betrachteten Ort ausgewertet, insbesondere mittels nachfolgender (Unterteilungs-) Basisfunktionen und/oder einer berechneten Eigenstruktur der Unterteilungsmatrix.  As explained above, an alignment of the (still) remaining irregular edge is determined and then evaluated based on the location under consideration, in particular by means of subsequent (subdivision) basic functions and / or a calculated intrinsic structure of the subdivision matrix.
Eine Ausführungsform sieht ferner folgende Maßnahme vor: One embodiment also provides for the following measure:
- Definieren eines Koordinatensystems nach Maßgabe der Ausrichtung der  - Define a coordinate system according to the orientation of the
irregulären Kante und insbesondere derart, sich die irreguläre Kante entlang einer (z.B. vorbestimmten und/oder bevorzugten) Achse des Koordinatensystems erstreckt.  irregular edge and in particular such that the irregular edge extends along a (e.g. predetermined and / or preferred) axis of the coordinate system.
Das Definieren des Koordinatensystems nach Maßgabe der Ausrichtung der irregulären Kante bedeutet, dass die Ausrichtung der irregulären Kante bei der Definition des Defining the coordinate system according to the orientation of the irregular edge means that the orientation of the irregular edge when defining the
Koordinatensystems berücksichtigt wird. Bei diesem Koordinatensystem kann es sich um dasselbe Koordinatensystem handeln, auf das sich auch die Informationen bezüglich des auszuwertenden Ortes beziehen. Insbesondere kann es sich um das vorstehend erläuterte Koordinatensystem zum Definieren von Orten in einer einzelnen Zelle, also beispielsweise einem sogenannten u, v, w- Koordinatensystem. Übergeordnet können sich derartige zellenbezogene Koordinatensysteme vor allem dadurch auszeichnen, dass deren Achsen, die vorzugsweise jeweils orthogonal zueinander verlaufen, jeweils Werte von 0 bis 1 umfassen und die Zelle entsprechend dieser Achsen parametrisiert wird. Coordinate system is taken into account. This coordinate system can be the same coordinate system to which the information relating to the location to be evaluated also relates. In particular, it can be the coordinate system explained above for defining locations in a single cell, for example a so-called u, v, w coordinate system. Such cell-related coordinate systems can be distinguished above all by the fact that their axes, which preferably each run orthogonally to one another, each have values from 0 to 1 and the cell is parameterized according to these axes.
Alternativ oder zusätzlich kann es sich um dasselbe Koordinatensystem handeln, in dem auch die Kontrollpunkte definiert sind, oder aber um ein hiervon verschiedenes Alternatively or additionally, it can be the same coordinate system in which the control points are defined, or a different one
Koordinatensystem. Im Rahmen der vorliegenden Offenbarung können sämtliche Coordinate system. Within the scope of the present disclosure, all
Koordinatensysteme als kartesische Koordinatensysteme definiert sein. Es versteht sich, dass die Definition des Koordinatensystems wiederum virtuell bzw. rechnerisch sowie allgemein computergestützt und/oder durch manuelle Eingaben des Benutzers erfolgen kann. Coordinate systems can be defined as Cartesian coordinate systems. It goes without saying that the definition of the coordinate system can in turn be virtual or arithmetic and generally computer-aided and / or by manual input by the user.
Bezogen auf ein zellenbezogenes (u, v, w-) Koordinatensystem kann dieses In relation to a cell-related (u, v, w) coordinate system, this can
beispielsweise derart definiert werden, dass sich die irreguläre Kante zum Beispiel entlang einer entsprechenden u-, v- oder w-Achse erstreckt. Insbesondere kann in einem ersten Schritt die Ausrichtung der irregulären Kante in dem Koordinatensystem und zum Beispiel auch eine Relativausrichtung zu wenigstens einer Achse des can be defined, for example, in such a way that the irregular edge extends, for example, along a corresponding u, v or w axis. In particular, in a first step, the alignment of the irregular edge in the coordinate system and, for example, also a relative alignment to at least one axis of the
Koordinatensystems bestimmt werden. Anschließend kann das Koordinatensystem oder das Subdivisionsmodell umfassend die irreguläre Kante neu ausgerichtet werden, sodass sich die irreguläre Kante entlang der vorbestimmten Achse erstreckt. Hierzu können zum Beispiel in an sich bekannter Weise die Koordinaten der Kontrollpunkte und/oder Kanten des Subdivisionsmodells nach Maßgabe der durchzuführenden Anpassung transformiert werden. Coordinate system can be determined. The coordinate system or the subdivision model can then be realigned comprehensively around the irregular edge, so that the irregular edge extends along the predetermined axis. For this purpose, for example, the coordinates of the control points and / or edges of the subdivision model can be transformed in a manner known per se in accordance with the adjustment to be carried out.
Die Erfinder haben erkannt, dass sich hierdurch Zustände erreichen lassen, bei denen ein Volumenelement, welches eine Zelle mit dem auszuwertenden Ort enthält, spätestens nach wenigstens einer weiteren (rechnerischen) Unterteilung in reguläre Ebenen entlang der irregulären Kante und irreguläre Ebenen orthogonal hierzu einteilbar ist. Insbesondere kann hierdurch ein schichtweiser Aufbau und/oder ein schichtweises Auswerten des Volumen-Elements erreicht werden, bei denen im Wesentlichen oder vollständig gleichartig aufgebaute zweidimensionale Knotenpunktnetze bzw. Schichten entlang der irregulären Kante aneinandergereiht sind. Insbesondere können diese Schichten irreguläre Kontrollpunkte an jeweils gleichen Positionen umfassen. The inventors have recognized that conditions can be achieved in this way in which a volume element, which contains a cell with the location to be evaluated, can be divided at least after at least one further (computational) division into regular planes along the irregular edge and irregular planes orthogonally thereto. In particular, this enables a layer-by-layer structure and / or a layer-by-layer evaluation of the volume element to be achieved, in which two-dimensional node networks or layers of essentially or completely identical construction are strung together along the irregular edge. In particular, these layers can comprise irregular control points at the same positions in each case.
Vorzugsweise werden für eine derartige schichtweise Betrachtung Volumenelemente herangezogen (d. h. in dem Subdivisionsmodell definiert und/oder ausgewählt), die in wenigstens einer Dimension (vorzugsweise sogar zwei oder drei Dimensionen) von 4 Knotenpunkten und/oder 3 Zellen aufgespannt werden, wobei dieser Zustand wiederum nach wenigstens einer weiteren (rechnerischen) Unterteilung erreicht werden kann. For such a layer-by-layer observation, volume elements are preferably used (ie defined and / or selected in the subdivision model), which are spanned in at least one dimension (preferably even two or three dimensions) by 4 nodes and / or 3 cells, this state in turn after at least one further (computational) subdivision can be achieved.
Bei einer Weiterbildung sind ferner folgende Maßnahmen vorgesehen: - Identifizieren einer Zelle des Subdivisionsmodells, welche den auszuwertenden Ort enthält; und The following measures are also provided for further training: Identifying a cell of the subdivision model which contains the location to be evaluated; and
- Ermitteln der Anzahl von Unterteilungen dieser Zelle, die erforderlich ist, damit sich der auszuwertende Ort in einer auswertbaren Zelle befindet, die durch das Unterteilen aus der ursprünglichen Zelle hervorgeht.  Determine the number of divisions of this cell that are required for the location to be evaluated to be in an evaluable cell that results from the division from the original cell.
Optional kann ferner auch vorgesehen sein, dass die Unterteilung (zumindest lokal d. h. im Bereich der Zelle) rechnerisch durchgeführt wird, um eine auswertbare Umgebung um den auszuwertenden Ort zu schaffen. Das rechnerische Unterteilen kann dabei mit einer (vorbestimmten) konstanten Berechnungszeit erfolgen. Optionally, it can also be provided that the subdivision (at least locally, that is, in the area of the cell) is carried out computationally in order to create an evaluable environment around the location to be evaluated. The arithmetic subdivision can take place with a (predetermined) constant calculation time.
In diesem Zusammenhang kann ferner vorgesehen sein, dass sich die auswertbare Zelle dadurch auszeichnet, dass diese keinen Kontrollpunkt mit einer von sechs verschiedenen Valenz umfasst. Dies trifft beispielsweise auf den nachstehend geschilderten Fall einer regulären Zelle zu. Allerdings können mit der hierin offenbarten Lehre auch Zellen ausgewertet werden, die in einer nachstehend erläuterten geschichteten Struktur vorliegen bzw. (maximal) eine irreguläre Kante aufweisen. Die Anzahl n an notwendigen Unterteilungen für einen auszuwertenden Ort an der Position u, v, w in einem In this context it can further be provided that the evaluable cell is characterized in that it does not comprise a control point with one of six different valences. This applies, for example, to the case of a regular cell described below. However, the teaching disclosed herein can also be used to evaluate cells that are present in a layered structure explained below or (at most) have an irregular edge. The number n of necessary subdivisions for a location to be evaluated at the position u, v, w in one
zellenbezogenen Koordinatensystem einer Zelle kann allgemein mittels folgender Formel bestimmt werden: n = mm j- log^, < H ) . - log-, (t>) . - log-, ( w ) | ] Cell-related coordinate system of a cell can generally be determined using the following formula: n = mm j-log ^ , <H). - log-, (t>). - log-, (w) | ]
Zusätzlich oder alternativ kann die Anzahl der notwendigen Unterteilungen mittels nachfolgend anhand von Figur 9 erläuterten Zusammenhängen bestimmt werden, welche wiederum auf einem zellenbezogenen Koordinatensystem und insbesondere einer vorbestimmten Ausrichtung der irregulären Kante darin beruhen. Additionally or alternatively, the number of subdivisions required can be determined by means of the relationships explained below with reference to FIG. 9, which in turn are based on a cell-related coordinate system and in particular a predetermined alignment of the irregular edge therein.
Die Zelle kann im Rahmen eines einzelnen Unterteilungsschritts in acht kleinere The cell can be divided into eight smaller ones in a single step
Einzelzellen unterteilt werden, welche in zusammengesetzter Form dasselbe Volumen einnehmen, wie die Ausgangszeile. Befindet sich der auszuwertende Ort anschließend innerhalb einer (neuen) Zelle, die nicht mehr den irregulären Kontrollpunkt umfasst, kann mittels im Rahmen der Ausführungsbeispiele aufgezeigter Ansätze unmittelbar ausgewertet werden. Weist die den auszuwertenden Ort enthaltende (neue) Zelle aber nach wie vor den irregulären Kontrollpunkt auf, muss zumindest diese Zelle noch weiter unterteilt werden. Der Zusammenhang zwischen der Anzahl der erforderlichen Individual cells are subdivided, which, when put together, occupy the same volume as the output row. If the location to be evaluated is then within a (new) cell that no longer includes the irregular control point, it can be evaluated directly by means of approaches shown in the exemplary embodiments. However, if the (new) cell containing the location to be evaluated still has the irregular checkpoint, at least this cell must go further be divided. The relationship between the number of required
Unterteilungsschritte in Abhängigkeit einer Entfernung des auszuwertenden Ortes von dem irregulären Kontrollpunkt kann vorab rechnerisch bestimmt und hinterlegt werden (siehe auch Darstellung der entsprechenden Zusammenhänge in der nachfolgenden Figur 9), sodass je nach den konkreten Parametern des auszuwertenden Ortes unmittelbar eine rechnerische lokale Unterteilung des Subdivisionsmodells vorgenommen werden kann. Subdivision steps depending on a distance of the location to be evaluated from the irregular control point can be determined beforehand and stored (see also illustration of the corresponding relationships in the following FIG. 9), so that depending on the specific parameters of the location to be evaluated, a computational local division of the subdivision model is carried out immediately can be.
Das Auswerten der Zelle, welche den auszuwertenden Ort enthält, kann unter Verwenden von speziellen Subdivisionsbasisfunktionen erfolgen, wie sie vorstehend für den zweidimensionalen Fall bereits erläutert wurden. Dies bietet den Vorteil, dass zumindest zum Teil auf bereits vorberechneter Matrixausdrücke und/oder Matrix-Matrix-Multiplikation zurückgegriffen und die erforderliche Rechenzeit somit reduziert und insbesondere im Wesentlichen konstant gehalten werden kann. The evaluation of the cell which contains the location to be evaluated can be carried out using special subdivision basis functions, as have already been explained above for the two-dimensional case. This offers the advantage that at least some of the previously calculated matrix expressions and / or matrix-matrix multiplication can be used and the required computing time can thus be reduced and in particular kept essentially constant.
Durch Bestimmen der erforderlichen Anzahl von Unterteilungen kann insbesondere in Kenntnis der Ausrichtung der irregulären Kante und vorzugsweise mittels zum Teil bereits vorberechneter Matrixausdrücke und/oder Matrix-Matrix-Multiplikation (zum Beispiel im Rahmen der Subdivisionsbasisfunktionen) der gegebene Ort aufwandsarm ausgewertet werden. By determining the required number of subdivisions, the given location can be evaluated with little effort, in particular with knowledge of the alignment of the irregular edge and preferably by means of partially already pre-calculated matrix expressions and / or matrix-matrix multiplication (for example as part of the subdivision basic functions).
Übergeordnet kann ferner vorgesehen sein, dass für das Auswerten an dem gegebenen Ort bzw. des gegebenen Ortes trivariate Basisfunktionen verwendet werden, welche auf Basisfunktionen entlang einer Achse des Koordinatensystems basieren, die entlang der irregulären Kante verläuft. Overriding can also be provided that trivariate basic functions are used for the evaluation at the given location or the given location, which are based on basic functions along an axis of the coordinate system that runs along the irregular edge.
Ferner kann in diesem Zusammenhang vorgesehen sein, dass die Basisfunktionen für das Auswerten zusätzlich auch auf bivariaten Subdivisionsbasisfunktionen basieren, die in von den verbleibenden Achsen des Koordinatensystems aufgespannten Ebenen bestimmt werden. Furthermore, it can be provided in this connection that the basic functions for the evaluation are also based on bivariate subdivision basic functions that are determined in planes spanned by the remaining axes of the coordinate system.
Eine Gleichung, aus der die vorstehend geschilderten Berechnungen hervorgehen, ist nachstehend wiedergegeben und wird im Rahmen der Ausführungsbeispiele noch näher erläutert. Die bivariaten Subdivisionsbasisfunktionen (p(u, v) betreffen dabei einen in der wissenschaftlichen Arbeit von Jos Stam bzw. in der DE 699 15 837 T2 definierten Term zum Auswerten irregulärer zweidimensionaler Flächenstücke (dort als Eigenbasisfunktion bezeichnet, aufgrund nachfolgend erläuterter erforderlicher Anpassungen für den dreidimensionalen Fall hierin aber als Subdivisionsbasisfunktionen bezeichnet). Aufgrund der erfindungsgemäß vorgesehenen Ermittlung der Ausrichtung der irregulären Kante sowie der im Rahmen der geschilderten Weiterbildungen vorgesehenen Achsendefinition entlang dieser Kante kann ebenfalls auf diesen Term zurückgegriffen werden, um ihn mit Basisfunktionen N,(w) entlang derjenigen Achse (w) zu multiplizieren, entlang derer auch die irreguläre Kante verläuft. Die resultierenden trivariaten Basisfunktionen, die in Form der nachstehenden erläuterten Gleichung (15) zum Auswerten eines Ortes p (u, v, w) verwendet werden können, lauten:
Figure imgf000024_0001
An equation from which the above-described calculations emerge is reproduced below and is explained in more detail in the context of the exemplary embodiments. The bivariate subdivision basis functions (p (u, v) relate to one in the Scientific work by Jos Stam or term defined in DE 699 15 837 T2 for evaluating irregular two-dimensional patches (referred to there as an own basis function, but referred to herein as subdivision basis functions due to the necessary adjustments for the three-dimensional case explained below). On the basis of the determination of the alignment of the irregular edge provided according to the invention and the axis definition along this edge provided in the context of the further developments described, this term can also be used to multiply it by basic functions N, (w) along the axis (w) along which the irregular edge also runs. The resulting trivial basic functions that can be used in the form of the equation (15) explained below to evaluate a location p (u, v, w) are:
Figure imgf000024_0001
Weiter kann zur Auswertung auf nachfolgende Gleichungen (18)-(19) zurückgegriffen werden. The following equations (18) - (19) can also be used for evaluation.
Dabei bezeichnet j die jeweiligen Kontrollpunkte in einer i-ten u, v-Ebene bzw. Schicht, die jeweils orthogonal zu der irregulären Kante entlang der w-Achse verlaufen. Ein Vorteil dieser Möglichkeit besteht neben dem grundsätzlichen Bereitstellen einer praktikablen Auswertungsmöglichkeit für den dreidimensionalen Fall vor allem darin, dass durch Verwenden der Subdivisionsbasisfunktionen (p(u, v) der Berechnungsaufwand erheblich reduziert wird. Insbesondere kann eine im Wesentlichen konstante Berechnungszeit erreicht werden, unabhängig von dem Ausmaß etwaiger Irregularitäten. Des Weiteren können wesentliche Matrixausdrücke, auf denen die Subdivisionsbasisfunktionen (p(u, v) basieren, teilweise vorberechnet und für das Auswerten aufwandsarm ausgelesen werden. Here, j denotes the respective control points in an i-th u, v plane or layer, which are each orthogonal to the irregular edge along the w axis. In addition to the basic provision of a practical evaluation option for the three-dimensional case, one advantage of this option is that the calculation effort is significantly reduced by using the subdivision basis functions (p (u, v). In particular, an essentially constant calculation time can be achieved, regardless of The extent of any irregularities Furthermore, essential matrix expressions on which the subdivision basis functions (p (u, v) are based can be partially precalculated and read out with little effort for the evaluation.
Allgemein kann zunächst überprüft werden, ob der auszuwertende Ort in einer sogenannten geschichteten Struktur liegt. Ist dies nicht der Fall, kann im Rahmen einer vorbereitenden rechnerischen Unterteilung die geschichtete Struktur zunächst geschaffen werden. Hierzu kann eine Unterteilungsmatrix in vorbestimmter Weise definiert werden, um ein Unterteilen in konstanter Berechnungszeit zu erzielen. Im Detail ist bei einer Weiterbildung vorgesehen, dann, wenn das Volumenelement keine in wenigstens einer Dimension reguläre Struktur aufweist, das Volumenelement mittels einer Unterteilungsmatrix unterteilt und ausgewertet wird (sh. z.B. nachstehende Beispiel für Unterteilungsmatrix A) und die Einträge der Unterteilungsmatrix abhängig von wenigstens einer strukturellen Eigenschaft des Kontrollpunktnetzes sind. Bei den In general, it can first be checked whether the location to be evaluated is in a so-called layered structure. If this is not the case, the layered structure can be created as part of a preparatory computational subdivision. For this purpose, a subdivision matrix can be defined in a predetermined manner in order to achieve subdivision in a constant calculation time. In a further development, if the volume element does not have a regular structure in at least one dimension, the volume element is subdivided and evaluated by means of a subdivision matrix (see e.g. the following example for subdivision matrix A) and the entries in the subdivision matrix depend on at least one structural property of the checkpoint network. Both
Einträgen kann es sich allgemein um die subdivisionsbasierten Gewichtungsfaktoren für Kontrollpunkte bzw. Kontrollpunktkoordinaten handeln. Diese sollten, um eine Auswertung in konstanter Berechnungszeit zu ermöglichen, gemäß bevorzugter Vorschriften in die Unterteilungsmatrix (d. h. mit bevorzugten Spalten- und Reihenpositionen) eingetragen werden. Nachstehend wird hierfür ein Beispiel geschildert, bei der eine Nummerierung bzw. Indexierung und darauf basierende Eintragung in die Unterteilungsmatrix in einer bestimmten Reihenfolge gemäß drei verschiedener Gruppen von Kontrollpunkten erfolgt. Insbesondere können auf diese Weise sogenannte Richtungswechsel während aufeinanderfolgender Unterteilungen unterbunden werden, welche die Berechnungszeit linear mit den erforderlichen Unterteilungsschritten ansteigen lassen würden. Entries can generally be the subdivision-based weighting factors for checkpoints or checkpoint coordinates. These should be entered in the subdivision matrix (i.e. with preferred column and row positions) in order to enable evaluation in a constant calculation time. An example of this is described below, in which numbering or indexing and, based on this, entry in the subdivision matrix takes place in a specific sequence according to three different groups of control points. In particular, so-called changes of direction can be prevented during successive subdivisions, which would increase the calculation time linearly with the required subdivision steps.
Die strukturelle Eigenschaft kann eine Position eines Kontrollpunktes mit einer von sechs verschiedenen Valenz (hierin auch irregulärer Kontrollpunkt genannt) innerhalb des Kontrollpunktnetzes sein. Genauer gesagt kann ein irregulärer Kontrollpunkt bestimmt werden und zum Beispiel nach Maßgabe eines Abstands zu diesem irregulären The structural property can be a position of a checkpoint with one of six different valences (also referred to herein as irregular checkpoint) within the checkpoint network. More specifically, an irregular checkpoint can be determined and, for example, according to a distance from this irregular checkpoint
Kontrollpunkt eine Nummerierung bzw. Indexierung der weiteren Kontrollpunkte erfolgen, um diese in die Unterteilungsmatrix einzutragen. Checkpoint numbering or indexing of the other checkpoints is carried out in order to enter them in the subdivision matrix.
Weiter kann dann, wenn die Zelle mit dem auszuwertenden Ort von einer einzelnen irregulären Kante begrenzt wird, als der irreguläre Kontrollpunkt zum Festlegen der strukturellen Eigenschaften sowie der Einträge der Unterteilungsmatrix ein Kontrollpunkt gewählt werden, der ein Endpunkt der irregulären Kante ist. Furthermore, if the cell with the location to be evaluated is bounded by a single irregular edge, a control point which is an end point of the irregular edge can be selected as the irregular control point for specifying the structural properties and the entries in the division matrix.
Alternativ kann dann, wenn die Zelle mit dem auszuwertenden Ort von einer Mehrzahl von irregulären Kanten begrenzt wird, als der Kontrollpunkt zum Festlegen der strukturellen Eigenschaften sowie der Einträge der Unterteilungsmatrix ein Kontrollpunkt gewählt werden, der mit sämtlichen irregulären Kanten verbunden ist. Allerdings kann dann, wenn kein mit sämtlichen irregulären Kanten verbundener Kontrollpunkt vorliegt, das Kontrollpunktnetz einmal unterteilt werden, um den vorstehend genannten Zustand zu erreichen. Alternatively, if the cell with the location to be evaluated is delimited by a plurality of irregular edges, a control point which is connected to all irregular edges can be selected as the control point for determining the structural properties and the entries in the division matrix. However, if there is no control point connected to all irregular edges, the Checkpoint network can be divided once to achieve the above-mentioned state.
Gemäß einer Weiterbildung wird das volumetrische Subdivisionsmodell ferner in According to a further development, the volumetric subdivision model is also described in
Abhängigkeit davon ausgewertet, ob sich der auszuwertende Ort in einem Grenzbereich des Subdivisionsmodells zur Umgebung befindet. Die Erfinder haben allgemein erkannt, dass in einem solchen Zustand weitere Vereinfachungen der Auswertung möglich und/oder besondere Auswertungen erforderlich sind. Unter einem Grenzbereich kann allgemein ein Bereich und/oder Volumenelement des Subdivisionsmodells verstanden werden, der bzw. das nahe einer Grenzfläche des Modells zur Umgebung positioniert ist und/oder der eine solche Grenzfläche enthält. Insbesondere kann der Grenzbereich eine Nachbarschaft von wenigstens 3 c 3 c 3 Kontrollpunkten oder wenigstens 3 x 2 x 2 Zellen um die irreguläre Eigenschaft (zum Beispiel die irreguläre Kante) oder die diese Evaluated depending on whether the location to be evaluated is in a border area of the subdivision model to the environment. The inventors have generally recognized that in such a state, further simplifications of the evaluation are possible and / or special evaluations are required. A boundary region can generally be understood to mean a region and / or volume element of the subdivision model that is positioned near an interface of the model to the surroundings and / or that contains such an interface. In particular, the border region can be a neighborhood of at least 3 c 3 c 3 control points or at least 3 x 2 x 2 cells around the irregular property (for example the irregular edge)
Eigenschaft enthaltene Zelle umfassen. Include property contained cell.
Wie nachstehend gezeigt, ist es aufgrund von den Erfindern erkannter Besonderheiten möglich, weniger Kontrollpunkte oder Zellen zur Auswertung heranzuziehen als bei in dem Volumen des Subdivisionsmodells liegenden Orten und/oder Zellen. Insbesondere wurden Möglichkeiten erkannt, aus dem Stand der Technik bekannte sogenannte scharfe- Kanten-Funktionen in entsprechenden Grenzbereichen zu verwenden, wodurch sich die Anzahl erforderlicher Kontrollpunkte und Zellen sowie der allgemeine Rechenaufwand verringern. As shown below, it is possible due to special features recognized by the inventors to use fewer control points or cells for evaluation than for locations and / or cells located in the volume of the subdivision model. In particular, possibilities were recognized for using so-called sharp-edge functions known from the prior art in corresponding border areas, as a result of which the number of required control points and cells and the general computing effort are reduced.
Beispielsweise kann dann, wenn sich der auszuwertende Ort in einem Grenzbereich des Subdivisionsmodells zur Umgebung befindet, wenigstens eine für das Auswerten verwendete Basisfunktion basierend auf einer scharfe-Kanten-Funktion entlang derjenigen Achse ermittelt werden, entlang derer auch die irreguläre Kante verläuft. Dies verdeutlicht sich zum Beispiel aus der nachstehend und im Folgenden noch näher erläuterten Gleichung (3), in der in nachfolgender Gleichung (15) einsetzbare For example, if the location to be evaluated is located in a border area of the subdivision model to the surroundings, at least one basic function used for the evaluation can be determined based on a sharp edge function along the axis along which the irregular edge also runs. This can be seen, for example, from equation (3), which is explained in more detail below and below, and which can be used in equation (15) below
Basisfunktionen B, für ein betrachtetes Volumenelement an einzelnen Knotenpunkten i betrachtet werden. In den Richtungen, die in orthogonal zu der irregulären Kante verlaufenden Ebenen verlaufen (im untenstehenden Beispiel die u- und v-Richtung), werden herkömmliche Basisfunktionen betrachtet, während in der Richtung entlang der irregulären Kante (in dem untenstehenden Beispiel w) bzw. in Richtung des Randes oder der Grenze eine im Rahmen der Ausführungsbeispiele noch näher erläuterte scharfe- Kanten-Funktion C betrachtet wird. Bei den eckigen Klammern handelt es sich um einen Aufrund-Operator, der den Klammerinhalt im Fall von Bruchteilen auf die nächst höhere ganze Zahl aufrundet, wohingegen das %-Zeichen einen Modulo-Operator angibt: Basic functions B are considered for a solid element considered at individual nodes i. In the directions that are orthogonal to the irregular edge (in the example below the u and v direction), conventional basis functions are considered, while in the direction along the irregular edge (in the example below w) and in Direction of the edge or the boundary, a sharp edge function C, which is explained in more detail in the context of the exemplary embodiments, is considered. The square brackets are a round-up operator that rounds up the content of the brackets in the case of fractions to the next higher integer, whereas the% sign indicates a modulo operator:
Ni{u,v,w) = ]6 («) %4l %4 (v) N (w)Ni {u, v, w) = ] 6 («)% 4l% 4 (v) N (w)
Figure imgf000027_0001
Figure imgf000027_0001
Die vorstehend geschilderte und anhand von Gleichung (3) erläuterte Auswertung kann insbesondere dann erfolgen, wenn ermittelt wird, dass die irreguläre Kante orthogonal zu oder in einer Grenzfläche des Subdivisionsmodells zur Umgebung verläuft. Insbesondere sollten in u- und v-Richtung reguläre Strukturen vorliegen und falls dies nicht der Fall ist, kann auf nachstehend erläuterte Gleichung (19) zurückgegriffen werden. The evaluation described above and explained on the basis of equation (3) can take place in particular if it is determined that the irregular edge is orthogonal to or in an interface of the subdivision model with the surroundings. In particular, there should be regular structures in the u and v directions, and if this is not the case, the equation (19) explained below can be used.
In einer weiteren Ausführungsform wird dann, wenn sich der auszuwertende Ort in einem Grenzbereich des Subdivisionsmodells zur Umgebung befindet und der auszuwertende Ort in einer Zelle des Subdivisionsmodells liegt, welche mehr als eine Grenzfläche zur Umgebung umfasst, die Zelle vor dem Auswerten wenigstens einmal (rechnerisch) unterteilt werden. Die Erfinder haben erkannt, dass es spätestens nach einer solchen Unterteilung möglich ist, eine der vorstehend erläuterten Auswertungsmöglichkeiten für Grenzbereiche zum Beispiel auf Basis von scharfe-Kanten-Funktionen anzuwenden. In a further embodiment, if the location to be evaluated is located in a border area of the subdivision model to the surroundings and the location to be evaluated lies in a cell of the subdivision model which comprises more than one interface to the surroundings, the cell is evaluated at least once (computationally) before the evaluation. be divided. The inventors have recognized that, at the latest after such a division, it is possible to use one of the evaluation options explained above for border areas, for example on the basis of sharp edge functions.
Die Erfindung betrifft ferner ein Computerprogrammprodukt, umfassend The invention further relates to a computer program product comprising
Programmanweisungen, um beim Ausführen dieser Programmanweisungen auf einer Prozessoreinheit ein Verfahren gemäß einem der vorangehenden Aspekte auszuführen. Daher ist das Computerprogrammprodukt, insbesondere ein Computerprogramm, ausgestaltet, das Verfahren gemäß der Erfindung einer der Ausführungsformen auszuführen, die in dieser Beschreibung beschrieben sind. Mit anderen Worten kann das Verfahren mittels Software ausgeführt werden. Es ist jedoch nicht ausgeschlossen, dass zumindest Teile des Verfahrens alternativ durch eine Kombination von Software und zur Ausführung des Verfahrens ausgestalteter Hardware, insbesondere mit zumindest einem zur Ausführung des Verfahrens ausgestalteten integrierten Schaltkreis (wie z.B. einem FPGA) ausgeführt werden, oder ausschließlich von derartiger Hardware. Ferner betrifft die Erfindung eine Computervorrichtung, umfassend eine Prozessoreinheit und eine Speichereinheit, in dem ein Computerprogrammprodukt gemäß dem Program instructions for executing a method according to one of the preceding aspects when executing these program instructions on a processor unit. The computer program product, in particular a computer program, is therefore designed to carry out the method according to the invention in one of the embodiments which are described in this description. In other words, the method can be carried out using software. However, it is not excluded that at least parts of the method can alternatively be carried out by a combination of software and hardware designed to carry out the method, in particular with at least one integrated circuit (such as an FPGA) designed to carry out the method, or exclusively by such hardware . Furthermore, the invention relates to a computer device comprising a processor unit and a memory unit in which a computer program product according to the
vorangehenden Aspekt zum Ausfuhren durch den Prozessor hinterlegt (insbesondere gespeichert und/oder ausführbar geladen) ist. previous aspect for export by the processor is stored (in particular stored and / or loaded executable).
Die Erfindung wird anhand der beigefügten Zeichnungen im Folgenden näher erläutert. Identische oder in Ihrer Art und/oder Funktion übereinstimmende Merkmale können dabei figurenübergreifend mit den gleichen Bezugszeichen versehen sein. The invention is explained in more detail below with reference to the accompanying drawings. Identical features or features that match their type and / or function can be provided with the same reference symbols in all figures.
Fig. 1 eine Prinzipskizze zum Erläutern eines Zusammenhangs von Fig. 1 is a schematic diagram for explaining a relationship of
Kontrollpunkten und einer hiervon definierten Objektform;  Control points and an object shape defined thereby;
Fig. 2a-c Beispiele regulärer und irregulärer zweidimensionaler Flächenstücke; 2a-c examples of regular and irregular two-dimensional surface pieces;
Fig. 3 eine Darstellung zum Erläutern der notwendigen Anzahl von Fig. 3 is an illustration for explaining the necessary number of
Unterteilungsschritten, um reguläre zweidimensionale Kontrollpunktnetze zu erhalten;  Subdivision steps to obtain regular two-dimensional checkpoint networks;
Fig. 4 eine Darstellung zum Erläutern der Indexierung einzelner Kontrollpunkte vor und nach einer zusätzlichen Unterteilung; 4 shows a diagram for explaining the indexing of individual control points before and after an additional subdivision;
Fig. 5a-b eine Darstellung zum Erläutern von scharfe-Kanten-Funktionen; 5a-b are a diagram for explaining sharp edge functions;
Fig. 6 eine Darstellung eines regulären Volumenelements eines volumetrischen Fig. 6 is an illustration of a regular volume element of a volumetric
Subdivisionsmodells in Form eines 4 c 4 c 4-Netzes;  Subdivision model in the form of a 4 c 4 c 4 network;
Fig. 7a-b ein Beispiel für ein irreguläres Volumenelement eines volumetrischen 7a-b show an example of an irregular volume element of a volumetric
Subdivisionsmodells;  Subdivision model;
Fig. 8a-b ein weiteres Beispiel für ein irreguläres Volumenelement eines 8a-b another example of an irregular volume element
volumetrischen Subdivisionsmodells;  volumetric subdivision model;
Fig. 9 eine Darstellung zum Erläutern der notwendigen Anzahl von 9 is an illustration for explaining the necessary number of
Unterteilungsschritten um reguläre Volumenelemente zu erhalten; Fig. 10a-b eine Darstellung der irregulären Volumenelemente aus Figur 7b und Figur 8b nach einer weiteren lokalen Unterteilung; Subdivision steps to get regular solid elements; 10a-b show an illustration of the irregular volume elements from FIG. 7b and FIG. 8b after a further local subdivision;
Fig. 1 1 a-e Bespiele für Zellen eines Volumenelements, die einen auszuwertenden Ort enthalten und die an den Grenzflächen eines Kontrollpunktnetzes zur Umgebung liegen; Fig. 1 1 a-e examples for cells of a volume element that contain a location to be evaluated and which are at the interfaces of a control point network with the environment;
Fig. 12 Darstellungen zum Erläutern einer benötigten Rechenzeit; und 12 shows illustrations for explaining a required computing time; and
Fig. 13a-e Darstellungen zum Erläutern einer Nummerierung von Kontrollpunkten. 13a-e representations for explaining a numbering of control points.
Im Folgenden wird zunächst auf einige grundlegende Überlegungen der DE 699 15 837 T2 eingegangen, auf denen die hierin offenbarte Lösung teilweise aufbaut. Eine vollständige Erläuterung der entsprechenden Rechenschritte findet sich in der oben genannten wissenschaftlichen Arbeit von Jos Stam aber auch in der hierzu im In the following, some basic considerations of DE 699 15 837 T2 are first discussed, on which the solution disclosed herein is based in part. A complete explanation of the corresponding calculation steps can be found in the scientific work by Jos Stam mentioned above, but also in
Wesentlichen inhaltsgleichen DE 699 15 837 T2, insbesondere in den Absätzen [0042- 0088]. Die Diskussion dieser vorbekannten Ansätze bezieht sich ausschließlich auf den zweidimensionalen Fall, wohingegen die hierin vorgestellte Lösung eine Erweiterung auf dreidimensionale Fälle ermöglicht. DE 699 15 837 T2 with essentially the same content, in particular in paragraphs [0042- 0088]. The discussion of these previously known approaches relates exclusively to the two-dimensional case, whereas the solution presented here enables expansion to three-dimensional cases.
In den Figuren 2a-c sind Beispiele regulärer und irregulärer Kontrollpunktnetze 10, 1 1 zum Modellieren zweidimensionaler Flächenstücke gezeigt, wie sie von einem FIGS. 2a-c show examples of regular and irregular checkpoint networks 10, 11 for modeling two-dimensional surface pieces, such as those from one
zweidimensionalen Subdivisionsmodell umfasst sein können. Dabei zeigen die durchgezogenen Linien und Punkte ein Ausgangsnetz 10 und die gestrichelten Linien und Punkte ein Netz 1 1 nach dem Durchführen eines Unterteilungsschritts gemäß dem Catmull-Clark-Algorithmus (im Folgenden auch als Unterteilungsnetz 1 1 bezeichnet). Es versteht sich, dass das Subdivisionsmodell mehrere Flächenstücke und somit auch mehrere entsprechende Kontrollpunktnetze 10, 1 1 umfassen kann, die dann two-dimensional subdivision model can be included. The solid lines and points show an output network 10 and the dashed lines and points show a network 11 after performing a subdivision step in accordance with the Catmull-Clark algorithm (also referred to below as subdivision network 11). It goes without saying that the subdivision model can comprise a plurality of surface pieces and thus also a number of corresponding control point networks 10, 11, which then
nebeneinander positioniert wären bzw. ineinander übergehen. would be positioned next to each other or merge.
In Figur 2b ist ein reguläres Kontrollpunktnetz 10 gezeigt, dass von 4 x 4 FIG. 2b shows a regular checkpoint network 10 that of 4 × 4
Kontrollpunkten 12 aufgespannt wird, welche mittels Kanten 14 untereinander verbunden sind. Eine Mehrzahl von Kanten 14 und Kontrollpunkte 12 schließen jeweils zweidimensionale Zellen 13 zwischen sich ein. Aus Übersichtsgründen sind in sämtlichen der nachstehenden Figuren nicht alle Kontrollpunkte 12 und Kanten 14 mit einem entsprechenden Bezugszeichen versehen. Das Kontrollpunktnetz 10 dient dazu, die Form eines nicht gesondert dargestellten zweidimensionalen Flächenstücks zu modellieren bzw. mathematisch zu beschreiben. Control points 12 is clamped, which are connected to one another by means of edges 14. A plurality of edges 14 and control points 12 each close two-dimensional cells 13 between them. For reasons of clarity, not all control points 12 and edges 14 are provided with a corresponding reference symbol in all of the figures below. The control point network 10 serves to model or mathematically describe the shape of a two-dimensional surface piece, which is not shown separately.
Jeder Punkt innerhalb von dem Kontrollpunktnetz 10 (d. h. mit Ausnahme von dessen Rand) weist eine Valenz von vier auf und ist somit regulär. Ein 4 c 4 Kontrollpunktnetz 10, dass ausschließlich reguläre Kontrollpunkte 12 enthält (d. h. mit Ausnahme des Randes), definiert ein sogenanntes reguläres bikubisches B-Spline-Flächenstück bzw. kann als ein solches mathematisch beschrieben werden. Koordinaten und Eigenschaften von Orten innerhalb eines solchen Flächenstücks können aufwandsarm mittels der eingangs geschilderten B-Spline-Basisfunktionen bestimmt werden. An jedem Ort innerhalb eines derartigen regulären Flächenstücks kann daher eine Auswertung vorgenommen werden. Each point within the control point network 10 (i.e. with the exception of its edge) has a valence of four and is therefore regular. A 4 c 4 control point network 10, which contains only regular control points 12 (i.e. with the exception of the edge), defines a so-called regular bicubic B-spline surface piece or can be described mathematically as such. Coordinates and properties of locations within such a piece of land can be determined with little effort using the B-spline basic functions described at the beginning. An evaluation can therefore be carried out at any location within such a regular area.
Obwohl dies im Fall der Figur 2b nicht erforderlich ist, ist aus Anschauungsgründen zusätzlich auch das Kontrollpunktnetz 1 1 nach einer weiteren Unterteilung in Form eines Unterteilungsnetzes 1 1 gestrichelt dargestellt. Man erkennt, dass dieses eine feinere Unterteilung aufweist, da dessen Kontrollpunkte 12 deutlich näher beieinanderliegen. Die Tatsache, dass das Unterteilungsnetz 1 1 und das Ausgangsnetz 10 gemeinsame Punkte aufweisen, ist darauf zurückzuführen, dass das Ausgangsnetz äquidistant voneinander beanstandete Kontrollpunkte 12 umfasst und ergibt sich allgemein aus den Although this is not necessary in the case of FIG. 2b, the control point network 11 is also shown in dashed lines after a further subdivision in the form of a subdivision network 11 for reasons of clarity. It can be seen that this has a finer subdivision, since its control points 12 are much closer together. The fact that the subdivision network 11 and the output network 10 have common points can be attributed to the fact that the output network comprises control points 12 which are equidistant from one another and results generally from the
Subdivisionsregeln. Subdivision rules.
In Figur 2a ist ein erneut mit durchgezogenen Linien dargestelltes Kontrollpunktnetz 10 zur Modellierung eines nicht gesondert dargestellten zweidimensionalen Flächenstücks gezeigt. Das Netz 10 enthält einen irregulären bzw. extraordinären Punkt 18, der eine Valenz von drei aufweist. Das Kontrollpunktnetz 10 ist somit irregulär und kann nicht ohne weiteres mittels B-Spline-Basisfunktionen ausgewertet werden. Insbesondere kann kein reguläres 4 x 4 Kontrollpunktnetz 10 definiert werden, dass ausschließlich reguläre Kontrollpunkte 12 in seinem Innern enthält (teilweise durch gestrichelt dargestellte Kontrollpunkte 12 eines nachfolgend erläuterten unterteilten Kontrollpunktnetzes überlagert). Stattdessen könnte lediglich ein 3 c 3 Netz aus entsprechend mit einem Bezugszeichen versehenen Kontrollpunkten 12 definiert werden, welches den irregulären Punkt 18 umfasst. Dieses Netz definiert jedoch kein bikubisches B-Spline-Flächenstück bzw. kann nicht als ein solches mathematisch beschrieben und ausgewertet werden. FIG. 2a shows a control point network 10, again shown with solid lines, for modeling a two-dimensional surface piece, which is not shown separately. The network 10 contains an irregular or extraordinary point 18, which has a valence of three. The checkpoint network 10 is therefore irregular and cannot be evaluated easily using basic B-spline functions. In particular, no regular 4x4 checkpoint network 10 can be defined that contains only regular checkpoints 12 in its interior (partially overlaid by dashed checkpoints 12 of a subdivided checkpoint network explained below). Instead, it would only be possible to define a 3 c 3 network of control points 12 which are correspondingly provided with a reference symbol and which are the irregular ones Item 18 includes. However, this network does not define a bicubic B-spline patch or cannot be mathematically described and evaluated as such.
Um dies zu beheben, wird eine weitere lokale Unterteilung nach den Regeln des Catmull- Clark-Algorithmus vorgenommen, die in dem gestrichelt dargestellten Unterteilungsnetz 1 1 resultiert, das in den Figuren 2a-c Kontrollpunkte 12 des Ausgangsnetzes jeweils teilweise überlagert. Infolge der Unterteilung lassen sich drei verschiedene reguläre 4 x 4 Kontrollpunktnetz definieren, wobei in Figur 2a eines davon, welches auch den irregulären Punkt 18 umfasst, wellenförmig umrissen ist. Dieses Netz ist deshalb regulär, da es ausschließlich Kontrollpunkte 12 mit einer Valenz von vier in seinem Innern enthält. To remedy this, a further local subdivision is carried out according to the rules of the Catmull-Clark algorithm, which results in the subdivision network 11 shown in dashed lines, which in each case partially overlaps control points 12 of the output network in FIGS. 2a-c. As a result of the subdivision, three different regular 4 × 4 checkpoint networks can be defined, one of which, which also includes the irregular point 18, is outlined in a wave shape in FIG. 2a. This network is regular because it contains only checkpoints 12 with a valence of four inside.
Somit können an sämtlichen Orten in dem regulären Netz 20 (d. h. auch an Positionen zwischen den einzelnen Kontrollpunkte 12) Auswertungen vorgenommen werden, da deren Koordinaten mittels herkömmlicher B-Spline-Basisfunktionen bestimmt werden können. Stimmt der auszuwertende Ort mit einem irregulären Kontrollpunkt 12 überein, müssen theoretisch unendliche Unterteilungen vorgenommen werden oder aber es kann anhand der nachstehend erläuterten Gleichung (7) durch Einsetzen von n = unendlich direkt ausgewertet werden. In letzterem Fall können sogenannte Limit-Regeln vordefiniert sein, die beispielsweise besagen, dass bei einem Potenzieren der Eigenwertmatrix ein mit 1 angegebener Eintrag seinen Wert beibehält, während sämtliche anderen zwischen 0 und 1 liegenden Einträge den Wert 0 annehmen. Allgemein ausgedrückt kann somit lediglich der größte Eigenwert der Eigenwertmatrix beibehalten und sämtliche anderen Einträge können mit 0 angegeben werden.  Evaluations can thus be carried out at all locations in the regular network 20 (i.e. also at positions between the individual control points 12), since their coordinates can be determined by means of conventional B-spline basic functions. If the location to be evaluated coincides with an irregular control point 12, theoretically infinite subdivisions have to be made, or it can be evaluated directly using n = infinity using the equation (7) explained below. In the latter case, so-called limit rules can be predefined, which say, for example, that if the eigenvalue matrix is raised to power, an entry specified with 1 retains its value, while all other entries between 0 and 1 assume the value 0. In general terms, only the largest eigenvalue of the eigenvalue matrix can be retained and all other entries can be specified with 0.
Fig. 2c zeigt ein weiteres Beispiel, in dem ein Kontrollpunktnetz 10 einen irregulären Punkt 18 enthält, der eine von vier verschiedene Valenz aufweist, nämlich eine Valenz von fünf. Das erneut mittels durchzogenen Linien dargestellte Ausgangsnetz 10 (aber auch kein hiervon umfasstes etwaiges Teilnetz) definiert somit kein reguläres 4 x 4 Kontrollpunktnetz 10, das ausschließlich reguläre Punkte enthält. Um dennoch 2c shows a further example in which a control point network 10 contains an irregular point 18 which has one of four different valences, namely a valence of five. The output network 10 shown again by means of solid lines (but also no possible partial network included hereof) thus does not define a regular 4 × 4 checkpoint network 10 which contains only regular points. To still
Auswertungen von Orten innerhalb des Netzes 10 zu ermöglichen, wird eine weitere Unterteilung gemäß dem gestrichelt dargestellten Unterteilungsnetz 1 1 vorgenommen.To enable evaluations of locations within the network 10, a further subdivision is made in accordance with the subdivision network 11 shown in dashed lines.
In der Folge lassen sich drei verschiedene reguläre 4 x 4 Netze 20 Definieren, von denen eines in Figur 2c wellenförmig umrissen angedeutet ist. Die weiteren regulären Netze 20 würde man erhalten, wenn man den wellenförmigen Ausschnitt in Figur 2c um eine Reihe nach oben verschiebt oder um eine Spalte nach rechts. Innerhalb dieser regulären Netze 20 kann somit erneut eine Auswertung an jedem beliebigen Ort und somit auch zwischen den Kontrollpunkte 12 durchgeführt werden. As a result, three different regular 4 × 4 networks 20 can be defined, one of which is indicated in a wavy outline in FIG. 2c. The further regular networks 20 would be obtained if the wave-shaped section in FIG. 2c were shifted upwards by one row or one column to the right. Within this regular Networks 20 can thus be evaluated again at any location and thus also between the control points 12.
Je nach der Position eines irregulären Kontrollpunktes 18 in einem irregulären Ausgangs- Kontrollpunktnetz 10 und insbesondere eines Relativabstandes des auszuwertenden Ortes von dem irregulären Kontrollpunkt 18 ist eine unterschiedliche Anzahl von Depending on the position of an irregular checkpoint 18 in an irregular starting checkpoint network 10 and in particular a relative distance of the location to be evaluated from the irregular checkpoint 18, there is a different number of
Unterteilungsschritten notwendig, um zu erreichen, dass der auszuwertende Ort in einem regulären Netz bzw. Teilnetz liegt. Allgemein gilt, je geringer der Abstand des Subdivision steps necessary to ensure that the location to be evaluated is in a regular network or subnet. In general, the smaller the distance between the
auszuwertenden Ortes von dem irregulären Punkt ist, desto größer ist die Anzahl an erforderlichen Unterteilungsschritten. location to be evaluated from the irregular point, the larger the number of division steps required.
Dies verdeutlicht sich auch aus der Darstellung von Figur 3. Dort ist allgemein der Parameterraum in Form eines zellenbezogenen u-v-Koordinatensystems 17 einer zweidimensionalen Zelle 13 bzw. eines zweidimensionalen Teilnetzes, dass eine solche Zelle 13 umschließt, gezeigt (vgl. Fig. 2a). Jede zweidimensionale Zelle 13 kann mittels eines solchen zweidimensionalen zellenbezogenen u-v-Koordinatensystems 17 beschrieben werden, wobei u und v jeweils Werte zwischen 0 und 1 annehmen (d. h. die Zelle 13 wird in einen entsprechenden Wertebereich parametrisiert). This is also clear from the illustration in FIG. 3. The parameter space is generally shown in the form of a cell-related u-v coordinate system 17 of a two-dimensional cell 13 or a two-dimensional subnetwork that encloses such a cell 13 (cf. FIG. 2a). Each two-dimensional cell 13 can be described by means of such a two-dimensional cell-related u-v coordinate system 17, where u and v each take values between 0 and 1 (i.e. the cell 13 is parameterized in a corresponding value range).
Einem irregulärer Punkt der Zelle 13 werden, sofern vorhanden, die u, v-Koordinaten (0,If there is an irregular point in cell 13, the u, v coordinates (0,
0) zugeordnet. Je nachdem, an welcher Position (d. h. an welchen u, v-Koordinaten) sich ein auszuwertender Ort befindet, kann aus dieser Darstellung die Anzahl der notwendigen Unterteilungsschritte abgelesen werden. Genauer gesagt bezeichnet n die Anzahl der aufeinanderfolgend auszuführenden Unterteilungsschritte und k die bei diesem 0) assigned. Depending on the position (i.e. at which u, v coordinates) a location to be evaluated is located, the number of necessary subdivision steps can be read from this representation. More precisely, n denotes the number of subdivision steps to be carried out in succession and k the number of steps
Unterteilungsschritt jeweils erhaltenen regulären Zellen bzw. Netze. Je Subdivision step each obtained regular cells or networks. Each
Unterteilungsschritt n werden drei reguläre Zellen bzw. Netze k=1 , 2, 3 erhalten (im Folgenden auch als reguläre Flächenstücke bezeichnet) sowie eine Zelle, die nach wie vor den irregulären Punkt 18 enthält. Subdivision step n three regular cells or networks k = 1, 2, 3 are obtained (hereinafter also referred to as regular patches) and a cell which still contains the irregular point 18.
Beispielhaft ist in Figur 3 ein erster auszuwertender Ort an einer Position 22 mit den u, v- Koordinaten (0,25; 0,75) gezeigt. Da dieser in einem der Unterteilungsnetze mit dem Wert n=1 liegt, ist nur ein einzelner Unterteilungsschritt erforderlich, um eine reguläre Zelle (k=3) umfassend den Ort 22 zu erhalten, der daraufhin ausgewertet werden kann. Als ein weiteres Beispiel ist ein zweiter auszuwertender Ort an einer Position 24 mit den ungefähren u, v-Koordinaten (0,2; 0,1 ) gezeigt. Da dieser in einem der Unterteilungsnetze mit dem Wert n=3 liegt, sind drei aufeinanderfolgende Unterteilungsschritte erforderlich, um eine reguläre Zelle (k=1 ) umfassend den Ort 24 zu erhalten, der daraufhin 3 shows a first location to be evaluated at a position 22 with the u, v coordinates (0.25; 0.75). Since this lies in one of the subdivision networks with the value n = 1, only a single subdivision step is required in order to obtain a regular cell (k = 3) comprising the location 22, which can then be evaluated. As a further example, a second location to be evaluated is shown at a position 24 with the approximate u, v coordinates (0.2; 0.1). Since this lies in one of the subdivision networks with the value n = 3, three successive subdivision steps are required in order to obtain a regular cell (k = 1) comprising the location 24, which then
ausgewertet werden kann. can be evaluated.
Dies verdeutlicht: Je näher der auszuwertende Ort an dem irregulären Punkt 18, desto höher wird die erforderliche Anzahl der auszuführenden Unterteilungsschritte n. Weitere Hintergründe zu dieser Darstellung und insbesondere eine mathematische Beschreibung der Unterteilungen des in Figur 3 gezeigten sogenannten zweidimensionalen This clarifies: The closer the location to be evaluated to the irregular point 18, the higher the required number of subdivision steps n to be carried out. Further background information on this representation and in particular a mathematical description of the subdivisions of the so-called two-dimensional shown in FIG
Einheitsquadrats finden sich in der DE 699 15 837 T2 im Zusammenhang mit der dortigen Figur 10 (siehe insbesondere [0056-0060]). Standard squares can be found in DE 699 15 837 T2 in connection with FIG. 10 there (see in particular [0056-0060]).
Eine wesentliche Erkenntnis der wissenschaftlichen Arbeit von Jos Stam und der im Wesentlichen inhaltsgleichen DE 699 15 837 T2 liegt darin, derartige erforderliche Unterteilungsschritte u.a. mittels Matrixmultiplikationen zu berechnen, wobei wesentliche Matrizenausdrücke teilweise vorab gespeichert werden können (d. h. vor dem An essential finding of Jos Stam's scientific work and DE 699 15 837 T2, which is essentially the same in content, lies in the fact that such necessary subdivision steps include by means of matrix multiplications, whereby essential matrix expressions can be partially saved in advance (i.e. before
Durchführen tatsächlicher Auswertungen und/oder Simulationen). Unabhängig davon, wie viele Unterteilungsschritte für die Auswertung eines bestimmten Ortes erforderlich sind oder theoretisch erforderlich wären, können darauf basierend mit einer im Wesentlichen konstanten Berechnungszeit durch Auslesen und Verwenden der vorab hinterlegten Matrixausdrücke beliebige Orte innerhalb an sich irregulärer Kontrollpunktnetze 10 bzw. Zellen 13 ausgewertet werden. Carrying out actual evaluations and / or simulations). Regardless of how many subdivision steps are required or would theoretically be necessary for the evaluation of a specific location, any locations within the checkpoint networks 10 or cells 13, which are in themselves irregular, can be evaluated based on this with a substantially constant calculation time by reading out and using the previously stored matrix expressions .
Die verwendeten Berechnungen, auf denen die hierin offenbarte Lösung teilweise aufbaut, sind im Folgenden kurz zusammengefasst. Detailliertere Angaben und The calculations used, on which the solution disclosed herein is based in part, are briefly summarized below. More detailed information and
Hintergründe hierzu finden sich in der wissenschaftlichen Arbeit von Jos Stam (siehe insbesondere Kapitel 4) und der DE 699 15 837 T2 (siehe insbesondere [0060-0087]). The background to this can be found in the scientific work by Jos Stam (see in particular Chapter 4) and DE 699 15 837 T2 (see in particular [0060-0087]).
Zunächst wird auf die Figur 4 und die dortige Darstellung zum Erläutern der Indexierung einzelner Kontrollpunkte 12 vor und nach einer zusätzlichen Unterteilung Bezug genommen. Man erkennt wiederum ein mit durchgezogenen Linien dargestelltes First, reference is made to FIG. 4 and the illustration there to explain the indexing of individual control points 12 before and after an additional subdivision. Again one can see one shown with solid lines
Ausgangs-Kontrollpunktnetz 10, das einen irregulären Punkt 18 enthält. Das Ausgangs- Kontrollpunktnetz 10 umfasst ferner mehrere Kontrollpunkte 12 (nicht sämtliche mit einem entsprechenden Bezugszeichen versehen), welche mit 1 bis 2N+8 bezeichnet sind. Dabei bezeichnet N die Valenz des irregulären Punktes 18. Ferner ist ein Unterteilungsnetz 1 1 gestrichelt dargestellt, das infolge der Unterteilung hinzugefügte Kontrollpunkte 12 enthält, die mit 2N+9 bis 2N+17 nummeriert sind. Diese werden aufgrund ihres Abstandes von dem irregulären Punkt 18 für eine weitere lokale Unterteilung nicht mehr benötigt und sind deshalb gestrichelt dargestellt. Exit checkpoint network 10 containing an irregular point 18. The exit control point network 10 further comprises a plurality of control points 12 (not all with one corresponding reference numerals), which are denoted by 1 to 2N + 8. N denotes the valence of the irregular point 18. Furthermore, a subdivision network 11 is shown in dashed lines which, as a result of the subdivision, contains control points 12 which are numbered 2N + 9 to 2N + 17. Because of their distance from the irregular point 18, these are no longer required for further local subdivision and are therefore shown in dashed lines.
Ausgangspunkt bildet eine Matrix Co, welche die Kontrollpunkte 12 des Ausgangs- Kontrollpunktnetzes 10 enthält. Genauer gesagt sind die in einem X, Y, Z- Koordinatensystem definierten Ortsvektoren der einzelnen Kontrollpunkte 12 als (K x 3)- Matrix Co zusammengefasst, wobei K gleich der Anzahl 2N+8 von Kontrollpunkten 12 ist, die das Ausgangs-Kontrollpunktnetz 10 definieren. Die Nummerierung der The starting point is a matrix Co, which contains the checkpoints 12 of the starting checkpoint network 10. More precisely, the location vectors of the individual control points 12 defined in an X, Y, Z coordinate system are combined as (K x 3) - matrix Co, where K is the number 2N + 8 of control points 12 that define the output control point network 10 . The numbering of the
Kontrollpunkte 12 wird ferner dazu verwendet, um den Inhalt der Matrix Co zu definieren. Genauer gesagt wird hierüber die Zeilennummer definiert, bei der die Koordinaten eines jeweiligen Punktes 12 in die Matrix Co einsortiert werden. Die x, y, z-Koordinaten ergeben dabei jeweils einen Spaltenwert (d. h. die erste Spalte enthält die x-, die zweite die y-und die dritte z-Koordinate). Control points 12 are also used to define the content of the matrix Co. More precisely, this defines the line number at which the coordinates of a respective point 12 are sorted into the matrix Co. The x, y, z coordinates each result in a column value (i.e. the first column contains the x, the second the y and the third z coordinate).
Mit einer sogenannten Subdivisionsmatrix (oder auch Unterteilungsmatrix), die gemäß den allgemeinen Catmull-Clark-Unterteilungsregeln aufgestellt wird, kann eine Matrix Ci bestimmt werden, die 2N+17 Ortsvektoren der einzelnen Kontrollpunkte 12 des With a so-called subdivision matrix (or also subdivision matrix), which is set up in accordance with the general Catmull-Clark subdivision rules, a matrix Ci can be determined, the 2N + 17 location vectors of the individual control points 12 of the
Unterteilungsnetzes 1 1 enthält. Genauer gesagt gilt der Zusammenhang Subdivision network 1 1 contains. More precisely, the connection applies
Ci = ÄCo (4). Ci = ÄCo (4).
Um eine Mehrzahl von aufeinanderfolgenden Unterteilungen vorzunehmen, müssen lediglich die oberen K = 2N + 8 Reihen der -Matrix extrahiert werden, was in einer (K x K)-Matrix resultiert, die im Folgenden mit A bezeichnet wird (siehe auch [0051 -0052] der DE 699 15 837 T2). Diese Matrix kann für eine beliebige Anzahl n von In order to carry out a plurality of successive subdivisions, only the upper K = 2N + 8 rows of the matrix have to be extracted, which results in a (K x K) matrix which is referred to below as A (see also [0051-0052 ] of DE 699 15 837 T2). This matrix can be used for any number n of
Unterteilungsschritten vorab berechnet und hinterlegt werden (d. h. vor dem eigentlichen Auswerten und/oder einer eigentlichen Simulation). Für eine beliebige Anzahl von Subdivision steps are calculated in advance and stored (i.e. before the actual evaluation and / or an actual simulation). For any number of
Unterteilungen gilt somit der folgende Zusammenhang (5), wobei Cn eine Matrix enthaltend die Ortsvektoren der Kontrollpunkte 12 nach n Unterteilungen der Ausgangs- Kontrollpunkt-Matrix Co mittels der Subdivisions- (oder auch Unterteilungsmatrix) A darstellt:
Figure imgf000035_0001
The following relationship (5) therefore applies to subdivisions, where C n is a matrix containing the location vectors of the control points 12 after n subdivisions of the initial Checkpoint matrix Co using the subdivision (or subdivision matrix) A represents:
Figure imgf000035_0001
(5).  (5).
Die Berechnung der Eigenstruktur von A kann den Berechnungsaufwand der Auswertung eines beliebigen Ortes innerhalb des Flächenmodells stark reduzieren, da für n auszuführende Unterteilungen somit keine n Matrix-Matrix-Multiplikationen ausgeführt werden müssen (siehe auch folgende Gleichung (7)). Für eine Matrix V, welche die Eigenvektoren von A als Spaltenvektoren enthält und L , die eine Diagonalmatrix mit den Eigenwerten von A entlang der Diagonalen ist, gilt dabei folgendes:  The calculation of the intrinsic structure of A can greatly reduce the calculation effort for evaluating any location within the surface model, since n matrix-multiplications therefore do not have to be carried out for n subdivisions to be carried out (see also the following equation (7)). The following applies to a matrix V, which contains the eigenvectors of A as column vectors and L, which is a diagonal matrix with the eigenvalues of A along the diagonals:
AV = VA A= VAV 1 (6). AV = VA A = VAV 1 (6).
Setzt man die diagonale Form von A in die obige Gleichung (5) ein, erhält man den folgenden Zusammenhang, der lediglich eine begrenzte Anzahl von Matrix- Multiplikationen und eine Potenzierung einer Diagonalmatrix voraussetzt, wobei das Potenzieren der Diagonalmatrix gegenüber den Matrix-Multiplikationen insbesondere der Gleichung (5) eine deutlich geringere Rechenleistung und Rechenzeit erfordert:
Figure imgf000035_0002
If the diagonal form of A is inserted into equation (5) above, the following relationship is obtained, which only requires a limited number of matrix multiplications and exponentiation of a diagonal matrix, the exponentiation of the diagonal matrix against the matrix multiplications in particular that Equation (5) requires significantly less computing power and computing time:
Figure imgf000035_0002
(7).  (7).
Nachdem die erforderliche Anzahl von n Unterteilungen vorgenommen wurde, kann das resultierende reguläre Netz 20 auf Basis der das Netz 20 definierenden Kontrollpunkte 12 mittels einer bikubischen B-Spline Flächenstückevaluation ausgewertet werden. Diese Punkte, die zum Beispiel in Figur 2c für eines der regulären Netze 20 wellenförmig umrissen sind, können aus der Matrix Cn mittels einer sogenannten Auswahlmatrix Pk (auch Aufnahmematrix oder Englisch„picking matrix“) extrahiert werden, die bei einer Multiplikation mit Cn die benötigten Punkte in der korrekten Reihenfolge ausgibt
Figure imgf000035_0003
After the required number of n subdivisions has been made, the resulting regular network 20 can be evaluated on the basis of the control points 12 defining the network 20 by means of a bicubic B-spline area piece evaluation. These points, which are outlined in a wave shape for example in FIG. 2c for one of the regular networks 20, can be extracted from the matrix C n by means of a so-called selection matrix P k (also a recording matrix or English “picking matrix”), which is multiplied by C n outputs the required points in the correct order
Figure imgf000035_0003
Hintergründe, um die Auswahlmatrizen Pk zu berechnen, wobei je Flächenstück k=1 , 2, 3 aus Figur 3 eine eigene dazugehörige Auswahlmatrix PK definiert werden kann, sind zum Beispiel in der wissenschaftlichen Arbeit von Jos Stam auf Seite 19 angegeben. Für einen auszuwertenden Ort p mit den Koordinaten u und v in dem u, v-Parameterraum aus Figur 3, kann folglich folgender Zusammenhang definiert werden, wobei die Background information for calculating the selection matrices P k , with a respective associated selection matrix P K being able to be defined for each area k = 1, 2, 3 from FIG. 3, is given, for example, in the scientific work by Jos Stam on page 19. The following relationship can therefore be defined for a location p to be evaluated with the coordinates u and v in the u, v parameter space from FIG. 3, the
Kontrollpunkte des dazugehörigen regulären Netzes 20 bzw. regulären Flächenstücks mit den B-Spline Basisfunktionen N (u, v) an diesen Kontrollpunkten multipliziert werden: Control points of the associated regular network 20 or regular area are multiplied with the B-spline basic functions N (u, v) at these control points:
Figure imgf000036_0001
Figure imgf000036_0001
Da die Basisfunktionen Koordinaten und/oder Eigenschaften an den Kontrollpunkten (zum Beispiel Materialeigenschaften wie eine Dichte oder Temperaturleitfähigkeit) angeben und/oder interpolieren können, kann mittels Gleichung (9) ein Auswerten des Ortes p an u, v im Sinne eines Ermittelns von dessen Koordinaten und/oder Eigenschaften vorgenommen werden. Der Ausdruck aus Gleichung (1 1 ) kann ferner als bivariate Subdivisionsbasisfunktion bezeichnet werden. Since the basic functions can specify and / or interpolate coordinates and / or properties at the control points (for example material properties such as density or temperature conductivity), equation (9) can be used to evaluate the location p an u, v in the sense of determining its coordinates and / or properties are made. The expression from equation (1 1) can also be referred to as a bivariate subdivision basis function.
Im Ergebnis wird somit die Auswertung eines beliebigen Ortes in einem gegebenenfalls auch irregulären Ausgangs-Kontrollpunktnetz 10 ermöglicht, wofür lediglich die Anzahl der erforderlichen Unterteilungen n bestimmt werden muss. Dies kann zum Beispiel mittels Figur 3 und insbesondere einer mathematischen Beschreibung oder tabellarischen Zusammenfassung der dort gezeigten Zusammenhänge erfolgen (beispielsweise eine Tabelle, in der die erforderlichen Unterteilungen n und optional auch ein relevantes Flächenstück k in Abhängigkeit der u, v- Koordinaten eines auszuwertenden Ortes gespeichert sind). Alternativ kann die Anzahl erforderlicher Unterteilungen n mittels folgender Gleichung bestimmt werden: n [min
Figure imgf000036_0002
As a result, the evaluation of any location in a possibly also irregular exit control point network 10 is made possible, for which purpose only the number of required subdivisions n has to be determined. This can be done, for example, using FIG. 3 and in particular a mathematical description or tabular summary of the relationships shown there (for example a table in which the required subdivisions n and optionally also a relevant area piece k are stored as a function of the u, v coordinates of a location to be evaluated are). Alternatively, the number of required subdivisions n can be determined using the following equation: n [min
Figure imgf000036_0002
Ein wesentlicher Teil der Gleichung (1 1 ) bzw. (10) kann vorab berechnet und in einem Speicher hinterlegt werden. In der wissenschaftlichen Arbeit von Stam (sh. S. 1 1 -12) wird insbesondere das Vorberechnen der Ausdrücke V_T und V P für k = 1 , 2, 3 detailliert erläutert. In der DE 699 15 837 T2 wird eine computergestützte Implementierung der geschilderten Berechnungen insbesondere ab Absatz [0080] beschrieben. Demnach ist für die tatsächliche Berechnungszeit hauptsächlich oder ausschließlich das Potenzieren der Diagonalmatrix L in Abhängigkeit der Unterteilungsschritte n maßgebend, was jedoch eine vergleichsweise aufwandsarme Rechenoperationen mit einer im Wesentlichen konstanten Rechenzeit darstellt. Die insgesamt erforderliche Berechnungszeit kann somit unabhängig von der Anzahl n der benötigten lokalen Unterteilungsschritte im A substantial part of equation (1 1) or (10) can be calculated in advance and stored in a memory. In the scientific work of Stam (see p. 1 1 -12) in particular the precalculation of the expressions V _T and VP for k = 1, 2, 3 is explained in detail. DE 699 15 837 T2 describes a computer-assisted implementation of the calculations described, in particular from paragraph [0080]. Accordingly, the potentiation of the diagonal matrix L as a function of the subdivision steps n is mainly or exclusively decisive for the actual calculation time, which, however, represents a comparatively low-cost arithmetic operation with an essentially constant arithmetic time. The total calculation time required can therefore be independent of the number n of local subdivision steps required
Wesentlichen konstant ausfallen, was jedoch, wie bereits erwähnt, mit den bisherigen Ansätzen nur für zweidimensionale Fälle möglich ist. Turn out to be essentially constant, which, however, as already mentioned, is only possible with the previous approaches for two-dimensional cases.
Eine zusätzliche Besonderheit sowohl bei zweidimensionalen als auch bei An additional specialty for both two-dimensional and for
dreidimensionalen Subdivisionsmodellen stellen sogenannte scharfe Kanten dar (auch als Falten bezeichnet, englisch: crease edges). Diese können von einem Bediener zum Beispiel bei dem Erstellen eines Ausgangsnetzes definiert werden. Sie beschreiben allgemein Kanten 14 innerhalb eines Kontrollpunktnetzes 10, an denen keine mit voranschreitenden Unterteilungen bzw. Subdivisionen üblicherweise einhergehende Glättung (d. h. feinere Unterteilung) gewünscht ist. Details zu der Definition von scharfen Kanten und den dort anzuwendenden besonderen Unterteilungsregeln finden sich in der folgenden wissenschaftlichen Arbeit (sh. insbesondere dortige Seiten 102-105 und 122 ff.): Sven Havemann:“Generative Mesh Modeling”, Doktorarbeit 2005, abrufbar unter https://publikationsserver.tu-braunschweig.de/receive/dbbs_mods_00000008). Three-dimensional subdivision models represent so-called sharp edges (also known as folds, English: crease edges). These can be defined by an operator, for example when creating an output network. They generally describe edges 14 within a control point network 10 at which no smoothing (i.e. finer subdivision) usually associated with advancing subdivisions or subdivisions is desired. Details on the definition of sharp edges and the special subdivision rules to be found there can be found in the following scientific work (see in particular pages 102-105 and 122 ff.): Sven Havemann: “Generative Mesh Modeling”, doctoral thesis 2005, available at https : //publikationsserver.tu-braunschweig.de/receive/dbbs_mods_00000008).
Für scharfe Kanten werden ebenfalls in der wissenschaftlichen Arbeit von Havemann erläuterte scharfe Basisfunktionen betrachtet (englisch:„crease basis functions“). Diese ersetzen die üblichen Basisfunktionen aus zum Beispiel Gleichung (9) beim Auswerten von Flächenstücken, welche entsprechende scharfe-Kanten enthalten. Scharfe-Kanten in volumetrischen Modellen können allgemein analog zu scharfen-Kanten in For sharp edges, the sharp basic functions explained in Havemann's scientific work are also considered ("crease basis functions"). These replace the usual basic functions from, for example, equation (9) when evaluating surface pieces which contain corresponding sharp edges. Sharp edges in volumetric models can generally be analogous to sharp edges in
zweidimensionalen Modellen behandelt werden, weshalb im Folgenden beispielhaft von einem zweidimensionalen Fall ausgegangen wird. two-dimensional models are dealt with, which is why a two-dimensional case is assumed as an example below.
Eine Herleitungsmöglichkeit einer scharfe-Kante-Funktion wird nachstehend erläutert und beruht auf den Beobachtungen in der wissenschaftlichen Arbeit von Havemann, wonach scharfe-Kanten gleichbedeutend mit bzw. gleiche Wirkungen haben wie eine Extrapolation einer Kante an deren Endpunkt. Es wird ferner verwiesen auf folgende Artikel: SCHWEITZER J. E.: Analysis and Application of Subdivision A possible derivation of a sharp edge function is explained below and is based on the observations in Havemann's scientific work, according to which sharp edges have the same or equivalent effects as one Extrapolation of an edge at its end point. Reference is also made to the following articles: SCHWEITZER JE: Analysis and Application of Subdivision
Surfaces. PhD thesis, 1996; ZORIN D., KRISTJANSSON D.: Evaluation of piecewise smooth subdivision surfaces. The Visual Computer 18, 5-6 (2002), 299-315; KOSINKA J., SABIN M. A., DODGSON N. A.: Semi-sharp creases on subdivision curves and surfaces. In Computer Graphics Forum (2014), vol. 33, Wiley Online Library, S. 217-226. Surfaces. PhD thesis, 1996; ZORIN D., KRISTJANSSON D .: Evaluation of piecewise smooth subdivision surfaces. The Visual Computer 18, 5-6 (2002), 299-315; KOSINKA J., SABIN M.A., DODGSON N.A .: Semi-sharp creases on subdivision curves and surfaces. In Computer Graphics Forum (2014), vol. 33, Wiley Online Library, pp. 217-226.
Bezugnehmend auf Figur 5a-b ist im linken Fall eine von Kontrollpunkten pi-p4 definierte gestrichelt dargestellte B-Spline-Kurve gezeigt, wobei die Kontrollpunkte pi-p3 kollinear und gleich voneinander beabstandet oder auch gleich voneinander entfernt sind. Der Kontrollpunkt pi stellt hingegen das Resultat der Extrapolation von p3 über p2 dar. Referring to FIGS. 5a-b, a B-spline curve shown in dashed lines and defined by control points pi-p 4 is shown in the left case, the control points pi-p 3 being collinearly and equally spaced from one another or also equally spaced from one another. The control point pi, on the other hand, represents the result of the extrapolation from p 3 to p 2 .
Insgesamt kann somit der folgende Zusammenhang aufgestellt werden: Overall, the following relationship can be established:
P1 - P2 = P2 - P3 (12). P1 - P2 = P2 - P 3 (12).
Die von pi zu p2 verlaufende Kante 14 ist dabei eine Extrapolation der Kante 14, die von P3 zu p2 verläuft. Die entsprechende B-Spline-Kurve bzw. scharfe-Kantenfunktionen c kann daher wie folgt formuliert werden, wobei in dem abschließenden Spaltenvektor die B-Spline-Basisfunktion stehen (eine pro Kontrollpunkt pi-p ): The edge 14 extending from pi to p 2 is an extrapolation of the edge 14 which extends from P 3 to p 2 . The corresponding B-spline curve or sharp-edge functions c can therefore be formulated as follows, with the B-spline base function (one per control point pi-p) in the final column vector:
Figure imgf000038_0001
Figure imgf000038_0001
(13).  (13).
Ersetzt man in dieser Gleichung (13) pi durch 2 x p2 - p3 basierend auf Gleichung (12), erhält man Folgendes: In this equation (13), if pi is replaced by 2 xp 2 - p 3 based on equation (12), the following is obtained:
Figure imgf000038_0002
Figure imgf000038_0002
(14). Mittels dieser Funktion kann dasselbe Kurvensegment aus Figur 5a mit nur drei (14). Using this function, the same curve segment from FIG. 5a with only three
Kontrollpunkten definiert werden, wie entsprechend in Figur 5b gezeigt. Die in der dazugehörigen Gleichung (14) enthaltenen kubischen Funktionen stellen die scharfe- Kanten-Basisfunktionen dar, wobei erstere bei einem Wert von u=0 den Wert 1 annimmt und bei größeren u-Werten abnimmt. Control points are defined as shown in Figure 5b. The cubic functions contained in the associated equation (14) represent the sharp-edge basic functions, the former assuming the value 1 for a value of u = 0 and decreasing for larger u values.
Im Folgenden wird auf die erfindungsgemäß vorgeschlagenen neuen Ansätze The following describes the new approaches proposed according to the invention
eingegangen, um beliebige Orte auch in volumetrischen Subdivisionsmodellen und nicht nur in zweidimensionalen Subdivisionsmodellen bzw. in deren Flächenstücken auswerten zu können. in order to be able to evaluate any location in volumetric subdivision models and not only in two-dimensional subdivision models or in their patches.
Wie auch im zweidimensionalen Fall, bestehen volumetrische Subdivisionsmodelle aus Kontrollpunkten, Kanten und hiervon begrenzten Flächen. Weiterhin umfassen sie Zellen, die jeweils durch einen Satz von Flächen begrenzt werden. Ein Volumenanteil des Modells, in dem eine Auswertung stattfinden soll, wird im Folgenden auch als As in the two-dimensional case, volumetric subdivision models consist of control points, edges and areas delimited by them. They also include cells, each delimited by a set of areas. A volume fraction of the model in which an evaluation is to take place is also referred to below as
Volumenelement bezeichnet. Einen Sonderfall stellen ferner Zellen dar, die in äußeren Randbereichen des Modells liegen und bei denen zumindest einige der Flächen Volume element called. A special case is also represented by cells that lie in the outer edge areas of the model and in which at least some of the surfaces
Grenzflächen zur Umgebung darstellen. Diese Zellen können auch als Grenzzellen bezeichnet werden. Represent interfaces to the environment. These cells can also be called boundary cells.
Weiterhin sind im volumetrischen Fall extraordinäre bzw. irreguläre Kontrollpunkte als Punkte definiert, die eine von sechs verschiedene Valenz aufweisen. Zudem existieren auch extraordinäre bzw. irreguläre Kanten, die eine von vier verschiedene Valenz aufweisen. In diesem Fall ist die Valenz als die Anzahl von an die Kante angrenzenden Flächen definiert oder, mit anderen Worten, als die Anzahl von Flächen, welche von der Kante ausgehen und/oder über diese verbunden sind. Furthermore, in the volumetric case, extraordinary or irregular control points are defined as points that have one of six different valences. There are also extraordinary or irregular edges that have one of four different valences. In this case, the valence is defined as the number of surfaces adjoining the edge or, in other words, as the number of surfaces which start from and / or are connected by the edge.
Ein trivialer Fall für die Auswertung beliebiger Orte in einem volumenmetrischen A trivial case for evaluating any location in a volume metric
Subdivisionsmodell tritt dann ein, wenn der auszuwertende Ort in einer regulären Zelle 52 ohne irreguläre Kontrollpunkte und/oder irreguläre Kanten liegt. Für eine solche Zelle 52 kann eine Nachbarschaft des Modells in Form eines Volumenelements 50 betrachtet werden, das von 4 x 4 x 4 Kontrollpunkten 12 bzw. 3 c 3 c 3 Zellen 52 aufgespannt wird. Ein solcher Fall ist in Figur 6 gezeigt, wobei erneut nicht sämtliche der vorstehend oder nachstehend erwähnten Elemente mit einem entsprechenden Bezugszeichen versehen sind (gleiches gilt auch für die nachfolgenden weiteren Figuren). Subdivision model occurs when the location to be evaluated lies in a regular cell 52 without irregular control points and / or irregular edges. For such a cell 52, a neighborhood of the model can be considered in the form of a volume element 50 that is spanned by 4 x 4 x 4 control points 12 or 3 c 3 c 3 cells 52. Such a case is shown in FIG. 6, again not all of the above or elements mentioned below are provided with a corresponding reference symbol (the same also applies to the following further figures).
In Figur 6 erkennt eine zentrale Zelle 52, die von sechs Flächen 54 begrenzt wird, wobei jede Fläche 54 von vier Kontrollpunkten 12 samt diese Kontrollpunkte 12 verbindenden Kanten 14 aufgespannt wird. Jeder Kontrollpunkte 12 einer Fläche 54 ist dabei mit zwei der anderen Kontrollpunkte 12 dieser Fläche 54 mittels Kanten 14 verbunden. In dieser Zelle 52 befindet sich der in dem gezeigten Beispiel auszuwertende Ort, weshalb um diese Zelle 30 die entsprechende Nachbarschaft aus 4 x 4 x 4 Kontrollpunkten 12 bzw. 3 x 3 x 3 Zellen 52 in Form des Volumenelements 50 betrachtet wird. Es versteht sich, dass das Subdivisionsmodell aus zahlreichen weiteren Volumenelementen 50 bestehen kann, die an das in Figur 6 gezeigte Volumenelement 50 entsprechend angrenzen können. 6 shows a central cell 52 which is delimited by six surfaces 54, each surface 54 being spanned by four control points 12 together with edges 14 connecting these control points 12. Each control point 12 of a surface 54 is connected to two of the other control points 12 of this surface 54 by means of edges 14. The cell to be evaluated in the example shown is located in this cell 52, which is why the corresponding neighborhood of 4 x 4 x 4 control points 12 or 3 x 3 x 3 cells 52 in the form of the volume element 50 is considered around this cell 30. It goes without saying that the subdivision model can consist of numerous further volume elements 50, which can adjoin the volume element 50 shown in FIG. 6 accordingly.
In diesem Fall kann eine Auswertung auf Basis trivariater B-Spline Basisfunktionen stattfinden. Dabei werden drei Dimensionen bzw. Parameter u, v, w eines In this case, an evaluation can take place on the basis of trivial B-spline basic functions. Three dimensions or parameters u, v, w become one
zellenbezogenen Koordinatensystems 57 betrachtet, dass sich genauer gesagt auf die den auszuwertenden Ort enthaltende zentrale Zelle 52 bezieht. Die Parameter u, v, w dieses Koordinatensystem 57 können jeweils Werte von null bis eins annehmen. Auf Basis der 64 Kontrollpunkte p des gezeigten Volumenelements 50 kann ein beliebiger Ort e in der zentralen Zelle 52 unter Berücksichtigung der jeweils von den Kontrollpunkten p definierten Basisfunktionen wie folgt ausgewertet werden: cell-related coordinate system 57 considered that more specifically refers to the central cell 52 containing the location to be evaluated. The parameters u, v, w of this coordinate system 57 can each assume values from zero to one. On the basis of the 64 control points p of the volume element 50 shown, any location e in the central cell 52 can be evaluated as follows, taking into account the basic functions defined by the control points p:
Figure imgf000040_0001
Figure imgf000040_0001
Dabei sind die trivariaten Basisfunktionen N,(u, v, w) am i-ten Kontrollpunkt gemäß der nachfolgenden Gleichung (16) , die auch der vorstehend genannten Gleichung (3) entspricht, als ein Produkt von drei univariaten B-spline Basisfunktionen definiert, wobei die eckigen Klammern erneut einen Aufrund-Operator und das %-Zeichen einem Modulo- Operator bezeichnen:
Figure imgf000040_0002
Das Auswerten eines Ortes in der in Figur 5 gezeigten Zelle 30 ist somit ohne erheblichen Rechenaufwand und an sich in einer konstanten Berechnungszeit möglich. Erneut können die Basisfunktionen dabei Koordinaten und/oder Eigenschaften von bzw. an den entsprechenden Kontrollpunkten p durch Interpolation angeben.
The trivial basic functions N, (u, v, w) at the i-th control point are defined as a product of three univariate B-spline basic functions according to the following equation (16), which also corresponds to the aforementioned equation (3), where the square brackets again denote a round-up operator and the% sign a modulo operator:
Figure imgf000040_0002
The evaluation of a location in the cell 30 shown in FIG. 5 is thus possible without considerable computational effort and per se in a constant calculation time. Again, the basic functions can specify coordinates and / or properties of or at the corresponding control points p by interpolation.
Dies gilt nicht ohne Weiteres für den irregulären Fall, der sich dadurch auszeichnet, dass ein betrachtetes Volumenelement 50 des Subdivisionsmodells und insbesondere eine Zelle 52 hiervon, die den auszuwertenden Ort enthält, kein reguläres 4 4 4-Netz definiert, beispielsweise da es extraordinäre Knotenpunkte 12 und/oder extraordinäre Kanten 14 umfasst. Eine wesentliche Erkenntnis, auf der die folgende Erfindung aufbaut, ist das derartige irreguläre Elemente 50 unter Berücksichtigung einer Ausrichtung der irregulären Kante dennoch mit einem vertretbaren Rechenaufwand auswertbar sind. Insbesondere wurde erkannt, dass derartige Elemente 50 zumindest dann, wenn sie lediglich eine irreguläre Kante aufweisen, nach einem weiteren Unterteilungsschritt nur noch in zwei Dimensionen irregulär sind und in der Dritten regulär (zum Beispiel irregulär in u und v und regulär w). Eine solche nur noch in zwei Dimensionen irreguläre Struktur eines Volumenelements 50 wird im Folgenden auch als geschichtete Struktur bezeichnet. Ist eine Mehrzahl von irregulären Kanten vorhanden, muss anhand der nachfolgend erläuterten Figur 9 die notwendige Anzahl n von Unterteilungsschritten ermittelt werden, bis die geschichtete Struktur erhalten wird, wobei diese Unterteilungen durch Berechnung der Eigenstruktur der Subdivisionsmatrix in einer konstanten Berechnungszeit This does not immediately apply to the irregular case, which is characterized in that a volume element 50 of the subdivision model considered, and in particular a cell 52 thereof, which contains the location to be evaluated, does not define a regular 4 4 4 network, for example because it has extraordinary nodes 12 and / or includes extraordinary edges 14. An important finding, on which the following invention is based, is that such irregular elements 50 can nevertheless be evaluated with a justifiable computational effort, taking into account an alignment of the irregular edge. In particular, it was recognized that such elements 50, at least if they only have an irregular edge, are only irregular in two dimensions after a further subdivision step and are regular in the third (for example irregular in u and v and regular w). Such a structure of a volume element 50, which is only irregular in two dimensions, is also referred to below as a layered structure. If a plurality of irregular edges are present, the necessary number n of subdivision steps must be determined using FIG. 9 explained below until the layered structure is obtained, these subdivisions by calculating the intrinsic structure of the subdivision matrix in a constant calculation time
(rechnerisch) durchgeführt werden können. (arithmetically) can be carried out.
Im Folgenden wird zunächst von eben diesem Fall ausgegangen, dass noch keine geschichtete Struktur vorliegt und wird aufgezeigt, wie man in einer konstanten In the following, it is assumed that this is the case that there is no layered structure and shows how to do it in a constant
Berechnungszeit zu dieser gelangen kann. Da erfindungsgemäß aber auch von bereits geschichteten Strukturen ausgegangen werden kann, sind diese Maßnahmen nicht zwingend. Calculation time can reach this. However, since structures which have already been layered can also be assumed according to the invention, these measures are not mandatory.
Für das Durchführen von Unterteilungsschritten wird vorzugsweise eine Nummerierung oder, mit anderen Worten, Indexierung der Kontrollpunkte vorgenommen, sodass die Topologie des die auswerten Zelle enthaltenden Kontrollpunktnetzes bei jedem To carry out subdivision steps, numbering or, in other words, indexing of the control points is preferably carried out, so that the topology of the control point network containing the evaluating cell for each
Unterteilungsschritt konsistent bleibt. In diesem Zusammenhang wurde von den Erfindern zunächst erkannt, dass im Gegensatz zum zweidimensionalen Fall keine Nummerierung allein in Abhängigkeit einer Valenz des Kontrollpunktes möglich ist, insbesondere da die Topologie in der Nachbarschaft des irregulären Punktes beliebig sein kann. Stattdessen werden ausgehend von der irregulären Kante 15 und bezogen auf einen irregulären Kontrollpunkt 18, der gemäß nachstehend anhand von Figur 7b erläuterten Regeln auszuwählen ist, die Nummerierungen gemäß der folgenden Reihenfolge vergeben, wie sich auch aus den Figuren 13a-g verdeutlicht (d. h. die kontrollpunktspezifischen Subdivision step remains consistent. In this connection, the inventors initially recognized that, in contrast to the two-dimensional case, no numbering only depending on a valence of the control point, especially since the topology in the vicinity of the irregular point can be arbitrary. Instead, starting from the irregular edge 15 and with reference to an irregular control point 18, which is to be selected according to the rules explained below with reference to FIG. 7b, the numbers are assigned in the following order, as is also clear from FIGS. 13a-g (ie the checkpoint-specific ones)
Nummerierungen bzw. Indexe werden für die einzelnen Kontrollpunktgruppen gemäß nachstehender Reihenfolge aufsteigend vergeben). In diesen Figuren 13a-g sind die irregulären Kanten gestrichelt dargestellt. Numbers and indexes are assigned to the individual control point groups in ascending order according to the following order). In these Figures 13a-g, the irregular edges are shown in dashed lines.
1. In Figur 13a ist das lokale Koordinatensystem der Zelle gezeigt und der 1. The local coordinate system of the cell is shown in FIG. 13a and the
ausgewählte irreguläre Kontrollpunkt, der mit 0 nummeriert wird. Von diesem verlaufen irreguläre gestrichelt dargestellte Kanten mit der Valenz drei in alle drei Koordinatenrichtungen u, v und w. Wie in Figur 13b gezeigt, werden sämtliche Kontrollpunkte aufsteigend nummeriert, die ausgehend von diesem Punkt durch Abfahren einer einzelnen Kante in dem die irreguläre Zelle enthaltenden  selected irregular control point, numbered 0. Irregular, dashed edges with valence three run from this in all three coordinate directions u, v and w. As shown in Figure 13b, all control points are numbered in ascending order, starting from this point by traversing a single edge in the one containing the irregular cell
Kontrollpunktnetz (auch lokales Kontrollpunktnetz genannt) erreichbar sind oder, anders ausgedrückt, um eine Kante bzw. eine Kantenlänge von der irregulären Kante beanstandet sind. Diese Kontrollpunkte können auch als direkte Nachbarn der extraordinären Kante bezeichnet werden und sind in Figur 13b mit 1 bis 3 nummeriert. Bildlich gesprochen teilen sich die Punkte 1 bis 3 mit dem irregulären Kontrollpunkt 0 eine gemeinsame Kante.  Checkpoint network (also called local checkpoint network) can be reached or, in other words, objected to by an edge or an edge length of the irregular edge. These control points can also be called direct neighbors of the extraordinary edge and are numbered 1 to 3 in FIG. 13b. Metaphorically speaking, points 1 to 3 share a common edge with irregular control point 0.
2. Beginnend mit der auf den letzten Kontrollpunkt der Gruppe 1 nachfolgenden Nummer werden sämtliche Kontrollpunkte aufsteigend nummeriert, die durch Abfahren von zwei aufeinanderfolgenden bzw. aneinander anschließenden Kanten in dem die irreguläre Zelle enthaltenden Kontrollpunktnetz (auch lokales 2. Beginning with the number following the last checkpoint of group 1, all checkpoints are numbered in ascending order, which are made by traversing two consecutive or adjacent edges in the checkpoint network containing the irregular cell (also local
Kontrollpunktnetz genannt) erreichbar sind oder, anders ausgedrückt, um zwei Kanten bzw. Kantenlängen von der irregulären Kante beanstandet sind (sh. 4 bis 10 in Figur 13c). Weiter wird bei diesen Kontrollpunkten vorausgesetzt, dass sie eine Fläche mit der irregulären Kante teilen (also eine gemeinsame Fläche mit der irregulären Kante begrenzen oder dieser zuzuordnen sind). 3. Beginnend mit der auf den letzten Kontrollpunkt der Gruppe 2 nachfolgenden Nummer werden sämtliche Kontrollpunkte aufsteigend nummeriert, die durch Abfahren von drei aufeinanderfolgenden bzw. aneinander anschließenden Kanten in dem die irreguläre Zelle enthaltenden Kontrollpunktnetz (auch lokales Checkpoint network) can be reached or, in other words, objected to by two edges or edge lengths of the irregular edge (see FIGS. 4 to 10 in FIG. 13c). Furthermore, these control points assume that they share an area with the irregular edge (that is, they delimit or can be assigned to a common area with the irregular edge). 3. Beginning with the number following the last checkpoint in group 2, all checkpoints are numbered in ascending order, which are made by traversing three consecutive or adjacent edges in the checkpoint network containing the irregular cell (also local
Kontrollpunktnetz genannt) erreichbar sind oder, anders ausgedrückt, um drei Kanten bzw. Kantenlängen von der irregulären Kante beanstandet sind (sh. 1 1 bis 14 in Figur 13d). Weiter wird bei diesen Kontrollpunkten vorausgesetzt, dass sie eine Zelle mit der irregulären Kante teilen (also eine gemeinsame Zelle mit der irregulären Kante begrenzen oder dieser zuzuordnen sind).  Called control point network) can be reached or, in other words, are objected to by three edges or edge lengths of the irregular edge (see FIGS. 11 to 14 in FIG. 13d). Furthermore, these control points assume that they share a cell with the irregular edge (that is, they delimit or can be assigned to a common cell with the irregular edge).
4. In Fig. 13e werden anschließend die Kontrollpunkte der unteren Schicht mit 15 bis 21 nummeriert. Der entlang der w-Achse aus Fig. 13a betrachtet auf einer Linie mit dem Kontrollpunkt 0 liegende Kontrollpunkt dieser Schicht wird mit 15 nummeriert. Ausgehend hiervon werden die diesen Punkt 15 umgebenden, nicht notwendigerweise direkt über eine Kante hiermit verbundenen Punkte mit 16 bis 21 nummeriert. Bildlich gesprochen werden ausgehend von Punkt 15 dessen umliegende Punkte sternförmig nummeriert. 4. In FIG. 13e, the control points of the lower layer are then numbered 15 to 21. The control point of this layer lying along the w axis from FIG. 13 a, viewed on a line with the control point 0, is numbered 15. Based on this, the points surrounding this point 15, which are not necessarily connected directly via an edge, are numbered 16 to 21. Metaphorically speaking, starting from point 15, the surrounding points are numbered in a star shape.
5. In Fig. 13f wird der entlang der v-Achse auf einer Linie mit dem Kontrollpunkt 0 liegende Kontrollpunkt der rechten (äußeren) Schicht mit 22 nummeriert. 5. In FIG. 13f the control point of the right (outer) layer lying along the v-axis on a line with the control point 0 is numbered 22.
Ausgehend hiervon werden die diesen Punkt 22 umgebenden, nicht  Proceeding from this, those surrounding this point 22 are not
notwendigerweise direkt über eine Kante hiermit verbundenen Punkte mit 23 bis 31 nummeriert. Bildlich gesprochen werden ausgehend von Punkt 22 dessen umliegenden Punkte sternförmig nummeriert.  necessarily numbered 23 through 31 directly connected to an edge. Metaphorically speaking, starting from point 22, the surrounding points are numbered in a star shape.
6. In Fig. 13g wird ein entlang der u-Achse auf einer Linie mit dem Kontrollpunkt 0 liegender Kontrollpunkt der hinteren (äußeren) Schicht mit 32 nummeriert. 6. In FIG. 13g, a control point of the rear (outer) layer lying along the u-axis on a line with the control point 0 is numbered 32.
Ausgehend hiervon werden die diesen Punkt 32 umgebenden, nicht  Proceeding from this, those surrounding this point 32 are not
notwendigerweise direkt über eine Kante hiermit verbundenen Punkte mit 33 bis 45 nummeriert. Bildlich gesprochen werden ausgehend von Punkt 32 dessen umliegenden Punkte sternförmig nummeriert.  necessarily numbered 33 through 45 directly connected to an edge. Figuratively speaking, starting from point 32, the surrounding points are numbered in a star shape.
Zur Wahrung der Konsistenz beim Durchführen von Unterteilungsschritten ist es erforderlich, dass der Index eines jeden Kontrollpunktes und seines korrespondierenden unterteilten Kontrollpunktes beibehalten wird. Unter der Korrespondenz kann in diesem Fall verstanden werden, dass die Anordnung der Kontrollpunkte rund um die irreguläre Kante bei einer lokalen Subdivision konstant bzw. gleichartig bleibt. Zwar werden bei der Subdivision neue Kontrollpunkte erzeugt, diese weisen jedoch bezogen auf die (ebenfalls unterteilte) irreguläre Kante die gleiche Anordnung/Struktur auf wie die To maintain consistency when performing subdivision steps, it is necessary to maintain the index of each control point and its corresponding subdivided control point. Under the correspondence in this It should be understood that the arrangement of the control points around the irregular edge remains constant or similar in a local subdivision. Although new control points are created in the subdivision, these have the same arrangement / structure as that with respect to the (also subdivided) irregular edge
Ausgangskontrollpunkte vor der Subdivision. Kontrollpunkte vor und nach der Subdivision, die analoge Strukturen aufweisen bzw. definieren, können daher als zueinander korrespondierend bezeichnet werden. Exit checkpoints before subdivision. Checkpoints before and after the subdivision that have or define analog structures can therefore be described as corresponding to each other.
Unter der Annahme, dass das Kontrollpunktnetz ausschließlich hexaedrische Zellen umfasst, kann ferner folgendes für die gemäß der Reihenfolge 1 bis 3 nummerierten Kontrollpunkte angenommen werden: Assuming that the control point network only comprises hexahedral cells, the following can also be assumed for the control points numbered in the order 1 to 3:
Für jeden Kontrollpunkt in dem lokalen Kontrollpunktnetz, der eine Kante, Fläche oder Zelle mit der irregulären Kante teilt, ist der korrespondierende Kontrollpunkt in dem unterteilten Kontrollpunktnetz entsprechend ein Kantenpunkt, ein For each control point in the local control point network that shares an edge, area or cell with the irregular edge, the corresponding control point in the subdivided control point network is accordingly an edge point
Flächenpunkt oder ein Zellenpunkt, je nachdem, welches Element mit der irregulären Kante geteilt wird. Die Begriffe Kantenpunkt, Flächenpunkt und  Surface point or a cell point, depending on which element is shared with the irregular edge. The terms edge point, surface point and
Zellenpunkt gehen auf die herkömmlichen Subdivisionsregeln für Catmull-Clark- Oberflächen bzw. -Volumen zurück, die oben diskutiert wurden und für die auch entsprechende Zitatstellen genannt sind. Ein Kantenpunkt ist ein neuer Punkt, der beim Durchführen eines Subdivisionsschrittes auf einer Kante erzeugt wird, um diese zu unterteilen. Für Flächen- und Zellenpunkte gilt analoges. Für jede Zelle wird z.B. nach den Catmull-Clark-Regeln beim Subdividieren ein Zellenpunkt im arithmetischen Mittelpunkt der Zelle erzeugt.  Zellpunkt derive from the conventional subdivision rules for Catmull-Clark surfaces or volumes, which were discussed above and for which corresponding quotations are also mentioned. An edge point is a new point that is created when you perform a subdivision step on an edge to subdivide it. The same applies to area and cell points. For each cell e.g. creates a cell point in the arithmetic center of the cell when subdividing according to the Catmull-Clark rules.
Die Gewichte der korrespondierenden unterteilten Kontrollpunkte befinden sich in der Reihe i der Unterteilungsmatrix, wobei i der zugeordnete Index des The weights of the corresponding subdivided control points are in row i of the subdivision matrix, where i is the assigned index of the
ursprünglichen Kontrollpunkts in dem lokalen Kontrollpunktnetz ist. Das  original checkpoint in the local checkpoint network. The
Verwenden von Gewichten geht ebenfalls auf die herkömmlichen  Using weights is also conventional
Subdivisionsregeln für Catmull-Clark-Oberflächen bzw. -Volumen zurück, die oben diskutiert wurden und für die auch entsprechende Zitatstellen genannt sind.  Subdivision rules for Catmull-Clark surfaces or volumes, which were discussed above and for which corresponding quotations are also mentioned.
Darauf basierend kann dann der Block der Unterteilungsmatrix, welcher den The block of the subdivision matrix, which the
Kontrollpunkten in der direkten Nachbarschaft des irregulären Kontrollpunktes entspricht, zusammengestellt werden. Exakte Formulierungen für Unterteilungsregeln und zum allgemeinen Aufstellen von Unterteilungsmatrizen finden sich in den vorstehend genannten wissenschaftlichen Artikel von Joy und MacCracken. Dort sind auch die Catmull-Clark-Regeln enthalten, wie vorstehend genannt. Checkpoints in the immediate vicinity of the irregular checkpoint. Precise formulations for subdivision rules and for general layouts of subdivision matrices can be found in the aforementioned scientific articles by Joy and MacCracken. It also contains the Catmull-Clark rules, as mentioned above.
Anschließend werden die verbleibenden Kontrollpunkte betrachtet, die keine Kante, Fläche oder Zelle mit der irregulären Kante teilen. Diese Kontrollpunkte bilden die drei äußeren Schichten des Kontrollpunktnetzes, wobei jede Schicht ein zweidimensionales Kontrollpunktnetz bildet. Dies ist in Figur 8b ersichtlich, bei der als äußere Schichten eine unterste Schicht 56a (in Fig. 8b die Basisschicht), eine frontale Schicht 56b, die in der Figur dem Betrachter direkt zugewandt ist, und eine in der Figur rechte äußere Schicht 56c gezeigt sind. Die unterste und frontale Schicht 56a, b umfassen jeweils einen Kontrollpunkt 18 mit der Valenz 5 (siehe jeweils für diese Schichten 56a, b markierten irregulären Punkte 18 mit einer entsprechenden Valenz). Für diese Schichten 56a, b kann daher wie im zweidimensionalen Fall aus Figur 4 vorgegangen werden und eine Then the remaining control points are considered that do not share an edge, surface or cell with the irregular edge. These control points form the three outer layers of the control point network, each layer forming a two-dimensional control point network. This can be seen in FIG. 8b, in which a lowermost layer 56a (the base layer in FIG. 8b), a frontal layer 56b, which in the figure directly faces the viewer, and an outer layer 56c on the right in the figure, are shown as outer layers are. The lowermost and frontal layers 56a, b each comprise a control point 18 with the valence 5 (see in each case marked irregular points 18 with a corresponding valence for these layers 56a, b). For these layers 56a, b, one can proceed as in the two-dimensional case from FIG. 4 and one
Nummerierung nach Maßgabe eines Abstandes zu dem irregulären Punkt 18 erfolgen. Die rechte Schicht 56c umfasst keinen irregulären Kontrollpunkt und definiert ein reguläres zweidimensionales Kontrollpunktnetz. Numbering according to a distance from the irregular point 18. The right layer 56c does not include an irregular checkpoint and defines a regular two-dimensional checkpoint network.
Für die Kontrollpunkte 12 der äußeren Schichten 56a, 56b können daraufhin der die entsprechenden Zeilen in der Subdivisionsmatrix in einer herkömmlichen Weise erzeugt werden. Dabei muss berücksichtigt werden, dass diese drei äußeren Schichten jeweils vier Kontrollpunkte 12 in dem Ausgangskontrollpunktnetz und fünf in dem unterteilten Kontrollpunktnetz teilen, um zu verhindern, dass diese Kontrollpunkte doppelt berücksichtigt werden. Weiter kann das betrachtete (lokale) Kontrollnetz entlang der Nachbarschaftsbeziehungen (was auch als nachstehend erläuterte lokale The corresponding lines in the subdivision matrix can then be generated for the control points 12 of the outer layers 56a, 56b in a conventional manner. It must be taken into account that these three outer layers each share four checkpoints 12 in the exit checkpoint network and five in the subdivided checkpoint network in order to prevent these checkpoints from being taken into account twice. Furthermore, the considered (local) control network along the neighborhood relationships (which is also referred to as local
Nachbarschaften oder topologische Informationen bezeichnet wird) traversiert werden, z.B. mittels einer hierfür geschaffenen volumetrischen Datenstruktur. Beim Erstellen der oben beschriebenen Nummerierung werden diese Informationen berücksichtigt und das Kontrollnetz anhand der Nachbarschaften traversiert. Neighborhoods or topological information) is traversed, e.g. using a volumetric data structure created for this purpose. When creating the numbering described above, this information is taken into account and the control network is traversed based on the neighborhoods.
Für jede Reihe der Subdivisionsmatrix können die Gewichte und deren entsprechender Spaltenindex durch Untersuchen der lokalen Nachbarschaft des entsprechenden Kontrollpunktes 12 ermittelt werden. Die Kontrollpunkte 12, welche die Position eines unterteilten Kontrollpunktes 12 beeinflussen, können durch Verwenden der topologischen Informationen bestimmt werden, die in der volumetrischen Datenstruktur enthalten sind. Die topologischen Informationen können z.B. angeben, welche Kontrollpunkte miteinander verbunden sind oder sich eine Fläche, Zelle oder Kante teilen. For each row of the subdivision matrix, the weights and their corresponding column index can be determined by examining the local neighborhood of the corresponding control point 12. The control points 12, which influence the position of a divided control point 12, can be used by using the topological Information is determined that is contained in the volumetric data structure. The topological information can, for example, indicate which control points are connected to one another or which share a surface, cell or edge.
Schließlich wird durch Zuordnen der entsprechenden Kontrollpunkte 12 zu ihrem entsprechenden Index in dem aktuellen Kontrollpunktnetz 12 der Spaltenindex die entsprechenden Gewichte erhalten. Finally, by assigning the corresponding control points 12 to their corresponding index in the current control point network 12, the column index is given the corresponding weights.
Da mit der entsprechend nummerierten Unterteilungsmatrix keine nachstehend erläuterten Richtungswechsel beim Durchführen von rechnerischen Unterteilungen erforderlich sind, kann zum Durchführen der Unterteilungen auf die Diagonalmatrix zurückgegriffen werden, welche die Eigenwerte enthält, wie vorstehend im Since, with the correspondingly numbered subdivision matrix, no changes of direction explained below are required when performing computational subdivisions, the diagonal matrix can be used to carry out the subdivisions, which contains the eigenvalues, as described above in
Zusammenhang mit den Gleichungen (5) - (7) erläutert. Connection with the equations (5) - (7) explained.
Um die Eigenstruktur zu berechnen, wird die M x K - Unterteilungsmatrix in eine quadratische Matrix durch Entfernen der letzten M - K (d.h. M weniger K) Reihen umgewandelt, wobei K die absolute Anzahl von Kontrollpunkten in dem ursprünglichen und M die absolute Anzahl von Kontrollpunkten in dem unterteilten Kontrollpunktnetz ist. Die entfernten Reihen entsprechender dabei den drei äußeren Schichten des unterteilten Kontrollpunktnetzes. Unter Berücksichtigung, dass diese Schichten jeweils fünf To compute the eigenstructure, the M x K subdivision matrix is converted into a square matrix by removing the last M - K (ie M less K) rows, where K is the absolute number of control points in the original and M is the absolute number of control points is in the divided checkpoint network. The removed rows correspond to the three outer layers of the divided checkpoint network. Taking into account that these layers are five each
Kontrollpunkte miteinander teilen, beträgt die Anzahl von Kontrollpunkten in diesen Schichten: Sharing control points with each other, the number of control points in these layers is:
M-K= 2 (Ni + N2 + N3) + 37, wobei Ni die Valenz der irregulären Kante ist, die benachbart zu der i-ten äußeren Schicht ist. Für das Kontrollpunktnetz in Figur 8b gilt zum Beispiel NI=N2= 5 und N3 = 4. MK = 2 (Ni + N 2 + N 3 ) + 37, where Ni is the valence of the irregular edge that is adjacent to the i-th outer layer. For the control point network in FIG. 8b, for example, N I = N 2 = 5 and N 3 = 4.
Im Folgenden wird auf konkrete Beispiele von auszuwertenden Kontrollpunktnetzen eingegangen. In the following, concrete examples of checkpoint networks to be evaluated are discussed.
In Figur 7b ist ein Beispiel eines volumetrischen Kontrollpunktnetzes 10 gezeigt, dass irreguläre Kanten 15 mit einer Valenz von drei aufweist. Dies betrifft insbesondere die zentrale Zelle 52, welche den auszuwertenden Ort enthält. Man erkennt unmittelbar, dass für diese Zelle 32 keine reguläre Nachbarschaft vorliegt, wie dies in Figur 6 gezeigt ist.FIG. 7b shows an example of a volumetric control point network 10 which has irregular edges 15 with a valence of three. This applies in particular to the central cell 52, which contains the location to be evaluated. You can see immediately that there is no regular neighborhood for this cell 32, as shown in FIG. 6.
Das gezeigte Beispiel kann als volumetrische Version des in Figur 7a gezeigten irregulären zweidimensionalen Flächennetzes verstanden werden. In Figur 8b ist hingegen ein Beispiel eines volumetrischen Netzes gezeigt, dass irreguläre Kanten 15 (und insbesondere eine zentrale Zelle 52 mit einer solchen Kante 15) mit einer Valenz von fünf aufweist. Dieses Beispiel kann als volumetrische Version des in Figur 8a gezeigten irregulären zweidimensionalen Flächennetzes verstanden werden. The example shown can be understood as a volumetric version of the irregular two-dimensional surface network shown in FIG. 7a. In contrast, FIG. 8b shows an example of a volumetric network that has irregular edges 15 (and in particular a central cell 52 with such an edge 15) with a valence of five. This example can be understood as a volumetric version of the irregular two-dimensional surface network shown in FIG. 8a.
Wie erwähnt, soll in den Beispielen aus Figur 7b und 8b eine Auswertung an einem Ort stattfinden, der in der inneren zentralen Zelle 52 liegt und für die erneut ein As mentioned, in the examples from FIGS. 7b and 8b, an evaluation is to take place at a location which is in the inner central cell 52 and for which there is a new one
Volumenelement 50 in Form einer lokalen Nachbarschaft um die innere Zelle 52 definiert wird. In dem gezeigten Zustand stellt das Volumenelement 50 bzw. diese Nachbarschaft noch keine reguläre Anordnung aus 4 x 4 x 4 Kontrollpunkte 12 oder 3 c 3 c 3 Zellen dar. Dies ist insbesondere deshalb der Fall, da die Zelle 52 noch einen irregulären Punkt 18 enthält. Volume element 50 is defined in the form of a local neighborhood around the inner cell 52. In the state shown, the volume element 50 or this neighborhood does not yet represent a regular arrangement of 4 x 4 x 4 control points 12 or 3 c 3 c 3 cells. This is particularly the case because the cell 52 still contains an irregular point 18 .
Um das Netz des irregulären Elements 50 und insbesondere die irreguläre Zelle 52 aus Figur 7b (rechnerisch) weiter zu unterteilen, so dass eine geschichtete und gemäß nachstehenden Gleichung auswertbare geschichtete Struktur erhalten wird, muss zunächst einer der darin enthaltenen irreguläre Kontrollpunkt 18 ausgewählt werden. Hierbei handelt es sich um einen der Endpunkte einer irregulären Kante 15, die von der Zelle 52 umfasst ist, und vorzugsweise denjenigen irregulären Kontrollpunkt 18, an dem mehrere oder auch sämtliche irreguläre Kanten 15 zusammenlaufen. Genauer gesagt wird im Fall einer Mehrzahl von irregulären Kanten 15, die eine gemeinsame Zelle 52 begrenzen, allgemein derjenige irreguläre Kontrollpunkt 18 ausgewählt, an dem sämtliche irregulären Kante 15 der Zelle 52 zusammenlaufen. Kann bei einer Mehrzahl von irregulären Kanten 15 kein solcher Kontrollpunkt 18 aufgefunden werden, an dem sämtlichen irregulären Kanten 15 Zusammentreffen, können weitere Unterteilungsschritte durchgeführt werden, bis dieser Zustand erreicht ist. Allgemein ist darauf hinzuweisen, dass eine Kante 14, 15 in dem gezeigten Beispiel derart definiert ist, dass sie sich zwischen zwei Kontrollpunkten 12 aber nicht durch mehrere Kontrollpunkte 12 hindurch erstreckt. Anschließend kann basierend auf vorstehenden Regeln zum Definieren einer Unterteilungsmatrix die geschichtete Struktur erhalten und kann diese dann weiter ausgewählt werden. In Figur 7b ist erneut ein u, v, w-Koordinatensystem 57 zum Beschreiben von Orten in der Zelle 52 definiert. Man erkennt, dass sich die irreguläre Kante 15 entlang der w-Achse dieses Koordinatensystem 57 erstreckt. Dies wird dadurch erreicht, dass in einem ersten Schritt zunächst die Ausrichtung der irregulären Kante 15 in dem entsprechenden Koordinatensystem 57 ermittelt wird. Dies kann aus dem das Subdivisionsmodell definierenden Datensatz ermittelt werden (oder auch durch manuelle Benutzereingaben). Weiterhin wird eine bevorzugte Achse (in diesem Fall w) angegeben, entlang derer sich die irreguläre Kante 15 erstrecken soll. Wird eine Relativabweichung von der irregulären Kante 15 und dieser Achse w zum Beispiel in Form eines Winkels hierzwischen festgestellt, können das Subdivisionsmodell und/oder das Koordinatensystem 57 relativ zueinander verdreht werden. Vorzugsweise erflogt eine Definition des In order to further subdivide (computationally) the network of the irregular element 50 and in particular the irregular cell 52 from FIG. 7b, so that a layered structure which can be evaluated according to the following equation is obtained, one of the irregular control points 18 contained therein must first be selected. This is one of the end points of an irregular edge 15 which is encompassed by the cell 52, and preferably that irregular control point 18 at which several or all of the irregular edges 15 converge. More specifically, in the case of a plurality of irregular edges 15 which delimit a common cell 52, the irregular control point 18 at which all irregular edges 15 of the cell 52 converge is generally selected. If, in the case of a plurality of irregular edges 15, no such control point 18 can be found at which all irregular edges 15 meet, further subdivision steps can be carried out until this state is reached. In general, it should be noted that an edge 14, 15 is defined in the example shown in such a way that it extends between two control points 12 but not through a plurality of control points 12. The layered structure can then be obtained based on the above rules for defining a subdivision matrix and this can then be selected further. A u, v, w coordinate system 57 for describing locations in the cell 52 is again defined in FIG. 7b. It can be seen that the irregular edge 15 extends along the w axis of this coordinate system 57. This is achieved by first determining the orientation of the irregular edge 15 in the corresponding coordinate system 57 in a first step. This can be determined from the data record defining the subdivision model (or also by manual user input). Furthermore, a preferred axis (in this case w) is specified, along which the irregular edge 15 is to extend. If a relative deviation from the irregular edge 15 and this axis w is determined, for example in the form of an angle between them, the subdivision model and / or the coordinate system 57 can be rotated relative to one another. A definition of the
Koordinatensystems 57 von vornherein aber in der Weise, dass eine solche Coordinate system 57 from the outset in such a way that such
Relativabweichung nicht auftritt. Auch dies kann rechnerisch mittels entsprechender Koordinatentransformationen erfolgen. Alternativ kann ohne eine etwaige Veränderung des Subdivisionsmodells (zum Beispiel ohne Veränderung von dessen Ausrichtung) das Koordinatensystem 57 von vornherein derart definiert werden, dass dessen w-Achse entlang der irregulären Kante 15 verläuft. Der in Figur 7b gezeigte Zustand stellt das Endergebnis derartiger Maßnahmen dar. Gleiches gilt auch für Figur 8b, wobei die w- Achse des Koordinatensystem 57 analog zu dem leicht schrägen Verlauf derjenigen ausgewählten irregulären Kante 15 geneigt ist, welche die auszuwertende Zelle 52 begrenzt (in der lediglich schematischen Figur 8b gegebenenfalls nicht eindeutig zu erkennen).Zu beachten ist ferner, dass die sich orthogonal zu der irregulären Kante 15 erstreckenden Ebenen in u und v im Folgenden jeweils als einzelne Schichten 56 des Volumenelements 50 bezeichnet werden. Relative deviation does not occur. This can also be done arithmetically using corresponding coordinate transformations. Alternatively, without any change in the subdivision model (for example without changing its orientation), the coordinate system 57 can be defined from the outset in such a way that its w-axis runs along the irregular edge 15. The state shown in FIG. 7b represents the end result of such measures. The same also applies to FIG. 8b, the w axis of the coordinate system 57 being inclined analogously to the slightly oblique course of the selected irregular edge 15 which delimits the cell 52 to be evaluated (in of the merely schematic FIG. 8b may not be clearly recognizable). It should also be noted that the planes extending orthogonally to the irregular edge 15 in u and v are referred to below as individual layers 56 of the volume element 50.
Analog zu dem zweidimensionalen Fall und wie dort beispielsweise anhand von Figur 3 erläutert, muss auch in dem dreidimensionalen Fall die auszuwertende Zelle 52 lokal zusätzlich unterteilt werden, da sie zunächst den irregulären Punkt 18 enthält und somit nicht mittels Basisfunktionen in üblicher Weise auswertbar ist (d. h. nicht gemäß Analogous to the two-dimensional case and as explained there for example with reference to FIG. 3, the cell 52 to be evaluated must also be locally subdivided in the three-dimensional case, since it initially contains the irregular point 18 and thus cannot be evaluated in the usual way by means of basic functions (ie not according to
Gleichung (15) auswertbar ist). Für die entsprechende Unterteilung wird die nachfolgend erläuterte Figur 9 herangezogen. Allgemein können die Unterteilungsregeln gemäß Catmull-Clark, die zum weiteren Unterteilen der irregulären Zelle 52 verwendet werden, in einer Unterteilungsmatrix (oder Subdivisionsmatrix) mit, zumindest wenn bereits geschichtete Strukturen vorliegen, der Größe 5M x 4K zusammengefasst werden, wobei K der Anzahl von Kontrollpunkten 12 pro Schicht 56 des Kontrollpunktnetzes 10 bzw. Volumenelements 50 und M der Equation (15) can be evaluated). FIG. 9 explained below is used for the corresponding subdivision. In general, the Catmull-Clark subdivision rules, which are used to further subdivide the irregular cell 52, can be summarized in a subdivision matrix (or subdivision matrix) with the size 5M x 4K, at least if there are already layered structures, where K is the number of control points 12 per layer 56 of the control point network 10 or volume element 50 and M the
Kontrollpunktanzahl des entsprechend unterteilten Netzes 1 1 entspricht. Es ist darauf hinzuweisen, dass diese Zahlenwerte aber nur stimmen, wenn bereits von einer geschichteten Struktur ausgegangen wird und ansonsten auf die vorstehende alternative Formulierung der M x K-Matrix zurückgegriffen werden müsste. Pro zusätzlicher lokaler Unterteilung (oder, mit anderen Worten, pro zusätzlicher lokaler Subdivision) entstehen acht neue Unterelemente in Form von kleinvolumetrischen Zellen 52 ausgehend von der in Figur 7b gezeigten Zelle 52. Checkpoint number of the correspondingly divided network corresponds to 1 1. It should be noted that these numerical values are only correct if a layered structure is already assumed and otherwise the above alternative formulation of the M x K matrix would have to be used. For each additional local subdivision (or, in other words, for each additional local subdivision), eight new sub-elements are created in the form of small-volume cells 52, starting from the cell 52 shown in FIG. 7b.
In dem zweidimensionalen Fall führt eine zusätzliche lokale Subdivision dazu, dass sämtliche zusätzlich erhaltenen Flächenstücke regulär werden, mit Ausnahme desjenigen, welches den irregulären Punkt enthält (siehe jeweilige reguläre Flächenstücke k= 1 , 2, 3 in Figur 3 sowie jeweils verbleibende Flächenstücke, die den irregulären Punkt bei 0,0 enthalten). In dem volumetrischen Fall resultiert die zusätzliche lokale Subdivision in sechs Unterelementen (bzw. Zellen 52), die regulär werden, während zwei irreguläre Zellen verbleiben, die nach wie vor die irreguläre Kante 15 enthalten bzw. an dieser angrenzen. Zusätzliche Unterteilungen dieser irregulären Unterelemente würden den Volumenanteil der regulären Zellen erhöhen, jedoch nicht zu einer vollständigen In the two-dimensional case, an additional local subdivision leads to the fact that all additionally obtained patches become regular, with the exception of the one that contains the irregular point (see respective regular patches k = 1, 2, 3 in FIG. 3 and the remaining patches that correspond to the irregular point included at 0.0). In the volumetric case, the additional local subdivision results in six sub-elements (or cells 52) that become regular, while two irregular cells remain that still contain the irregular edge 15 or adjoin it. Additional subdivisions of these irregular sub-elements would increase the volume fraction of the regular cells, but not to a complete one
Auflösung der irregulären Zellen 52 führen. Dissolution of the irregular cells 52 lead.
Der Zusammenhang zwischen der Anzahl zusätzlich erforderlicher Unterteilungsschritte n=1...4 und den daraus resultierenden Unterelementen k=1 ...8 in Abhängigkeit der Parameter u, v, w eines auszuwertenden Ortes ist in Figur 9 dargestellt, wobei n auch deutlich größere Werte annehmen und prinzipiell auch unendlich sein kann. Figur 9 stellt die volumetrische Variante oder auch volumetrische Erweiterung von Figur 3 dar. The relationship between the number of additionally required subdivision steps n = 1 ... 4 and the resulting sub-elements k = 1 ... 8 depending on the parameters u, v, w of a location to be evaluated is shown in FIG. 9, n also being significantly larger Accept values and can in principle also be infinite. Figure 9 shows the volumetric variant or volumetric extension of Figure 3.
Alternativ kann auf die im allgemeinen Beschreibungsteil zitierte Formel zurückgegriffen werden. Bei Figur 9 befindet sich der irreguläre Kontrollpunkt 18 an der Position 0, 0, 0. Die irreguläre Kante 15 erstreckt sich ausgehend hiervon entlang der w-Achse. Diese Zuordnung wird durch die Definition des Koordinatensystem 57 erreicht, welche auf Basis der vorab ermittelten Ausrichtung der irregulären Kante 15 erfolgt. Eine zumindest theoretische Möglichkeit, um einen beliebigen Ort in einer irregulären Zelle 52 auszuwerten wäre, diese bzw. dessen Nachbarschaft in Form des Alternatively, the formula cited in the general description section can be used. In FIG. 9, the irregular control point 18 is at the position 0, 0, 0. The irregular edge 15 extends from this along the w-axis. This assignment is achieved by the definition of the coordinate system 57, which is based on the previously determined alignment of the irregular edge 15. An at least theoretical possibility to evaluate any location in an irregular cell 52 would be this or its neighborhood in the form of the
Volumenelements 50 so oft weiter zu unterteilen, bis der auszuwertenden Ort innerhalb einer vollständig regulären Zelle 52 liegt. Falls sich ein auszuwertender Ort nahe einer irregulären Kante 15, aber nicht nahe zu einem extraordinären Punkt 18 befindet, müsste die Richtung der Unterteilung während des Auswertungsprozesses verändert werden. Subdivide volume element 50 until the location to be evaluated lies within a completely regular cell 52. If a location to be evaluated is located near an irregular edge 15, but not close to an extraordinary point 18, the direction of the subdivision would have to be changed during the evaluation process.
Die Richtung der Unterteilung, die entsprechend auch als Unterteilungsrichtung bezeichnet werden kann, wird dabei allgemein durch die Werte der Zielparameter u, v, w definiert und beträgt üblicherweise (0, 0, 0). Diese Richtung bezeichnen keine Richtung im streng geometrischen Sinne. Stattdessen betrifft dies den Fall, dass für einen Ort in Figur 9 infolge iterativer Unterteilungen hin zu einer irregulären Kante, welche entlang der w-Koordinate verläuft, eine Unterteilung„in diese Richtung“ erfolgt. In dem Fall, dass ein auszuwertender Ort nahe zu einem irregulären Punkt 18 aber entfernt von der irregulären Kante 15 liegt (zum Beispiel ein Ort mit den Koordinaten (u, v, w) = (0,1 ; 0,1 ; 0,33)) muss die Richtung der Unterteilung mehrfach geändert werden, um eine lokale reguläre Struktur zu erreichen. Bei bisherigen Lösungen wie zum Beispiel von Burkhart et al. muss ein entsprechender Richtungswechsel immer dann erfolgen, sobald der Ort in dem Bereich k = 3 aus Figur 9 liegt. Bei einem Richtungswechsel ist es jedoch nicht mehr möglich, die diagonale Eigenwertmatrix zu potenzieren, sondern es muss ein neuer Matrixausdruck aufgestellt werden, was die Berechnungszeit erhöht und allgemein zu nicht konstanten Berechnungszeiten führt. Durch den hierin vorgestellten Ansatz wird dies und werden Richtungswechsel allgemein verhindert, da geschichtete Strukturen direkt auswertbar sind. Auch ohne Richtungswechsel ermöglicht die hierin vorgestellte Lösung nämlich das Erhalten einer auswertbaren geschichteten Struktur. Durch das obige The direction of the subdivision, which can also be referred to as the subdivision direction, is generally defined by the values of the target parameters u, v, w and is usually (0, 0, 0). This direction does not indicate a direction in the strictly geometrical sense. Instead, this applies to the case that a subdivision “in this direction” takes place for a location in FIG. 9 as a result of iterative subdivisions towards an irregular edge which runs along the w coordinate. In the event that a location to be evaluated is close to an irregular point 18 but away from the irregular edge 15 (for example a location with the coordinates (u, v, w) = (0.1; 0.1; 0.33 )) the direction of the subdivision has to be changed several times in order to achieve a local regular structure. With previous solutions, such as from Burkhart et al. A corresponding change of direction must always take place as soon as the location is in the range k = 3 from FIG. 9. When changing direction, however, it is no longer possible to potentiate the diagonal eigenvalue matrix, but a new matrix expression must be created, which increases the calculation time and generally leads to inconsistent calculation times. The approach presented here prevents this and prevents changes of direction in general, since layered structures can be evaluated directly. Even without a change of direction, the solution presented here enables a layered structure that can be evaluated to be obtained. Through the above
Nummerierungsschema der Unterteilungsmatrix kann ferner die Eigenstruktur der Unterteilungsmatrix erhalten und durch ein Potenzieren der Eigenwertmatrix eine konstante Berechnungszeit erreicht werden. Numbering scheme of the subdivision matrix can also maintain the intrinsic structure of the subdivision matrix and a constant calculation time can be achieved by exponentiating the eigenvalue matrix.
Zusammengefasst erhöhen Richtungswechsel, wie sie auch bei der vorstehend erwähnten wissenschaftlichen Arbeit von Burkhart et al. verwendet werden, den erforderlichen Berechnungsaufwand und führen insbesondere dazu, dass die In summary, changes in direction increase, as is also the case with the aforementioned scientific work by Burkhart et al. are used, the required calculation effort and in particular lead to the fact that the
Berechnungszeit mit den erforderlichen zusätzlichen Unterteilungsschritten im Wesentlichen linear steigt (d. h. nicht konstant ist). Ferner können hierbei Informationen verlorengehen, die eine Rücktransformation des unterteilten Kontrollpunktnetzes 10 in dessen Ausgangszustand erschweren oder sogar unmöglich machen. Deshalb wird im vorliegend ein alternativer Auswertungsansatz für irreguläre Volumenelemente 50 samt Zellen 52 erläutert, der u. a. auf einer Unterteilungsmatrix mit dem vorstehend erläuterten Nummerierungsschema beruht. Calculation time with the required additional subdivision steps in Increases substantially linearly (ie is not constant). In addition, information can be lost that makes it difficult or even impossible to transform the subdivided control point network 10 back into its initial state. For this reason, an alternative evaluation approach for irregular volume elements 50 including cells 52 is explained here, which is based, among other things, on a subdivision matrix with the numbering scheme explained above.
In Fig. 10a-b ist eine Darstellung der irregulären Volumenelemente 50 aus Figur 7b und Figur 8b nach einer weiteren lokalen Unterteilung des Modells (d. h. einer Unterteilung von dessen Volumenelement 50) gezeigt (in Figur 10a das Netz aus Figur 7b und in Figur 10b das Netz aus Figur 8b). Hierbei wird von dem Fall k=3 aus Figur 9 ausgegangen. Die Kontrollpunktnetze 10 der jeweiligen Volumenelemente 52 bestehen jeweils aus vier Schichten 56, welche sich in jeweils in der u-v-Ebene (d. h. orthogonal zu der irregulären Kante 15) erstrecken, sowie entlang der w-Dimension aneinandergereiht oder, mit anderen Worten, geschichtet sind. Ferner sind wiederum die inneren Zellen 52 markiert, in denen der auszuwertende Ort liegt. Statt bis zu einem Zustand zu unterteilen, bei dem der auszuwertende Ort in einer vollständig regulären 4 x 4 x 4 Kontrollpunkt- Nachbarschaft liegt, reicht es bei der gezeigten Lösung aus, so oft zu unterteilen, bis der irreguläre Punkt 18, nicht aber die irreguläre Kante 15 außerhalb derjenigen Zelle 52 liegt, die den auszuwertenden Ort umfasst. 10a-b show a representation of the irregular volume elements 50 from FIG. 7b and FIG. 8b after a further local division of the model (ie a division of its volume element 50) (in FIG. 10a the network from FIG. 7b and in FIG. 10b the Network from Figure 8b). The case k = 3 from FIG. 9 is assumed here. The control point networks 10 of the respective volume elements 52 each consist of four layers 56, which each extend in the u-v plane (i.e. orthogonal to the irregular edge 15), and are strung together or, in other words, layered. Furthermore, the inner cells 52 in which the location to be evaluated is located are also marked. Instead of dividing up to a state in which the location to be evaluated lies in a completely regular 4 x 4 x 4 checkpoint neighborhood, in the solution shown it is sufficient to subdivide until the irregular point 18, but not the irregular one Edge 15 lies outside of the cell 52 which comprises the location to be evaluated.
Man erkennt, dass innerhalb einer jeweiligen u-v-Schicht 56 nach wie vor ein irregulärer Kontrollpunkt 18 mit der Valenz von drei (Figur 10b) bzw. fünf (Figur 10a) vor allem an derselben Position enthalten ist, sodass die entsprechenden Schichten 56 jeweils irregulär sind. In der w-Dimension sind die jeweiligen Elemente jedoch regulär, da dort 4 c 4 Kontrollpunktenetze definiert werden können. It can be seen that within a respective uv layer 56 an irregular control point 18 with the valence of three (FIG. 10b) or five (FIG. 10a) is mainly contained at the same position, so that the corresponding layers 56 are each irregular . In the w dimension, however, the respective elements are regular, since 4 c 4 control point networks can be defined there.
Dies macht sich die hierin offenbarte Lösung dahingehend zunutze machen, als dass die bivariaten Subdivisionsbasisfunktionen (p(u, v) gemäß der vorstehenden Gleichung (1 1 ) des zweidimensionalen Falls berechnet und mit einer regulären B-spline Basisfunktion Ni(w) multipliziert werden. Die resultierende trivariate Basisfunktion lautet:
Figure imgf000051_0001
Dabei bezeichnet j die jeweiligen Kontrollpunkte in der i-ten u, v-Schicht 56. In jeder Schicht 56 ist dabei die Valenz der extraordinären Kante 15 gleich der Valenz das extraordinären Punktes 18. Dies ermöglicht das Verwenden der bisher nur für den zweidimensionalen Fall verwendeten Basisfunktionen auch im dreidimensionalen Fall. Diese Basisfunktionen können zum Beispiel in Gleichung (15) verwendet werden, um einen beliebigen Ort e mit den Koordinaten u, v, w zu bestimmen bzw. auszuwerten.
This takes advantage of the solution disclosed herein in that the bivariate subdivision basis functions (p (u, v) are calculated according to equation (1 1) of the two-dimensional case above and multiplied by a regular B-spline basis function Ni (w). The resulting trivariate basis function is:
Figure imgf000051_0001
Here, j denotes the respective control points in the i-th u, v layer 56. In each layer 56, the valence of the extraordinary edge 15 is equal to the valence of the extraordinary point 18. This enables the use of those previously used only for the two-dimensional case Basic functions even in the three-dimensional case. These basic functions can be used, for example, in equation (15) to determine or evaluate any location e with the coordinates u, v, w.
Ebenso kann basierend auf diesen Basisfunktionen und der Eigenstruktur der (gemäß vorstehendem Nummerierungsschema aufgestellten) Unterteilungsmatrix, die in Form eines zu Gleichung (7) analog Ausdrucks enthalten ist, eine Auswertung eines Ortes p basierend auf folgenden Ausdrücken erfolgen:
Figure imgf000053_0001
Likewise, based on these basic functions and the intrinsic structure of the subdivision matrix (set up according to the above numbering scheme), which is contained in the form of an expression analogous to equation (7), an evaluation of a location p can be carried out based on the following expressions:
Figure imgf000053_0001
Dabei ist Pk eine Auswahlmatrix (engl.: picking matrix), die analog zum Pk is a picking matrix, which is analogous to the
zweidimensionalen Fall für k = 0,...,6 definiert ist (siehe auch Gleichung (8)). Der two-dimensional case for k = 0, ..., 6 is defined (see also equation (8)). Of the
Ausdruck <p (u, v, w) wird hierin auch als trivariate Subdivisionsbasisfunktion (oder trivariate Unterteilungsbasisfunktion) bezeichnet. Die Basisfunktion N aus Gleichung (17) findet sich auch in Gleichung (18) wieder, dort allerdings in Abhängigkeit des Expression <p (u, v, w) is also referred to herein as a trivariate subdivision basis function (or trivariate division basis function). The basic function N from equation (17) can also be found in equation (18), but there as a function of
transformierten u, v, w-Koordinatensystems sowie der nötigen Unterteilungsschritte n und des Bereiches k, in dem der auszuwertende Ort nach n Unterteilungsschritten liegt. Die obigen Gleichungen (18)-(19) stellen zu den Gleichungen (9)-(1 1 ) des zweidimensionalen Falls analoge Gleichungen für den volumetrischen Fall dar, ermöglichen jedoch transformed u, v, w coordinate system as well as the necessary subdivision steps n and the area k in which the location to be evaluated lies after n subdivision steps. The above equations (18) - (19) represent equations for the volumetric case which are analogous to the equations (9) - (1 1) of the two-dimensional case, but enable
Auswertungen in konstanter Berechnungszeit. Die Gleichung (18) enthält den kompletten hier beschriebenen Prozess für die Auswertung bzw. Berechnung des Limit-Punktes p, einschließlich Aufstellen der Subdivisionsmatrix und deren Eigenstruktur, Bestimmung der Anzahl der nötigen Subdivisionsschritte n und der Bereiche k usw. Evaluations in constant calculation time. Equation (18) contains the complete process described here for evaluating or calculating the limit point p, including setting up the subdivision matrix and its own structure, determining the number of subdivision steps n required and the ranges k etc.
Es versteht sich, dass die geschilderte Zuordnung der w-Achse zu der irregulären It is understood that the described assignment of the w axis to the irregular
Kante 15 lediglich beispielhaft ist und dass auch jegliche der anderen u-v-Achsen oder auch gänzlich andersartig bezeichnete Achsen der irregulären Kante 15 zugeordnet werden könnten. Die Zuordnung der u, v, w-Parameter in Gleichung (17) müsste dann entsprechend angepasst werden. Edge 15 is merely an example and that any of the other u-v axes or axes with entirely different names could also be assigned to the irregular edge 15. The assignment of the u, v, w parameters in equation (17) would then have to be adapted accordingly.
Zusammengefasst wird also eine Auswertung ermöglicht, bei der zunächst eine geschichtete Struktur durch Unterteilungen ohne Richtungswechsel und somit einer konstanten Berechnungszeit erzeugt wird , wobei für diese Struktur zusätzliche lokalen Unterteilungen auf Basis der Eigenwert-Diagonalmatrix des zweidimensionalen Falles erfolgen können, die in dem Eigenbasisfunktions-Term (p(u, v) enthalten ist. Somit können erneut zumindest Teile der relevanten Matrixausdrücke vorab berechnet werden und die Rechenzeit wird maßgeblich durch das im Wesentlichen zeitkonstante Potenzieren der entsprechenden Diagonalmatrix bestimmt. Wie geschildert, wird dies dadurch ermöglicht, dass zunächst die Ausrichtung der irregulären Kante 15 ermittelt und ein lokales u, v, w- Koordinatensystem geeignet gewählt wird, um geschichtete Strukturen zu erhalten und daraufhin von dem Eigenbasisfunktions-Term (p(u, v) Gebrauch machen zu können. Vorstehend wurde lediglich die erfindungsgemäße Auswertung einer inneren Zelle 52 betrachtet. Einen Sonderfall stellen jedoch Zellen 52 und Volumenelemente 50 dar, die Grenzflächen 32 zur Umgebung umfassen. Für derartige Grenzzellen 34 bzw. In summary, an evaluation is thus made possible in which a layered structure is first generated by subdivisions without changing direction and thus a constant calculation time, with additional local subdivisions based on the eigenvalue diagonal matrix of the two-dimensional case, which can be made in the eigen basis function term, for this structure (p (u, v) is included. Thus, again at least parts of the relevant matrix expressions are calculated in advance and the computing time is largely determined by the essentially time-constant exponentiation of the corresponding diagonal matrix. As described, this is made possible by first determining the orientation of the irregular edge 15 and selecting a local u, v, w coordinate system in order to obtain layered structures and then by the eigen-base function term (p (u, v) Above, only the evaluation according to the invention of an inner cell 52 has been considered, but cells 52 and volume elements 50, which include interfaces 32 to the environment, represent a special case.
Grenzelemente 33 (ein Grenzelement 33 umfasst mehrere Zellen 52, von denen wenigstens eine Grenzzelle 34 ist) sind die in den Figuren 1 1 a-e gezeigten Fälle zu unterscheiden. Genauer gesagt sind in Figur 1 1 a und 1 1 b zwei erste Beispiele für Grenzzellen 34 gezeigt sowie in Figur 1 1 c eine hierzu korrespondierende Boundary elements 33 (a boundary element 33 comprises a plurality of cells 52, at least one of which is a boundary cell 34) are to be distinguished from the cases shown in FIGS. 1 a-e. More precisely, two first examples of border cells 34 are shown in FIG. 1 a and 11 b, and a corresponding one in FIG
zweidimensionale Konfiguration. In den Figuren 1 1 d und 1 1 e sind weitere Beispiele für Grenzfälle gezeigt, für die eine korrespondierende zweidimensionale Konfigurationen Figur 1 1 f gezeigt ist. two-dimensional configuration. 1 1 d and 1 1 e show further examples of borderline cases, for which a corresponding two-dimensional configuration is shown in FIG. 1 1 f.
In Figur 1 1 a ist ein erster Grenzfall gezeigt, bei dem eine an sich reguläre Struktur einer einzelne Grenzschicht 32 in Form der in dieser Figur obersten Schicht 56 aufweist (die verbleibenden Randflächen des gezeigten Grenzelements 33 grenzen an Flächen benachbarter nicht dargestellte Volumenelemente 52 an und bilden deshalb keine entsprechende Grenzschicht 32). Die Grenzschicht 32 kann in dem gezeigten trivariaten (d. h. dreidimensionalen) Fall allgemein gleichartig zu scharfen Kanten in dem bivariaten (d. h. zweidimensionalen) Fall behandelt werden, weshalb die Grenzschicht 32 in der korrespondierenden zweidimensionalen Konfiguration aus Figur 1 1 c als entsprechende scharfe Kante 17 gezeigt ist. FIG. 1 a shows a first borderline case, in which an inherently regular structure of a single border layer 32 in the form of the topmost layer 56 in this figure has (the remaining edge surfaces of the border element 33 shown adjoin surfaces of adjacent volume elements 52, not shown, and therefore do not form a corresponding boundary layer 32). In the trivial (ie three-dimensional) case shown, the boundary layer 32 can generally be treated similarly to sharp edges in the bivariate (ie two-dimensional) case, which is why the boundary layer 32 in the corresponding two-dimensional configuration from FIG. 11 c is shown as a corresponding sharp edge 17 .
Insbesondere wird in den Figuren 1 1 c und 1 1 f dargestellt, dass analog zum Fall der Figuren 5a, 5b an den scharfen Kanten 17 extrapoliert werden kann, um die zur Definition einer (für den gezeigten analogen zweidimensionalen Fall) regulären 4 x 4 - Nachbarschaft fehlenden Kontrollpunkte 12 zu ergänzen (siehe entsprechend gestrichelt dargestellte Kontrollpunkte 12 und Kanten in den Figuren 1 1 c, 1 1 f). Eine solche tatsächliche Ergänzung von Kontrollpunkten 12 per Extrapolation muss nicht stattfinden, legimitiert jedoch das Verwenden der scharfe-Kanten-Basisfunktionen. Um einen Ort in der in Figur 1 1 a gezeigte Grenzzelle 34 auszuwerten, welche einen Teil der Grenzschicht 32 bildet, werden die B-spline Basisfunktionen aus der obigen In particular, FIGS. 1 1 c and 1 1 f show that, analogously to the case of FIGS. 5a, 5b, the sharp edges 17 can be extrapolated in order to define the regular 4 × 4 (for the analog two-dimensional case shown) To add neighborhood missing control points 12 (see correspondingly shown control points 12 and edges in Figures 1 1 c, 1 1 f). Such an actual addition of control points 12 by extrapolation does not have to take place, but legitimizes the use of the sharp-edge basic functions. In order to evaluate a location in the boundary cell 34 shown in FIG. 1 a, which forms part of the boundary layer 32, the B-spline basic functions from the above
Gleichung (16) mit scharfe-Kanten-Basisfunktionen in der w-Richtung ersetzt, da dort der Rand bzw. Grenzbereich zur Umgebung vorliegt. Jede der drei einzelnen scharfe-Kanten- Funktionen aus Gleichung (14) entspricht dabei einer der Schichten 56 des Equation (16) replaced with sharp-edge basis functions in the w direction, since there the edge or border area to the environment is present. Each of the three individual sharp edge functions from equation (14) corresponds to one of the layers 56 of the
Kontrollpunktnetzes aus Figur 1 1 a, wobei die erste Funktion aus Gleichung (14), die mit dem Wert 1 beginnt, der Grenzschicht 32 entspricht. Die neuen Grenzbasisfunktionen lauten wie folgt:
Figure imgf000055_0001
Checkpoint network from Figure 1 1 a, wherein the first function from equation (14), which begins with the value 1, corresponds to the boundary layer 32. The new border base functions are as follows:
Figure imgf000055_0001
Der zweite Grenzfall, der in Figur 1 1 b gezeigt ist, zeichnet sich dadurch aus, dass eine irreguläre Kante 15 orthogonal zur Grenzschicht 32 verläuft. Erneut wird dabei ein Koordinatensystem 57 derart definiert, dass dessen w-Achse entlang der irregulären Kante 15 verläuft und die u-v-Ebene parallel zu Schichten 56 des gezeigten The second borderline case, which is shown in FIG. 11b, is characterized in that an irregular edge 15 runs orthogonally to the border layer 32. Again, a coordinate system 57 is defined such that its w-axis runs along the irregular edge 15 and the u-v plane parallel to layers 56 of the shown
Grenzelements 33 verläuft, die orthogonal zu dieser Kante 15 verlaufen. Für eine Boundary element 33 runs orthogonal to this edge 15. For one
Auswertung eines Ortes in der Grenzelle 34, deren eine Kante mit der irregulären Kante 15 zusammenfällt, werden irreguläre zweidimensionale Subdivisionsbasisfunktionen in der u- und v-Dimension betrachtet und mit der scharfe-Kanten-Basisfunktionen in der w- Dimension kombiniert. Die resultierende Grenzbasisfunktionen Bi (u, v, w) lautet wie folgt, wobei i und j analog zu der vorstehenden Gleichung (17) definiert sind: Evaluation of a location in the boundary cell 34, one edge of which coincides with the irregular edge 15, irregular two-dimensional subdivision basis functions in the u and v dimension are considered and combined with the sharp edge basis functions in the w dimension. The resulting limit basis functions Bi (u, v, w) are as follows, where i and j are defined analogously to equation (17) above:
Bi j( u, V , w) = ipfi lL V)Ci(w) i 1, 3, j— 1, K (21 ). Bi j (u, V, w) = ipfi III V) Ci (w) i 1, 3, j-1, K (21).
In dem dritten Grenzfall aus Figur 1 1 d erstreckt sich eine irreguläre Kante 15 innerhalb bzw. entlang einer Grenzfläche. Mit anderen Worten ist die irreguläre Kante 15 in einer entsprechenden Grenzschicht 32 enthalten. Dies betrifft in Figur 1 1 d die mit einem entsprechenden Bezugszeichen versehene vertikale irreguläre Kante 15, die in einer von dem Betrachter abgewandten Grenzfläche 36 verläuft. Der hierzu korrespondierende zweidimensionale Fall ist in Figur 1 1 f gezeigt. Das Koordinatensystem 57 der den auszuwertenden Ort enthaltenden Grenzzelle 34, das für beide der Figuren 1 1 d und 1 1 e gilt, ist erneut derart definiert, dass die w-Achse entlang der irregulären Kante 15 verläuft. Weiterhin erstrecken sich die orthogonal zu dieser Kante 15 verlaufenden Schichten 56 der in diesen Figuren jeweils gezeigten Grenzelemente 33 parallel zu der u-v-Ebene dieses Koordinatensystem 57. In the third borderline case from FIG. 11d, an irregular edge 15 extends within or along an interface. In other words, the irregular edge 15 is contained in a corresponding boundary layer 32. In FIG. 11 d, this relates to the vertical irregular edge 15 provided with a corresponding reference symbol, which runs in an interface 36 facing away from the viewer. The corresponding two-dimensional case is shown in Figure 1 1 f. The coordinate system 57 of the boundary cell 34 containing the location to be evaluated, which applies to both of FIGS. 1 1 d and 1 1 e, is again defined in such a way that the w axis runs along the irregular edge 15. Furthermore, the layers 56 of the boundary elements 33, which run orthogonally to this edge 15, extend parallel to the uv plane of this coordinate system 57.
In dem Fall von Figur 1 1 d wird eine Lösung dadurch erhalten, dass man die In the case of Figure 1 1 d, a solution is obtained by using the
Subdivisionsbasisfunktionen in u und v berechnet und mit den regulären B-Spline- Basisfunktionen in der w-Dimension multipliziert, was im Ergebnis der obigen Gleichung (21 ) entspricht. Genauer gesagt werden hier die zweidimensionalen Basisfunktionen inklusive scharfe Kanten für das irreguläre Flächenstück, wie in Figur 1 1 f abgebildet, berechnet und mit der Funktion in der w-Dimension multipliziert. Subdivision basis functions in u and v are calculated and multiplied by the regular B-spline basis functions in the w dimension, which corresponds to equation (21) above. More precisely, the two-dimensional basic functions including sharp edges for the irregular surface piece, as shown in FIG. 1 1 f, are calculated and multiplied by the function in the w dimension.
In dem vierten Grenzfall, der in Figur 1 1 e gezeigt ist, ist die auszuwertende Grenzzelle 34 derart positioniert, dass zwei ihrer Flächen innerhalb einer Grenzfläche 36 bzw. In the fourth borderline case, which is shown in FIG. 11e, the border cell 34 to be evaluated is positioned in such a way that two of its surfaces within an interface 36 or
Grenzschicht 32 des Grenzelements 33 liegen. Dabei handelt es sich um in Figur 1 1 e markierte obere Grenzfläche 36 und die vom Betrachter abgewandte Grenzfläche 36, die jeweils entsprechende Flächen des Grenzelements 33 enthalten. Die irreguläre Kante 15 wird in diesem Fall als eine von den beiden vom Betrachter abgewandten Grenzflächen 36 der Grenzzelle 34 geteilte Kante definiert und der irreguläre Punkt 18 als ein Endpunkt dieser irregulären Kante 15. Boundary layer 32 of the boundary element 33 lie. These are the upper boundary surface 36 marked in FIG. 1 e and the boundary surface 36 facing away from the viewer, each of which contains corresponding surfaces of the boundary element 33. In this case, the irregular edge 15 is defined as an edge divided by the two interfaces 36 of the boundary cell 34 facing away from the viewer and the irregular point 18 as an end point of this irregular edge 15.
Anschließend wird unter Zuhilfenahme der Unterteilungsregeln aus Figur 9 und in Kenntnis der genauen u, v, w-Koordinaten des auszuwertenden Ortes die Anzahl von Unterteilungsschritten n definiert, die dazu führen, dass eine den auszuwertenden Ort enthaltende und nach einer entsprechenden Unterteilung erhaltene Zelle 34 nur noch eine einzige Fläche in einer entsprechenden Grenzfläche 36 des Grenzelements 33 enthält.Subsequently, with the aid of the subdivision rules from FIG. 9 and with knowledge of the exact u, v, w coordinates of the location to be evaluated, the number of subdivision steps n is defined, which result in a cell 34 containing the location to be evaluated and obtained after a corresponding subdivision still contains a single surface in a corresponding interface 36 of the boundary element 33.
Die Größe der Catmull-Clark-Unterteilungsmatrix auf 4M x 3K reduziert, wobei M der Anzahl der Kontrollpunkte 12 in jeder Schicht 56 des unterteilten Netzes 1 1 und K der entsprechenden Anzahl in dem Ausgangsnetz 10 entspricht. Die Reduzierung ist darauf zurückzuführen, dass aufgrund des betrachteten Grenzfalls eine Reihe von The size of the Catmull-Clark subdivision matrix is reduced to 4M x 3K, where M corresponds to the number of control points 12 in each layer 56 of the subdivided network 11 and K corresponds to the corresponding number in the output network 10. The reduction is due to the fact that a number of
Kontrollpunkten 12 gegenüber einer im Innern eines Volumens angeordneten Zelle fehlt. Anschließend ist einer der vorstehend erläuterten ersten bis dritten Grenzfälle anwendbar und der relevante Ort kann entsprechend direkt ausgewertet werden. Wenn eine auszuwertende Zelle 34 mehr als zwei Flächen aufweist, die in Grenzfläche 36 liegen, oder zwei derartige Flächen, die aber nicht aneinander angrenzen, muss das Ausgangsnetz 10 des dazugehörigen Grenzelements 33 einmal unterteilt werden. Eine hieraus resultierende Zelle 34, welche den auszuwertenden Ort enthält, fällt dann automatisch unter einen der vorstehenden ersten bis vierten Grenzfälle und ist entsprechend auswertbar. Control points 12 with respect to a cell arranged in the interior of a volume are missing. Subsequently, one of the first to third limit cases explained above can be used and the relevant location can be evaluated directly accordingly. If a cell 34 to be evaluated has more than two surfaces which lie in boundary surface 36 or two such surfaces but which do not adjoin one another, the output network 10 of the associated boundary element 33 must be subdivided once. A resulting cell 34, which contains the location to be evaluated, then automatically falls under one of the above first to fourth limit cases and can be evaluated accordingly.
Zusammengefasst stellt die gezeigte Lösung somit auch Möglichkeiten bereit, um das Subdivisionsmodell in seinen Grenz- bzw. Randbereichen in konstanter Zeit auszuwerten, sodass tatsächlich beliebige Orte in dem gesamten Modell mit einer konstanten In summary, the solution shown thus also provides options for evaluating the subdivision model in its border or border areas in a constant time, so that in fact any locations in the entire model with a constant
Berechnungszeit auswertbar sind. Calculation time can be evaluated.
Fig. 12 zeigt eine Darstellung, um Vorteile der hierin offenbarten Lösung zu verdeutlichen. Im Detail ist eine erste Gerade 106 und eine zweite Gerade 108 gezeigt, die jeweils einen Zusammenhang zwischen einer benötigten Anzahl von Unterteilungsschritten (d.h. Figure 12 is an illustration to illustrate advantages of the solution disclosed herein. A first straight line 106 and a second straight line 108 are shown in detail, each of which shows a relationship between a required number of subdivision steps (i.e.
zusätzlichen lokalen Unterteilungen, um eine Auswertung an einem beliebigen Ort vornehmen zu können) und einer hierfür benötigten Zeit darstellen. Die Zeit ist dabei als relative Zeit bezogen auf die mit 1 normierte Zeit definiert, welche für eine Auswertung mit der erfindungsgemäßen Lösung benötigt wird. Dabei wird von einem Ausgangsnetz 10 ausgegangen, das gemäß dem vorstehenden vierten Grenzfall eine Zelle 34 mit wenigstens zwei Flächen in Grenzflächen des betrachteten Volumenelements 52 sowie einen irregulären Punkt 18 umfasst, der eine Valenz von fünf aufweist. additional local subdivisions in order to be able to carry out an evaluation at any location) and represent a time required for this. The time is defined as the relative time based on the time standardized with 1, which is required for an evaluation with the solution according to the invention. In this case, an output network 10 is assumed which, according to the fourth limit case above, comprises a cell 34 with at least two areas in the interfaces of the volume element 52 under consideration and an irregular point 18 which has a valence of five.
Die erste Gerade 106 resultiert aus der Anwendung eines Lösungsalgorithmus gemäß Stand der Technik und genauer gesagt von Burkhart et al. (Daniel Burkhart, Bernd Hamann und Georg Umlauf: Iso-geometric Finite Element Analysis Based on Catmull- Clark: Subdivision Solids In Computer Graphics Forum, Vol. 29. Wiley Online Library, 1575-1584). Dort werden bei auszuwertenden Orten in irregulären Zellen und/oder Volumenelementen so oft weitere lokale Unterteilungen vorgenommen, bis der auszuwertende Ort schlussendlich in einem vollständig regulären Bereich liegt. The first straight line 106 results from the application of a solution algorithm according to the prior art and more precisely from Burkhart et al. (Daniel Burkhart, Bernd Hamann and Georg Umlauf: Iso-geometric Finite Element Analysis Based on Catmull-Clark: Subdivision Solids In Computer Graphics Forum, Vol. 29.Wiley Online Library, 1575-1584). In the case of locations to be evaluated in irregular cells and / or volume elements, further local subdivisions are often carried out there until the location to be evaluated ultimately lies in a completely regular range.
Entsprechend steigt der rechnerisch Aufwand linear mit der Anzahl der erforderlichen Unterteilungsschritte an. Die Gerade 108 resultiert hingegen aus der Anwendung der hierin offenbarten Lösung. Man erkennt, dass die Berechnungszeit unabhängig von der Anzahl der erforderlichen Unterteilungsschritte n und somit konstant ist sowie ab ca. drei Unterteilungsschritten auch kürzer ist als bei dem Ansatz gemäß Burkhart et al. Der Vorteil wird umso größer, desto näher an einem irregulären Punkt oder einer irregulären Kante ausgewertet wird. Accordingly, the computational effort increases linearly with the number of subdivision steps required. Line 108, however, results from the application of the solution disclosed herein. It can be seen that the calculation time is independent of the number of subdivision steps n and is therefore constant, and is also shorter from approx. Three subdivision steps than in the approach according to Burkhart et al. The closer to an irregular point or edge, the greater the advantage.
Die konstante und spätestens ab drei Unterteilungsschritten auch kürzere The constant and shorter at the latest from three subdivision steps
Berechnungszeit resultiert vor allem daraus, dass für ein gegebenes Ausgangsnetz wesentliche Matrixausdrücke wie die Subdivisionsmatrix und ein Berechnen von deren Eigenstruktur vorab (d.h. vor dem Durchführen von Auswertungen) berechnet und z.B. in einer elektronischen Speichereinheit hinterlegt werden, sowie ferner daraus, dass man nicht n und mit jeder Unterteilungsstufe größer werdende Subdivisionsmatrizen miteinander multiplizieren muss, sondern lediglich die Diagonalmatrix potenziert. Das Berechnen kann computergestützt erfolgen, insbesondere von einer The calculation time primarily results from the fact that for a given output network, essential matrix expressions such as the subdivision matrix and a calculation of its own structure are calculated in advance (i.e. before carrying out evaluations) and e.g. be stored in an electronic storage unit, and furthermore from the fact that one does not have to multiply n and with each subdivision step increasing subdivision matrices, but only potentiates the diagonal matrix. The calculation can be carried out using a computer, in particular one
Computervorrichtung, welche auch die erwähnte elektronische Speichereinheit umfassen kann. Anschließend muss, wie vorstehend erläutert, lediglich eine Diagonalmatrix in Abhängigkeit der Anzahl n von durchzuführenden Unterteilungsschritte potenziert werden, was sich jedoch durch allgemein kurze und vor allem im Wesentlichen unveränderliche Berechnungszeiten auszeichnet. Computer device, which can also include the aforementioned electronic storage unit. Subsequently, as explained above, only a diagonal matrix has to be potentiated depending on the number n of subdivision steps to be carried out, but this is characterized by generally short and, above all, essentially unchangeable calculation times.
Wie gezeigt, kann mittels der bereitgestellten Auswertungsmöglichkeit eine As shown, a
Koordinatenbestimmung und/oder Eigenschaftsbestimmung für beliebige Orte eines Subdivisionsmodells erfolgen, insbesondere auch dann, wenn die Basisfunktionen an einzelnen Kontrollpunkten Materialeigenschaften definieren oder vorgeben. Coordinate determination and / or property determination for any location of a subdivision model take place, in particular also if the basic functions define or specify material properties at individual control points.
Zusätzlich oder alternativ kann die geschilderte Lösung insbesondere im Rahmen von Simulationen eingesetzt werden, z.B. wenn Eigenschaften (insbesondere physikalische Eigenschaften) eines Objekts simuliert werden sollen, das mittels eines volumetrischen Subdivisionsmodells modelliert wurde. Darauf basierend kann die Konstruktion des Objekts geeignet gewählt und/oder angepasst werden. Additionally or alternatively, the described solution can be used in particular in the context of simulations, e.g. when properties (especially physical properties) of an object that has been modeled using a volumetric subdivision model are to be simulated. Based on this, the construction of the object can be selected and / or adapted appropriately.
Ein Beispiel ist eine Simulation auf Basis der Finite Elemente Methode (FEM). Hiermit können in an sich bekannter Weise Kräfte ermittelt werden, die in dem Modell bzw. an den ausgewerteten Orten wirken. Das Verfahren kann demnach allgemein auch einen Schritt des Durchführens einer Simulation auf Basis des Subdivisionsmodells und/oder einer Kräfteermittlung an dem auszuwertenden Ort umfassen, wobei dies insbesondere auf Basis einer FEM erfolgen kann. One example is a simulation based on the finite element method (FEM). Forces which act in the model or at the evaluated locations can be determined hereby in a manner known per se. The method can therefore also generally Step of performing a simulation based on the subdivision model and / or determining forces at the location to be evaluated, which can be done in particular on the basis of an FEM.
In an sich bekannter Weise werden bei Finite Elemente Methoden Verschiebungen von finiten Elementen untersucht, in die ein gegebenes Objekt unterteilt wurde. Aus diesen Verschiebungen werden anschließend mittels einer ebenfalls auf Basis der Unterteilung ermittelten Steifigkeitsmatrix die wirkenden Dehnungen und Spannungen (und folglich auch lokal wirkenden Kräfte) bestimmt. Für ein volumetrisches Subdivisionsmodell kann jede Zelle als ein finites Element verstanden und simuliert werden. In a manner known per se, finite element methods investigate displacements of finite elements into which a given object has been divided. The resulting strains and stresses (and consequently also locally acting forces) are then determined from these displacements using a stiffness matrix likewise determined on the basis of the division. For a volumetric subdivision model, each cell can be understood and simulated as a finite element.
Eine Verschiebungsfunktion u für einzelne Kontrollpunkte i kann daher auf Basis der in den jeweiligen Kontrollpunkten definierten Basisfunktionen N, gemäß folgendem A displacement function u for individual control points i can therefore be based on the basic functions N defined in the respective control points, in accordance with the following
Zusammenhang definiert werden:
Figure imgf000059_0001
Context are defined:
Figure imgf000059_0001
Auch in diesem Fall gilt, dass die Basisfunktionen N, auf Basis der vorstehenden Ansätze an jedem beliebigen Ort und mit einer im Wesentlichen konstanten Berechnungszeit ausgewertet werden können und die Simulation und Kräfteermittlung somit besonders recheneffizient erfolgen kann. In this case, too, the basic functions N can be evaluated at any location and with a substantially constant calculation time on the basis of the above approaches, and the simulation and force determination can thus be carried out in a particularly computationally efficient manner.

Claims

Patentansprüche Claims
1. Verfahren zum computergestützten Auswerten eines volumetrischen 1. Method for computer-assisted evaluation of a volumetric
Subdivisionsmodells, das durch ein Kontrollpunktnetz (10) aus mittels Kanten (14) verbundener Kontrollpunkte (12) beschrieben wird, Subdivision model, which is described by a control point network (10) consisting of control points (12) connected by edges (14),
wobei das Verfahren umfasst: the method comprising:
Erhalten von Informationen hinsichtlich eines in dem Volumen des  Obtaining information regarding one in the volume of the
Subdivisionsmodells liegenden auszuwertenden Ortes;  Subdivision model lying to be evaluated;
Ermitteln, ob der auszuwertende Ort in einem Volumenelement (52) liegt, das eine irreguläre Kante (15) aufweist, welche eine Kante (15) ist, die einen  Determine whether the location to be evaluated lies in a volume element (52) which has an irregular edge (15), which is an edge (15), the one
Kontrollpunkt (12) mit einer von sechs verschiedenen Valenz verbindet, und wenn dies der Fall ist:  Control point (12) connects to one of six different valences, and if so:
Bestimmen einer Ausrichtung der irregulären Kante (15);  Determining an alignment of the irregular edge (15);
Auswerten des volumetrischen Subdivisionsmodells an dem auszuwertenden Ort basierend auf der ermittelten Ausrichtung.  Evaluation of the volumetric subdivision model at the location to be evaluated based on the determined orientation.
2. Verfahren nach Anspruch 1 , 2. The method according to claim 1,
ferner umfassend: further comprising:
Definieren eines Koordinatensystems (57) nach Maßgabe der Ausrichtung der irregulären Kante (15), insbesondere derart, dass sich die irreguläre Kante (15) entlang einer Achse (u, v, w) des Koordinatensystems (57) erstreckt.  Defining a coordinate system (57) in accordance with the orientation of the irregular edge (15), in particular such that the irregular edge (15) extends along an axis (u, v, w) of the coordinate system (57).
3. Verfahren nach Anspruch 1 oder 2, 3. The method according to claim 1 or 2,
ferner umfassend: further comprising:
Identifizieren einer Zelle (52) des Subdivisionsmodells, welche den  Identify a cell (52) of the subdivision model that the
auszuwertenden Ort enthält; und  contains the location to be evaluated; and
Ermitteln der Anzahl von Unterteilungen dieser Zelle (52), die erforderlich sind, damit sich der auszuwertende Ort in einer auswertbaren Zelle (52) befindet, welche aus dem Unterteilen der ursprünglichen Zelle (52) hervorgeht.  Determine the number of subdivisions of this cell (52) that are required so that the location to be evaluated is located in an evaluable cell (52) that results from the subdivision of the original cell (52).
4. Verfahren nach Anspruch 3, 4. The method according to claim 3,
wobei sich die auswertbare Zelle (52) dadurch auszeichnet, dass diese keinen the evaluable cell (52) being distinguished by the fact that it has none
Kontrollpunkt mit einer von sechs verschiedenen Valenz umfasst. Control point with one of six different valences included.
5. Verfahren nach einem der vorangehenden Ansprüche, 5. The method according to any one of the preceding claims,
wobei der auszuwertende Ort unter Verwenden von Subdivisionsbasisfunktionen (f) ausgewertet wird. the location to be evaluated is evaluated using subdivision basis functions (f).
6. Verfahren nach einem der vorangehenden Ansprüche, 6. The method according to any one of the preceding claims,
wobei dann, wenn das Volumenelement keine in wenigstens einer Dimension reguläre Struktur aufweist, das Volumenelement mittels einer Unterteilungsmatrix unterteilt wird und die Einträge der Unterteilungsmatrix abhängig von wenigstens einer strukturellen Eigenschaft des Kontrollpunktnetzes (10) sind. wherein if the volume element does not have a regular structure in at least one dimension, the volume element is subdivided by means of a subdivision matrix and the entries in the subdivision matrix are dependent on at least one structural property of the control point network (10).
7. Verfahren nach Anspruch 6, 7. The method according to claim 6,
wobei die strukturelle Eigenschaft eine Position eines Kontrollpunktes (12) mit einer von sechs verschiedenen Valenz innerhalb des Kontrollpunktnetzes (10) ist. wherein the structural property is a position of a checkpoint (12) with one of six different valences within the checkpoint network (10).
8. Verfahren nach Anspruch 7, 8. The method according to claim 7,
wobei dann, wenn die Zelle (53) mit dem auszuwertenden Ort von einer einzelnen irregulären Kante (15) begrenzt wird, als der Kontrollpunkt (12) zum Festlegen der strukturellen Eigenschaft sowie der Einträge der Unterteilungsmatrix ein Kontrollpunkt (12) gewählt wird, der ein Endpunkt der irregulären Kante (15) ist. wherein if the cell (53) with the location to be evaluated is bounded by a single irregular edge (15), a control point (12) is selected as the control point (12) for specifying the structural property and the entries of the division matrix The end point of the irregular edge (15) is.
9. Verfahren nach Anspruch 7, 9. The method according to claim 7,
wobei dann, wenn die Zelle (52) mit dem auszuwertenden Ort von einer Mehrzahl von irregulären Kanten (15) begrenzt wird, als der Kontrollpunkt (12) zum Festlegen der strukturellen Eigenschaft sowie der Einträge der Unterteilungsmatrix ein Kontrollpunkt (12) gewählt wird, der mit sämtlichen irregulären Kanten (15) verbunden ist. wherein if the cell (52) with the location to be evaluated is delimited by a plurality of irregular edges (15), a control point (12) is selected as the control point (12) for specifying the structural property and the entries of the division matrix is connected to all irregular edges (15).
10. Verfahren nach Anspruch 9, 10. The method according to claim 9,
wobei dann, wenn kein mit sämtlichen irregulären Kanten (15) verbundener Kontrollpunkt (12) vorliegt, das Kontrollpunktnetz (10) einmal unterteilt wird. if there is no checkpoint (12) connected to all irregular edges (15), the checkpoint network (10) is subdivided once.
1 1. Verfahren nach einem der vorangehenden Ansprüche, wobei das volumetrische Subdivisionsmodell ferner in Abhängigkeit davon ausgewertet wird, ob sich der auszuwertende Ort in einem Grenzbereich des Subdivisionsmodells zur Umgebung befindet. 1 1. The method according to any one of the preceding claims, wherein the volumetric subdivision model is also evaluated as a function of whether the location to be evaluated is in a border area of the subdivision model to the surroundings.
12. Verfahren nach Anspruch 1 1 , 12. The method according to claim 1 1,
wobei dann, wenn sich der auszuwertende Ort in einem Grenzbereich des when the location to be evaluated is in a border area of the
Subdivisionsmodells zur Umgebung befindet, wenigstens eine für das Auswerten verwendete Basisfunktion basierend auf einer scharfe-Kanten-Funktion (c) entlang derjenigen Achse ermittelt wird, entlang derer auch die irreguläre Kante (15) verläuft. Subdivision model to the environment, at least one base function used for the evaluation is determined based on a sharp edge function (c) along the axis along which the irregular edge (15) also runs.
13. Verfahren nach Anspruch 1 1 , 13. The method according to claim 1 1,
wobei eine derartige Auswertung dann erfolgt, wenn ermittelt wird, dass die irreguläre Kante (15) orthogonal zu oder in einer Grenzfläche (32) des Subdivisionsmodells zur Umgebung verläuft. Such an evaluation takes place when it is determined that the irregular edge (15) is orthogonal to or in an interface (32) of the subdivision model to the surroundings.
14. Computerprogrammprodukt, 14. Computer program product,
umfassend Programmanweisungen, um beim Ausfuhren dieser Programmanweisungen auf einer Prozessoreinheit ein Verfahren gemäß einem der vorangehenden Ansprüche auszuführen. comprising program instructions for executing a method according to one of the preceding claims when executing these program instructions on a processor unit.
15. Computervorrichtung, 15. computer device,
umfassend eine Prozessoreinheit und eine Speichereinheit, in dem ein comprising a processor unit and a memory unit in which a
Computerprogrammprodukt gemäß Anspruch 9 zum Ausführen durch die Computer program product according to claim 9 for execution by the
Prozessoreinheit hinterlegt ist. Processor unit is stored.
PCT/EP2019/075750 2018-09-28 2019-09-24 Method, computer program product and computer device for evaluating volumetric subdivision models WO2020064761A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102018216787.7A DE102018216787A1 (en) 2018-09-28 2018-09-28 Method, computer program product and computer device for evaluating volumetric subdivision models
DE102018216787.7 2018-09-28

Publications (1)

Publication Number Publication Date
WO2020064761A1 true WO2020064761A1 (en) 2020-04-02

Family

ID=68084806

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2019/075750 WO2020064761A1 (en) 2018-09-28 2019-09-24 Method, computer program product and computer device for evaluating volumetric subdivision models

Country Status (2)

Country Link
DE (1) DE102018216787A1 (en)
WO (1) WO2020064761A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112528209A (en) * 2020-12-08 2021-03-19 四川蓉信开工程设计有限公司 Method for rapidly calculating volume rate of irregular box based on divide-and-conquer thought
CN113687629A (en) * 2020-05-19 2021-11-23 大族激光科技产业集团股份有限公司 Circular arc straight line fitting method, system, equipment and storage medium for laser CAM processing
CN117455977A (en) * 2023-09-27 2024-01-26 杭州市交通工程集团有限公司 Method and system for calculating stacking volume based on three-dimensional laser scanning

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000004507A1 (en) * 1998-07-15 2000-01-27 Silicon Graphics Incorporated Parametric surface evaluation in eigenspace of subdivision matrix of irregular patch

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000004507A1 (en) * 1998-07-15 2000-01-27 Silicon Graphics Incorporated Parametric surface evaluation in eigenspace of subdivision matrix of irregular patch
US6389154B1 (en) 1998-07-15 2002-05-14 Silicon Graphics, Inc. Exact evaluation of subdivision surfaces generalizing box splines at arbitrary parameter values
DE69915837T2 (en) 1998-07-15 2005-04-14 Silicon Graphics, Inc., Mountain View Parametric area evaluation in the eigenspace of the subdivision matrix of an irregular area

Non-Patent Citations (15)

* Cited by examiner, † Cited by third party
Title
"Arbeit behandelt: Jos Stam: Exact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values", PROCEEDINGS OF THE 25TH ANNUAL CONFERENCE ON COMPUTERGRAPHICS AND INTERACTIVE TECHNIQUES ACM, 1998, pages 395 - 404
A. RIFFNALLER-SCHIEFER ET AL: "Isogeometric shell analysis with NURBS compatible subdivision surfaces", APPLIED MATHEMATICS AND COMPUTATION, vol. 272, 1 January 2016 (2016-01-01), US, pages 139 - 147, XP055646472, ISSN: 0096-3003, DOI: 10.1016/j.amc.2015.06.113 *
A. RIFFNALLER-SCHIEFERU.H. AUGSDÖRFERD.W. FELLNER: "Isogeometric shell analysis with NURBS compatible subdivision surfaces", APPL. MATH. COMPUT., vol. 272, 2016, pages 139 - 147
B. THOMASJR HUGHESJOHN A COTTRELLYURI BAZILEVS: "Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement", COMPUTER METHODS IN APPLIED MECHANICS AND ENGINEERING, vol. 194, no. 39, 2005, pages 4135 - 4195
BURKHART ET AL.: "Subdivision Solids In Computer Graphics Forum", vol. 29, WILEY ONLINE LIBRARY, article "referenziert wird: Daniel Burkhart, Bernd Hamann und Georg Umlauf: Iso-geometric Finite Element Analysis Based on Catmull-Clark", pages: 1575 - 1584
CHRISTIAN ALTENHOFENFELIX SCHUWIRTHANDRE STORKDIETER FELLNER: "Volumetric subdivision for consistent implicit mesh generation", COMPUTERS & GRAPHICS, vol. 69, no. C, 2017, pages 68 - 79, XP085285987, doi:10.1016/j.cag.2017.09.005
D BURKHART ET AL: "Iso-geometric Finite Element Analysis Based on Catmull-Clark Subdivision Solids", EUROGRAPHICS SYMPOSIUM ON GEOMETRY PROCESSING, 1 January 2010 (2010-01-01), XP055646655, Retrieved from the Internet <URL:http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.297.7002&rep=rep1&type=pdf> *
DANIEL BURKHART ET AL: "Finite Element Analysis for Linear Elastic Solids Based on Subdivision Schemes", IRTG 1131 WORKSHOP, 1 January 2011 (2011-01-01), XP055646673, DOI: 10.4230/OASIcs.VLUDS.2010.1 *
DANIEL BURKHARTBERND HAMANNGEORG UMLAUF: "Computer Graphics Forum", vol. 29, 2014, WILEY ONLINE LIBRARY, article "Iso-geometric Finite Element Analysis Based on Catmull-Clark: Subdivision Solids", pages: 1575 - 1584
DANIEL WEBERJOHANNES MUELLER-ROEMERCHRISTIAN ALTENHOFENANDRE STORKDIETER FELLNER: "Deformation simulation using cubic finite elements and efficient p-multigrid methods", COMPUTERS & GRAPHICS, vol. 53, 2015, pages 185 - 195, XP029315333, doi:10.1016/j.cag.2015.06.010
FEHMI CIRAKMICHAEL J SCOTTERIK K ANTONSSON: "Michael Ortiz und Peter Schröder: Integrated modeling, finite-element analysis, and engineering design for thin-shell structures using subdivision", COMPUTER-AIDED DESIGN, vol. 34, no. 2, 2002, pages 137 - 148
KI JOYR MACCRACKEN: "Ebenfalls wird verwiesen auf folgende wissenschaftliche Arbeit: The refinement rules for Catmull-Clark solids", CITESEER, 1999
SCHWEITZER J. E.: "Analysis and Application of Subdivision Surfaces", PHD THESIS, 1996
SVEN HAVEMANN: "Generative Mesh Modeling", DOKTORARBEIT, 2005, pages 102 - 105,122 ff, Retrieved from the Internet <URL:https://publikationsserver.tu-braunschweig.de/receive/dbbs-mods-00000008>
ZORIN D.KRISTJANSSON D.: "Evaluation of piecewise smooth subdivision surfaces", THE VISUAL COMPUTER, vol. 18, no. 5-6, 2002, pages 299 - 315

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113687629A (en) * 2020-05-19 2021-11-23 大族激光科技产业集团股份有限公司 Circular arc straight line fitting method, system, equipment and storage medium for laser CAM processing
CN113687629B (en) * 2020-05-19 2022-09-20 大族激光科技产业集团股份有限公司 Circular arc straight line fitting method, system, equipment and storage medium for laser CAM processing
CN112528209A (en) * 2020-12-08 2021-03-19 四川蓉信开工程设计有限公司 Method for rapidly calculating volume rate of irregular box based on divide-and-conquer thought
CN112528209B (en) * 2020-12-08 2024-04-12 四川蓉信开工程设计有限公司 Irregular box volume rate rapid calculation method based on divide-and-conquer idea
CN117455977A (en) * 2023-09-27 2024-01-26 杭州市交通工程集团有限公司 Method and system for calculating stacking volume based on three-dimensional laser scanning

Also Published As

Publication number Publication date
DE102018216787A1 (en) 2020-04-02

Similar Documents

Publication Publication Date Title
DE3852328T2 (en) Formation of geometric objects through cumulative dislocation steps.
DE68927781T2 (en) Geometric modeling process and device
DE10144932B4 (en) Visualization of workpieces in the simulation of milling processes
DE69027402T2 (en) Method and device for controlling robots and the like for using hierarchically organized &#34;bubble data&#34; which are arranged along a central axis
DE3852596T2 (en) Method for generating a discrete network for simulation using finite differences.
DE602004011749T2 (en) Envelope deformation using subdivided surfaces
DE112012005657T5 (en) Computer program product and method for creating and simulating a model of an object
DE112013001752T5 (en) Method and system for simulating the machining of workpieces by tools
DE69912046T2 (en) Method and device for generating a network
DE112009004371T5 (en) Collision determination device and collision determination program
DE4303071A1 (en) Information processing system for geometric modelling - has basic object shapes selected and combined to generate complex shapes in three=dimensional form
EP3267339A1 (en) Method for creating a meta-model for calculating notch stresses
WO2020064761A1 (en) Method, computer program product and computer device for evaluating volumetric subdivision models
EP3267338A1 (en) Method for calculating notch stresses in a weld seam
DE102022107038A1 (en) CREATING A REFINED CONTROL MESH TO CREATE A SMOOTH SURFACE OF AN OBJECT
WO2006029882A2 (en) Method for searching for a similar construction model
WO2009095034A1 (en) Method and system for qualifying cad objects
WO2012163657A1 (en) Method for hypersurface construction in n dimensions
EP3809304A1 (en) Computer-implemented method for determining a parametric substitute model of a spectacle frame element, device and systems using such a method
DE112014002120T5 (en) System and method for performing undo and redo operations during the machining simulation
EP1820160A1 (en) Method for producing technical drawings from 3d models using at least two colliding 3d bodies
DE112004000199T5 (en) Method for estimating the relationship between the element distortion and the analysis method
DE102018217114A1 (en) Method and arrangement for determining the memory requirement in order to carry out simulations based on FEM node networks using a graphics processor unit
DE10023377C2 (en) Method for increasing the performance of a computer device in finite element simulations and such a computer device
WO2023279125A1 (en) Method for providing simulation cells for continuum mechanical simulations of an object

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19779431

Country of ref document: EP

Kind code of ref document: A1