BIM primitive reference association processing method and system based on composite space transformation
By constructing lightweight storage of BIM element status information using structural data Pt, Mr, n, IfM, the problems of high memory consumption and computational redundancy in traditional BIM software are solved, enabling efficient composite operation processing and improving the performance and stability of BIM software.
Patent Information
- Application Number
- CN202511537619.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-27
- Publication Date
- 2026-02-17
- Estimated Expiration
- 2045-10-27
AI Technical Summary
Traditional BIM software suffers from high memory consumption, computational redundancy, and distortion of complex operations during parametric modeling, resulting in limited performance and stability.
A BIM primitive reference association processing method based on composite spatial transformation is adopted. By constructing structural data (Pt, Mr, n, IfM) to lightweight store the state information of referenced instances, including spatial location, rotation matrix and mirror state variables, a unified mathematical representation and efficient synchronization of operations are achieved.
It significantly improves the performance and efficiency of BIM software, reduces storage costs, ensures the accuracy and stability of composite operations, and is suitable for complex engineering scenarios.
Smart Images

Figure CN121030894B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of building information modeling technology, and in particular to a method and system for processing BIM element reference association based on composite spatial transformation. Background Technology
[0002] In BIM software, referencing primitives are essential in parametric modeling. The spatial position of referenced instances in a project typically needs to be adjusted through complex operations such as movement, rotation, and mirroring. Traditional methods have the following problems: 1. High memory consumption: Traditional solutions record the operation history line by line (e.g., movement vectors, rotation base points and angles, mirror planes, etc.), resulting in a linear increase in the amount of stored data with the number of operations; 2. Computational redundancy: Reloading requires applying all operations sequentially to generate the final state of the instance, significantly increasing time consumption for multi-step operation scenarios; 3. Distortion from complex operations: The superposition of operations such as mirroring and rotation may lead to incorrect matrix transformation order, causing positioning errors. Summary of the Invention
[0003] To overcome the problems of storage redundancy, uncontrollable computation, defective mirroring, insufficient nesting support, and inefficient synchronization mechanism in existing reference instances during parametric modeling, which limit the performance and stability of BIM software in complex engineering scenarios, this invention provides a BIM element reference association processing method and system based on composite spatial transformation.
[0004] In a first aspect, the present invention provides a BIM element reference association processing method based on composite spatial transformation, the method comprising:
[0005] Construct structured data; the structured data is used to indicate and store the state information of the referenced instance;
[0006] Receive user modification operations on referenced instances and configure changed data according to the modification operations;
[0007] Modify the structural data based on the changed data.
[0008] According to a specific implementation, in the above processing method, the state information includes spatial position, rotation matrix, plane normal vector, and mirror state quantity.
[0009] According to one specific implementation, the modification operations in the above processing method include translation, rotation, and mirroring.
[0010] According to a specific implementation, in the above processing method, when the modification operation is a translation, a translation value is obtained; the changed data is configured as the translation value according to the modification operation; and the structural data is modified based on the changed data, including:
[0011] The translation value is superimposed on the spatial position.
[0012] According to a specific implementation, in the above processing method, when the modification operation is rotation, the unit vector of the rotation axis and the rotation angle are obtained, and the change rotation matrix is calculated based on the unit vector of the rotation axis and the rotation angle; the changed data is configured as the change rotation matrix according to the modification operation; the structure data is modified based on the changed data, including:
[0013] Update the rotation matrix based on the changed rotation matrix;
[0014] Rotate the spatial position according to the changing rotation matrix;
[0015] Determine whether a referenced instance is in a mirror state based on the mirror state variable;
[0016] If so, then rotate the plane normal vector according to the said rotation matrix;
[0017] If not, then the plane normal vector remains unchanged.
[0018] According to a specific implementation, in the above processing method, when the modification operation is mirroring, the mirror plane and mirror plane normal vector are obtained; the changed data is configured as a mirror plane, mirror plane normal vector, and mirror state variable switching according to the modification operation; the structure data is modified based on the changed data, including:
[0019] The spatial position is mirrored according to the mirror plane;
[0020] The mirror status quantity is switched and updated according to the mirror status quantity, and the referenced instance is determined to be in a mirror state based on the updated mirror status quantity.
[0021] If so, then update the plane normal vector according to the mirror plane normal vector;
[0022] If not, the mirror rotation matrix is calculated based on the rotation of the plane normal vector toward the direction of the mirror plane normal vector, and the rotation matrix is updated according to the mirror rotation matrix.
[0023] According to one specific implementation, the above processing method further includes:
[0024] In a composite space, after creating a reference instance of the referenced main element based on the structural data, if the main information of the main element changes, the corresponding update operation is performed based on the structural data.
[0025] According to a specific implementation, in the above processing method, when the main graphic element is a loadable family, the update operation includes:
[0026] The modified subject information will be synchronized to all reference instances that reference the loadable family based on the spatial location.
[0027] According to a specific implementation, in the above processing method, when the main graphic element is a block, group, or synchronization region, the update operation includes:
[0028] The main information of the main graphic element is reconstructed based on the structural data;
[0029] After the restored main information is changed, other reference instances that reference the main graphic element are retrieved, and the changed main information is synchronized to all reference instances that reference the main graphic element;
[0030] Specifically, restoring the main information of the main graphic element includes:
[0031] Given that the reference instance is in a mirrored state, the reference instance is mirrored according to the spatial position and the plane normal vector. Then, the mirrored reference instance is rotated according to the spatial position and the inverse of the rotation matrix, and then translated back to the origin.
[0032] If the referenced instance is not in a mirror state, rotate the referenced instance according to the spatial position and the inverse of the rotation matrix, and then translate it to the origin;
[0033] The modified main information is synchronized to all reference instances that reference the main element, including:
[0034] Each reference instance is placed in the composite space according to its corresponding structure data.
[0035] Secondly, the present invention provides a BIM element reference association processing system based on composite spatial transformation, the system including a memory and a processor;
[0036] The memory is used to store computer programs; the processor is used to call and execute the computer programs so that the system executes the BIM element reference association processing method based on composite spatial transformation as described above.
[0037] Compared with the prior art, the beneficial effects of the present invention are as follows:
[0038] This invention provides a BIM element reference association processing method and system based on composite spatial transformation. By constructing a lightweight storage data model of structural data, it can indicate and store the state information of referenced instances, reducing the storage cost of the processing process. It stably transforms all operations into modifications to the stored data, eliminating the positive correlation between the number of operations and storage costs. This can significantly improve efficiency in synchronous scenarios and significantly improve the performance of BIM software. It has high application value and scalability. Attached Figure Description
[0039] Figure 1 This is a flowchart illustrating a BIM element reference association processing method based on composite spatial transformation, provided in an embodiment of the present invention. Detailed Implementation
[0040] The present invention will now be described in further detail with reference to specific embodiments. However, this should not be construed as limiting the scope of the present invention to the following embodiments; all technologies implemented based on the content of the present invention fall within the scope of the present invention.
[0041] Traditional BIM technology records movement, rotation, and mirroring information sequentially. When reloading elements with reference relationships, it transforms the element instances sequentially based on this information. While this generally preserves the spatial position of loadable families, the recording of each operation leads to a continuous increase in memory usage, severely impacting software performance. To address these issues, existing technologies record the displacement for movement operations, overlaying it onto the previous state, requiring only one movement data entry. For rotation operations, recording the rotation base point, rotation axis vector, and rotation angle allows for the calculation of the new spatial position and orientation based on the previous state data. For mirroring operations, the mirror plane is recorded; the mirrored state is calculated based on the overlay of previous states.
[0042] The data of referenced elements is established based on a relative coordinate system. Each time information is modified, it needs to be transformed from the relative coordinate system to the spatial location of the element. This invention proposes a lightweight storage and computation method based on a composite spatial transformation matrix to solve the problems of redundant spatial positioning data and low restoration efficiency for referenced elements in scenarios with multiple overlapping operations. Based on the technology proposed in this invention, the parametrically transformed main information can be quickly and accurately synchronized to the referenced instance with minimal data cost, ensuring that it maintains its original position and orientation. This technology can significantly improve the performance of BIM software and has high application value. It is particularly suitable for optimizing the parameter storage, computational efficiency, and data synchronization problems of referenced elements (such as loadable families, blocks, groups, synchronization areas, etc.) in spatial transformation operations such as translation, rotation, and mirroring.
[0043] The technical solution provided by the present invention will be described and explained in detail below with reference to specific embodiments.
[0044] Please refer to Figure 1 It illustrates a flowchart of a BIM element reference association processing method based on composite spatial transformation provided by an embodiment of the present invention. The method includes:
[0045] Step 1: Construct structured data.
[0046] Specifically, the structured data is used to indicate and store the state information of the referenced instance. This state information includes spatial position, rotation matrix, plane normal vector, and mirror state variable. In one possible implementation, this embodiment of the invention provides a lightweight storage scheme based on a quadruple data structure (Pt, Mr, n, IfM), which unifies the mathematical representation of composite transformation operations of translation, rotation, and mirroring. The spatial reference point Pt is the origin of the reference coordinate system for all transformations; the rotation matrix Mr is a composite matrix that integrates all rotation operations; the plane normal vector n and the mirror state IfM are the physical parameters and mathematical operations that decouple the mirror transformation. Specifically, Pt(x0, y0, z0) indicates the spatial position of the referenced instance, Mr indicates its three-dimensional rotation matrix Mr based on its spatial position, n indicates its plane unit normal vector, and IfM indicates whether it is in a mirror state.
[0047] Step 2: Receive user modification operations on the referenced instance, and configure the changed data according to the modification operations.
[0048] Specifically, the modification operations include translation, rotation, and mirroring.
[0049] According to one specific implementation, when the modification operation is a translation, a translation value is obtained; the changed data is configured as the translation value according to the modification operation; and the structural data is modified based on the changed data, including:
[0050] The translation value is superimposed on the spatial position.
[0051] For example, when translating a reference instance, the translation value is superimposed on Pt.
[0052] According to one specific implementation, when the modification operation is rotation, the unit vector of the rotation axis and the rotation angle are obtained, and a change rotation matrix is calculated based on the unit vector of the rotation axis and the rotation angle; the changed data is configured as the change rotation matrix according to the modification operation; the structural data is modified based on the changed data, including:
[0053] Update the rotation matrix based on the changed rotation matrix;
[0054] Rotate the spatial position according to the changing rotation matrix;
[0055] Determine whether a referenced instance is in a mirror state based on the mirror state variable;
[0056] If so, then rotate the plane normal vector according to the said rotation matrix;
[0057] If not, then the plane normal vector remains unchanged.
[0058] For example, when rotating a reference instance, the rotation modification operation involves the rotation axis unit vector r and the rotation angle ang, calculating the changed rotation matrix Mr0. The 3D rotation matrix of the reference instance is then updated to Mr` = Mr·Mr0. Based on the rotation base point P0, Pt is rotated to a new position. If the current state is mirrored, n is rotated to a new direction based on the rotation base point P0. The dynamic update mechanism for the mirror state after rotation operation designed in this invention can resolve the logical conflict when mirroring and rotation are superimposed.
[0059] According to a specific implementation, in the above processing method, when the modification operation is mirroring, the mirror plane and mirror plane normal vector are obtained; the changed data is configured as a mirror plane, mirror plane normal vector, and mirror state variable switching according to the modification operation; the structure data is modified based on the changed data, including:
[0060] The spatial position is mirrored according to the mirror plane;
[0061] The mirror status quantity is switched and updated according to the mirror status quantity, and the referenced instance is determined to be in a mirror state based on the updated mirror status quantity.
[0062] If so, then update the plane normal vector according to the mirror plane normal vector;
[0063] If not, the mirror rotation matrix is calculated based on the rotation of the plane normal vector toward the direction of the mirror plane normal vector, and the rotation matrix is updated according to the mirror rotation matrix.
[0064] For example, when a mirror references an instance, the modification operation of the mirror is: mirror plane; information processing: Pt mirrors plane; if it is currently in a mirror state, it is modified to a non-mirror state, and if it is currently in a non-mirror state, it is modified to a mirror state, that is, IfM=!IfM.
[0065] After modification, if IfM=true, the unit normal vector n of the plane is updated to the normal vector of the plane.
[0066] After modification, if IfM = false, then calculate the mirror rotation matrix Mrm based on the direction of the normal vector of the n-axis plane, and update the three-dimensional matrix Mr` = [Mr·Mrm]·Mrm of the referenced instance.
[0067] Understandably, mirroring operations trigger updates to the normal vector n; rotation operations trigger synchronous rotations of vector n (if in a mirrored state); and the mirror rotation matrix Mrm is used to eliminate attitude deviations during mirror state switching. This invention, through dual-matrix (Mr, Mrm) coupled control, ensures the mathematical invertibility of composite transformations, thereby eliminating attitude errors. Furthermore, this invention proposes a mirroring operation separation technique based on the rotation base point and the normal vector, achieving unified mathematical processing for mirroring and rotation.
[0068] In this invention, the mirror transformation is only used as a state marker (IfM), and it and the normal vector direction (n) do not participate in the matrix multiplication chain. When calculating the reference instance, the mirror inversion operation is dynamically triggered according to IfM, which solves the attitude calculation defect caused by the dependence of mirror and rotation order in the traditional scheme.
[0069] Furthermore, the above processing method also includes, based on the composite space, creating a reference instance of the referenced main element according to the structural data, and then, in the event of a change in the main information of the main element, performing a corresponding update operation based on the structural data. It is understood that common elements with reference relationships in BIM include loadable families, blocks, groups, and synchronization regions, all of which can serve as main elements.
[0070] Loadable family editors, as one of the core tools of BIM technology, are fundamental to the rapid development of BIM technology. The extensive loading and use of loadable families in projects greatly facilitates user manipulation of graphic elements. However, for project files, the internal data of loadable families is created based on a relative coordinate system. For this information to be used normally in a project, after numerous alternating operations such as moving, rotating, and mirroring, how to quickly and accurately locate the spatial position of family instances after saving and reopening the file is one of the core technologies of loadable families. Besides loadable family instances, similar referencing relationships exist with 2D and 3D blocks and groups. When one element of a block or group is modified, the referencing elements are synchronously updated to elements in different spatial locations. The structural data proposed in this invention is used to quickly apply the main graphic element to the referenced instance.
[0071] It is understandable that the relationship between the main primitive and the referenced instance is that the main information of the main primitive is the data source of the referenced instance, and the referenced instance may appear anywhere in the composite space. When the main information changes, the data of all referenced instances that reference that main primitive should also be updated synchronously. This invention can quickly solve the problem of synchronization updates. The update process involves applying the main data to each referenced instance based on its own data structure (state information) to update the final displayed appearance of each referenced instance. Thus, loadable families, blocks, groups, and synchronization regions are primitives with the properties of both main primitives and referenced instances, and the structural data can be used to quickly locate and update the main information to the referenced instance spatial location.
[0072] Specifically, when the main graphic element is a loadable family, the update operation includes:
[0073] The modified main information is synchronized to all reference instances that reference the loadable family based on the spatial location. The synchronization of loadable family information is primarily controlled by the family file information; after the family file is edited, its internal information is modified, and loaded into the project, the information is synchronized to all reference instances that reference that family.
[0074] For blocks, groups, and synchronization regions, the main information in the relative coordinate system needs to be calculated based on existing reference instances. This main information is then synchronized to each reference instance according to its own position data. Each instance (primitive) created for a block, group, or synchronization region is a reference instance. This reference instance is created based on the main information, which is generally part of the reference instance's data and used to describe the model information. Furthermore, for calculating the main information of reference instances such as blocks, groups, and synchronization regions, the information is all within the reference instance itself; through operations, the main information can be obtained.
[0075] Specifically, when the main graphic element is a block, group, or synchronization region, the update operation includes:
[0076] The main information of the main graphic element is reconstructed based on the structural data;
[0077] After restoring and changing the main information, retrieve other reference instances that reference the main graphic element, and synchronize the changed main information to all reference instances that reference the main graphic element.
[0078] When the referenced subject information is modified, synchronization is triggered. If the information of the subject primitive is modified, its own parameters and 2D / 3D models are recalculated. After the calculation is completed, a search is triggered to see if any other instances reference the subject. If so, the referenced instances are updated according to the subject information such as the restore block, group, and synchronization area.
[0079] Specifically, restoring the main information of the main graphic element includes:
[0080] Given that the reference instance is in a mirrored state, the reference instance is mirrored according to its spatial position and the plane normal vector. Then, the mirrored reference instance is rotated according to its spatial position and the inverse of the rotation matrix, and finally translated back to the origin. Specifically, if the current reference instance is in a mirrored state, the reference instance model is mirrored using a plane with Pt as the center point and n as the normal vector. Further, the mirrored reference instance model is rotated based on point Pt and the inverse of the rotation matrix Mr. Finally, the model is translated from point Pt back to the origin.
[0081] If the referenced instance is not in a mirror state, rotate the referenced instance according to the spatial position and the inverse of the rotation matrix, and then translate it to the origin.
[0082] The modified main information is synchronized to all reference instances that reference the main element, including:
[0083] Each reference instance is placed in the composite space according to its corresponding structural data. Specifically, the reference instances are translated according to their respective points Pt; further, the reference instances are rotated using the rotation matrix Mr with Pt as the base point; further, if the current state is mirrored, the reference instances are mirrored with a plane centered at Pt and with n as the normal vector; if the current state is non-mirrorized, mirroring is not performed.
[0084] It is understandable that updating information by referencing an instance requires first restoring its model information and spatial state to the same state as the main body, and then applying it to a specific spatial location through structural data (the state information before synchronization).
[0085] Based on the above technical solution, the present invention has the following significant advantages:
[0086] 1. Optimized storage efficiency (compared to traditional full-parameter storage);
[0087] Traditional methods store independent parameters for translation, rotation, and mirroring (such as translation vector, rotation angle / axis, and mirror plane equation) for each reference instance, with the number of storage units increasing linearly with the number of operations. This invention employs a unified storage structure (Pt+Mr+n+IfM), with fixed storage: Pt (3×double=24 bytes), Mr (9×double=72 bytes), n (3×double=24 bytes), and IfM (1×bool=1 byte). By fusing information from multiple operations through a composite transformation matrix, the linear relationship between the number of operations and the storage size is eliminated. Especially for instances with a high number of operations (such as N rotations), the storage size remains stable at 121 bytes, and the efficiency improvement is significant with the increase in the number of operations.
[0088] 2. Improved computational efficiency for complex transformations (compared to step-by-step computation);
[0089] Traditional methods require transforming the model sequentially according to the operation order, often involving multi-level calculations in complex operations, which is time-consuming. This invention stably transforms all operations into modifications to stored data, and the main information is synchronized to the reference instance. Each calculation requires a maximum of only 3 steps: translation → rotation → mirroring.
[0090] 3. Scientific nature of mirror state processing;
[0091] Traditional mirroring only uses Boolean state marking, which cannot handle the following scenarios: reverse rotation after mirroring (such as rotation around a non-symmetric axis after mirroring); compound mirroring operations (such as equivalent transformations of multiple mirroring). This invention controls the mirroring through the coupling of the plane normal vector n and the rotation matrix Mr: the rotation operation updates the direction of n simultaneously, with clear physical meaning; the mirroring state switching is corrected by the normal vector / rotation matrix to ensure mathematical reversibility.
[0092] Furthermore, the present invention provides a BIM element reference association processing method and system based on composite spatial transformation. By constructing a lightweight storage data model of structural data, it can indicate and store the state information of referenced instances, reducing the storage cost of the processing. It stably transforms all operations into modifications to stored data, significantly improving efficiency in synchronization scenarios and substantially enhancing the performance of BIM software. Based on the above update operations, the present invention can quickly and accurately synchronize the parametrically changed main information to the referenced instances with minimal data cost, ensuring that they maintain their original position and orientation. This has high application value and scalability.
[0093] On the other hand, the present invention also provides a BIM element reference association processing system based on composite spatial transformation, including a memory and a processor, wherein the memory is used to store a computer program; the processor is used to call and execute the computer program so that the system performs a BIM element reference association processing method based on composite spatial transformation as described in any of the above claims.
[0094] In embodiments of the present invention, the processor can be an integrated circuit chip with signal processing capabilities. The processor can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.
[0095] The various methods, steps, and logic diagrams disclosed in the embodiments of this invention can be implemented or executed. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this invention can be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The processor reads information from the storage medium and, in conjunction with its hardware, completes the steps of the above methods.
[0096] The storage medium can be memory, such as volatile memory or non-volatile memory, or may include both volatile and non-volatile memory.
[0097] Among them, non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory.
[0098] Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), sync link dynamic random access memory (SLDRAM), and direct memory bus RAM (DRRAM).
[0099] The storage media described in the embodiments of the present invention are intended to include, but are not limited to, these and any other suitable types of memory.
[0100] It should be understood that the system disclosed in the embodiments of the present invention can be implemented in other ways. For example, the division of modules is merely a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the communication connection between modules can be through some interfaces, indirect coupling or communication connections between servers or units, and can be electrical or other forms.
[0101] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each module can exist physically separately, or two or more modules can be integrated into one processing unit. The integrated unit described above can be implemented in hardware or as a software functional unit.
[0102] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.
[0103] Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present invention should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner for ease of understanding.
[0104] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for processing BIM element reference association based on composite spatial transformation, characterized in that, The method includes: Construct structured data; the structured data is used to indicate and store the state information of the referenced instance; Receive user modification operations on referenced instances and configure changed data according to the modification operations; Modify the structural data based on the changed data; The state information includes spatial position, rotation matrix, plane normal vector, and mirror state quantity; the modification operation includes translation, rotation, and mirroring. When the modification operation is a translation, obtain the translation value; configure the changed data as the translation value according to the modification operation; modify the structure data based on the changed data, including: The translation value is superimposed on the spatial position; When the modification operation is rotation, obtain the unit vector of the rotation axis and the rotation angle, and calculate the transformation rotation matrix based on the unit vector of the rotation axis and the rotation angle; configure the transformed data as the transformation rotation matrix according to the modification operation; modify the structure data based on the transformed data, including: Update the rotation matrix based on the changed rotation matrix; Rotate the spatial position according to the changing rotation matrix; Determine whether a referenced instance is in a mirror state based on the mirror state variable; If so, then rotate the plane normal vector according to the said rotation matrix; If not, then the plane normal vector remains unchanged; When the modification operation is mirroring, obtain the mirror plane and mirror plane normal vector; configure the changed data as a mirror plane, mirror plane normal vector, and mirror state variable switching according to the modification operation; modify the structure data based on the changed data, including: The spatial position is mirrored according to the mirror plane; The mirror status quantity is switched and updated according to the mirror status quantity, and the referenced instance is determined to be in a mirror state based on the updated mirror status quantity. If so, then update the plane normal vector according to the mirror plane normal vector; If not, the mirror rotation matrix is calculated based on the rotation of the plane normal vector toward the direction of the mirror plane normal vector, and the rotation matrix is updated according to the mirror rotation matrix.
2. The BIM element referencing and association processing method based on composite spatial transformation according to claim 1, characterized in that, The method further includes: In a composite space, after creating a reference instance of the referenced main element based on the structural data, if the main information of the main element changes, the corresponding update operation is performed based on the structural data.
3. The BIM element referencing and association processing method based on composite spatial transformation according to claim 2, characterized in that, When the main primitive is a loadable family, the update operation includes: The modified subject information will be synchronized to all reference instances that reference the loadable family based on the spatial location.
4. The BIM element referencing and association processing method based on composite spatial transformation according to claim 2, characterized in that, When the main graphic element is a block, group, or synchronization region, the update operation includes: The main information of the main graphic element is reconstructed based on the structural data; After the restored main information is changed, other reference instances that reference the main graphic element are retrieved, and the changed main information is synchronized to all reference instances that reference the main graphic element; Specifically, restoring the main information of the main graphic element includes: Given that the reference instance is in a mirrored state, the reference instance is mirrored according to the spatial position and the plane normal vector. Then, the mirrored reference instance is rotated according to the spatial position and the inverse of the rotation matrix, and then translated back to the origin. If the referenced instance is not in a mirror state, rotate the referenced instance according to the spatial position and the inverse of the rotation matrix, and then translate it to the origin; The modified main information is synchronized to all reference instances that reference the main element, including: Each reference instance is placed in the composite space according to its corresponding structure data.
5. A BIM element reference association processing system based on composite spatial transformation, characterized in that, The system includes a memory and a processor; The memory is used to store computer programs; the processor is used to call and execute the computer programs so that the system performs the BIM primitive reference association processing method based on composite spatial transformation as described in any one of claims 1 to 4.
Citation Information
Patent Citations
BIM structure transformation increment information generation and storage system and method
CN111506950A
Database linkage operation method, medium and equipment
CN119576944A