Patterning method for computer aided design

The method addresses the computational challenges of generating complex patterned objects in CAD systems by modifying the model of a shape element to enable seamless connection and efficient patterning within CAD systems.

WO2025136414A1PCT designated stage expired Publication Date: 2025-06-26SIEMENS INDUSTRY SOFTWARE INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/US2023/085761
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-22
Publication Date
2025-06-26

AI Technical Summary

Technical Problem

Existing CAD systems face challenges in efficiently generating complex patterned objects with hundreds, thousands, or tens of thousands of instances of a core geometry, as the process of copying and connecting each instance is computationally intensive.

Method used

A computer-implemented method in a CAD system that modifies a model of a shape element by generating an arrangement of instances, identifying necessary modifications for seamless connection, and implementing these modifications to create a modified model that can be efficiently patterned into larger designs.

Benefits of technology

The method enables the efficient patterning of shape elements into larger, seamless patterns, reducing computational intensity and improving the scalability of CAD systems for complex patterned objects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2023085761_26062025_PF_FP_ABST
    Figure US2023085761_26062025_PF_FP_ABST
Patent Text Reader

Abstract

A method for modifying a model of a shape element in a computer-aided design (CAD) system. The method comprises accessing the model in the CAD system and generating an arrangement comprising a plurality of instances of the model. A set of modifications to the model are identified to enable the plurality of instances to connect seamlessly. The modifications are implemented on the model to obtain a modified model which can be used to form a patterned CAD object.
Need to check novelty before this filing date? Find Prior Art

Description

PATTERNING METHOD FOR COMPUTER AIDED DESIGNTECHNICAL 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 a 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, (e.g., in additive manufacturing). Boundary representation (B-rep) technology provides an efficient and adaptable representation of parts by combining meshes and classic geometry: analytic surfaces and curves, non-uniform rational basis spline (NURBS) and procedural surfaces and curves; with topology, which 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] Patterned objects with repeated features are commonplace in everyday life and may feature in engineering designs and components. For example, rectangular grid arrangements are frequently used in the design of ventilation and heat-exchange systems, machine components, grills, and cooling systems in engines, and circular and linear arrangements are found in fixings and mountings.

[0004] Modelling patterned objects enable engineers to carry out design and testing on products. A designer may use a CAD system to represent a pattern. A simple patterned object may be generated from a core geometry. The core geometry may be replicated to create multiple instances of the same feature. The instances may be moved into positions to create the desired pattern. Operations are then be performed to join the instances together to ensure that the different instances connect seamlessly with their neighboring instances.

[0005] The emergence of additive manufacturing has made the manufacturing of products with complex geometry, including larger patterned objects, technically feasible. However modelling such objects in a CAD system is challenging. For an object comprising hundreds,thousands or tens of thousands of instances of a core geometry, copying the geometry and joining each individual instance with its neighboring instances is computationally intensive. There is therefore a need to find a scalable method for efficiently generating complex patterned objects in CAD systems.SUMMARY

[0006] It is an object of the disclosure to provide a scalable method in a CAD system for patterning an object for manufacture.

[0007] 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.

[0008] According to a first aspect, a computer-implemented method for modifying a model of a shape element in a computer-aided design (CAD) system is provided. The method comprises: accessing the model in the CAD system; generating an arrangement comprising a plurality of instances of the model; identifying, from the arrangement, a set of modifications to the model to enable the plurality of instances to connect seamlessly; and implementing each of the modifications in the set of modifications to obtain a modified model.

[0009] The method according to the first aspect obtains a modified model of a shape element that enables the shape element to be patterned efficiently into much larger patterns. The modifications to the original model ensure that the modified model connects seamlessly with copies of itself.

[0010] In a first implementation form, the arrangement is generated on the basis of a request to generate a pattern of the shape element.

[0011] In a second implementation form, the generating of the arrangement on the basis of the request comprises identifying a minimal pattern from the pattern and generating the minimal pattern.

[0012] In a third implementation form, the pattern is a Cartesian pattern in one, two, or three dimensions.

[0013] In a fourth implementation form, the minimal pattern comprises: 3 x 1 x 1 connected instances of the model, when the pattern is one-dimensional; 3x 3 x 1 connected instances of the model, when the pattern is two-dimensional; or 3 x 3 x 3 connected instances of the model, when the pattern is three dimensional.

[0014] In a fifth implementation form, the method according to the first aspect further comprises generating the pattern from a plurality of instances of the modified model.

[0015] In a sixth implementation form, each of the modifications in the set of modifications comprises a modelling operation.

[0016] In a seventh implementation form, the modelling operation comprises a Boolean operation, a vertex imprinting operation, or an edge imprinting operation.

[0017] In an eighth implementation form, the model is a solid body model.

[0018] In a ninth implementation form, the method according to the first aspect further comprises identifying one or more internal partition faces in the arrangement and removing the identified internal partition faces.

[0019] In a tenth implementation form, the method according to the first aspect further comprises outputting connectivity data for the modified model to enable a plurality of instances of the modified model to connect seamlessly.

[0020] In an eleventh implementation form, the shape element is a mechanical component, an electrical component, or a thermal component in a product.

[0021] In a twelfth implementation form, a method of manufacturing a component comprising a pattern of a shape element is provided. The method comprises: accessing a model of the shape element in the CAD system; applying the method according to the first aspect to obtain a modified model of the shape element; generating the pattern from a plurality of instances of the modified model; and manufacturing the component based on the generated pattern.

[0022] These and other aspects of the disclosure are apparent from the embodiment(s) described below.BRIEF DESCRIPTION OF THE DRAWINGS

[0023] 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:

[0024] Figure 1 shows a perspective illustration of a computer aided design model, according to an example;

[0025] Figure 2 is a block diagram of method for modifying a CAD model according to an example;

[0026] Figures 3 A shows a cross sectional view of an arrangement of models, according to an example;

[0027] Figure 3B shows a perspective illustration of a CAD model, according to an example;

[0028] Figure 3C shows a perspective illustration of a CAD model, according to an example;

[0029] Figure 4A shows a perspective illustration of a CAD model, according to an example;

[0030] Figure 4B shows a perspective illustration of a CAD model, according to an example;

[0031] Figure 4C shows a perspective illustration of a CAD model, according to an example;

[0032] Figure 5 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

[0033] 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 herein described. It is important to understand that embodiments can be provided in many alternate forms and should not be construed as limited to the examples set forth herein.

[0034] Accordingly, while embodiments can 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.

[0035] 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 can number one or more, unless the context clearly indicates otherwise. 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 addition of one or more other features, items, steps, operations, elements, components, and / or groups thereof.

[0036] Unless otherwise defined, all terms including technical and scientific terms used herein are to be interpreted as is customary in the art. 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.

[0037] 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. Modem 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 can integrate with other software tools, such as simulation software, product lifecycle management (PLM) systems, and computer-aided engineering (CAE) tools.

[0038] In examples of CAD systems described herein, objects are modelled as bodies comprising 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 which are principally attached to faces. A sheet body is a topologically two-dimensional body formed of sheets. Sheets are sets of connected faces with no more than two faces meeting an edge. A solid body is a three-dimensional body which occupies a continuous, finite volume. Model tolerance refers to a parameter associated with an edge or vertex, representing the minimum distance that a point and an entity are apart in order to be distinct.

[0039] Modelling operations may be performed on bodies in the CAD system. Knitting is an operation that enables bodies to be joined together along edges. Edges that correspond geometrically to within a specified edge tolerance may be knitted together for a valid model to result. Sewing is similar but distinct from knitting. A collection of sheet bodies may be sewntogether by gluing the bodies along edges, resulting in a single connected body. Sewing operations may be used for bodies that are less than a specified distance apart. Boolean operations are another group of modelling operations that derive their name from primitive logical operations such as AND and OR. Boolean operations may be used to create new bodies by uniting, subtracting and intersecting bodies.

[0040] Figure 1 is a perspective illustration showing a CAD model 100, according to an example. The model 100 may be accessible to a user through a graphical user interface (GUI) in a computing system implementing CAD software. The GUI may allow a user to visualize and manipulate the model 100 as well as performing modelling operations on the model 100 such as those previously described. The model 100 is a three-dimensional sheet body representing a hollow cross-shaped object. The model 100 comprises a plurality of interconnected faces and edges, for example, faces 101, 102, 103 and edges 111, 112, 113. The region 121 between the faces of model 100 is an empty space.

[0041] The methods described herein may be used to pattern objects such as the object depicted by model 100. In the context of the present disclosure, references to patterns refer to models with the following two attributes. First, a model, referred to herein as the core geometry, is copied and translated in space such that the resulting collection of bodies is arranged in a pattern defined by a set of parameters. Second, once the copies of the core geometry are arranged in the pattern, they are merged together to give a final patterned body.

[0042] Figure 2 is a flow diagram of a method 200 for modifying a model, according to an example. The method 200 may be implemented in conjunction with other methods and systems described herein. The method 200 may be referred to herein as minimal patterning. The method 200 forms an initial minimal pattern from the core geometry. The formation of an initial minimal pattern enables the CAD system to identify any connectivity issues which arise from patterning the core geometry before forming the full pattern requested by a user. The method 200 proceeds to identify modifications to the core geometry so that the resulting modified version of the core geometry may be patterned efficiently resulting in a watertight patterned body, with seamless connectivity.

[0043] At block 210, the method 200 comprises accessing a model of a shape element in the CAD system. The model is a core geometry which a user wishes to form into a pattern. The core geometry may be retrieved from a scan of a physical object. In another example, the model may be generated, (e.g., by a user), in the CAD system. In yet another example, the model maybe a model supplied by a third party. According to examples, accessing the model may comprise retrieving the model from memory or storage in a computing apparatus.

[0044] At block 220, the method 200 comprises generating an arrangement comprising a plurality of instances of the model. The generating of the arrangement may be initiated by the CAD system based on a request from a user to generate a pattern of the shape element. The size of the arrangement may be determined based on the request to generate a pattern. In particular, the arrangement may be the minimal size of pattern necessary to compute all the connectivity information necessary to optimize the construction of the full requested pattern. The arrangement may be referred to herein as a minimal pattern.

[0045] Figure 3A depicts a cross-sectional view of an arrangement 300. The arrangement 300 is a 3x3x3 arrangement of instances of the model 100 in a cube pattern. The arrangement 300 is a minimal pattern generated in response to a request to generate a three-dimensional pattern of model 100. The request may be initiated by a user. For example, the user may specify a cartesian pattern where the core geometry represented by model 100 is copied five times in a direction of a first axis, ten times in a direction of a second axis that is orthogonal to the first axis, and four times in a direction of a third axis that is orthogonal to the first and second axes, to give a 5x10x4 cartesian pattern. If the user had requested a 5 xlO xl cartesian pattern of the model 100, the minimal pattern generated at block 220 would comprises a 3x3x1 cartesian arrangement. Similarly, if the user had requested a 5x1x1 cartesian pattern of the model 100 the minimal pattern generated at block 220 would comprise a 3x1x1 cartesian arrangement.

[0046] At block 230, the method 200 comprises identifying, from the arrangement, a set of modifications to the model to enable the plurality of instances to connect seamlessly. According to examples described herein, seamless connection ensures that the topological data of adjoining bodies in the minimal pattern match along edges where the bodies meet so that the bodies are to be knitted together.

[0047] For example, for the minimal pattern depicted in arrangement 300 the core geometry 310 is adjacent to instances 320, 330. In order to enable seamless connection of the core geometry 310 with the instances 320, 330, topological data match at edges where the core geometry connects with the instances 320, 330. Instance 320 has an edge 321 that terminates at a vertex 322. Similarly, the instance 330 has an edge 331 that terminates at a vertex 332. There are no corresponding vertices on the edges 311, 312 of the core geometry 310. In order to seamlessly connect the core geometry 310, the method 200 identifies that it is necessary tomodify the topology of the core geometry 310. In this case, the required modification comprises imprinting of vertices on edges 311, 312 to create pairs of edges that match corresponding pairs of edges of the instances 320, 330.

[0048] At block 240, the method 200 comprises implementing each modification in the set of modifications to obtain a modified model. Figure 3B shows a modified model 340 that comprises an implementation of the required modifications to the core geometry 310 shown in Figure 3 A. In Figure 3B, the core geometry 310 is modified by imprinting vertices 341, 351 along edges 311, 312, creating pairs of edges 342, 343 and 352, 353. Additionally, a mapping of pairs of edges and faces of the modified core geometry which map to each may be stored and used during pattern generation. For example, in Figure 3C, the edge 342 may be paired with edge 362 and the edge 343 may be paired with edge 363. When the modified core 340 is copied and translated, the edge 342 is perfectly coincident with the edge 362 and the edge 343 is perfectly coincident with the edge 363 and so the edges may be knitted together.

[0049] The method 200 may also be applied to solid bodies. Figure 4A is a perspective illustration showing a computer-aided design (CAD) model 400, according to an example. The model 400 is a three-dimensional solid body representing a solid cross-shaped object. Faces of a solid body such as the body represented by model 400 may be categorized as core faces and cap faces. The two sets are mutually exclusive. For example, in model 400, faces 401, 402, 403 are core faces and faces 411, 412, 413 are cap faces. When the model 400 is patterned, some faces which were previously cap faces may become internal partition faces in the pattern. This is illustrated in Figure 4B with a 2x1x1 pattern. In the example shown in Figure 4B, an internal partition face 420 arises from joining two instances 421, 422 of the model 400. According to examples, internal partition faces such as the face 420 are removed to restore the minimal pattern to a manifold solid body. The full pattern obtained from the resulting modified core will also not have internal partition faces. Additionally, the structure of the pattern of cap faces may be computed and stored during minimal patterning and may be used to accelerate the construction of the final set of cap faces in the full pattern.

[0050] The methods described herein may also be used in conjunction with patterns of overlapping instances. For example, Figure 4C shows another 2x1x1 pattern similar to the pattern in Figure 4B. However, in Figure 4C, instances 431, 432 overlap. In this configuration, a pair of internal partition faces 434, 435 are removed during minimal patterning. However, in addition, core faces such as core faces 436, 437 are partially coincident. The computationallyexpensive Boolean operations necessary to compute the topological data to pattern the overlapping objects may be stored and re-used in the main patterning step. It is therefore possible to avoid performing partial coincidence checks and Boolean operations potentially thousands of times for larger patterns.

[0051] After the minimal pattern is generated, the method described herein may proceed to the full patterning stage. This may be performed by forming copies of the modified core, moving them using translations to the required location in the pattern, and then using the connectivity information stored from the minimal pattern to connect topologies directly. This therefore avoids performing expensive sewing operations on sheets or Boolean operations on solids for every instance.

[0052] Figure 5 illustrates an example of a data processing system in which an embodiment of the present disclosure may be implemented, for example, a CAD application configured to perform the methods of the embodiments of the present disclosure as described herein. The data processing system 500 comprises a processor 510 connected to a local system bus 520. The local system bus connects the processor to a main memory 530 and graphics display adaptor 540, which may be connected to a display 550. The data processing system may communicate with other systems via a wireless user interface adapter connected to the local system bus 520, or via a wired network, for example, to a local area network. Additional memory 560 may also be connected via the local system bus 520.

[0053] A suitable adaptor, such as wireless user interface adapter 570, for other peripheral devices, such as a keyboard 580, mouse 590, 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 (connected to speakers and / or microphones). Various peripherals may be connected to the USB controller (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.

[0054] Further, devices referred to as input devices or output devices may both provide inputs and receive outputs of communications with the data processing system. Further, 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.

[0055] 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 Windows™, Linux™, UNIX™, iOS™, and Android™ operating systems.

[0056] In addition, the data processing system 500 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.

[0057] Those of ordinary skill in the art will appreciate that the hardware depicted for the data processing system 500 may vary for particular implementations. For example, the data processing system 500 in this example may correspond to a computer, workstation, and / or a server. However, 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.

[0058] The data processing system 500 may be connected to the network (not a part of data processing system 500), which can 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 500 can communicate over the network with one or more other data processing systems such as a server (also not part of the data processing system 500). 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 several data processing systems may be in communication by way of 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.

[0059] The data processing system 500 is configured to carry out the methods in accordance with the embodiments described herein. For example, the keyboard 580 and mouse 590 may function as a user input device for receiving information from the user, the processor 510 may be configured to carry out the steps of the method and the display 550 configured to display a particular view to the user. A computer product comprising instructions which, when run on a computer, such as the data processing system 500, may be provided to cause the computer to execute the steps of the methods of the embodiments of the present disclosure outlined above.

[0060] 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.

[0061] The present disclosure can be embodied in other specific apparatus and / or methods. The described embodiments are to be considered in all respects as illustrative and not restrictive. In particular, the scope of the disclosure 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 computer-implemented method for modifying a model of a shape element in a computer-aided design (CAD) system, the method comprising: accessing the model in the CAD system; generating an arrangement comprising a plurality of instances of the model; identifying, from the arrangement, a set of modifications to the model to enable the plurality of instances to connect seamlessly; and implementing each modification in the set of modifications to obtain a modified model.

2. The method of claim 1, wherein the arrangement is generated based on a request to generate a pattern of the shape element.

3. The method of claim 2, wherein the generating of the arrangement based on the request comprises identifying a minimal pattern from the pattern and generating the minimal pattern.

4. The method of claim 3, wherein the pattern is a Cartesian pattern in one dimension, two dimensions, or three dimensions.

5. The method of claim 4, wherein the minimal pattern comprises:3 x 1 x 1 connected instances of the model, when the pattern is one-dimensional;3 x 3 x 1 connected instances of the model, when the pattern is two-dimensional; or3 x 3 x 3 connected instances of the model, when the pattern is three-dimensional.

6. The method of claim 2, further comprising: generating the pattern from a plurality of instances of the modified model.

7. The method of claim 1, wherein each modification in the set of modifications comprises a modelling operation.

8. The method of claim 7, wherein the modelling operation comprises a Boolean operation, a vertex imprinting operation, or an edge imprinting operation.

9. The method of claim 1, wherein the model is a solid body model.

10. The method of claim 9, further comprising: identifying one or more internal partition faces in the arrangement and removing the identified one or more internal partition faces.

11. The method of claim 1, further comprising: outputting connectivity data for the modified model to enable a plurality of instances of the modified model to connect seamlessly.

12. The method of claim 1, wherein the shape element is a mechanical component, an electrical component, or a thermal component in a product.

13. A method of manufacturing a component comprising a pattern of a shape element, the method comprising: accessing a model of the shape element in a computer aided design (CAD) system; applying the method according to any one of claims 1 to 13 to obtain a modified model of the shape element; generating the pattern from a plurality of instances of the modified model; and manufacturing the component based on the generated pattern.

Citation Information

Patent Citations

  • Quador: quadric-of-revolution beams for lattices

    US20200387647A1

  • Gradient-based CAD model optimization

    US20230315945A1