WO2021174660A1 - 一种基于云的通用参数化模型解析方法及设计系统 - Google Patents
一种基于云的通用参数化模型解析方法及设计系统 Download PDFInfo
- Publication number
- WO2021174660A1 WO2021174660A1 PCT/CN2020/088236 CN2020088236W WO2021174660A1 WO 2021174660 A1 WO2021174660 A1 WO 2021174660A1 CN 2020088236 W CN2020088236 W CN 2020088236W WO 2021174660 A1 WO2021174660 A1 WO 2021174660A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- model
- parameterized
- parameterized model
- general
- parametric
- Prior art date
Links
- 238000013461 design Methods 0.000 title claims abstract description 96
- 238000000034 method Methods 0.000 title claims abstract description 78
- 230000014509 gene expression Effects 0.000 claims abstract description 35
- 238000006243 chemical reaction Methods 0.000 claims abstract description 25
- 230000006870 function Effects 0.000 claims description 66
- 238000004364 calculation method Methods 0.000 claims description 47
- 230000008569 process Effects 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 claims description 9
- 239000000463 material Substances 0.000 claims description 8
- 230000008676 import Effects 0.000 claims description 7
- 238000013515 script Methods 0.000 claims description 4
- 238000003032 molecular docking Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 claims description 2
- 238000012821 model calculation Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 claims description 2
- 238000003860 storage Methods 0.000 abstract description 9
- 238000011960 computer-aided design Methods 0.000 abstract description 8
- 230000000694 effects Effects 0.000 abstract description 4
- 230000002452 interceptive effect Effects 0.000 abstract description 4
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 230000002457 bidirectional effect Effects 0.000 abstract description 2
- 238000009877 rendering Methods 0.000 description 25
- 238000005034 decoration Methods 0.000 description 12
- 239000008186 active pharmaceutical agent Substances 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 239000007787 solid Substances 0.000 description 6
- 238000010276 construction Methods 0.000 description 5
- 230000000712 assembly Effects 0.000 description 4
- 238000000429 assembly Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013144 data compression Methods 0.000 description 2
- 238000004080 punching Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000254032 Acrididae Species 0.000 description 1
- 125000002015 acyclic group Chemical group 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Definitions
- the invention relates to the field of computer-aided design (CAD) software, in particular to a cloud-based general parametric model analysis method and design system.
- CAD computer-aided design
- the development of computer-aided design software has roughly gone through several stages of 2d graphics -> 3d wireframe -> 3d solid, curve and surface modeling -> parametric modeling.
- the parametric model defines a series of parameters, geometric constraints, and algorithm rules for generating the model, allowing users to modify the geometry, size and appearance of the model simply by modifying a few parameters. Its features of full-size constraints, full data correlation, and size-driven design modification have special advantages for generating a series of products with similar structures and different sizes, as well as the reuse of product design data.
- Each company's software defines its own parameterized model data structure, as well as the algorithm rules for generating the final model.
- the parameterized model generated by each software can only be used in its own software, and it is extremely difficult to exchange data of the parameterized model across software.
- data exchange across CAD software generally exchanges data such as geometry and material. These data are the result of a certain set of parameters calculated by the parameterized model, which is a kind of "static" data.
- the imported static data can express the appearance of the product under a certain model/configuration, so as to meet part of the use requirements, but it is often difficult to edit and modify the model twice.
- some users of Kujiale have accumulated a large number of parameterized model files in software such as Revit before. They want these parameterized model files to be able to be modified after being imported into the Kujiale tool, rather than just Get a fixed shape model.
- Every kind of existing software is designed for a specific field, and their data structure has the business meaning of the field.
- Inventor is designed for the field of mechanical design, and its data structure contains "features” such as chamfering, threading, and bending.
- Revit is designed for the architectural field, and its data structure contains "components” such as walls, beams, slabs, and columns.
- Kujiale’s existing custom parametric furniture design tools contain data structures such as “plate pieces” of panel furniture.
- these softwares have basic data structures such as geometric constraints and geometric modeling to varying degrees, the definitions of these basic data structures are different.
- their basic data structure definitions are mixed with domain business-specific data structure definitions, making it difficult to extend.
- the purpose of the present invention is to overcome the shortcomings of the prior art, and provide a cloud-based general parameterized model analysis method and design system, which can import/export parameterized model data of any CAD software, and realize the two-way data of the parameterized model Conversion; the imported or created general parameterized model is stored and calculated in the cloud, and the calculation result is transmitted back to the front-end for display, and can also be passed to some external cloud services to achieve additional functions such as rendering, calculating, and outputting the parameterized model ; It can also combine and expand the data structure of general parametric models to develop parametric design software supporting various subdivisions.
- the present invention provides a cloud-based general parameterized model analysis method, the method includes:
- Step 1 Import or export the parametric model of any CAD software, first define a general parametric model intermediate data structure, and then develop a plug-in based on the CAD software, or use the data read and write SDK to develop an application, and put the CAD software in the parametric model Read out the various elements of, and analyze the dependencies between them, write them into data conforming to the intermediate data structure, and create a general parameterized model at the same time;
- Step 2 Create a universal parametric model from multiple channels, including the following steps:
- the parametric model forms a parametric template
- Step 3 Compute, store and query the parameterized model in the cloud, store the parameterized template in the cloud database, and record some meta-information in the database for each parameterized template, and provide an API for querying the meta-information of the parameterized model.
- Front-end query while providing an API to calculate the parameterized model, through the id of the parameterized template provided by the user and the value of a set of parameters, the shape and appearance of the parameterized model when taking this set of values are calculated;
- Step 4 Display the parameterized model on the front end.
- the general parameterized model platform will transmit the calculated model geometry and material information to the front end for display.
- the front end will analyze the received information by further calling the corresponding analysis program, and then browse Display in the server or client;
- Step 5 Use third-party cloud services to expand the business support capabilities of the parametric model platform, and connect the universal parametric model platform to the third-party service agreed data interface, extract corresponding information from the calculation results of the parametric model, and transmit it to the third-party service , And return the result calculated by the third-party service to the front end for display;
- Step 6 Support the parametric design software of each subdivided field, and expand the superset of parametric design language suitable for each subdivided industry based on the general data structure of the parametric model to realize the specific design requirements of each subdivided industry.
- the intermediate data structure of the general parameterized model in step 1 is composed of parameters, geometric primitives, geometric constraints, geometric modeling methods, and dependencies between these elements.
- an editor with UI can also be used to record the user's interaction process as intermediate data of a parameterized model, and then convert it into a general parameterized model; or through a parameterized model script Language to generate a general parameterized model.
- This scripting language can be redefined by any existing interpreted scripting language or a high-level language.
- This scripting language uses scripting to generate the intermediate data of the parameterized model, and then convert it It is a general parameterized model; a high-level language code that realizes a general parameterized model can also be used to generate a general parameterized model.
- an API for calculating a set of parameterized models can also be provided, and multiple parameterized models can be calculated and returned at the same time, thereby reducing the number of network requests and improving the response speed of front-end applications.
- the present invention provides a cloud-based general parameterized model design system, which mainly includes: a general data structure of a parameterized model, an intermediate data structure of a parameterized model, and a general expression data structure of a geometric model;
- the intermediate data structure of the parameterized model is used to realize the import or export of any CAD software parameterized model, that is, two-way data conversion;
- the general data structure of the parameterized model is obtained by converting the intermediate data structure of the parameterized model through the parameterized model conversion service;
- the general expression data structure of the geometric model is calculated from the general data structure of the parameterized model through the parameterized model calculation service.
- the general expression data structure of the geometric model is used as a standard interface data structure for docking with third-party services.
- Figure 1 is a schematic diagram of the overall architecture of the cloud-based parametric model analysis method and design system.
- Figure 2 is a flowchart of parametric model creation and conversion.
- Figure 3 is the calculation and front-end display effect diagram of the parameterized door model.
- Figure 4 is a schematic diagram of the two-way data conversion of the parameterized model.
- Figure 5 is a flow chart of the data flow process of the parameterized model.
- Figure 6 is an implementation flow chart in the field of mechanical design.
- Figure 7 is the implementation flow chart in the field of architectural design.
- Figure 8 is the implementation flow chart in the field of decoration design.
- Figure 9 is a flowchart of implementation in the field of furniture design.
- the present invention provides a cloud-based general parameterized model analysis method, including:
- Step 1 Import/export the parameterized model of any CAD software.
- the data structure is composed of parameters, geometric primitives, geometric constraints, geometric modeling methods and the dependencies between these elements. This data structure only defines the format of the data. In specific implementation, any method such as Json/xml/binary can be used to actually carry the data. Data transmission can be carried out in a variety of ways such as file exchange/network request. Almost all the parametric models of mainstream CAD software can be abstracted into this data structure.
- Parametric models in reality often require nested expressions.
- a parametric desk may contain multiple drawers in addition to elements such as the desk and legs.
- Each drawer itself is a parametric model, including drawer plates, slides and so on.
- the intermediate data structure of the parameterized model can also support the nested expression of the model. There are many ways to support it: either the data of the nested parameterized model can be directly embedded in the data of the main parameterized model, and each parameter can be parameterized.
- the model is assigned an id, and then the nested parameterized model is referenced by the id.
- Step 2 Create a universal parametric model from multiple channels.
- the calculation process of any parametric model can be regarded as a sequential function execution process.
- a parametric model is a directed acyclic composed of parameters, functions, and expressions. picture.
- Geometric primitives, geometric constraints, and geometric modeling methods can all be regarded as a function.
- the concrete realization of a general parameterized model is to make its parameters, functions, and expressions serializable/deserialized and executable. Based on this requirement, we can implement a general parameterized model in two ways:
- scripting languages that can be interpreted and executed, such as python, lua, etc.
- Program fragments written in these languages can be saved, loaded, and executed. Therefore, a general parameterized model is a program fragment.
- These interpreted languages can often call functions written in compiled languages (such as C/C++), so specific geometric primitives, geometric constraints, and geometric modeling methods can be implemented in script languages or compiled languages.
- a code generator to convert the intermediate data structure of the parameterized model into scripting language code. After that, this code can be loaded and executed with different input parameters to complete the calculation of the parameterized model.
- the second method is to use some compiled languages, such as Java/C++, to independently realize the saving, loading, and execution of parameters, expressions, functions and their dependencies defined by the intermediate data structure of the parameterized model.
- Compiled languages usually provide definitions of basic data types, functions, expressions, and serialization/deserialization methods of basic data types.
- For functions and expressions we need to write our own serialization and deserialization methods.
- For functions you only need to record the function name, parameter name, and corresponding parameter value during serialization.
- deserializing you can use methods such as table lookup and reflection to find the corresponding function address and execute it.
- For the expression you can serialize it into a string according to the set grammar, and then implement an expression parser.
- the storage method of the parameterized model can be either in plain text format such as custom text/Json/xml, or in binary format.
- the general parameterized model platform can provide an API for "creating a parameterized template", which accepts intermediate data of the parameterized model and returns the id of the created parameterized template.
- a "parameterized model conversion service” can also be developed, allowing users to upload a parametric model of a CAD software, and call plug-ins or applications at the back end of the service to complete the conversion of the parametric model.
- the "parameterized model conversion service” can also provide some APIs that allow users to set metadata such as the category of parameterized templates.
- This parameterized model scripting language can be implemented in existing languages such as python, lua, and javascript, or it can be implemented in a high-level language.
- the front end can provide a code editor environment, allowing users to write programs written in this language, and provide basic functions such as running and debugging.
- the result of running a parametric model script language program is to produce a parametric model intermediate data.
- the front end can then create a parametric model based on this intermediate data.
- the following is a sample code of "parameterized model scripting language”. It creates a parametric model template with two parameters: a cube parametric model with variable width and height.
- Step 3 In cloud computing, storing and querying the parameterized model, we can store all parameterized templates in the cloud database, and the specific storage can use OSS, MongoDB and other methods.
- a table containing parameterized template id, category, creation time, parameter list, template address and other information is stored in the relational database. When you need to use a parameterized template, find the template address in the relational database according to the id, and then you can call up the parameterized template data.
- the parameters, expressions, and functions inside can be parsed first, and then the topological sorting algorithm is used to determine the calculation order of the functions, and these functions are executed in sequence.
- the topological sorting algorithm is used to determine the calculation order of the functions, and these functions are executed in sequence.
- geometric constraint functions and geometric modeling functions we can call third-party geometric calculation function libraries such as geometric constraint solvers and geometric modeling engines to help us complete our work.
- the services of parametric model conversion, storage, and calculation have the characteristics of large data transmission and calculation-intensive.
- We can adopt various methods such as data compression, parallel calculation, calculation result caching, model simplification, cross-process invocation, and service splitting. Improve the performance and stability of the service.
- REST APIs such as "calculate a single parameterized model”, “calculate a group of parameterized models”, and “query parameterized model metadata” can be provided for front-end applications to call on demand. Calling methods such as RPC can also be provided for other back-end services to call the functions of the parameterized model platform.
- Step 4 Display the parameterized model on the front end. After obtaining the calculation result of the parameterized model, we usually need to display it on the front end.
- the calculation result of a parametric model is usually a geometric model, and there are many ways to display it:
- the geometric model can be converted into a data format that can be directly displayed on the front end at the back end, such as triangular meshes, pictures, panoramas, etc., and then transmitted to the front end. This method is convenient to implement for the front end, but has low flexibility and interactivity.
- a structured data format can be defined for the geometric model. After being transmitted to the front end, it will be parsed and displayed by the front end.
- a base class of "geometric object" which defines general interfaces such as bounding box and id.
- geometric object In the derived class, define the implementation methods of various specific geometric objects.
- geometric objects can be divided into solid geometric models, surface geometric models, and mesh geometric models.
- the industry-wide method is used to represent it. For example, use CSG, boundary expression method, etc. to express solid geometric model, use vertex coordinate array, vertex serial number array, etc. to express triangle mesh model, and so on.
- special geometric object expression methods based on our own business characteristics.
- the front-end receives it, the front-end modeling function is called to reproduce the geometry.
- Model For a geometric model that already exists in the commodity library, we can only transmit a commodity id, and so on. But no matter what kind of geometric objects, they must implement bounding box, id and other interfaces, and provide methods for how to draw themselves.
- the front end After the front end gets this kind of data, it calls the corresponding triangulation algorithm according to the type of the geometric object, and converts it into a format acceptable to graphic libraries such as WebGl/OpenGl for display. Because the data is structured, the front end can also make rich interactive experiences such as model structure tree, multi-level selection, section display, and secondary editing.
- Step 5 Use third-party cloud services to expand the business support capabilities of the parameterized model platform.
- the calculation results of the parameterized model can also be transmitted to different third-party services to continuously expand the business support capabilities of the parameterized model.
- a GetRenderModel interface which converts the parametric model into a mesh model containing material and lighting information required for rendering, and stores it in Redis, and then returns the Redis key of the mesh model to render the service Later, these Redis keys will be used to obtain these models and assemble them in the rendering scene of the entire home solution.
- a general geometric model expression method can also be agreed with a third-party service, such as the structured geometric model defined in step 4.ii.
- Each service receives this general geometric model format. In this way, the workload of connecting multiple third-party services can be reduced.
- Some third-party services do not necessarily require the geometric expression of the parameterized model, such as the inventory calculation service. At this time, it is enough to transmit some statistical information in the calculation results of the parameterized model to a third party.
- Services such as rendering, two-dimensional engineering drawings, and inventory calculations are not designed specifically for parametric models, but can also process various data such as grid models and solid models. Independent development and independent deployment of these services are conducive to the realization of a more decoupled software architecture and rapid iterative development.
- Fig. 5 shows the conversion flow chart of parameterized model data. This only expresses the conversion process of the data form, and does not express at which end the data is generated. For example, according to the 4.i display process, the grid model data is generated at the back end and then transmitted to the front end. If the display process in 4.ii is followed, only the structured geometric model data is generated at the back end, and the mesh model data is generated by the front end after transmission to the front end.
- Step 6 Support the parametric design software in each subdivision field.
- the universal parametric model defined by the parametric model platform contains parameters, geometric constraints, geometric modeling methods and other elements. It can be regarded as a universal design language in the field of computer-aided design.
- design elements such as chamfers, threads, and gears.
- design elements such as walls, beams, and stair treads.
- design elements such as partitions and cabinet doors.
- Each design element can be composed of geometric primitives, geometric constraints, and modeling methods.
- the sample code for creating the "corner” superset object is as follows. It combines the "sweep” modeling function provided by the general parametric model platform, and then adds business attributes such as "price” to form a "corner" superset object.
- the present invention also provides a cloud-based general parameterized model design system, including: a general data structure of a parameterized model, an intermediate data structure of a parameterized model, and a general expression data structure of a geometric model;
- the abstract parameterized scripting language can be replaced by any existing interpreted computer scripting language, or it can be implemented based on a compiled high-level computer language.
- These high-level languages usually provide definitions of basic data types, functions, expressions, and serialization/deserialization methods of basic data types.
- functions and expressions we need to write our own serialization and deserialization methods.
- For functions you only need to record the function name, parameter name, and corresponding parameter value during serialization.
- deserializing you can use methods such as table lookup and reflection to find the corresponding function address and execute it.
- For the expression you can serialize it into a string according to the set grammar, and then implement an expression parser.
- the abstract parameterized scripting language also needs to deal with the order of calculation between functions.
- the functions form a directed acyclic graph according to the dependency relationship between the return value and the parameters. We can use the topological sorting method to determine the calculation order of the function.
- the geometric primitive is equivalent to the basic data type of the abstract parameterized scripting language, and then a new geometric data type is extended.
- We only need to define common geometric types such as points, vectors, lines, arcs, planes, cylinders, splines and surfaces, and define their serialization/deserialization methods.
- the geometric constraint is a function, and we can define the functions corresponding to the geometric constraints such as parallel, perpendicular, and angle.
- the function name is the type of geometric constraint.
- the parameters of the function can include the participating primitives and the specific value of the constraint. For example, for the "straight line parallel” constraint, its function has only two parameters: the two straight lines involved. For the "plane distance” constraint, its function has three parameters: the two planes involved, and the distance between the planes.
- the specific realization of the function can be carried out by "moving the position of the geometric primitive to meet the conditions required by the constraint". It is also possible to put multiple geometric constraints together and use geometric constraint solving algorithms such as numerical methods or symbolic derivation methods to calculate.
- the pseudo code example of the geometric constraint calculation function is as follows:
- the geometric modeling method is also a function.
- Commonly used geometric modeling methods include stretching, sweeping, rotation, lofting, and Boolean operations. We can implement these methods our, or we can call existing geometric modeling engine packages in the industry to implement them.
- Geometric modeling is usually a computationally intensive operation. We can consider parallel computing of multiple irrelevant modeling methods to improve computing efficiency.
- a general parameterized model is a combination of a set of functions that have dependencies on each other, including parameters, expressions, geometric primitives, geometric constraints, and geometric modeling methods.
- model nesting the data structure definition of a general parameterized model can be shown in the following pseudo code:
- the method of realizing the superset of design language in the subdivision field is a bit similar to the process of programming in a higher language: using the built-in expressions, operators, and mathematical functions of the language to combine the functions required by the business.
- the sweep function used is the "sweep" modeling function defined in step b).
- the intermediate data structure of the parameterized model can be regarded as a more serialized definition method of the data structure of the general parameterized model. This is because when defining the data structure of a general parameterized model, we usually use some advanced mathematics and geometry libraries. Their packages are often relatively large, the class hierarchy is complex, and they are related to specific languages and operating environments. However, the intermediate data structure of the parameterized model is only used for data transmission and does not need to be geometrically calculated, so it can be defined relatively simply. For example, one point can record the three coordinates of x, y, and z. One point on a plane is recorded on the surface, a normal direction, plus the x direction of the plane coordinate system.
- the plug-in we can also read the geometric primitives, geometric constraints, modeling methods, dependencies, etc. in an existing parametric model intermediate data structure file, and write them as CAD software model data. In this way, as long as one CAD software realizes the plug-in of the intermediate data structure of the read/write parameterized model, it can exchange the parameterized model with any CAD software that also realizes the plug-in.
- Figure 3 shows the effect of converting the parametric door model in a CAD software into a general parametric model.
- the models before and after conversion have the same adjustable parameters and can achieve the same deformation.
- the parametric model conversion service is mainly responsible for converting the intermediate data structure of the parametric model into the general parametric model data structure.
- This general parameterized model data can be stored in databases such as MongoDb.
- the parameterized model needs to be calculated, the general parameterized model is loaded from the database, the parameters, expressions, and functions inside are parsed, and the topological sorting algorithm is used to determine the calculation order of the functions, and these functions are executed in sequence.
- Services such as parameterized model conversion, storage, and calculation have the characteristics of large data transmission and calculation-intensive.
- We can adopt various methods such as data compression, parallel calculation, calculation caching, and model simplification to improve the performance and stability of the service.
- the calculation result of a general parametric model can be represented by the general expression data structure of the geometric model.
- geometric object which defines general interfaces such as bounding box and id.
- derived class define the implementation methods of various specific geometric objects.
- geometric objects can be divided into solid geometric models, surface geometric models, and mesh geometric models.
- the industry-wide method is used to represent it. For example, use CSG, boundary expression method, etc. to express solid geometric model, use vertex coordinate array, vertex serial number array, etc. to express triangle mesh model, and so on.
- special geometric object expression methods based on our own business characteristics.
- Geometric objects also need to be instantiated, combined, and bound to materials. Therefore, we can design general geometric primitive objects that can easily combine various geometric objects and realize instantiation and material binding.
- the general expression data structure of this geometric model is used as a standard interface data structure for rendering, construction drawing, calculation and other services, which can easily realize the docking with these services. Because these third-party services often do not need to know how the parameterized model is parameterized, they only need to know the geometric appearance, hierarchical structure, business attributes (such as the brightness of the light) and other information of a parameterized model after a certain set of parameters.
- Example 1 As shown in Figure 6, in the field of mechanical design:
- these parameterized models can be imported into the general parameterized model platform.
- these parametric mechanical parts and assemblies can be transmitted to the browser/client/mobile terminal and other front ends for display.
- the user can call out the parametric models of parts or assemblies from a parametric model library and adjust their parameters.
- These front-end software send the parameterized template id and adjusted parameters corresponding to the model to the general parameterized model platform for calculation.
- the calculated result returns to the front end to display again.
- the user can also click the buttons of "Export Rendering Rendering", “Export 2D Engineering Drawing”, “Export BOM”, etc.
- the front-end software will soon include the design plan data of the parameterized model.
- the universal parametric model platform calls rendering services, two-dimensional engineering drawing services, calculation list services, etc., to generate product renderings, two-dimensional engineering drawings, and BOM tables
- the user can also draw the parametric model of mechanical parts or assemblies in a UI editing interface.
- This UI editor transfers the design data to the universal parametric model platform to generate universal parametric models Model.
- the design software for architecture, decoration, furniture design, etc. can be developed based on this universal parametric model platform.
- Users will be able to send parametric models of mechanical parts to architectural, decoration, and furniture design schemes with one click. Such as HVAC equipment in buildings, home appliances in decoration, hardware in furniture design, etc.
- the user can also use a parametric scripting language programming in a code editing interface to design parametric mechanical parts and assemblies. He can use design elements defined by general parametric model platforms such as stretching and rotation, as well as parametric design elements in the field of mechanical design such as "chamfering", “rounding”, and "punching".
- Embodiment 2 As shown in Figure 7, in the field of architectural design:
- these component parameterized design functions are also implemented on the universal parametric model platform, these parametric models can be imported into the universal parametric model platform. After the universal parameterized model platform provides a series of query and calculation functions, these parameterized building components can be transmitted to the browser/client/mobile terminal and other front-ends for display.
- users can call up component parameterized models from a parameterized model library and adjust their parameters.
- These front-end software send the parameterized template id and adjusted parameters corresponding to the model to the general parameterized model platform for calculation.
- the calculated result returns to the front end to display again.
- the user can also click the buttons of "Export Rendering Rendering", “Export 2D Engineering Drawing”, “Export BOM”, etc.
- the front-end software will soon include the design plan data of the parameterized model.
- the universal parametric model platform calls rendering services, two-dimensional engineering drawing services, calculation list services, etc., to generate plan renderings, two-dimensional construction drawings, and calculation list reports
- the user can also draw the parameterized model in the architectural design plan in a UI editing interface.
- This UI editor transfers the design data to the general parameterized model platform to generate a general parameterized model .
- the user can also use a parametric scripting language programming in a code editing interface to design parametric building components. He can use design elements defined by general parametric model platforms such as stretching and rotation, as well as parametric design elements in architectural design fields such as "walls”, “beams”, “plates”, “pillars” and “stairs”. .
- Embodiment 3 As shown in Figure 8, in the field of decoration design:
- the 3D models used in the decoration design field often come from 3ds Max, Sketchup and other traditional 3D design software that dominates non-parametric design, and some models from parametric design software such as Revit are also used.
- Revit software model it can be implemented in accordance with the methods in the field of architectural design.
- models from 3ds Max and Sketchup on the one hand, in recent years after the 3ds Max 2018 version, as well as in Sketchup plug-ins such as Viz Pro, various levels of parametric design capabilities are provided. We can convert these models as much as possible Parametric model.
- decoration design For the field of decoration design, users often need to design parametric models such as ceilings and wall panels. Therefore, we can abstract decoration design elements such as "corner line”, “skirt line”, “downlight” and so on, and extend it to the intermediate data structure of the parameterized model.
- users can call up models from a model library. These models may have both non-parametric models and parametric models. For parametric models, users can adjust their parameters. These front-end software send the parameterized template id and adjusted parameters corresponding to the model to the general parameterized model platform for calculation. The calculated result returns to the front end to display again.
- the front-end software will send the design plan data including all models to Universal parametric model platform, which calls rendering services, two-dimensional engineering drawing services, and calculation list services from the universal parametric model platform to generate plan renderings, two-dimensional construction drawings, and calculation list reports
- the user can also draw the parametric model in the decoration design plan in a UI editing interface, such as ceiling, wall panel, background wall, etc.
- a UI editing interface such as ceiling, wall panel, background wall, etc.
- This UI editor transmits the design data to the universal
- the parametric model platform generates general parametric models.
- the user can also use a parameterized scripting language to program in a code editing interface to design a home parametric model. He can use design elements defined by general parametric model platforms such as stretching and rotation, as well as parametric design elements in the field of decoration design such as "corner”, “skirt”, and "downlight”.
- Example 4 As shown in Figure 9, in the field of furniture design:
- furniture design software such as TopSolid
- the intermediate data of the parametric model can be used as a data protocol, and the furniture data of these design software can be directly converted into the intermediate data of the parametric model through the form of cloud services.
- These furniture design software usually defines parametric models of common hardware such as "plates” or “bolts” and “slides”. We can also extend these elements in the intermediate data structure of the parametric model.
- Parametric design elements such as "plates”, “pins”, and “slideways” can also be realized on the universal parametric model platform, and these parametric models can be imported into the universal parametric model platform. After the universal parametric model platform provides a series of query and calculation functions, these parametric furniture models can be transmitted to the browser/client/mobile terminal and other front-ends for display.
- the user can call up the parameterized model of furniture or its sub-components such as various hardware from a parameterized model library, and adjust their parameters.
- These front-end software send the parameterized template id and adjusted parameters corresponding to the model to the general parameterized model platform for calculation. The calculated result returns to the front end to display again.
- the user can also click the buttons of "Export Rendering Rendering", “Export 2D Engineering Drawing”, “Export BOM”, etc.
- the front-end software will soon include the design plan data of the parameterized model.
- the universal parametric model platform calls rendering services, two-dimensional engineering drawing services, calculation list services, etc., to generate furniture renderings, two-dimensional engineering drawings, and BOM tables
- the user can also draw the parametric model in the furniture design plan in a UI editing interface.
- This UI editor transmits the design data to the universal parametric model platform to generate a universal parametric model .
- the user can also use a parametric scripting language programming in a code editing interface to design a furniture parametric model. He can use design elements defined by general parametric model platforms such as stretching and rotation, as well as parametric design elements in the furniture design field such as "plates”, “bolts”, and “slides”.
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Description
Claims (7)
- 一种基于云的通用参数化模型解析方法,其特征在于,所述方法包括:步骤1:导入或导出任意CAD软件的参数化模型,先定义一个通用参数化模型中间数据结构,再基于CAD软件开发一个插件,或利用数据读写SDK开发一个应用,将CAD软件参数化模型中的各种元素读出,并解析出它们之间的依赖关系,写成符合中间数据结构的数据,同时创建出通用参数化模型;步骤2:从多种渠道创建通用参数化模型,包括以下步骤:a.利用多种高级语言实现通用参数化模型的创建;b.将创建好的通用参数化模型按照类别统一存储在数据库中,对于不同的应用按id加载这些参数化模型,并施加不同的参数,得到不同的计算结果,存储在数据库中的待重用的参数化模型形成参数化模板;c.提供一个创建参数化模板的API,将参数化模型中间数据中记录的元素一一映射为在步骤a中高级语言定义的函数,并设置好函数输入参数和返回值之间的关系,完成通用参数化模板的创建;步骤3:在云端计算、存储和查询参数化模型,将参数化模板存储在云端数据库中,并为每个参数化模板在数据库中记录一些元信息,提供一个查询参数化模型元信息的API供前端查询,同时提供一个计算参数化模型的API,通过用户提供参数化模板的id和一组参数的取值,计算出该参数化模型在取这组值时的形状和外观;步骤4:在前端显示参数化模型,通用参数化模型平台会把计算出的模型几何及材质信息传输到前端进行显示,前端将接收到的信息通过进一步调用相应的解析程序进行解析,然后在浏览器或客户端中进行显示;步骤5:利用第三方云服务,扩展参数化模型平台的业务支持能力,将通用参数化模型平台与第三方服务约定数据接口,从参数化模型的计算结果中抽取相应信息,传输给第三方服务,并将第三方服务计算的结果返回给前端进行显示;步骤6:支持各细分领域的参数化设计软件,基于参数化模型通用数据结构扩展出适应各个细分行业的参数化设计语言超集,实现各细分行业的具体设计需求。
- 根据权利要求1所述的基于云的通用参数化模型解析方法,其特征在于:所述步骤1中的通用参数化模型中间数据结构由参数、几何图元、几何约束、几何造型方法以及这些元素之间的依赖关系组成。
- 根据权利要求1所述的基于云的通用参数化模型解析方法,其特征在于:所述步骤2中还可通过一个带UI的编辑器,将用户的交互过程记录为参数化模型中间数据,再转换为通用参数化模型;或通过一种参数化模型脚本语言来生成通用参数化模型,该种脚本语言,可用任意一种现存的解释型脚本语言,也可用高级语言重新定义而成,该种脚本语言用脚本的方式生成参数化模型中间数据,再转换为通用参数化模型;也可用一段实现通用参数化模型 的高级语言代码来生成通用参数化模型。
- 根据权利要求1所述的基于云的通用参数化模型解析方法,其特征在于:所述步骤3中还可提供一个计算一组参数化模型的API,同时计算多个参数化模型并返回,从而减少网络请求的次数,提高前端应用的响应速度。
- 一种基于云的通用参数化模型设计系统,其特征在于,主要包括:参数化模型通用数据结构、参数化模型中间数据结构和几何模型通用表达数据结构;其中,所述的参数化模型中间数据结构用于实现任意CAD软件参数化模型的导入或导出,即双向数据转换;所述的参数化模型通用数据结构通过参数化模型转换服务由参数化模型中间数据结构转换得到;所述的几何模型通用表达数据结构通过参数化模型计算服务由参数化模型通用数据结构计算得到。
- 根据权利要求5所述的基于云的通用参数化模型设计系统,其特征在于:基于所述的参数化模型通用数据结构扩展出适应各个细分行业的参数化设计语言超集,实现细分行业的具体设计需求。
- 根据权利要求5所述的基于云的通用参数化模型设计系统,其特征在于:所述的几何模型通用表达数据结构作为标准接口数据结构,用于对接第三方服务。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010141840.5A CN111324965B (zh) | 2020-03-04 | 2020-03-04 | 一种基于云的通用参数化模型解析方法及设计系统 |
CN202010141840.5 | 2020-03-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021174660A1 true WO2021174660A1 (zh) | 2021-09-10 |
Family
ID=71165552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/088236 WO2021174660A1 (zh) | 2020-03-04 | 2020-04-30 | 一种基于云的通用参数化模型解析方法及设计系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111324965B (zh) |
WO (1) | WO2021174660A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113902877A (zh) * | 2021-09-30 | 2022-01-07 | 中北大学 | 一种基于revit族图元模型互导的方法 |
CN113935087A (zh) * | 2021-09-22 | 2022-01-14 | 深圳市和一广告装饰工程有限公司 | 一种装修方案分析方法及系统 |
CN115062362A (zh) * | 2022-08-11 | 2022-09-16 | 杭州片段网络科技有限公司 | 基于FreeCAD内核的纸盒刀版开发方法、装置及相关设备 |
CN115291842A (zh) * | 2022-08-24 | 2022-11-04 | 金航数码科技有限责任公司 | 一种cad结构件轻量化转换与在线浏览方法及系统 |
CN115311429A (zh) * | 2022-08-09 | 2022-11-08 | 北京飞渡科技有限公司 | 一种基于Revit的数据导出方法及系统 |
WO2023103415A1 (zh) * | 2021-12-09 | 2023-06-15 | 上海望友信息科技有限公司 | 元器件建模及参数化的方法、系统、电子设备及存储介质 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651903A (zh) * | 2020-07-07 | 2020-09-11 | 中国科学院近代物理研究所 | 一种粒子加速器工程优化方法和系统 |
CN112381229B (zh) * | 2020-11-03 | 2024-01-02 | 中国直升机设计研究所 | 一种基于三维数模的知识集成系统及方法 |
CN112327719B (zh) * | 2020-11-19 | 2022-10-25 | 山东高速信息集团有限公司 | 一种智慧园区中台统一应用接口库的实现方法及系统 |
CN112465953A (zh) * | 2020-12-02 | 2021-03-09 | 杭州群核信息技术有限公司 | 一种基于模板的快速参数化建模方法 |
CN112449022B (zh) * | 2020-12-08 | 2023-07-18 | 和利时卡优倍科技有限公司 | 云边协同方法、装置、系统及电子设备 |
CN112560156A (zh) * | 2020-12-24 | 2021-03-26 | 杭州群核信息技术有限公司 | 一种基于几何约束的家具动态设计展示方法及系统 |
CN112818538B (zh) * | 2021-01-29 | 2023-07-07 | 北京仿真中心 | 一种想定参数层次设计方法 |
CN113076574B (zh) * | 2021-04-20 | 2023-05-02 | 西安交通大学 | 一种轻量化跨平台的在线参数化建模方法 |
CN113434934A (zh) * | 2021-06-28 | 2021-09-24 | 杭州群核信息技术有限公司 | 家居布局摆放方法、装置和存储介质 |
CN113450458B (zh) * | 2021-06-28 | 2023-03-14 | 杭州群核信息技术有限公司 | 家居参数化模型的数据转化系统、方法、装置和存储介质 |
CN113535159A (zh) * | 2021-07-20 | 2021-10-22 | 中船第九设计研究院工程有限公司 | 一种基于ruby语言的工厂设施双向参数化建模方法 |
CN113572846A (zh) * | 2021-07-27 | 2021-10-29 | 广州引力波信息科技有限公司 | 一种跨平台数据交换插件系统 |
CN113627010A (zh) * | 2021-08-05 | 2021-11-09 | 浙江吉利控股集团有限公司 | 一种自适应实例化方法及自适应实例化系统 |
CN114926595A (zh) * | 2022-07-21 | 2022-08-19 | 深圳小库科技有限公司 | 一种多格式三维模型的生成方法、装置、设备及存储介质 |
CN117725767A (zh) * | 2024-02-18 | 2024-03-19 | 粤港澳大湾区数字经济研究院(福田) | 参数化构件模型自动生成方法、插件、系统、终端及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150317413A1 (en) * | 2014-05-01 | 2015-11-05 | Fujitsu Limited | Flexible cad format |
CN105426527A (zh) * | 2015-12-16 | 2016-03-23 | 北京吉威时代软件股份有限公司 | 一种信息化测绘生产装备集成过程中统一数据建模的方法 |
CN107424212A (zh) * | 2017-07-31 | 2017-12-01 | 东风设计研究院有限公司 | Dgrvt文件格式及基于该文件格式的数据集成系统和方法 |
CN110598259A (zh) * | 2019-08-15 | 2019-12-20 | 杭州群核信息技术有限公司 | 一种基于参数化的2d铺贴设计方法、电子设备及存储介质 |
CN110705078A (zh) * | 2019-09-25 | 2020-01-17 | 哈尔滨工程大学 | 一种核动力装置的仿真模型开发系统及分析方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101377796B (zh) * | 2008-09-23 | 2010-07-14 | 武汉大学 | 一种基于过程恢复的异构cad系统间参数化特征模型的数据交换方法 |
CN102129718A (zh) * | 2011-03-16 | 2011-07-20 | 西安电子科技大学 | 一种无失真的异构cad模型转换方法 |
CN103092594B (zh) * | 2011-11-07 | 2016-01-20 | 金蝶软件(中国)有限公司 | 模型转换方法及装置 |
CN104392037B (zh) * | 2014-11-18 | 2017-05-10 | 衢州学院 | 一种城市场景参数化建模系统 |
CN105975723B (zh) * | 2016-05-27 | 2019-04-16 | 北京航空航天大学 | 一种用于航天器研制过程中异构cad模型的数据交换方法 |
CN106406906A (zh) * | 2016-10-10 | 2017-02-15 | 云南大学 | 一种基于特定领域建模的模型驱动开发方法 |
US10515479B2 (en) * | 2016-11-01 | 2019-12-24 | Purdue Research Foundation | Collaborative 3D modeling system |
CN107992651A (zh) * | 2017-11-20 | 2018-05-04 | 中铁第四勘察设计院集团有限公司 | 一种参数化二维成图方法及系统 |
-
2020
- 2020-03-04 CN CN202010141840.5A patent/CN111324965B/zh active Active
- 2020-04-30 WO PCT/CN2020/088236 patent/WO2021174660A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150317413A1 (en) * | 2014-05-01 | 2015-11-05 | Fujitsu Limited | Flexible cad format |
CN105426527A (zh) * | 2015-12-16 | 2016-03-23 | 北京吉威时代软件股份有限公司 | 一种信息化测绘生产装备集成过程中统一数据建模的方法 |
CN107424212A (zh) * | 2017-07-31 | 2017-12-01 | 东风设计研究院有限公司 | Dgrvt文件格式及基于该文件格式的数据集成系统和方法 |
CN110598259A (zh) * | 2019-08-15 | 2019-12-20 | 杭州群核信息技术有限公司 | 一种基于参数化的2d铺贴设计方法、电子设备及存储介质 |
CN110705078A (zh) * | 2019-09-25 | 2020-01-17 | 哈尔滨工程大学 | 一种核动力装置的仿真模型开发系统及分析方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113935087A (zh) * | 2021-09-22 | 2022-01-14 | 深圳市和一广告装饰工程有限公司 | 一种装修方案分析方法及系统 |
CN113902877A (zh) * | 2021-09-30 | 2022-01-07 | 中北大学 | 一种基于revit族图元模型互导的方法 |
CN113902877B (zh) * | 2021-09-30 | 2024-05-17 | 中北大学 | 一种基于revit族图元模型互导的方法 |
WO2023103415A1 (zh) * | 2021-12-09 | 2023-06-15 | 上海望友信息科技有限公司 | 元器件建模及参数化的方法、系统、电子设备及存储介质 |
CN115311429A (zh) * | 2022-08-09 | 2022-11-08 | 北京飞渡科技有限公司 | 一种基于Revit的数据导出方法及系统 |
CN115062362A (zh) * | 2022-08-11 | 2022-09-16 | 杭州片段网络科技有限公司 | 基于FreeCAD内核的纸盒刀版开发方法、装置及相关设备 |
CN115062362B (zh) * | 2022-08-11 | 2022-11-08 | 杭州片段网络科技有限公司 | 基于FreeCAD内核的纸盒刀版开发方法、装置及相关设备 |
CN115291842A (zh) * | 2022-08-24 | 2022-11-04 | 金航数码科技有限责任公司 | 一种cad结构件轻量化转换与在线浏览方法及系统 |
CN115291842B (zh) * | 2022-08-24 | 2024-01-30 | 金航数码科技有限责任公司 | 一种cad结构件轻量化转换与在线浏览方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111324965B (zh) | 2023-04-21 |
CN111324965A (zh) | 2020-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021174660A1 (zh) | 一种基于云的通用参数化模型解析方法及设计系统 | |
Fu et al. | IFC model viewer to support nD model application | |
US5712964A (en) | Computer graphics data display device and method based on a high-speed generation of a changed image | |
Faraj et al. | An industry foundation classes Web-based collaborative construction computer environment: WISPER | |
Qin et al. | A framework of web-based conceptual design | |
US20040024624A1 (en) | Method and system for leveraging functional knowledge using a requirement and space planning tool in an engineering project | |
Ying et al. | Generating second-level space boundaries from large-scale IFC-compliant building information models using multiple geometry representations | |
CN114491964A (zh) | 一种可进行协同工作的数字孪生建模系统 | |
US6925473B2 (en) | Staged stylization in multiple tiers | |
Xu et al. | Developing an extended IFC data schema and mesh generation framework for finite element modeling | |
Shengyi et al. | Research on integrated application of virtual reality technology based on BIM | |
Liang | A web-based 3D virtual technologies for developing product information framework | |
Zhang | Development of 3D Modeling Parameter Design in Furniture Design | |
Penev | Computer Graphics And Geometric Modelling–A Hybrid Approach | |
CN117708962B (zh) | 一种基于Rhinoceros二三维一体化设计的方法及系统 | |
Wu et al. | Design and Implementation of an IFC Data Model to Unity Data Model Transformation Mechanism | |
Wang et al. | Development of Fashion Design System Based on Virtual Reality Technology | |
Gao et al. | Research on Parametric Component Library of Prefabricated Building Based on IFC Standard | |
Ren et al. | Modeling of irregular structures for the construction simulation in virtual reality environments based on web | |
Kadarova et al. | The use of programmes for the digitization of production clusters | |
Lipman | Immersive virtual reality for steel structures | |
Li | Development of Virtual Simulation Teaching System of Architectural Decoration Structure Based on WebGL Environment | |
Flotyński et al. | Ontology-Based Creation of Extended Reality | |
CN117632215A (zh) | 基于ipc技术既有软件新增并行引擎的升级方法 | |
Sun | Research on a fast method of building procedural modeling |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20923229 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20923229 Country of ref document: EP Kind code of ref document: A1 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 11.07.2023) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20923229 Country of ref document: EP Kind code of ref document: A1 |