Mesh patterning method and system

The method addresses the challenge of generating mesh representations in CAD systems by applying non-linear transformations while minimizing facet distortions through topology modification, resulting in improved manufacturability and efficiency.

WO2025155279A1PCT designated stage expired Publication Date: 2025-07-24SIEMENS INDUSTRY SOFTWARE INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/US2024/011535
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-15
Publication Date
2025-07-24

AI Technical Summary

Technical Problem

Existing CAD systems face challenges in efficiently generating mesh representations of patterned objects, particularly in additive manufacturing, leading to unintended facet distortions during non-linear transformations.

Method used

A method involving accessing a facetted model, connecting instances, applying a non-linear transformation, determining facet distortions, and modifying the topology to ensure the final model resembles the intended design without unintended distortions, using techniques such as edge splitting, vertex addition, and connectivity modification.

Benefits of technology

The method generates error-free mesh representations that improve manufacturability and efficiency by minimizing facet distortions, ensuring the final product meets design intent.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2024011535_24072025_PF_FP_ABST
    Figure US2024011535_24072025_PF_FP_ABST
Patent Text Reader

Abstract

A computer-implemented method in a computer aided design (CAD) system is provided. The method includes accessing a first facetted model representing a shape element, connecting instances of the facetted model to obtain a second facetted model, applying a nonlinear transformation to the second facetted model to obtain a third facetted model, and determining a distortion of a pair of facets between the second facetted model and the third facetted model. A topology of the third facetted model is modified based on the distortion
Need to check novelty before this filing date? Find Prior Art

Description

MESH PATTERNING METHOD AND SYSTEMTECHNICAL FIELD

[0001] The present disclosure relates to methods and systems for computer aided design (CAD). More specifically, the methods disclosed herein allow a CAD system to efficiently generate and modify a facetted representation of a patterned object for manufacture.BACKGROUND

[0002] Computer-Aided Design (CAD) systems are used in many fields of engineering, manufacturing, and design to create and manipulate solid modelling representations of objects. Boundary representation (B-rep) technology provides an efficient and adaptable representation of parts by combining classic geometry: analytic surfaces and curves, non-uniform rational basis spline (NURBS) and procedural surfaces and curves; with topology that captures the connectivity and interaction between geometric elements. Additive manufacturing is the process of creating three- dimensional objects using a three-dimensional printer based on CAD or other digital three-dimensional models. Objects may be scanned as a precursor to creating a CAD model, or may be designed from scratch in a CAD system, and stored in either STL (stereolithography file format) or AMF (additive manufacturing file format) files for future printing.

[0003] A mesh is a subdivision of a continuous geometric space into discrete geometric and topological cells referred to as facets. Each facet is a polygon formed from connected vertices and edges. Meshes may be used to represent complex geometric shapes in a data efficient manner. In CAD systems, the surface of an object may be converted into a mesh in order to manufacture the object in an additive manufacturing system. Different CAD systems use different techniques and approaches for generating mesh representations of surfaces.

[0004] Patterned objects, which are objects formed from a repeated core geometry, are commonplace in everyday life and often feature in engineering designs and components. For example, rectangular grid shapes are frequently used in the design of ventilation and heat-exchange systems, grills, and cooling systems found in engines. Axially symmetric shapes arise in many machine components such as gears, screws, cogs, and wheels.SUMMARY

[0005] The scope of the present invention is defined solely by the appended claims and is not affected to any degree by the statements within this summary.

[0006] There is a need for finding and developing techniques and methods for efficiently generating patterned objects, including representations of such objects as meshes, in CAD systems.

[0007] The present embodiments may obviate one or more of the drawbacks or limitations in the related art. For example, a method for generating a mesh representation of a component that is usable in downstream modelling operations is provided.

[0008] The foregoing and other objects are achieved by the features of the independent claims. Further implementation forms are apparent from the dependent claims, the description, and the figures.

[0009] According to a first aspect, a computer-implemented method for generating a model of an object for manufacture is provided. The method includes: a) accessing a first facetted model representing a shape element the first facetted model including a plurality of interconnected facets; b) connecting one or more instances of the first facetted model to obtain a second facetted model; c) applying a non-linear transformation to the second facetted model to obtain a third facetted model; d) determining, for each pair of adjacent facets, a distortion of the pair of facets between the second facetted model and the third facetted model; and e) modifying the topology of the third facetted model based on the determination.

[0010] The method according to the first aspect provides that the output facetted model resembles the intended design and does not contain unintended facet distortions from applying a non-linear transformation.

[0011] According to a second aspect, a method of manufacturing a physical component is provided. The method includes: a) accessing a first facetted model of a shape element in a computer aided design (CAD) system, the first facetted model including a plurality of interconnected facets; b) connecting one or more instances of the first facetted model to obtain a second facetted model; c) applying a non-linear transformation to the second facetted model to obtain a third facetted model; d) determining, for each pair of adjacent facets, a relative distortion of the pair of facets between the second facetted model and the third facetted model; e) modifying the facet topology of the third facetted model based on the determination to obtain a modified model representing the physicalcomponent; and f) manufacturing the physical component based on the modified model.

[0012] In a first implementation form of the method according to the first aspect, the method further includes: comparing the distortion of the pair of adjacent facets to a threshold value; and storing the pair of adjacent facets when the distortion is above a threshold value.

[0013] In a second implementation form, modifying the facet topologies based on the determination includes, for each stored pair, selecting a modification from a list of modifications and applying the modification in a topological neighborhood of the stored pair, to obtain a modified topological neighborhood.

[0014] In a third implementation of the method according to the first aspect, the method further includes, for each stored pair, iteratively repeating acts d) and e) of the method for each pair of adjacent facets in the modified topological neighborhood of the stored pair.

[0015] In a fourth implementation form, the list of modifications includes: splitting one or more edges of a facet, adding vertices to facets, or modifying connections of vertices and edges.

[0016] In a fifth implementation form, the list is ordered based on an expected effectiveness of the modification.

[0017] In a sixth implementation form, the non-linear transformation includes an axial transformation.

[0018] In a seventh implementation form, the axial transform is specified by an axis, a reference location, a number of repetitions around the axis, an axial length along the axis, and a radial length measuring away from the axis.

[0019] In an eighth implementation form, the distortion is based on dihedral angles between the pair of adjacent facets.

[0020] In a ninth implementation form, determining the distortion includes, for each pair of adjacent facets: determining a first value including a dihedral angle between each facet of the pair of adjacent facets in the second facetted model; determining a second value including a dihedral angle between each facet of the pair of adjacent facets in the third facetted model; and determining a third value including a relative dihedral angle based on the first value and the second value.

[0021] These and other aspects of the invention will be apparent from the embodiments described below.BRIEF DESCRIPTION OF THE DRAWINGS

[0022] For a more complete understanding of the present disclosure, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:

[0023] Figures 1 to 6 show perspective illustrations of examples of facetted models in a CAD system;

[0024] Figure 7 is a block diagram of method for generating a CAD model according to an example;

[0025] Figure 8 shows a perspective illustration of a facetted model in a CAD system, according to an example; and

[0026] Figure 9 illustrates an example of a data processing system in which embodiments of the present disclosure may be implemented, for example, a CAD system configured to perform processes as described herein.DETAILED DESCRIPTION

[0027] Example embodiments are described below in sufficient detail to enable those of ordinary skill in the art to embody and implement the systems and processes described herein. Embodiments may be provided in many alternate forms and should not be construed as limited to the examples set forth herein.

[0028] Accordingly, while embodiments may be modified in various ways and take on various alternative forms, specific embodiments thereof are shown in the drawings and described in detail below as examples. There is no intent to limit to the particular forms disclosed. On the contrary, all modifications, equivalents, and alternatives falling within the scope of the appended claims should be included. Elements of the example embodiments are consistently denoted by the same reference numerals throughout the drawings and detailed description where appropriate.

[0029] The terminology used herein to describe embodiments is not intended to limit the scope. The articles “a,” “an,” and “the” are singular in that they have a single referent; however, the use of the singular form in the present document should not preclude the presence of more than one referent. In other words, elements referred to in the singular may number one or more, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” and / or “including,” when used herein, specify the presence of stated features, items, steps, operations, elements, and / or components, but do not preclude the presence or additionof one or more other features, items, steps, operations, elements, components, and / or groups thereof.

[0030] Unless otherwise defined, all terms including technical and scientific terms used herein are to he interpreted as is customary in the art. It will be further understood that terms in common usage should also be interpreted as is customary in the relevant art and not in an idealized or overly formal sense unless expressly so defined herein.

[0031] Methods and systems described herein are implemented in or in conjunction with a Computer-Aided Design (CAD) system. CAD systems enable the creation, modification, and analysis of a design of an object for manufacture. CAD software is used across many industries, including architecture, engineering, manufacturing, and product design. Modern CAD systems enable the creation of highly detailed two and three dimensional models and provide a vast array of modelling and design tools to enable designers to efficiently modify models without having to reconfigure an entire design by hand. CAD systems may integrate with other software tools, such as simulation software, product lifecycle management (PLM) systems, and computer-aided engineering (CAE) tools.

[0032] In examples of CAD systems described herein, objects are modelled as bodies including sets of connected topology. The structure, shape, and properties of a body are determined by its topology and geometry. Different types of topological entities may be defined in a CAD system and may include faces, edges, and vertices. Points are geometric entities that are principally attached to vertices. Curves are geometric entities that are principally attached to edges. Surfaces are geometric entities that are principally attached to faces. A mesh comprises a topologically connected collection of polygonal facets. Each facet is defined by its vertices and edges. Facets are often, though not always, triangular in form. In the context of the present disclosure, the terms mesh representation and facetted representation are used interchangeably to refer to a mesh representing an object.

[0033] Figure 1 is a perspective illustration of a mesh 100 as represented in a CAD system, according to an example. The mesh 100 is a facetted representation of a hollow three-dimensional rectangular shape that a user wishes to form a patterned object from. The mesh 100 includes a plurality of connected facets, such as the facets 101, 102. Each facet of the plurality of connected facets is defined by edges and vertices. Every facet meets with typically one, but sometimes no, other facet along each of its edges.

[0034] Figure 2 shows a perspective illustration of a mesh 200 as represented in aCAD system, according to an example. The mesh 200 is a mesh representation of a rectilinear patterned object formed from the mesh 100, by generating three copies of the mesh 100, translating the copies into appropriate positions in space, and combining the positions. An axially patterned object may be formed from the rectilinear patterned object represented by the mesh 200 by applying a non-linear transformation to fit the vertices around an axis. Each vertex is transformed as follows: the first component of the position of the vertex is transformed to wrap around the axis; the second component is transformed parallel to the axis; and the third component is transformed into a radial distance away from the axis. In general, an axial transformation may be defined by an axis, a reference location away from the axis, an integer number of repetitions around the axis, an axial length along the axis, and a radial length measuring away from the axis. For example, if the axis of the transformation is the Z axis, the reference location is a point at a distance R along the X axis, the number of repetitions around the axis is an integer N, the length along the axis is a, and the radial length away from the axis is r, the transformation, for each vector u = (u, v, w), may be given by the formula:( (2nu\ 2mi\ \ u -» ^(7? + rw) cos I — J , (R + rw) sin I >avJ

[0035] Figure 3 shows a perspective illustration of a mesh 300 as represented in a CAD system, according to an example. The mesh 300 shows a result of applying an axial transformation to the mesh 200. When the axial transformation is applied to the mesh 200, the facets of the mesh 100 are such that the resulting facets of the mesh 300 are not unintentionally deformed. This may be understood in more precise terms as follows: each facet has an associated facet normal vector. This is a vector pointing in a direction at 90 degrees to a plane containing the facet. The angle between pairs of adjacent facets is referred to as a dihedral angle. The difference between the dihedral angles of adjacent facets before and after the axial transformation is representative of the distortion of facets caused by a transformation. Pairs of facets where this difference is large may indicate that there has been some unintended facet distortion.

[0036] Figure 4 is a perspective illustration of a mesh 400, according to an example. The mesh 400 is a mesh representation of a hollow three-dimensional rectangular shape similar to the mesh 100; however, the facet configuration for the mesh 400 is different from the mesh 100. For example, the mesh 400 includes facets such as facet 401, whichextends lengthwise across the rectangular core geometry represented by the mesh 400. Figure 5 shows a perspective illustration of a mesh 500, according to an example. The mesh 500 is formed from three copies of the mesh 400 and includes facets 501, 502, 503, which are copies of the facet 401 .

[0037] Figure 6 shows a perspective illustration of a mesh 600, according to an example. The mesh 600 shows the result of applying an axial transformation to the mesh 500. In contrast to the examples shown in Figures 1 to 3, applying the same axial transformation to the mesh 500 results in unwanted facet distortion. As the axial transformation is applied to facets 501, 502, 503, the transformation causes the facet normal vector to reverse direction causing intersection of the facets with other facets in the mesh. The reversal of the direction of the facet normal vectors results in a large discrepancy between the dihedral angles with neighboring facets before and after the transformation.

[0038] Figure 7 is a block diagram of a method 700 for modifying a mesh representation of a model of an object for manufacture, according to an example. The method 700 may be used in conjunction with the examples and other methods and systems described herein. The method 700 may be used to generate mesh representations of patterned objects where the patterning step involves a non-linear transformation of mesh facets such as an axial transformation. The method proceeds by measuring distortion caused by the non-linear transformation. Modifications are made to the mesh topology in regions where the distorting effect of the transformation is above a threshold. The distortion is re-measured for the modified mesh, and if necessary, further modifications are made to the mesh until the distortion is below the threshold. The modifications provide that the final output mesh resembles the design intended by the user and does not contain unintended facet distortions introduced by the non-linear transformation, as seen in the mesh 600 in Figure 6. The method does not require complete re-meshing and generates an error-free mesh representation, resulting in improved manufacturability and efficiency.

[0039] At block 710, the method 700 includes accessing a first facetted model including a plurality of interconnected facets. In examples, the first facetted model represents a core geometry, that a user wishes to pattern to form a component for manufacture in, for example, an additive manufacturing system.

[0040] At block 720, the method 700 includes connecting one or more instances of the first facetted model to obtain a second facetted model. In examples, a user may requesta pattern, and the CAD system may automatically generate the necessary number of instances of the core geometry represented by the first facetted model to form the pattern. The generated instances may be moved into positions using linear transformations to form an initial rectilinear arrangement. The second facetted model may be formed by matching edges and vertices at interfaces where the instances meet.

[0041] At block 730, a non-linear transformation is applied to obtain a third facetted model. The third facetted model includes a facetted representation of an object for manufacture. The non-linear transformation may be an axial transformation, similar to the axial transformations previously described. In another example, the non-linear transformation may be a transformation that transforms the vertices of a mesh such that the resulting mesh conforms to a shape such as a sphere, cylinder, or arbitrary two- dimensional surface.

[0042] At block 740, the method 700 includes determining, for each pair of adjacent facets, a distortion of the pair of facets between the second facetted model and the third facetted model. For example, a relative dihedral angle representing the distortion may be determined from dihedral angles between facet normal vectors of adjacent facets in the second facetted model and the third facetted model, as described in relation to Figures 1 to 6. In other examples, alternative measures of distortion may be used. In examples, determining the distortion may further include comparing the distortion of the pair of adjacent facets to a threshold value. Adjacent pairs of facets where the distortion exceeds the threshold may be stored, for example, in a data storage. The stored pairs are subsequently used to determine regions where modifications should be applied to the third facetted model.

[0043] At block 750, the method 700 includes modifying the topology of the third facetted model based on the determination. For each stored pair, a modification type is selected from a list of potential modifications to the mesh topology. The list of potential modifications may be ordered based on the expected effectiveness of the modification. Examples of such modifications include: splitting one or more edges of a facet; adding vertices to facets; modifying the connectivity data to connect different edges and vertices; simultaneously splitting multiple edges of facets; and changing the connectivity of pairs of coplanar facets so that opposite vertices connect with each other.

[0044] After a modification has been applied, the distortion between pairs of adjacent facets in the topological of neighborhood of the original pair may be recomputed andcompared to the threshold. A modification may affect how facets in the vicinity of the facets to which the modification has been applied distort under the non-linear transformation. For example, facets that were previously well behaved may distort in undesirable ways after the modification has been applied. Further, the modification may not be sufficient to mitigate the distortion caused by the non-linear transformation on the original pair. The method may further include iteratively applying modifications and recomputing the distortion such that the distortion of all facet pairs is below the threshold value.

[0045] According to examples, the method 700 may be used in conjunction with a manufacturing process. For example, the method 700 may further include generating instructions for a three-dimensional printing device to manufacture the object based on the third facetted model, after the modifications to the facet topology are applied.

[0046] Figure 8 shows a perspective illustration of a mesh 800, according to an example. The mesh 800 shows an example of an application of the method 700 to the mesh 400 in Figure 4. At block 710, the method accesses mesh data for mesh 400 (e.g., the first facetted model). At block 720, three instances of the mesh 400 are connected to form a second facetted model (e.g., mesh 500). At block 730, the axial transformation is applied to the second facetted model to obtain mesh 600. At block 740, the method 700 determines a distortion for each pair of adjacent facets in the second facetted model (e.g., mesh 500) and the mesh 600, for example, by computing a difference of dihedral angles between adjacent facets. At block 750, modifications are made to the facet topology based on the determination. For example, for facets where the distortion is large (e.g., facets 501, 502, 503), the method applies modifications in the topological neighborhood of the facets. In mesh 800, new vertices have been added in regions 801, 802, 803. The resulting facets of the modified mesh are well-behaved under axial transformation.

[0047] Figure 9 illustrates an example of a data processing system in which an embodiment of the present disclosure may be implemented (e.g., a CAD application configured to perform the methods of the embodiments as described herein). The data processing system 900 includes a processor 910 connected to a local system bus 920. The local system bus connects the processor to a main memory 930 and graphics display adaptor 940, which may be connected to a display 950. The data processing system may communicate with other systems via a wireless user interface adapter connected to the local system bus 920, or via a wired network, for example, to a localarea network. Additional memory 960 may also be connected via the local system bus 920.

[0048] A suitable adaptor, such as wireless user interface adapter 970, for other peripheral devices, such as a keyboard 980 and mouse 990, or other pointing device, allows the user to provide input to the data processing system. Other peripheral devices may include one or more I / O controllers such as USB controllers, Bluetooth controllers, and / or dedicated audio controllers (e.g., connected to speakers and / or microphones). Various peripherals may be connected to the USB controller (e.g., via various USB ports) including input devices (e.g., keyboard, mouse, touch screen, trackball, camera, microphone, scanners), output devices (e.g., printers, speakers), or any other type of device that is operative to provide inputs or receive outputs from the data processing system.

[0049] Further, it should be appreciated that many devices referred to as input devices or output devices may both provide inputs and receive outputs of communications with the data processing system. Further, it should be appreciated that other peripheral hardware connected to the I / O controllers may include any type of device, machine, or component that is configured to communicate with a data processing system.

[0050] An operating system included in the data processing system enables an output from the system to be displayed to the user on the display and the user to interact with the system. Examples of operating systems that may be used in a data processing system may include Microsoft WindowsTM, LinuxTM, UNIXTM, iOSTM, and AndroidTM operating systems.

[0051] In addition, it should be appreciated that data processing system 900 may be implemented as in a networked environment, distributed system environment, virtual machines in a virtual machine architecture, and / or cloud environment. For example, the processor and associated components may correspond to a virtual machine executing in a virtual machine environment of one or more servers. Examples of virtual machine architectures include VMware ESCi, Microsoft Hyper-V, Xen, and KVM.

[0052] Those of ordinary skill in the art will appreciate that the hardware depicted for the data processing system 900 may vary for particular implementations. For example, the data processing system 900 in this example may correspond to a computer, workstation, and / or a server. However, it should be appreciated that alternative embodiments of a data processing system may be configured with corresponding or alternative components such as in the form of a mobile phone, tablet, controller board,or any other system that is operative to process data and carry out functionality and features described herein associated with the operation of a data processing system, computer, processor, and / or a controller discussed herein. The depicted example is provided for the purpose of explanation only and is not meant to imply architectural limitations with respect to the present disclosure.

[0053] The data processing system 900 may be connected to the network (not a part of data processing system 900), which may be any public or private data processing system network or combination of networks, as known to those of skill in the art, including the Internet. The data processing system 900 may communicate over the network with one or more other data processing systems such as a server (also not part of the data processing system 900). However, an alternative data processing system may correspond to a plurality of data processing systems implemented as part of a distributed system in which processors associated with a number of data processing systems may be in communication via one or more network connections and may collectively perform tasks described as being performed by a single data processing system. Thus, it is to be understood that when referring to a data processing system, such a system may be implemented across several data processing systems organized in a distributed system in communication with each other via a network.

[0054] The data processing system 900 is configured to carry out the methods in accordance with the embodiments described herein. For example, the keyboard 980 and mouse 990 may function as a user input device for receiving information from the user, the processor 910 may be adapted to carry out the steps of the method, and the display 950 is configured to display a particular view to the user. A computer product including instructions that, when run on a computer, such as the data processing system 900, may be provided to cause the computer to execute the steps of the methods of the embodiments outlined above.

[0055] The present disclosure is described with reference to flow charts and / or block diagrams of the method, devices, and systems according to examples of the present disclosure. Although the flow diagrams described above show a specific order of execution, the order of execution may differ from that which is depicted. Blocks described in relation to one flow chart may be combined with those of another flow chart. In some examples, some blocks of the flow diagrams may not be necessary, and / or additional blocks may be added.

[0056] The elements and features recited in the appended claims may be combined indifferent ways to produce new claims that likewise fall within the scope of the present invention. Thus, whereas the dependent claims appended below depend from only a single independent or dependent claim, it is to be understood that these dependent claims may, alternatively, be made to depend in the alternative from any preceding or following claim, whether independent or dependent. Such new combinations are to be understood as forming a part of the present specification.

[0057] The present inventions may be embodied in other specific apparatus and / or methods. The described embodiments are to be considered in all respects as illustrative and not restrictive. For example, the scope of the invention is indicated by the appended claims rather than by the description and figures herein. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.

Claims

CLAIMS1 . A method in a computer aided design (CAD) system for generating a model of an object for manufacture, the method being computer-implemented and comprising: a) accessing a first facetted model representing a shape element, the first facetted model comprising a plurality of interconnected facets; b) connecting one or more instances of the first facetted model, such that a second facetted model is obtained; c) applying a non-linear transformation to the second facetted model, such that a third facetted model is obtained; d) determining, for each pair of adjacent facets of the plurality of interconnected facets, a distortion of the respective pair of adjacent facets between the second facetted model and the third facetted model; and e) modifying a topology of the third facetted model based on the determining.

2. The method of claim 1, wherein determining the distortion comprises: comparing the distortion of the respective pair of adjacent facets to a threshold value; and storing the respective pair of adjacent facets when the distortion is above a threshold value.

3. The method of claim 2, wherein, for each stored pair of adjacent facets, modifying the topology based on the determining comprises: selecting a modification from a list of modifications; applying the modification in a topological neighborhood of the respective stored pair, such that a modified topological neighborhood is obtained.

4. The method of claim 3, further comprising, for each stored pair of adjacent facets, iteratively repeating the determining and the modifying for each pair of adjacent facets in the modified topological neighborhood of the respective stored pair.

5. The method of claim 3, wherein the list of modifications comprises: splitting one or more edges of a facet, adding vertices to facets, or modifying connections of vertices and edges.

6. The method of claim 3, wherein the list of modifications is ordered based on an expected effectiveness of the modification.

7. The method of claim 1, wherein the non-linear transformation comprises an axial transformation.

8. The method of claim 7, wherein the axial transformation is specified by an axis, a reference location, a number of repetitions around the axis, an axial length along the axis, and a radial length measuring away from the axis.

9. The method of claim 1, wherein the distortion is based on dihedral angles between the respective pair of adjacent facets.

10. The method of claim 9, wherein, for each pair of adjacent facets of the plurality of interconnected facets, determining the distortion comprises: determining a first value comprising a dihedral angle between each facet of the respective pair of adjacent facets in the second facetted model; determining a second value comprising a dihedral angle between each facet of the respective pair of adjacent facets in the third facetted model; and determining a third value comprising a relative dihedral angle based on the first value and the second value.

11. A method of manufacturing a physical component, the method comprising: a) accessing a first facetted model of a shape element in a computer aided design (CAD) system, the first facetted model comprising a plurality of interconnected facets; b) connecting one or more instances of the first facetted model, such that a second facetted model is obtained;c) applying a non-linear transformation to the second facetted model, such that a third facetted model is obtained; d) determining, for each pair of adjacent facets of the plurality of interconnected facets, a relative distortion of the respective pair of adjacent facets between the second facetted model and the third facetted model; e) modifying a facet topology of the third facetted model based on the determining, such that a modified model representing the physical component is obtained; and f) manufacturing the physical component based on the modified model.

12. The method of claim 11, wherein manufacturing the physical component comprises: generating instructions for a three-dimensional printing device to manufacture the component based on the modified model; and communicating the instructions to the three-dimensional printing device.

13. A computer-readable storage medium comprising instructions which, when executed by a processor, cause the processor to implement the steps of the method of claim 1.