Interactive component assembly module design method, simulation software construction method and device

By constructing data structure class diagrams and interaction diagrams, an interactive component assembly module was designed, which solved the problem of poor scalability and maintainability of interactive component assembly modules in CAE software. This enabled more efficient geometric transformations and mesh updates, improving the functionality and user experience of the finite element simulation software.

CN120162998BActive Publication Date: 2026-08-25NINGXIA UNIVERSITY
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510159512.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-02-13
Publication Date
2026-08-25
Estimated Expiration
2045-02-13

AI Technical Summary

Technical Problem

Existing CAE software lacks effective cross-module data structures and flexible functional architectures in the design and development of interactive component assembly modules, resulting in poor scalability and maintainability.

Method used

Construct a data structure class diagram describing the relationship between geometric component objects and component instance objects, determine the interaction diagram and method interface, design an interactive component assembly module, including component instance classes, geometric component classes, assembly classes, etc., and optimize geometry updates and mesh processing through the observer pattern to improve interactivity and flexibility.

Benefits of technology

The interactive component assembly module has been expanded and made more flexible, improving the functionality and user experience of the finite element simulation software and optimizing the efficiency of geometric transformation and mesh update.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120162998B_ABST
    Figure CN120162998B_ABST
Patent Text Reader

Abstract

The application provides an interactive component assembly module design method, a simulation software construction method and device, and the interactive component assembly module design method comprises the following steps: constructing a data structure class diagram describing the correlation relationship between a geometric component object and a component instance object; determining the method interface required to be provided by the object in the interactive diagram when the component instance object realizes the component assembly function based on the data structure class diagram, and designing an interactive component assembly module based on the interactive diagram and the method interface. The data structure class diagram and the interactive diagram provided by the application meet the cross-module data correlation requirements of the geometric modeling, component assembly and meshing and other modules in the finite element modeling process, realize the assembly function development based on the geometric component object, and effectively improve the expansibility and maintainability of the designed interactive component assembly module.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of finite element simulation technology, specifically to an interactive component assembly module design method, simulation software construction method, and apparatus. Background Technology

[0002] Against the backdrop of rapid development in science and engineering, finite element simulation (CAE) software, as a key tool for design and analysis, plays an increasingly crucial role. Finite element modeling encompasses both the design and creation of individual components and the assembly of multiple components, especially complex mechanical structures, which often require efficient and flexible assembly methods to integrate numerous geometric parts into a final assembly. Therefore, CAE software needs to possess powerful, high-performance, and stable component assembly modules.

[0003] Most existing technologies provide guidance on how to use CAE software, with very few offering source code. None of these provide system- or module-level software development guidance for CAE software developers. This is particularly true for component assembly modules with complex interactive functions. Without clear development guidance, the following challenges arise: a lack of effective cross-module data structures and flexible functional architecture design, resulting in poor functionality and flexibility of the component assembly modules in the developed finite element simulation software.

[0004] Therefore, there is an urgent need to develop an interactive component assembly module design method, simulation software construction method, and device to improve existing data structures and functional architectures, provide guidance for developers, and enable them to develop scalable and easily maintainable component assembly modules. Summary of the Invention

[0005] In view of this, it is necessary to provide an interactive component assembly module design method, simulation software construction method and apparatus to solve the technical problems of poor scalability and maintainability of existing interactive component assembly modules at the design and development level.

[0006] On the one hand, in order to solve the above-mentioned technical problems, the present invention provides an interactive component assembly module design method, including: Construct a data structure class diagram that describes the relationship between geometric component objects and component instance objects; Based on the data structure class diagram, determine the interaction diagram when the component instance object implements the component assembly function, as well as the method interfaces that the objects in the interaction diagram need to provide, and design an interactive component assembly module based on the interaction diagram and the method interfaces.

[0007] In one possible implementation, the data structure class diagram includes a component instance class for creating the component instance object, a geometric component class for creating the geometric component object, a component instance container class that is aggregated with the component instance class, an assembly class that is composed with the component instance container class, an assembly collection container class that is composed with the assembly class, an assembly collection class that is aggregated with the assembly collection container class, a geometric shape class that is aggregated with the component instance class, a geometric feature class that is composed with the geometric shape class and inherits from the component feature abstract class, a component dimension feature class and a component creation method class that are aggregated with the geometric feature class, and a component feature container class that is composed with the geometric component class, wherein the component feature abstract class and the component feature container class are aggregated; The geometric component object and the component instance object form a parent-copy association, sharing the data of the geometric shape class.

[0008] In one possible implementation, the data structure class diagram further includes a geometric transformation collection class, which is in a composition relationship with the component instance class. The geometric transformation collection class is used to record the geometric transformation operations experienced by the component instance object and to integrate the geometric transformation operations to obtain the final transformation object.

[0009] In one possible implementation, the component assembly function includes translation transformation. Then, based on the data structure class diagram, the interaction diagram when the component instance object implements the component assembly function and the method interfaces that the objects in the interaction diagram need to provide are determined. Based on the interaction diagram and the method interfaces, an interactive component assembly module is designed, including: The operation flow of the translation transformation is determined, and the interaction diagram of the translation transformation and the method interfaces that the objects in the interaction diagram need to provide are determined based on the operation flow.

[0010] In one possible implementation, the translation transformation operation process includes: Determine the geometric shape object to be operated on, determine the corresponding component instance object based on the geometric shape object, and select the component instance object; Obtain the input parameters required for geometric transformations based on the status bar input box; Based on the input parameters, a geometrically transformed geometric component is generated for the user to preview, and the user's confirmation is awaited.

[0011] In one possible implementation, the method further includes: Add a copy object list property to the geometry class. The copy object list property is used to record the copy shape objects copied from the geometry object. The design registration method calls the registration method of the geometric shape class to register the copied shape object into the copy object list property of the parent shape object; Design a notification method that, when the geometry of a component changes, calls the notification method to notify the copy shape objects in the list of copied objects that an update operation is required.

[0012] In one possible implementation, the object includes a geometric transformation class, and the geometric shape class includes mesh data; the method further includes: The node information in the grid data is determined, and a geometric shape object is formed based on the node information; the geometric shape object can be processed by the geometric transformation control class to realize the coordinate transformation function of the grid nodes.

[0013] In one possible implementation, the method further includes: Identify target units in the geometric object whose topological structure is points, lines, or surfaces, and construct lightweight geometric objects based on the target units; Before executing the computation task, the grid data is checked for update based on the grid state update label in the component instance class.

[0014] On the other hand, the present invention also provides a method for constructing simulation software, comprising: Design an interactive component assembly module based on an interactive component assembly module design method; The interactive component assembly module design method is any of the interactive component assembly module design methods described in the above possible implementations.

[0015] On the other hand, the present invention also provides an interactive component assembly module design device, comprising: The data structure class diagram construction unit is used to construct a data structure class diagram that describes the relationship between geometric component objects and component instance objects; An interactive component assembly module design unit is used to determine the interaction diagram when the component instance object implements the component assembly function based on the data structure class diagram, as well as the method interfaces that the objects in the interaction diagram need to provide, and to design an interactive component assembly module based on the interaction diagram and the method interfaces.

[0016] The beneficial effects of this invention are as follows: The interactive component assembly module design method provided by this invention first constructs a data structure class diagram describing the relationship between geometric component objects and component instance objects. Then, it combines the data structure class diagram and the assembly functions of each component to determine the interaction diagram and the method interfaces that the objects in the interaction diagram need to provide. This realizes the development of assembly functions based on geometric component objects, and uses geometric component objects as the core data objects of component generation and component assembly across modules. This enables the interactive component assembly module design method to meet different functional requirements across modules, thereby improving the scalability and flexibility of the interactive component assembly module.

[0017] Furthermore, since the interaction diagram is generated based on the sorting out of the component assembly functions, when the component assembly functions are expanded according to the requirements, the interaction diagram can be flexibly generated according to the expanded functions, which further improves the scalability and flexibility of the interactive component assembly module. Attached Figure Description

[0018] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0019] Figure 1 A schematic flowchart of an embodiment of the interactive component assembly module design method provided by the present invention; Figure 2 A schematic diagram of an embodiment of the data structure class diagram provided by the present invention; Figure 3 This is a schematic diagram of the operation process for translational transformation provided by the present invention; Figure 4 This is a schematic diagram illustrating the execution flow of a translation transformation example in the geometric transformation operation provided by the present invention. Figure 5 An interactive diagram showing the preview state of the transformation result object in a translation transformation instance of the geometric transformation operation provided by this invention; Figure 6 A schematic diagram of the design of the method interface required for implementing translation transformation operations provided by the present invention; Figure 7 A schematic diagram of an embodiment of the interactive component assembly module design device provided by the present invention. Detailed Implementation

[0020] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative effort are within the scope of protection of the present invention.

[0021] It should be understood that the illustrative drawings are not drawn to scale. The flowcharts used in this invention illustrate operations implemented according to some embodiments of the invention. It should be understood that the operations in the flowcharts may be implemented out of order, and steps without logical contextual relationships may be reversed or performed simultaneously. Furthermore, those skilled in the art, guided by the content of this invention, may add one or more other operations to the flowcharts, or remove one or more operations from the flowcharts. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor systems and / or microcontroller systems.

[0022] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of the invention. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a mutually exclusive, independent, or alternative embodiment. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0023] This invention provides an interactive material setting module design method, a simulation software construction method, and an apparatus, which are applied to finite element simulation software. These will be described in detail below.

[0024] Figure 1 A schematic flowchart of an embodiment of the interactive component assembly module design method provided by the present invention is shown below. Figure 1 As shown, the interactive component assembly module design method includes: S101. Construct a data structure class diagram that describes the relationship between geometric component objects and component instance objects; S102. Based on the data structure class diagram, determine the interaction diagram when component instance objects implement component assembly function and the method interface that the objects in the interaction diagram need to provide, and design an interactive component assembly module based on the interaction diagram and method interface.

[0025] It should be understood that the interactive component assembly module design method in the embodiments of the present invention can be implemented in electronic devices such as desktop computers, laptops, tablet computers, and laptop computers. Any of the above electronic devices stores a program compiled by the interactive component assembly module design method. When any of the above electronic devices is started, the program is called, and then the interactive component assembly module design method is implemented.

[0026] It should be noted that the difference between a geometric component object and a component instance object is that a geometric component object only controls geometry-related content, such as shape, while a component instance object, in addition to controlling geometry-related content, also has other attributes and behaviors, such as coordinates and constraints with other component instance objects.

[0027] It should also be noted that the relationship between the geometric component object and the component instance object is as follows: the geometric component object is the parent object, and the component instance object is the copy; that is, the component instance object shares the data and attributes of the geometric component object. Therefore, modifications to the geometric component object will also be reflected in the component instance object of the assembly.

[0028] It should be noted that multiple component instances can be created based on the same geometric component object.

[0029] Compared with existing technologies, the interactive component assembly module design method provided in this invention first constructs a data structure class diagram describing the relationship between geometric component objects and component instance objects. Then, it combines the data structure class diagram and the assembly functions of each component to determine the interaction diagram and the method interfaces that the objects in the interaction diagram need to provide. This realizes the development of assembly functions based on geometric component objects, and uses geometric component objects as the core data objects for component generation and component assembly across modules. This allows the interactive component assembly module design method to meet different functional requirements across modules, thereby improving the scalability and flexibility of the interactive component assembly module.

[0030] Furthermore, since the interaction diagram is generated based on the sorting out of the component assembly functions, when the component assembly functions are expanded according to the requirements, the interaction diagram can be flexibly generated according to the expanded functions, which further improves the scalability and flexibility of the interactive component assembly module.

[0031] The construction of the data structure class diagram is based on the following considerations: Aside from assigning material parameters, separately designed and created geometric component objects cannot be directly used in subsequent operations of finite element modeling and simulation. Instead, they need to be used in the component assembly module to create corresponding component instance objects based on the geometric component objects, and then the assembly process of each component is completed based on the component instance objects, thereby completing the creation of the complete geometric model of the analysis object. Therefore, it is necessary to construct a data structure class diagram to realize the creation of component instance objects in order to achieve the purpose of subsequent simulation analysis.

[0032] The component assembly function includes basic operations such as translation and rotation, as well as advanced operations such as constraint, adhesion, and array.

[0033] Based on the above analysis, in a specific embodiment of the present invention, such as Figure 2 As shown, the data structure class diagram includes the component instance class Instance for creating component instance objects, the geometric component class Part for creating geometric component objects, the component instance container class Instances which is aggregated with the component instance class, the assembly class Assembly which is composed with the component instance container class Instances, the assembly set container class AssemblySets which is composed with the assembly class Assembly, the assembly set class AssemblySet which is aggregated with the assembly set container class AssemblySets, the geometric shape class IShape which is aggregated with the component instance class Instance, the geometric feature class GeometryFeature which is composed with the geometric shape class IShape and inherits from the component feature abstract class PartFeature, the component dimension feature class PartTopo which is aggregated with the geometric feature class GeometryFeature, the component creation method class PartGeneration, and the component feature container class PartFeatures which is composed with the geometric component class Part. The component feature abstract class PartFeature and the component feature container class PartFeatures are aggregated. In this context, component instance objects and geometric component objects form a parent-copy relationship, sharing data from the geometry class IShape.

[0034] It should be noted that both composition and aggregation relationships have management significance. For example, Instances are used to manage different component instance node data and provide access operation methods; while Instance corresponds to a single component instance object created by the user.

[0035] The Part class manages all features related to it through PartFeature. As for the geometric shape IShape, it is managed through geometric feature data entity class nodes. The specific creation and management process follows the relevant architectural design of the geometric modeling module and requires the combined action of the PartTopo and PartGeneration functional classes to complete its creation process.

[0036] An instance, through aggregation, forms a copy-and-parent relationship with a part, thus indirectly sharing the IShape data. Note that during instance creation, the constructor calls the copy method of the IShape object in the part parent to generate an IShape object with the same geometric data. Therefore, strictly speaking, an instance and a part only share the IShape data, not the IShape object itself.

[0037] Instances and Assemblies form a composition relationship, and Assemblies, as the main data nodes of the component assembly module, are directly managed by the model node class. In addition to Instances, Assemblies also manage AssemblySets objects, whose aggregate object AssemblySets is responsible for managing a collection of instance objects composed of multiple Instances in the component assembly module.

[0038] Specifically, composition is a strong association that represents a lifecycle dependency between a part (the part) and the whole (the whole). A part cannot exist independently of the whole; if the whole is destroyed, the part will also be destroyed.

[0039] Its characteristics are: Strong dependency: The lifecycle of some objects is managed by the whole object.

[0040] Exclusivity: Partial objects typically belong to only one whole object.

[0041] Not shareable: Partial objects cannot be shared by multiple whole objects.

[0042] Aggregation is a weak association that means the lifecycles of the part (the part) and the whole (the whole) are independent. The part can exist independently of the whole; even if the whole is destroyed, the part can still exist.

[0043] Its characteristics are: Weak dependency: The lifecycle of some objects does not depend on the whole object.

[0044] Non-exclusivity: A part of an object can belong to multiple whole objects.

[0045] Shareable: Part of an object can be shared by multiple whole objects.

[0046] In practical applications, multiple geometric transformations are performed on component instances to obtain the final component instance after these transformations. Therefore, to avoid excessive execution times due to each geometric transformation operation, some embodiments of this invention, such as... Figure 2 As shown, the data structure class diagram also includes the geometric transformation collection class TrsfGroup. The geometric transformation collection class TrsfGroup and the component instance class Instance are in a composition relationship. The geometric transformation collection class TrsfGroup is used to record the geometric transformation operations that the component instance object undergoes, and to integrate the geometric transformation operations to obtain the final transformation object.

[0047] This invention integrates all geometric transformations into a single final transformation object, thereby avoiding sequential geometric transformation operations on the geometric shape and reducing the number of times geometric transformations are applied to the geometric shape.

[0048] Specifically, new geometric transformation operations can be added to the collection using the add_trsf() method interface provided by TrsfGroup. At the same time, TrsfGroup also provides the compute_total_trsf() method, which integrates and calculates all geometric transformations to form a final transformation object.

[0049] In some embodiments of the present invention, the component assembly function includes translation transformation, then step S102 includes: Determine the operation flow of translation transformation, and based on the operation flow, determine the interaction diagram of translation transformation and the method interfaces that the objects in the interaction diagram need to provide.

[0050] In specific embodiments of the present invention, such as Figure 3 As shown, the operation process of translation transformation includes the following steps: S301. Determine the geometric shape object to be operated on, determine the corresponding component instance object based on the geometric shape object, and select the component instance object; S302. Obtain the input parameters required for geometric transformation based on the status bar input box; S303. Generate geometrically transformed geometric components based on input parameters for user preview and await user confirmation.

[0051] When executed in actual finite element software, such as Figure 4 As shown, the specific steps S301~S303 above are as follows: Step 1: The user first selects the geometric shape to be geometrically transformed in the view. After receiving the user's selection, the view determines the component instance object to which the geometric shape object belongs. Then, the entire instance object is used as the object to be geometrically transformed, and all geometric shape objects in it are highlighted. Step 2: Update the status bar and provide a text input box for the user to enter the first point of the translation reference vector. After the user clicks "Confirm", proceed to the next step. Step 3: Update the status bar and provide a text input box for the user to enter the second point of the translation reference vector. After the user clicks "Confirm", proceed to the next step. Step 4: Based on the user's input in Steps 2 and 3, confirm the translation direction vector, generate the corresponding translation geometric transformation object, and apply it to the geometric shape object corresponding to the component instance object selected in Step 1. This generates a temporary geometric shape object for preview, allowing the user to confirm the result of the translation operation. Once the user confirms, update the coordinates of all geometric shape objects and end the process.

[0052] Note that in the above process, you can return to the previous step by clicking "Back" at any step, or you can click the "Cancel" button to end the current geometric transformation operation.

[0053] The above process can be broken down into more detailed interaction diagrams for each step. The following example uses the preview of the transformed object's state. Figure 5 As shown, the objects in the interaction diagram include the preview geometry transformation state class, geometry shape class, component instance class, geometry transformation class, geometry transformation tool interface, and geometry transformation control class.

[0054] The TransformationControl class sends an entry signal to the PreviewTrsfState class, which then begins executing the preset methods for entering the state. First, TransformationControl is asked to generate a transformation object based on the results of the previous two steps, and this message is passed to the TransformationTool interface ITrsfTool to generate the transformation object ITrsf, which in this embodiment is a translation transformation object.

[0055] Next, `PreviewTrsfState` calls its own method to obtain the original geometry to be transformed and sets it to semi-transparent. Then, it sends a pass to the original geometry object to obtain the geometry information for previewing, causing it to generate a preview geometry object. This object is then provided as input to the `ITrsf` object to perform the transformation. After the transformation is complete, the color and optional states of the preview geometry object are set. Finally, the `GeoKernel` method is called to update the view. This completes the execution of the `PreviewTrsfState` state entry method.

[0056] When the user clicks the confirmation button to confirm the geometric transformation operation, PreviewTrsfState calls the TransformationControl's method to obtain the selected part instance object, adds the geometric transformation object to the part instance object, and updates its geometry. Then, the GeoKernel method is called to remove the original geometric objects from the previous view and clear the selected objects, redisplaying the geometry of the part instance object after the geometric transformation. Finally, the current view is updated, and a completion signal is sent to TransformationControl to end the current preview step.

[0057] Based on the interaction graph analysis above, the objects involved can be summarized, and the method interfaces they need to provide can be identified, resulting in, for example: Figure 6 The relevant method interfaces are shown.

[0058] After completing the interactive flow analysis and architecture design, it is necessary to consider the component update issues (such as geometric shape updates) that may be involved in the functional execution of the component assembly module and other related modules. In existing technologies, the real-time update efficiency of geometric transformation operations for large-scale objects is low, affecting user experience. Therefore, in some embodiments of this invention, the interactive component assembly module design method further includes: Add a copy object list property to the geometry class. The copy object list property is used to record the copy shape objects that are copied from the geometry object. The design includes a registration method where the copy method of the geometry class calls the registration method to register the copied shape object into the copy object list property of the parent shape object. Design a notification method that is invoked when the geometry of a component changes to notify the copy shape objects in the copy object list property that an update operation is required.

[0059] In other words, this embodiment of the invention designs the association between geometric component objects and component instance objects based on the observer pattern, further enhancing the association between the geometric shape IShape object in the geometric component class Part and the geometric shape IShape object in the component instance class Instance, forming a notification mechanism within different IShape objects.

[0060] Specifically, in the Observer pattern, there are a Subject class and an Observer class. The Observer registers as an observer of the Subject. When the Subject changes or there is a system requirement, it calls a notification method, and the update operation is implemented through the Observer's reserved interface. In this embodiment of the invention, this abstract architectural design is introduced into the data entity class structure design of Part and Instance.

[0061] During the creation of an Instance, based on the Part and its contained geometry objects IShape, the specific process is as follows: During Instance creation, the `copy()` method of IShape is called to obtain a copy of the IShape, which is then assigned to the Instance object. Within the `copy()` method, IShape's own `register_copy_object()` method is called, registering the Instance's IShape as a copy object into the Part's IShape. This establishes the subject-observer relationship between the two.

[0062] During various mesh-related operations, such as cell type setting, mesh generation, and mesh clearing, the IShape object in the Part will execute notify_copy_objects(), thereby notifying the IShape objects of the Instance registered within it to update the mesh. This sets the latest mesh tag attribute in the Instance's IShape to False, indicating that the mesh in the IShape is no longer up-to-date. Subsequently, when the mesh display function of the Instance is involved in various related modules, the is_mesh_up_to_date() method in the Instance's IShape will be called to check this tag. If the return value is False, it means that the object's mesh is not up-to-date, and a mesh update operation will be performed as required.

[0063] Note that no direct mesh update is performed at this point; only the label attributes are modified. This is to address computational resource constraints and ensure smooth user operation. A significant difference from the typical observer pattern is the deferred mesh update operation. This design avoids the system performing mesh update calculations every time the user performs a related operation (such as geometric transformations and mesh parameter settings). Instead, all operations are aggregated first, and the mesh update operation is delayed, reducing the number of updates for each operation to once, further improving operational efficiency and smoothness.

[0064] Since the coordinates of the geometry also need to be updated after the geometry is updated, in order to achieve rapid coordinate updates of the assembly, in some embodiments of the present invention, the interactive component assembly module design method further includes: Determine the node information in the grid data and assemble geometric shape objects based on the node information; the geometric shape objects can be processed by the geometric transformation control class to realize the coordinate transformation function of the grid nodes.

[0065] This invention generates geometric shape objects that can be processed by a geometric transformation control class, thereby enabling coordinate transformation functionality through the geometric transformation control class.

[0066] Specifically, we first define the input parameter of the abstract method interface perform_on_shape() in the geometric transformation class ITrsf as an IShape object. Its function is to apply the geometric transformation operation corresponding to ITrsf to the IShape object and return the IShape object after geometric transformation.

[0067] The node and cell information is obtained from the mesh generator. The mesh generation module automatically converts this information into recognizable mesh data and uses the geometric modeling function provided by the geometric kernel to generate a geometric object composed of node and cell data, which can then be geometrically transformed using ITrsf.

[0068] In addition to geometry updates, practical applications also include mesh updates. To optimize the real-time update efficiency of mesh model objects, in some embodiments of the present invention, the interactive component assembly module design method further includes: Identify target units in the geometry object whose topological structure consists of points, lines, and surfaces, and construct lightweight geometry objects based on these target units; Before executing the computation task, the grid data update operation is confirmed based on the grid status update label in the component instance class.

[0069] Specifically, the design method traverses all boundary topologies in the MeshData (such as Edge and Face) and extracts the element_shape of the corresponding elements (such as the one-dimensional element corresponding to Edge and the two-dimensional element corresponding to Face). Based on the geometric kernel method, these are combined into a composite geometry, thereby obtaining a lightweight geometric object that can represent the surface mesh information of the geometry. This lightweight geometric object serves as a visual representation of the geometric mesh and can be updated and executed in any model that needs updating. Only before confirming the submission and execution of the computation task will the mesh data be updated based on the mesh state update tag in the component instance class, and a geometric transformation operation will be performed on the complete MeshData to obtain the complete node update coordinates. This further improves the efficiency of real-time updating of the visualized mesh model of the component assembly object during the interactive operation of finite element modeling.

[0070] In summary, the embodiments of the present invention design the association between geometric component objects and component instance objects based on the observer pattern, design the coordinate transformation function of mesh nodes, and perform lightweight processing on the data during the mesh update process, thereby optimizing the assembly update mechanism, significantly reducing computational efficiency, and improving user experience.

[0071] This invention also provides a method for constructing simulation software, comprising: Design an interactive component assembly module based on an interactive component assembly module design method; The interactive component assembly module design method is the interactive component assembly module design method in any of the above embodiments.

[0072] It should be understood that simulation software may include interactive modeling modules and interactive mesh generation modules in addition to interactive component assembly modules, which will not be elaborated on here.

[0073] This invention also provides an interactive component assembly module design device, such as... Figure 7 As shown, the interactive component assembly module design device 700 includes: The data structure class diagram construction unit 701 is used to construct a data structure class diagram that describes the relationship between geometric component objects and component instance objects; The interactive component assembly module design unit 702 is used to determine the interaction diagram when component instance objects implement component assembly functions based on the data structure class diagram, as well as the method interfaces that the objects in the interaction diagram need to provide, and to design the interactive component assembly module based on the interaction diagram and the method interfaces.

[0074] The interactive component assembly module design device 700 provided in the above embodiments can realize the technical solutions described in the above interactive component assembly module design method embodiments. The specific implementation principles of each module or unit can be found in the corresponding content in the above interactive component assembly module design method embodiments, and will not be repeated here.

[0075] Those skilled in the art will understand that all or part of the processes of the methods described in the above embodiments can be implemented by a computer program instructing related hardware (such as a processor, controller, etc.), and the computer program can be stored in a computer-readable storage medium. The computer-readable storage medium may be a disk, optical disk, read-only memory, or random access memory, etc.

[0076] The above provides a detailed description of the design method, simulation software construction method, and apparatus for an interactive component assembly module provided by the present invention. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.

Claims

1. A design method for an interactive component assembly module, characterized in that, include: Construct a data structure class diagram that describes the relationship between geometric component objects and component instance objects; Based on the data structure class diagram, determine the interaction diagram when the component instance object implements the component assembly function and the method interface that the object in the interaction diagram needs to provide, and design an interactive component assembly module based on the interaction diagram and the method interface. The data structure class diagram includes a component instance class for creating component instance objects, a geometric component class for creating geometric component objects, a component instance container class that is aggregated with the component instance class, an assembly class that is composed with the component instance container class, an assembly collection container class that is composed with the assembly class, an assembly collection class that is aggregated with the assembly collection container class, a geometric shape class that is aggregated with the component instance class, a geometric feature class that is composed with the geometric shape class and inherits from the component feature abstract class, a component dimension feature class and a component creation method class that are aggregated with the geometric feature class, and a component feature container class that is composed with the geometric component class. The component feature abstract class and the component feature container class are aggregated. The geometric component object and the component instance object form a parent-copy association, sharing the data of the geometric shape class; The method further includes: Identify target units in the geometric object whose topological structure is points, lines, or surfaces, and construct lightweight geometric objects based on the target units; Before executing the computation task, the grid data update operation is confirmed based on the grid state update label in the component instance class. When performing mesh-related operations, all geometry objects in the geometry component class will execute notify_copy_objects(), thereby notifying the geometry objects of the component instance classes registered in it to update the mesh. This will change the mesh state update label in the geometry of the component instance class to False, indicating that the mesh in the geometry class is no longer the latest mesh.

2. The interactive component assembly module design method according to claim 1, characterized in that, The data structure class diagram also includes a geometric transformation collection class, which is in a composition relationship with the component instance class. The geometric transformation collection class is used to record the geometric transformation operations experienced by the component instance object and integrate the geometric transformation operations to obtain the final transformation object.

3. The interactive component assembly module design method according to claim 1, characterized in that, The component assembly function includes translation transformation. Therefore, based on the data structure class diagram, the interaction diagram for implementing the component assembly function by the component instance object and the method interfaces that the objects in the interaction diagram need to provide are determined, including: The operation flow of the translation transformation is determined, and the interaction diagram of the translation transformation and the method interfaces that the objects in the interaction diagram need to provide are determined based on the operation flow.

4. The interactive component assembly module design method according to claim 3, characterized in that, The translation transformation operation process includes: Determine the geometric shape object to be operated on, determine the corresponding component instance object based on the geometric shape object, and select the component instance object; Obtain the input parameters required for geometric transformations based on the status bar input box; Based on the input parameters, a geometrically transformed geometric component is generated for the user to preview, and the user's confirmation is awaited.

5. The interactive component assembly module design method according to claim 1, characterized in that, The method further includes: Add a copy object list property to the geometry class. The copy object list property is used to record the copy shape objects copied from the geometry object. The design registration method calls the registration method of the geometric shape class to register the copied shape object into the copy object list property of the parent shape object; Design a notification method that, when the geometry of a component changes, calls the notification method to notify the copy shape objects in the list of copied objects that an update operation is required.

6. The interactive component assembly module design method according to claim 1, characterized in that, The object includes a geometric transformation class, and the geometric shape class includes mesh data; the method further includes: The node information in the grid data is determined, and a geometric shape object is formed based on the node information; the geometric shape object can be processed by a geometric transformation control class to realize the coordinate transformation function of the grid nodes.

7. A method for constructing simulation software, characterized in that, include: Design an interactive component assembly module based on an interactive component assembly module design method; The interactive component assembly module design method is the interactive component assembly module design method according to any one of claims 1-6.

8. An interactive component assembly module design device, characterized in that, include: The data structure class diagram construction unit is used to construct a data structure class diagram that describes the relationship between geometric component objects and component instance objects; An interactive component assembly module design unit is used to determine the interaction diagram when the component instance object implements the component assembly function based on the data structure class diagram, as well as the method interface that the object in the interaction diagram needs to provide, and to design an interactive component assembly module based on the interaction diagram and the method interface. The data structure class diagram includes a component instance class for creating component instance objects, a geometric component class for creating geometric component objects, a component instance container class that is aggregated with the component instance class, an assembly class that is composed with the component instance container class, an assembly collection container class that is composed with the assembly class, an assembly collection class that is aggregated with the assembly collection container class, a geometric shape class that is aggregated with the component instance class, a geometric feature class that is composed with the geometric shape class and inherits from the component feature abstract class, a component dimension feature class and a component creation method class that are aggregated with the geometric feature class, and a component feature container class that is composed with the geometric component class. The component feature abstract class and the component feature container class are aggregated. The geometric component object and the component instance object form a parent-copy association, sharing the data of the geometric shape class; The device further includes a unit that performs the following steps: determining target units in the geometry object whose topology is points, lines, or surfaces, and constructing lightweight geometry objects based on the target units; confirming whether to update the mesh data based on the mesh state update tag in the component instance class before executing the computation task; during mesh-related operations, all geometry class objects in the geometry component class will execute notify_copy_objects(), thereby notifying the geometry class objects of the component instance classes registered therein to update the mesh, thus changing the mesh state update tag in the geometry class of the component instance class to False, indicating that the mesh in the geometry class is no longer the latest mesh.

Citation Information

Patent Citations

  • System and method for dynamically modeling of workflows for interacting stateful resources

    EP1729252A2