Cross-platform model transmission method combining CATIA and MIDAS
The automated model transfer between CATIA and MIDAS is realized through EKL and Python scripts, which solves the problems of low cross-platform data transfer efficiency and difficulty in multi-scheme comparison, improves the efficiency and accuracy of engineering design and analysis, and is suitable for the rapid verification of complex engineering models.
Patent Information
- Application Number
- CN202510986018.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-17
- Publication Date
- 2025-08-15
- Estimated Expiration
- 2045-07-17
AI Technical Summary
In the prior art, the model transfer between CATIA and MIDAS has problems such as inefficiency, data errors and format mismatch. It is especially difficult to achieve high-precision cross-platform data transfer in complex engineering models, and it is impossible to quickly configure boundary conditions and load conditions when comparing multiple solutions, which affects the efficiency and accuracy of engineering design and analysis.
The node, unit, cross-section and material information of the CATIA skeleton model are automatically extracted through EKL scripts, and a standardized skeleton information table is generated. The MCT files that can be recognized by MIDAS are generated using Python scripts to realize cross-platform model transmission, and boundary conditions and load conditions are added to MIDAS, supporting rapid selection of multiple solutions.
It realizes efficient and accurate cross-platform model delivery, reduces manual intervention, ensures data integrity, shortens the design iteration cycle, improves the scientificity and fairness of multi-scheme comparison, and is suitable for engineering scenarios that quickly verify different design solutions.
Smart Images

Figure CN120493586A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of engineering design and structural analysis, and in particular to a cross-platform model transfer method combining CATIA and MIDAS. Background Art
[0002] In the fields of engineering design and structural analysis, CATIA, as a mainstream 3D design software, is often used to quickly build skeleton models of complex structures, while MIDAS is a professional structural analysis software that requires mechanical calculations based on precise model parameters. However, the current model transfer between CATIA and MIDAS faces the following technical bottlenecks: Traditional model data transmission relies on manual extraction and format conversion. Information such as the node coordinates, unit connection relationships, cross-section parameters, and material properties of the skeleton model in CATIA needs to be manually entered into MIDAS one by one. This is inefficient and prone to data errors due to human operation. Especially when faced with engineering models with a large number of nodes and complex structures, manual processing is costly and difficult to ensure data integrity.
[0003] In addition, the data formats of different software are not compatible enough. CATIA's geometric model data cannot be directly recognized by MIDAS and needs to be converted through an intermediate format. However, the existing conversion methods often face problems of information loss or format mismatch. For example, key information such as section type and material parameters is difficult to transmit directly during the transmission process, affecting the accuracy and efficiency of the structural analysis results.
[0004] In a multi-scheme comparison scenario, traditional methods require repeated modeling and parameter setting for each design scheme separately, which cannot quickly achieve unified configuration of boundary conditions and load conditions. This leads to a long scheme selection cycle and makes it difficult to intuitively compare the differences in mechanical properties of different designs, restricting the optimization efficiency of engineering design.
[0005] Existing technologies lack an automated, high-precision, cross-platform model transfer mechanism, making it difficult to meet the demands of rapid modeling and efficient analysis of multiple solutions in engineering design. Therefore, an automated model transfer method combining CATIA and MIDAS is urgently needed to address issues such as low data transfer efficiency, poor accuracy, and difficulty comparing multiple solutions, thereby improving the integration of engineering design and analysis. Summary of the Invention
[0006] The purpose of the present invention is to provide a cross-platform model transfer method combining CATIA and MIDAS to solve the problems in the above background technology.
[0007] The present invention is achieved through the following technical solutions: A cross-platform model transfer method combining CATIA and MIDAS includes automatically generating a blank skeleton information table based on a skeleton model generated in CATIA based on an engineering design plan. The skeleton information includes node information, unit information, section information, and material information. The specific steps are as follows: S1.CATIA automatically extracts node information and unit information of the skeleton model nodes through the EKL language script, and stores the node information into the skeleton information table, and stores the unit information into the skeleton information table in the form of a string in MCT format; S2. CATIA uses an EKL language script to extract the corresponding section information and material information according to the MIDAS MCT format based on the section number in the section information, and generates MCT format strings of the section information and material information corresponding to the section number and stores them in the skeleton information table; S3.Python uses all the data in the skeleton information table generated by CATIA to automatically generate a command stream that can be recognized by MIDAS, including node information, unit information, section information and material information. The command stream is saved as an MCT file; S4.CATIA transfers the MCT file to MIDAS. MIDAS generates the corresponding skeleton model based on the MCT file, adds boundary conditions and load conditions, and performs structural analysis and calculations to obtain results for evaluating the corresponding skeleton model.
[0008] Furthermore, when it is necessary to compare various design schemes of similar skeleton models and select the best one, it includes: Generate the corresponding skeleton model of each scheme according to the parameters of different design schemes, and add a unique label to the generated skeleton model. Obtain the skeleton model corresponding to the label in MIDAS according to the method S2 to S4. After setting the boundary conditions and load conditions included in the skeleton model of each scheme to be consistent, calculate the internal force and displacement of the skeleton model of each scheme to obtain the calculation results of each skeleton model, and obtain the best scheme based on the comparison of the calculation results.
[0009] Furthermore, the calculation results include: maximum internal force value, maximum displacement value, and stress distribution.
[0010] Furthermore, the node information includes the node number, the spatial coordinates of the node in the X-axis, Y-axis, and Z-axis in CATIA, and the node spacing.
[0011] Furthermore, the skeleton information table has a header when it is automatically generated, and the header includes: node number and X-axis, Y-axis, Z-axis, node spacing, unit information, section information, and material information fields.
[0012] Furthermore, the unit information includes the unit number, the coordinates of the unit start end connected to other node numbers, the coordinates of the unit end end connected to other node numbers, the unit type, and the unit length. The string format formed by the unit information is "unit number, coordinates of the unit start end connected to other node numbers, coordinates of the unit end end connected to other node numbers, unit type, and unit length."
[0013] Furthermore, the cross-section information includes a cross-section number, a cross-section type, a cross-section width, and a cross-section height. The cross-section information generates an MCT format string of "cross-section number, cross-section type, cross-section width, and cross-section height."
[0014] Furthermore, the material information includes material type, Poisson's ratio, elastic modulus, and Young's modulus, and the character string generated by the material information is "material type, Poisson's ratio, elastic modulus, Young's modulus".
[0015] The present invention has the beneficial effects: 1. To address the low efficiency and error-prone data extraction and conversion issues in traditional model transfer, this method automatically extracts the node, element, section, and material information of the CATIA skeleton model through an EKL language script and stores it in a table in a standardized format. This avoids the inefficiency and errors of manual input, achieves lossless transfer of geometric data and physical properties, and lays an accurate foundation for subsequent analysis.
[0016] 2. Use Python scripts to read data and automatically generate MCT files recognizable by MIDAS, eliminating the need for manual data format conversion and bridging the model transfer link between CATIA and MIDAS. MCT files organize data into standardized structures such as NODE, ELEMENT, and SECTION_BEAM, ensuring complete mapping of node coordinates, element connections, section parameters, and material properties, improving model transfer efficiency and accuracy.
[0017] 3. When comparing multiple schemes for the same skeleton model, MIDAS analysis models can be quickly generated for each scheme by assigning unique identifiers to each scheme and combining them with unified boundary conditions and load conditions. Based on standardized calculations of maximum internal forces, maximum displacements, stress distribution, and other results, this allows for intuitive comparison of performance differences between different design schemes, avoiding external interference, ensuring the scientific and fair nature of the comparison results, and significantly shortening the design iteration cycle. This is particularly suitable for engineering scenarios requiring rapid verification of different spans and cross-sectional shapes.
[0018] 4. The skeleton information table uses standardized header fields (such as node number, X / Y / Z coordinates, and node spacing) to ensure a consistent data format, making it easier for Python scripts to read data using fixed column indexes and reducing the risk of parsing errors. Furthermore, the structured data storage of MCT files provides traceability for model parameters, making it easier for engineers to verify the accuracy of unit connections, cross-sectional dimensions, and material parameters, thereby improving model quality control efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 Flowchart of the present invention. DETAILED DESCRIPTION
[0020] The present invention will be further described in detail below with reference to the embodiments and the accompanying drawings, but the embodiments of the present invention are not limited thereto.
[0021] For example, see Figure 1 : A cross-platform model transfer method combining CATIA and MIDAS includes automatically generating a blank skeleton information table based on a skeleton model generated in CATIA based on an engineering design plan. The skeleton information includes node information, unit information, section information, and material information. The specific steps are as follows: S1.CATIA automatically extracts node information and unit information of the skeleton model nodes through the EKL language script, and stores the node information into the skeleton information table, and stores the unit information into the skeleton information table in the form of a string in MCT format; S2. CATIA uses an EKL language script to extract the corresponding section information and material information according to the MIDAS MCT format based on the section number in the section information, and generates MCT format strings of the section information and material information corresponding to the section number and stores them in the skeleton information table; S3.Python uses all the data in the skeleton information table generated by CATIA to automatically generate a command stream that can be recognized by MIDAS, including node information, unit information, section information and material information. The command stream is saved as an MCT file; S4.CATIA transfers the MCT file to MIDAS. MIDAS generates the corresponding skeleton model based on the MCT file, adds boundary conditions and load conditions, and performs structural analysis and calculations to obtain results for evaluating the corresponding skeleton model.
[0022] The present invention generates a skeleton model including nodes, unit information, section information and material information based on an engineering design scheme in CATIA and automatically generates a blank skeleton information table. The node information (including node number, X / Y / Z axis coordinates, node spacing) and unit information (including unit number, start and end node coordinates, unit type, length, stored in MCT format character string) of the skeleton model are extracted through an EKL language script. The section information (including section number, type, width, height) and material information (including material type, Poisson's ratio, elastic modulus, Young's modulus) are extracted according to the MCT format of MIDAS to generate MCT. The MCT file containing node, unit, section and material information is read using a Python script and imported into MIDAS to generate a skeleton model. After adding boundary conditions and load conditions, structural analysis and calculation are performed to obtain the maximum internal force value, maximum displacement value, stress distribution and other results to evaluate the model. When different design schemes of the same skeleton model need to be compared, the corresponding skeleton model is generated according to the parameters of each scheme and a unique label is added. After unifying the boundary conditions and load conditions in MIDAS according to the above process, the internal force and displacement of each scheme are calculated, and the optimal scheme is selected based on the comparison of the results.
[0023] Among them, MIDAS prioritizes creating nodes based on the node numbers and node coordinates in the node information of the MCT file, confirming the nodes connected to the unit based on the beam unit information, and building the association between the unit and each node to form a preliminary beam unit topology structure; Finally, based on the cross-sectional information and material information, the corresponding cross-sectional area is selected from the cross-sectional area library of the MIDAS software and accurately assigned to each previously defined beam unit to determine the cross-sectional geometric characteristics of the beam unit. Similarly, based on the material properties specified in the material information, such as elastic modulus, Poisson's ratio, etc., the corresponding material is selected from the software material library and associated with the corresponding beam unit, so that the beam unit has complete material properties and the final complete skeleton model is obtained.
[0024] The MCT format consists of the sequence of NODE, ELEMENT, SECTION_BEAM, and TYPE_BEAM. NODE represents a node, and below it is the node information; ELEMENT represents an element, and below it is the element information; SECTION_BEAM and TYPE_BEAM are a group, and below them are the section information and the corresponding material information, as follows: Furthermore, when it is necessary to compare various design schemes of the same skeleton model and select the best scheme, it includes: generating corresponding skeleton models of each scheme according to the parameters of different design schemes, and adding unique marking numbers to the generated skeleton models, obtaining the skeleton models corresponding to the numbers in MIDAS according to S2 to S4, and setting the boundary conditions and load conditions included in the skeleton models of each scheme to be consistent, and then calculating the internal forces and displacements of the skeleton models of each scheme to obtain the calculation results of each skeleton model, and obtaining the best scheme based on the comparison of the calculation results.
[0025] When comparing multiple schemes, by adding unique labels to the skeleton models of each design scheme, multiple schemes can be clearly distinguished and managed in MIDAS; ensuring the consistency of boundary conditions and load conditions, avoiding deviations in calculation results caused by differences in external factors, and ensuring the scientific and fair nature of scheme comparison. This improves the efficiency of parallel analysis of multiple schemes and shortens the design iteration cycle, which is particularly suitable for engineering scenarios that require rapid verification of different spans and cross-sections. In one embodiment, during the preliminary design of a steel truss bridge, corresponding skeleton models were rapidly generated in CATIA based on the different span parameters for three schemes with spans of 50, 60, and 70 meters, respectively. Each model was labeled, such as Scheme A, Scheme B, and Scheme C. An EKL script was used to extract the node coordinates, element connection relationships, and cross-sectional information for each scheme. A Python script was then used to generate a labeled MCT file and import it into MIDAS. In MIDAS, the same boundary constraints, such as fixed supports at both ends and load conditions, such as a uniformly distributed load of 50 kN / m, were uniformly set. The internal forces, displacements, and material requirements of each scheme were calculated, and the optimal scheme was ultimately determined.
[0026] Furthermore, the calculation results include: maximum internal force value, maximum displacement value, and stress distribution.
[0027] Furthermore, the node information includes the node number, the spatial coordinates of the node in the X-axis, Y-axis, and Z-axis in CATIA, and the node spacing.
[0028] Spatial coordinates (X / Y / Z axes) form the geometric foundation of the skeleton model, ensuring exact spatial alignment between the CATIA and MIDAS models. Node spacing verifies the rationality of element lengths and aids in detecting modeling errors. Automatically extracting and writing this data through EKL scripts avoids the inefficiencies and errors of manual coordinate entry, enabling lossless transfer of geometric data and laying a precise foundation for subsequent analysis.
[0029] In one embodiment, in a CATIA model of a bridge, the coordinates of the node numbered E1 are (837765mm, 0mm, 7362.0912mm), and the spacing between the node and the adjacent node E2 is 2200mm. These EKL foot data are written into the corresponding row of the skeleton information table, such as node number 1 corresponds to X=837765, Y=0, Z=7362.0912, and the spacing is 2200.
[0030] After reading, the Python script generates the node information statement "1, 8377650, 7362.0912" in the MCT file to ensure that the node position in MIDAS is completely consistent with that in CATIA, avoiding unit connection errors caused by coordinate deviation.
[0031] Furthermore, the skeleton information table has a header when it is automatically generated, and the header includes: node number and X-axis, Y-axis, Z-axis, node spacing, unit information, section information, and material information fields.
[0032] Standardized header fields such as "Node Number", "X(mm)", "Y(mm)", "Z(mm)", and "Node Spacing" unify the data format, make the table structure clear, and facilitate Python scripts to read data according to fixed column indexes, reducing the risk of parsing errors caused by confusing headers.
[0033] In one embodiment, before running the EKL script in CATIA, a file with a standardized header must be created in advance. When the script is executed, the node number is automatically filled in column A, the X coordinate is filled in column B, the Y coordinate is filled in column C, the Z coordinate is filled in column D, and the node spacing is filled in column E. For example, the information of node E3 corresponds to row 3 of the table: A3 = "E3", B3 = 823166, C3 = 0, D3 = 7229.9866, E3 = 7300. The Python script generates the MCT node coordinates by reading the data in columns B, C, and D, and reads column E to verify the unit length to ensure data integrity. When reading the node number, only the "3" in the "E3" node number needs to be read.
[0034] Furthermore, the unit information includes the unit number, the coordinates of the unit start end connected to other node numbers, the coordinates of the unit end end connected to other node numbers, the unit type, and the unit length. The string format formed by the unit information is "unit number, coordinates of the unit start end connected to other node numbers, coordinates of the unit end end connected to other node numbers, unit type, and unit length."
[0035] The string corresponding to the element information specifies the element number, element start / end nodes, element type, and element length, and is fully compatible with MIDAS's MCT syntax. This format ensures that Python scripts can directly parse and generate ELEMENT commands, avoiding model generation failures due to format inconsistencies. It also allows engineers to quickly verify that element connections are correct, for example, "1,1,2,TYPE_BEAM,2200."
[0036] In one embodiment, in a CATIA skeleton model, a beam element connects nodes 1 and 2, has an element number of 1 and a length of 2200 mm. The EKL script converts this into the string "1, 1, 2, TYPE_BEAM, 2200" and stores it in the skeleton information table. The first 1 indicates that this is the first beam element number, the second 1 indicates that the starting end of the beam element is connected to node 1, and the second 1 indicates that the ending end of the beam element is connected to node 2. TYPE_BEAM indicates that this is a beam element, and 2000 indicates that the length of the beam element is 2.2. After importing, MIDAS automatically generates a beam element connecting nodes 1 and 2, with a length consistent with the CATIA model, eliminating the need for manual adjustment.
[0037] Furthermore, the cross-section information includes a cross-section number, a cross-section type, a cross-section width, and a cross-section height. The cross-section information generates an MCT format string of "cross-section number, cross-section type, cross-section width, and cross-section height."
[0038] Standardized section parameter strings such as "1,RECTANGLE,0.3,0.5" are directly compatible with the MIDAS SECTION_BEAM command, ensuring accurate transmission of section type and size. This avoids analysis errors caused by ambiguous section parameter descriptions and enables MIDAS to automatically calculate section geometric properties, improving analysis efficiency.
[0039] In one embodiment, a box section is numbered 1 in CATIA, with a width of 0.3 meters and a height of 0.5 meters. The EKL script generates and stores the string "1, RECTANGLE, 0.3, 0.5." The Python script reads the string and generates the MCT statement `SECTION_BEAM1, RECTANGLE, 0.3, 0.5`. MIDAS uses this statement to create a rectangular section, automatically calculating the area as 0.3 × 0.5 = 0.15 m² and the moment of inertia as 0.3 × 0.5³ / 12 ≈ 0.003125 m². 4 , used for subsequent internal force and stiffness calculations.
[0040] Furthermore, the material information includes material type, Poisson's ratio, elastic modulus, and Young's modulus, and the character string generated by the material information is "material type, Poisson's ratio, elastic modulus, Young's modulus".
[0041] The string of material information, such as "MAT_Steel,0.3,2.06E5,2.06E5", specifies the core physical properties such as the material name, Poisson's ratio, and elastic modulus. This ensures that MIDAS correctly applies the material constitutive relationship in structural analysis and avoids calculation distortion caused by missing or incorrect material parameters. It is especially suitable for multi-scheme comparison scenarios of complex materials.
[0042] In one embodiment, for steel material, CATIA extracts Poisson's ratio 0.3 and elastic modulus 2.06×10 5 MPa. The EKL script generates the string "MAT_Steel,0.3,2.06E5,2.06E5" and stores it in a table. The Python script reads this string and generates the MCT statement `MAT_Steel,0.3,2.06E5,2.06E5`. MIDAS applies this string to all associated elements, accurately reflecting the material deformation characteristics when calculating stresses and ensuring reliable internal force calculations. The resulting skeleton information table is shown in Table 1 below: It will be understood that the above embodiments are merely exemplary embodiments for illustrating the principles of the present invention, and the present invention is not limited thereto. Persons skilled in the art will readily appreciate that various modifications and improvements can be made without departing from the spirit and substance of the present invention, and such modifications and improvements are considered within the scope of protection of the present invention.
Claims
1. A cross-platform model transfer method combining CATIA and MIDAS, characterized in that: Including the skeleton model generated by CATIA based on the engineering design plan, automatically generating a blank skeleton information table. The skeleton information includes node information, unit information, section information and material information. The specific steps are as follows: S1.CATIA automatically extracts node information and unit information of the skeleton model nodes through the EKL language script, and stores the node information into the skeleton information table, and stores the unit information into the skeleton information table in the form of a string in MCT format; S2. CATIA uses an EKL language script to extract the corresponding section information and material information according to the MIDAS MCT format based on the section number in the section information, and generates MCT format strings of the section information and material information corresponding to the section number and stores them in the skeleton information table; S3.Python uses all the data in the skeleton information table generated by CATIA to automatically generate a command stream that can be recognized by MIDAS, including node information, unit information, section information and material information. The command stream is saved as an MCT file; S4.CATIA transfers the MCT file to MIDAS. MIDAS generates the corresponding skeleton model based on the MCT file, adds boundary conditions and load conditions, and performs structural analysis and calculations to obtain results for evaluating the corresponding skeleton model.
2. A cross-platform model transfer method combining CATIA and MIDAS according to claim 1, characterized in that: When it is necessary to compare various design options for similar skeleton models and select the best option, including: Generate the corresponding skeleton model of each scheme according to the parameters of different design schemes, and add a unique label to the generated skeleton model. According to S2 to S4, obtain the skeleton model corresponding to the label in MIDAS, and set the boundary conditions and load conditions of the skeleton model of each scheme to be consistent. Then calculate the internal force and displacement of the skeleton model of each scheme to obtain the calculation results of each skeleton model, and compare the calculation results to obtain the best scheme.
3. The cross-platform model transfer method combining CATIA and MIDAS according to claim 2, characterized in that: The calculation results include: maximum internal force value, maximum displacement value, and stress distribution.
4. The cross-platform model transfer method combining CATIA and MIDAS according to claim 1, characterized in that: The node information includes the node number, the spatial coordinates of the node in the X-axis, Y-axis, and Z-axis in CATIA, and the node spacing. The node information includes the node number and coordinates.
5. The cross-platform model transfer method combining CATIA and MIDAS according to claim 4, characterized in that: The skeleton information table has a header when it is automatically generated, and the header includes: node number and X axis, Y axis, Z axis, node spacing, unit information, section information, and material information fields.
6. The cross-platform model transfer method combining CATIA and MIDAS according to claim 1, characterized in that: The unit information includes the unit number, the coordinates of the unit start end connected to other node numbers, the coordinates of the unit end end connected to other node numbers, the unit type, and the unit length. The string format formed by the unit information is "unit number, the coordinates of the unit start end connected to other node numbers, the coordinates of the unit end end connected to other node numbers, the unit type, and the unit length".
7. The cross-platform model transfer method combining CATIA and MIDAS according to claim 1, characterized in that: The cross-section information includes cross-section number, cross-section type, cross-section width, and cross-section height. The cross-section information generates an MCT format string of "cross-section number, cross-section type, cross-section width, and cross-section height." 8. The cross-platform model transfer method combining CATIA and MIDAS according to claim 1, characterized in that: The material information includes material type, Poisson's ratio, elastic modulus, and Young's modulus. The character string generated by the material information is "material type, Poisson's ratio, elastic modulus, Young's modulus".
Citation Information
Patent Citations
System and method for converting data from PDMS software to MIDAS software
CN104915216A
Structural design method based on BIM (Building Information Modeling)
CN116204962A