Method of identifying structures in a cad model
Patent Information
- Application Number
- EP2023738945
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-05
- Publication Date
- 2026-02-25
Smart Images

Figure US2023024446_12122024_PF_FP_ABST
Abstract
Description
METHOD OF IDENTIFYING STRUCTURES IN A CAD MODELTECHNICAL FIELD
[0001] The present embodiments relate to a computer-implemented method for identifying topological structures in a computer-aided design (CAD) model.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 dominates CAD modelling. 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, 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, and stored in either stereolithography file format (STL) or additive manufacturing file format (AMF) files for future printing.
[0003] A user may select structures in a CAD model through interaction with a CAD system via a user input device. The simplest selection method is one that selects a single structure. With this method, selection of multiple structures is performed through multiple interactions. This becomes labor intensive and impractical in a complex model, as many interactions between the user and the CAD application may be required for the user to be able to make the desired selection.
[0004] In non-CAD settings, search and querying of data typically requires preparatorycriteria to initiate the search. Non-specific criteria may result in a large number of nonspecific matches. Where the number of results is too large for practical browsing, subsequent criteria may be applied to filter the initial result with the hope of reducing the volume of information.
[0005] From the user perspective, this method of searching is interaction intensive. If such a search occurs only occasionally, the interaction required is occasional.Conversely, if such a search occurs regularly, the interaction required may become burdensome. A user may try to alleviate some of this burden for future searches by saving previous search criteria. Even with saving, the saved criteria includes a static definition and may be of limited help where the user wishes to conduct frequent searches with varying search criteria.
[0006] CAD applications may also incorporate search functionalities that employ preliminary criteria with subsequent refinement. These search functionalities may be applicable to find topological structures in a B-rep model, for example. A method and criteria may be specific and thus not broadly applicable, or may be non-specific, leading to an overabundance of results that require subsequent refinement.
[0007] Some CAD applications also provide automated methods that may be able to predict an action or outcome for a user. Such methods may be error prone. If a prediction is unhelpful, it may necessitate manual interaction by the user, which may be psychologically defeating and may reduce the user’s confidence in the CAD system.SUMMARY AND DESCRIPTION
[0008] 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.
[0009] The present embodiments may obviate one or more of the drawbacks or limitations in the related art. For example, a method for identifying topologicalstructures in computer-aided design (CAD) models is provided.
[0010] 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.
[0011] According to a first aspect, a computer-implemented method for identifying topological structures in a three-dimensional model of an article to be manufactured is provided. The method includes obtaining a signature including characteristics of a first set of topological structures of the three-dimensional model. The first set includes at least a first topological structure. The method includes receiving a selection of a second topological structure by a user via a user input device, modifying the signature based on the selection, and identifying a second set of topological structures based on the modified signature The modified signature includes characteristics common to the first set of topological structures, the second topological structure, and a topological neighborhood of the second topological structure. The second set includes topological structures having characteristics in common with the first set of topological structures, the second topological structure, and the topological neighborhood of the second topological structure. The first set is a subset of the second set.
[0012] The method according to the first aspect provides a method of identifying topological structures in a three-dimensional model in a manner that emulates the “mind’s eye” of the user. This method provides intuitive and efficient identification of structures similar to the selections by the user, which improves the efficiency of the overall design process in CAD applications.
[0013] In a first implementation form, the method according to the first aspect includes receiving a selection of the first topological structure by the user via the user input device and generating the signature based on the first topological structure and a topological neighborhood of the first topological structure.
[0014] In a second implementation form, the first and / or topological structure includes an edge or chain of edges.
[0015] In a third implementation form, the first topological structure and / or the second topological structure includes one or more faces.
[0016] In a fourth implementation form, the modified signature consists only of characteristics common to the first set of topological structures, the second topological structure, and a topological neighborhood of the second topological structure.
[0017] In a fifth implementation form, modifying the signature based on the selection includes removing characteristics from the signature that are uncommon to the first set of topological structures, the second topological structure, and a topological neighborhood of the second topological structure.
[0018] In a sixth implementation form, the topological neighborhoods of the first topological structure or the second topological structure include at least the topological structures that are topologically adjacent to the first topological structure or the second topological structure, respectively.
[0019] In a seventh implementation form, the characteristics include: convexity, geometry type, size, sense, position, orientation, neighbonng topological structures, and / or terminal faces.
[0020] In an eighth implementation form, identifying the second set of topological structures includes identifying further topological structures having characteristics in common with the first set, the second topological structure, and the neighborhood of the second topological structure, but varying in size, orientation, composition, and / or topological neighborhood.
[0021] In a ninth implementation form, variation between topological structures is based on one or more variance values.
[0022] These and other aspects of the invention will be apparent from theembodiments 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 is a perspective illustration of a three-dimensional model of an object, according to an example;
[0025] Figure 2 shows a flow diagram of a method for identifying topological structures in a three-dimensional model, according to an example;
[0026] Figures 3A - 3E show a perspective illustration of a three-dimensional model of an object, according to an example; and
[0027] Figure 4 illustrates an example of a data processing system in which an embodiment of the present disclosure may be implemented.DETAILED DESCRIPTION
[0028] 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. Embodiments may be provided in many alternate forms and should not be construed as limited to the examples set forth herein.
[0029] 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 thedrawings and detailed description where appropriate.
[0030] 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 addition of one or more other features, items, steps, operations, elements, components, and / or groups thereof.
[0031] 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.
[0032] The method described herein enables identification of structures in a CAD model that share topological and geometric characteristics, in an intuitive and efficient manner.
[0033] The methods are based on a signature that describes the geometric characteristics, topological conditions, and topological vicinity of structures. The signature is initiated when a user selects a first topological structure. The signature is initially specific describing the characteristics and conditions of the first selection precisely. The user then selects a second structure. On selection of the second structure, the characteristics described by the signature are relaxed such that both selections are represented by the signature. The method identifies further structures in the model based on the signature that share the common characteristics of the first and secondselections.
[0034] This may be continued such that each new selection iteratively refines the signature to categorize common characteristics and identifies further structures sharing those characteristics. The iterative refinement of the signature from specific to inclusive inherently avoids over-finding and subsequent need for refinement. The method provides emulation of a “mind’s eye” view of functionally related topology that is meaningful for purpose. Such meaning, not inherent in raw topology, becomes apparent as the signature accumulates and recognition of similar structures occurs.
[0035] Figure 1 is a perspective illustration of a three-dimensional model of an object 100 in a CAD system, according to an example. In general, a CAD model is described in terms of geometric and topological structures The topological description of the CAD model includes vertices, loops, edges, faces, and the interconnections between these structures. References herein to “topological structures” may also include chains of edges, groups of faces, or other topological entities such as holes.
[0036] In Figure 1, an edge 110 is connected to vertices 120, 130 and terminal faces 140, 150 that connect to the edge 110 at each of the vertices 120, 130. The edge 110 is also connected to faces 160, 170. The vertices 120, 130, terminal faces 140, 150, and the neighboring faces 160, 170 are topologically adjacent to the edge 110 and are described as forming the topological neighborhood of the edge 110. In general, references to the “topological neighborhood” of a topological structure refer to the topological structures that are topologically adjacent to the topological structure.
[0037] Figure 2 is a block diagram of a computer-implemented method 200 for identifying topological structures in a three-dimensional model, according to an example. The method 200 may be implemented in conjunction with examples and other methods and systems described herein. For example, the method 200 may be implemented by a CAD application on a data processing system.
[0038] At block 210, the method 200 includes obtaining a signature of a first set of topological structures of the three-dimensional model. Initially, such a first set of topological structures may consist of a first topological structure selected by a user. The first topological structure may be selected by the user, for example, via a user input device connected to the data processing system executing method 200. The signature includes characteristics of the first set of topological structures. This may include descriptions of the convexity, geometry type, size, sense, position, orientation, neighboring topological structures, and / or terminal faces or any other characterizing features of the geometry and topology of topological structures in the first set.
[0039] At block 220, the method 200 includes receiving a selection of a second topological structure by a user via a user input device. At block 230, the signature is modified based on the selection of the second topological structure. According to examples, modifying the signature includes identifying those characteristics that are common to the first set of topological structures, as described by the original signature, and the characteristics of the second selected topological structure and its topological neighborhood.
[0040] The resulting modified signature includes a relaxation of the conditions represented by the original signature, removing the characteristics from the signature that are uncommon to the identified topological structures. For example, if the first set consists of the edge 110 in Figure 1, the signature may specify that the edges of the first set share a common terminal face 140, since the only edge in the set is edge 110. If the user then selected a further edge that did not have the face 140 as a terminal face, the signature would be modified as the characteristics common to both the first set and the second selection, and the topological neighborhood would not include face 140 as a terminal face.
[0041] At block 240, a second set of topological structures is identified based on themodified signature. The second set includes topological structures having characteristics in common with the first set of topological structures, the second topological structure, and the topological neighborhood of the second topological structure.
[0042] Identification of the topological structures forming the second set is based on comparison against the modified signature. Identification is automatic, without any additional user input. The second set includes the first set of topological structures, since any topological structure that meets the conditions of the original signature will automatically meet the conditions of the modified signature, which are less restrictive than the original signature. The method 200 may be repeated for further user selections, where in each act, the signature is relaxed, removing the characteristics that are uncommon to the selections of the user and previously identified structures.
[0043] In some examples, identification of the second set of topological structures may involve identification of similar but non-identical topological structures, based on variance values. For example, comparison with the signature may yield topological structures that vary in size, orientation, composition, and topological neighborhood, within a tolerance level represented by the variance values.
[0044] The method may also be implemented as part of a manufacturing process for manufacturing an article modelled in a CAD system. For example, method 200 may be used to efficiently identify similar topological structures in a model of the article and perform actions on the identified structures prior to manufacturing the article. Examples of actions may include: performing modifications to topological structures such as blending operations, reporting data relating to topological structures, and communicating data relating to topological structures to a downstream operation. This enables a more efficient manufacturing process as the user is able to perform CAD operations with less interaction with the CAD system.
[0045] Figures 3 A to 3F show the application of method 200 to a three-dimensional object 300 in a CAD system. In Figure 3 A, a user initially selects an edge 305 via the user interface. When the user selects the edge 305, the CAD system generates a signature that includes characteristics of the edge 305. For example, the signature may include a description of the topology type of the selected entity, information identifying the terminal faces 310, 315 and neighboring faces 320, 325, and other information identifying or describing the topological and geometric vicinity.
[0046] The user selects a second edge 330, as shown in Figure 3B. As described in relation to block 230 of method 200, the signature of the first selection is modified based on the selection to describe characteristics common to both selections. The second edge 330 shares common terminal faces 310, 315 with the first edge 305, but faces 320, 325 are not shared with the first edge 330. Thus, in the modified signature, the information identifying faces 320, 325 is removed from the original signature and the resulting modified signature describes characteristics common to both selections, including the common faces 310, 315 and, for example, identification of the pocket 335 containing edges 305, 330.
[0047] Once the user has selected the second edge 330 and the signature is modified to characterize features common to both edges, the CAD system identifies further topological structures matching the modified signature. Figure 3C shows the structures identified by the CAD system. In this case, this includes edges 340, 345. These edges both lie in the same vicinity as the first selected edge and the second selected edge and share a common terminal face, as per the description in the modified signature. Further, taken with the selected edges 305, 330, the identified edges 340, 345 correspond to the “mind’s eye” view implied by the selection by the user of the first edge and the second edge, which may be considered as “comer edges of pocket 335”.
[0048] In Figure 3D, the user selects a further edge 350. As with the previousselection, the signature is further modified based on the selection to describe characteristics common to 305, 330, 340, 345 and the newly selected edge 350. The edge 350 is not in the immediate vicinity of the previously selected edges, and therefore, the condition that structures lie in the pocket 335 is dropped from the signature. However, the edge 350 does terminate on a common coincident face (e.g., face 310).
[0049] The CAD system identifies further topological structures matching the modified signature. Figure 3E shows identified edges 355, 360, 365. Since the edge 350 is not in the same pocket as the previously identified edges, the modified signature does not impose any condition relating to the vicinity of structures. Consequently, edges in all other pockets that share a common terminating face with the edges 305, 330, 340, 345, and 350 are identified. As in Figure 3C, the set of identified edges correspond to the “mind’s eye” view of “comers of pockets with a common floor,” which is implied by the selection by the user of the edge 350. Note, this does not include, for example, the edge 370, since this edge does not terminate on the face 310 or the face 315 and therefore does not share a common terminating face with previously selected edges.
[0050] Figure 4 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 described herein). The data processing system 400 includes a processor 410 connected to a local system bus 420. The local system bus connects the processor to a main memory 430 and graphics display adaptor 440, which may be connected to a display 450. The data processing system may communicate with other systems via a wireless user interface adapter connected to the local system bus 420, or via a wired network, for example, to a local area network. Additional memory 460 may also be connected via the local system bus420.
[0051] A suitable adaptor, such as wireless user interface adapter 470, for other peripheral devices, such as a keyboard 480 and mouse 490, 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 (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.
[0052] 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, 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.
[0053] 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.
[0054] In addition, data processing system 400 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 410 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 includeVMware ESCi, Microsoft Hyper-V, Xen, and KVM.
[0055] Those of ordinary skill in the art will appreciate that the hardware depicted for the data processing system 400 may vary for particular implementations. For example, the data processing system 400 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.
[0056] The data processing system 400 may be connected to the network (not a part of data processing system 400), 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 400 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 400). 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 a number of data processing systems organized in a distributed system in communication with each other via a network.
[0057] The data processing system 400 is adapted to carry out the methods inaccordance with the embodiments described herein. For example, the keyboard 480 and mouse 490 may function as a user input device for receiving information from the user, the processor 410 may be adapted to carry out the acts of the method, and the display 450 may be adapted 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 400, may be provided to cause the computer to execute the acts of the methods of the embodiments of the present invention outlined above.
[0058] 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.
[0059] The present inventions may be embodied in other specific apparatuses and / or methods. The described embodiments are to be considered in all respects as illustrative and not restrictive. In particular, 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.
[0060] The elements and features recited in the appended claims may be combined in different 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 beunderstood as forming a part of the present specification.
[0061] While the present invention has been described above by reference to various embodiments, it should be understood that many changes and modifications can be made to the described embodiments. It is therefore intended that the foregoing description be regarded as illustrative rather than limiting, and that it be understood that all equivalents and / or combinations of embodiments are intended to be included in this description.
Claims
CLAIMS1. A computer-implemented method for identifying topological structures in a three- dimensional model of an article to be manufactured, the method comprising: obtaining a signature comprising characteristics of a first set of topological structures of the three-dimensional model, the first set comprising at least a first topological structure; receiving a selection of a second topological structure by a user via a user input device; modifying the signature based on the selection, the modified signature comprising characteristics common to the first set of topological structures, the second topological structure, and a topological neighborhood of the second topological structure; and identifying a second set of topological structures based on the modified signature, the second set comprising topological structures having characteristics in common with the first set of topological structures, the second topological structure, and the topological neighborhood of the second topological structure, wherein the first set is a subset of the second set.
2. The computer-implemented method of claim 1, wherein obtaining the signature comprises: receiving a selection of the first topological structure by the user via the user input device; and generating the signature based on the first topological structure and a topological neighborhood of the first topological structure.
3. The computer-implemented method of claim 1, wherein the first structure, the topological structure, or the first structure and the topological structure comprise an edge or chain of edges.
4. The computer-implemented method of claim 1, wherein the first topological structure, the second topological structure, or the first topological structure and the second topological structure comprise one or more faces.
5. The computer-implemented method of claim 1, wherein the modified signature consists only of characteristics common to the first set of topological structures, the second topological structure, and a topological neighborhood of the second topological structure.
6. The computer-implemented method of claim 1, wherein modifying the signature based on the selection comprises removing characteristics from the signature that are uncommon to the first set of topological structures, the second topological structure, and a topological neighborhood of the second topological structure.
7. The computer-implemented method of claim 2, wherein the topological neighborhood of the first topological structure or the topological neighborhood of the second topological structure comprises at least topological structures that are topologically adjacent to the first topological structure or the second topological structure, respectively.
8. The computer-implemented method of claim 1, wherein the characteristics comprise convexity, geometry type, size, sense, position, orientation, neighboring topological structures, terminal faces, or any combination thereof.
9. The computer-implemented method of claim 1 , wherein identifying the second set of topological structures comprises: identifying further topological structures having characteristics in common with the first set, the second topological structure, and the neighborhood of the second topological structure, but varying in size, orientation, composition, topological neighborhood, or any combination thereof.
10. The computer-implemented method of claim 9, wherein the variation between topological structures is based on one or more variance values.
11. A computer-implemented method for performing an action in a computer-aided design (CAD) system, the computer-implemented method comprising: accessing an instance of a three-dimensional model in the CAD system; receiving a selection of at least two topological structures in the three-dimensional model by a user via a user input device; identifying one or more further topological structures based on the method of any of claims 1 to 9; selecting the identified one or more further topological structures; and performing an action based on the selecting.
12. The computer-implemented method of claim 11, wherein the action comprises performing modifications to selected topological structures, reporting data relating toselected topological structures, and communicating data relating to the selected topological structures to a downstream operation.
13. The method of claim 12, further comprising manufacturing the article.
14. A computer program to implement any one of claims 1 to 12.