CN113902877B - Method for mutual conductance based on revit-family primitive model - Google Patents

Method for mutual conductance based on revit-family primitive model Download PDF

Info

Publication number
CN113902877B
CN113902877B CN202111157030.XA CN202111157030A CN113902877B CN 113902877 B CN113902877 B CN 113902877B CN 202111157030 A CN202111157030 A CN 202111157030A CN 113902877 B CN113902877 B CN 113902877B
Authority
CN
China
Prior art keywords
information
data
model
obtaining
family
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111157030.XA
Other languages
Chinese (zh)
Other versions
CN113902877A (en
Inventor
薛建英
寇锦德
王梦洁
韩云山
耿少波
马林林
孟繁敏
郑亮
刘亚玲
吴凡
屈晓曦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
North University of China
Original Assignee
North University of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by North University of China filed Critical North University of China
Priority to CN202111157030.XA priority Critical patent/CN113902877B/en
Publication of CN113902877A publication Critical patent/CN113902877A/en
Application granted granted Critical
Publication of CN113902877B publication Critical patent/CN113902877B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)

Abstract

The invention discloses a method based on Revit family primitive model mutual conductance, which belongs to the technical field of building information models and solves the problem of information island caused by incapability of realizing intercommunication of model data between BIM modeling software at the present stage. By exporting and importing the model data information, the relevant data information in the model can be conveniently checked, and the support of a data format can be provided for the mutual conductance between the revit model and other software, so that the development process of realizing one-mode multiple purposes and solving the problem of data information island between the existing building software is promoted.

Description

Method for mutual conductance based on revit-family primitive model
Technical Field
The invention belongs to the technical field of building information models, and particularly relates to a method for mutual conductance based on revit-family primitive models.
Background
The application level of BIM (Building Information Modeling) technology is still in the early development stage, the corresponding system and standard are not perfect, and a large amount of BIM software is under development or preliminary application exploration. The model data between many modeling software cannot be communicated, resulting in data islanding.
According to the BIM technology concept, the technology is to run through the whole life cycle of a building, and during the period, each piece of professional software is required to cooperate, and the development of the BIM technology is greatly affected by the defect of data non-intercommunication. Most of foreign building software cited in China at present obtains that most of data results do not meet the national standard requirements, so secondary development based on building software model data is very important, cross-platform mutual conductance of data is realized, and development progress of the domestic BIM technology is promoted to a great extent.
Disclosure of Invention
The invention aims to overcome the defects of the prior art and solve the problem of information island caused by incapability of realizing intercommunication of model data between BIM modeling software at the present stage, and provides a method based on the inter-conductance of a revit-family primitive model and a corresponding data format, wherein the data format supports the export and the import based on a revit-family model and provides data support for the inter-conductance of a revit-cross-platform model.
The invention is realized by the following technical scheme.
A method for group revit primitive model transconductance, comprising the steps of:
S1, creating a Revit three-dimensional model: building a family three-dimensional model based on a metric conventional model family template by using building information model software REVIT;
S2, revit building secondary development platform
RevitAPI implement software functionality extension by either of the following two ways:
A. The method is realized through an external command interface, the interface is provided with only one abstract function Excute, the abstract function is called as a main function when the plug-in runs, and the plug-in creation is completed by adding function codes to be realized in the main function;
B. The method is realized through an external application interface, the interface is provided with two abstract functions OnStartup and OnShutdown, and the creation of the functions is completed by reloading the OnStartup and OnShutdown abstract functions when an external command is used;
s3, extracting primitive information of Revit family model and generating data file
S3-1, obtaining basic information of family
1) Acquiring management class of family file data through the family file;
2) Obtaining the current family type and all family types of the family file through the management type obtained in the step 1), wherein each family type is defined as a specific name;
3) Obtaining family parameter information in a family file through the management class obtained in the step 1), wherein the family parameter information comprises the following components: parameter name, parameter family number, parameter type, whether it is an instance parameter or not, and formula information; acquiring a set containing group Parameters through the attribute Parameters of the management class of the group file data, traversing the group Parameters in the set through Foreach, respectively extracting names, group numbers and parameter type information corresponding to the group Parameters, and storing the information according to the corresponding group Parameters;
s3-2, obtaining reference primitive information in the family file
1) The reference primitive information in the family file includes six elements: the method comprises the steps of filtering six parts of elements through element filters, filtering and collecting the dimension marking and the alignment marking by using class filters, and filtering and collecting the rest elements by using class filters; the collected elements are put into IList < Element > sets through ToElements () method, and finally the sets are put into corresponding memories according to different elements;
2) Data processing is carried out on different elements respectively
A. And (3) size marking:
a-a. Acquiring basic data information
Extracting each dimension mark by traversing a set of stored dimension marks, and extracting corresponding basic data information by the attribute of the dimension mark, wherein the basic data information comprises: the unique identifier of the size marking, the front decoration text, the rear decoration text, the upper decoration text, the lower decoration text, whether the size marking is equal-division size marking or not and whether the size marking is related to the parameter or not;
A-b. obtaining parameter-associated data information
When the dimension marking is associated with the parameter, obtaining the associated group parameter through dimension1.Family Label, and extracting the basic information of the parameter by utilizing the attribute of the group parameter for the parameter matching in the subsequent model reverse building process;
a-c. obtaining reference associated data information
Obtaining marked reference data through dimension1.References, wherein the marked reference data comprises a unique identifier related to a constraint object;
a-d, obtaining the information of the dimension marking type
The types of dimensioning are classified as: straight line marking, radius marking, diameter marking, arc length marking, angle marking and elevation marking, and obtaining the type of the dimension marking through the dimension1.Dimension shape attribute; when the size label is a straight line label, the starting point of the straight line and the direction of the line need to be extracted due to the constraint of the reverse construction method; when the size is marked as other types, only extracting the starting point of the line and the basic information of the line;
a-e. obtaining dimension-marked view information
Obtaining a view through a menu 1.View attribute, and respectively obtaining vertical, upward and rightward coordinate vectors of a view screen through ViewDirection, upDirection, rightDirection attributes of the view;
B. Alignment marking:
repeating the steps A-a to A-c, and extracting the basic data information, the parameter associated data information and the reference associated data information of the alignment mark;
C. elevation:
C-a. Acquiring basic data information of elevation
Each elevation is extracted by traversing the set of stored elevations, elevation data information of the elevations is obtained through a level1.Elevation attribute, a unique identifier of the elevation is obtained through the level1.UniqueId attribute, and project elevation data information of the elevations is obtained through the level1. ProjectElevation;
c-b, acquiring a reference unique identifier of the elevation, and storing the information in a memory of reference data;
D. sketch plane
Extracting each sketch plane by traversing a set of stored sketch planes, obtaining a plane where the sketch plane is located by a GetPlane () method, and then respectively obtaining a normal vector, a starting point, an X-direction vector and a Y-direction vector corresponding to the plane by Normal, origin, XVec, YVec attributes;
E. Reference plane
Extracting each reference plane by traversing a set of storage reference planes, acquiring data information of free end coordinates, tail end coordinates, normal vectors and origin coordinates by means of attributes of the reference planes, matching new and old data in a reverse construction process, acquiring parameters of a definition origin by means of a get_ PARAMETER (BUILTINPARAMETER) method, and acquiring whether the reference plane defines a model origin;
F. reference line
Extracting each reference Line by traversing a set of stored reference lines, obtaining a Curve object of a model Line through a ModelLine1.GeomeryCurve attribute, and when the reference Line is a straight Line, strongly converting the Curve object into the Line to obtain the model Line of the straight Line type; when the Curve is referred to, curve is strongly converted into Arc to obtain a model line of an Arc type; finally, corresponding data information is obtained through the attribute of the line;
G. reference point
Extracting each reference point by traversing a set of stored reference points, and acquiring the Position coordinates of the reference points by the Position attribute of the reference points;
S3-3, obtaining geometric model information
1) Filtering and sub-packaging all geometric bodies
Filtering all the geometric bodies in the group file according to the category by creating an element filter FilteredElementCollector and using a category filtering method, and respectively storing the geometric bodies in a corresponding memory;
2) Processing data according to corresponding drawing and generating modes for different types of geometric bodies
The family three-dimensional model includes five types of parameter information and model geometry: the drawing body, the rotating body, the fusion body, the lofting body and the fusion lofting body;
A. stretching body
The basic data information of the stretched body includes: drawing starting point, drawing end point, boolean value (judging whether the drawing is entity or not), drawing sketch plane and drawing model line, and respectively obtaining drawing starting point, end point and Boolean value through StartOffset, endOffset, isSolid attribute of a drawing body; acquiring a set of all geometric data related to the stretching body through a GETDEPENDENTELEMENTS () method, sub-packaging the data according to the category of the data by using a GetElementListFormElementId () method, and finding out data about sketch planes and model contour lines from the data;
B. Fusion body
The basic data information of the fusion body comprises: the bottom sketch plane, the bottom model contour line, the top model contour line and the Boolean value are respectively obtained through IsSolid, bottomProfile, topProfile attributes of the fusion body; in the generation of the fusion body, the bottom contour line and the top contour line automatically generate a sketch plane belonging to the fusion body, and the coordinates of the contour lines are relative to the sketch plane, in the method provided by the API, only one sketch plane of the bottom contour line is needed for creating the fusion body, so that secondary treatment is needed for the coordinates of the bottom contour line and the top contour line according to the actual condition of the fusion body, and the secondary treatment comprises the following steps: the sketch plane of the bottom contour line is obtained by filtering through GETDEPENDENTELEMENTS () method, curveArrArray array is obtained through BottomProfile, topProfile attribute, the array is converted into list form through GetCurveListFormCurveArrArray () method, then the lines are processed into orderly closed sets through GetCurveDicListFormCurveList () method, and finally the coordinates of the lines are processed and output through GetInformationFormCurveDicList () method in combination with the actual condition of the fusion body;
C. Rotating body
The basic data information of the rotating body includes: the method comprises the steps of respectively obtaining a Boolean value, a starting rotation angle, a stopping rotation angle, a rotation shaft, a model contour line and a sketch plane through IsSolid, startAngle, endAngle, axis attributes of a rotation body, obtaining data information of the Boolean value, the starting rotation angle, the stopping rotation angle and the rotation shaft, obtaining information of the sketch plane and the model contour line through GETDEPENDENTELEMENTS () method filtration, and carrying out secondary treatment on the model contour line information through SortCurveList () and GetInformationFormCurveElementDicList () methods;
D. Lofting body
The basic data information of the lofting body comprises: the method comprises the steps of obtaining a Boolean value through IsSolid attributes of a lofting body, obtaining corresponding path and path sketch plane data information through PATHSKETCH attributes, and obtaining outline data information through ProfileSketch attributes; because the coordinate data of the contour line is based on the sketch plane, secondary processing is needed to be carried out on the coordinate information of the contour line, and the coordinate data is converted into local coordinates from space coordinates;
E. fusion lofting body
The basic data information of the fusion loft body comprises: the method comprises the steps of processing data of a fusion lofting body through attribute and line secondary processing according to the method of steps B and D in the step S3-3, wherein the characteristics of the fusion lofting body and the lofting body are combined by the fusion lofting body;
3) Extracting geometric reference data information of geometric body
Acquiring a geometric data set of the entity object through a get_geometry () attribute, and controlling the detail degree of the view by utilizing DETAI LLEVEL attributes of Options geometric Options;
In the geometric data set, geometric data exists as geometryinstance and Solid aggregates, geometryinsta nce exists from the Solid aggregates, so that when the geometric data is processed, all data are converted into the Solid aggregates, and then unified processing is carried out, and the method comprises the following steps of:
The GeometryElement is strongly converted into the Solid, or GeometryElement is strongly converted into GeometryInstance, and then a Solid collection is obtained by utilizing a geometry Instance. The method comprises the steps that line information and surface information are contained in a Solid set, corresponding line and surface data sets are obtained through solid1.edge and solid1.faces attributes respectively, then each set is traversed, each line or surface is subjected to data processing according to categories, data information of all line types is obtained through a GetGeometryReferenceFormCurve () method, data information of all surface types is obtained through a GetGeometryReferenceFormFace () method, corresponding Reference unique identifiers are obtained through Reference attributes, and the data are used for being associated with references marked by sizes;
S4, creating an information extraction plug-in
① . Creating a class library and adding references: creating a class library, and sequentially adding a database API, an interface API, an application service API, an attribute API, a Windows window control and a naming space of data stream operation according to the functions to be realized;
② . Creating a Transaction: submitting an operation of modifying the Revit model to an object of the document;
③ . Main code programming: writing the main body function code of the information extracted in the step ②;
④ . Create plug-in button GetInfo: firstly adding an embedded panel, then calling PushButton classes to add a button control, and finally calling Uri classes to import corresponding icons into buttons;
⑤ . Registering and operating an expansion module: when the button in the step ④ is finished, an internal starting file is compiled, the button is led into the interior of the Revit software, the path of the dll file and the ID of the dll, which are generated by programming the function program of the component information extraction plug-in program realized by the text, are written into the file, the plug-in of the component information extraction method can be seen by opening the Revit software, and the BIM model component information extraction operation can be performed by clicking the button.
Compared with the prior art, the invention has the beneficial effects that:
The invention uses BIM mainstream software Revit, and performs secondary development by means of open API thereof, creates plug-in for generating Revit family model data file and plug-in for generating Revit family model by combining family model data file. By exporting and importing the model data information, the relevant data information in the model can be conveniently checked, and the support of a data format can be provided for the mutual conductance between the revit model and other software, so that the development process of realizing one-mode multiple purposes and solving the problem of data information island between the existing building software is promoted.
Drawings
FIG. 1 is a general flow chart for data extraction;
FIG. 2 is a flow chart for creating a plug-in;
fig. 3 is a flowchart of primitive data information extraction.
Detailed Description
The invention is described in further detail below with reference to the drawings and examples.
A method for group revit primitive model transconductance, comprising the steps of:
S1, creating a Revit three-dimensional model: building a family three-dimensional model based on a metric conventional model family template by using building information model software REVIT;
S2, revit building secondary development platform
RevitAPI implement software functionality extension by either of the following two ways:
A. Implemented through an external command (IExternal Command) interface, which has and has only one abstract function Excute, which is called as a main function when the plug-in runs, and plug-in creation is completed by adding the function code to be implemented in the main function;
B. The method is realized through an external application (External Application) interface, the interface is provided with two abstract functions OnStartup and OnShutdown, and the creation of the functions is completed by reloading the OnStartup and OnShutdown abstract functions when an external command is used;
development involves the tool: visual Studio 2019, revit2020, revitAPI2020, revitLookUp2020.
S3, extracting primitive information of Revit family model and generating data file
The invention is developed based on RevitAPI2020, and the extraction of the data is divided into three parts of basic family information, reference primitive information and geometric model information by researching the API expansion method and combining the characteristics of the family model data.
S3-1, obtaining basic information of family
1) A management class FAMILYMANGER for obtaining the family file data through the family file doc.family manager;
2) Obtaining the current family type and all family types of the family file through the management type obtained in the step 1), wherein each family type is defined as a specific name;
3) Obtaining family parameter information in a family file through the management class obtained in the step 1), wherein the family parameter information comprises the following components: parameter name, parameter family number, parameter type, whether or not it is an instance parameter (boolean value) and formula information; acquiring a set FAMILYPARAMETERSET containing group Parameters through the attribute Parameters of the management class FAMILYMANGER of the group file data, traversing the group Parameters in the set through Foreach, respectively extracting names, group numbers and parameter type information corresponding to the group Parameters, and storing the information according to the corresponding group Parameters;
The core code is as follows:
Management class for data of/obtained family file
FamilyManager famManger=doc.FamilyManager;
Current family type of/(and obtaining family file)
FamilyType curType=famManger.CurrentType;
Name of current family type is obtained
string curTypeName=curType.Name;
All family types of the/acquisition family file
Obtaining family parameter information in a family file
S3-2, obtaining reference primitive information in the family file
1) The reference primitive information in the family file includes six elements: the six parts of elements are filtered through an element filter FilteredElementCollector, and in order to distinguish the dimension marking and the alignment marking, the class filter (OfCategory () method) is adopted to filter and collect the dimension marking and the alignment marking, and the other elements are filtered and collected by a class filter (OfClass () method); the collected elements are put into IList < Element > sets through ToElements () method, and finally the sets are put into corresponding memories according to different elements;
The core code is as follows:
Filter for element
2) Data processing is carried out on different elements respectively
A. And (3) size marking:
a-a. Acquiring basic data information
Extracting each dimension mark by traversing a set of stored dimension marks, and extracting corresponding basic data information by the attribute of the dimension mark, wherein the basic data information comprises: the unique identifier of the size marking, the front decoration text, the rear decoration text, the upper decoration text, the lower decoration text, whether the size marking is equal-division size marking or not and whether the size marking is related to the parameter or not;
The core code is as follows:
A-b. obtaining parameter-associated data information
When the dimension marking is associated with the parameter, obtaining the associated group parameter through dimension1.Family Label, and extracting the basic information of the parameter by utilizing the attribute of the group parameter for the parameter matching in the subsequent model reverse building process;
The core code is as follows:
a-c. obtaining reference associated data information
In the family file, the annotation is determined by reference to an object to be constrained, reference data of the annotation is obtained by dimension1.References, and the reference data of the annotation contains a unique identifier related to the constrained object; many elements in the file can be used as constraint objects, such as reference planes, elevations, reference lines, reference points, geometric line surfaces and model lines, all have corresponding unique identifiers, the unique identifiers of the elements are consistent with the identifiers in the annotation references, the unique identifiers of the elements are inconsistent with the identifiers in the annotation references, and corresponding data processing is needed later.
The core code is as follows:
a-d, obtaining the information of the dimension marking type
The types of dimensioning are classified as: straight line marking, radius marking, diameter marking, arc length marking, angle marking and elevation marking, and obtaining the type of the dimension marking through the dimension1.Dimension shape attribute; when the size label is a straight line label, the starting point Origin of the straight line and the Direction of the line need to be extracted due to the constraint of the reverse construction method; when the size is marked as other types, only the starting point Origin of the line and the basic information of the line are extracted.
The core code is as follows:
because of the specificity of the linear labeling parameters during the reverse construction, the output of the labeling data is modified as follows
A-e. obtaining dimension-marked view information
In the creation of the model, the view is divided into a plane view and a vertical view, attribute information of different views is different, when the dimension marking is not uniform dimension marking or the constraint object is not a geometric line surface, the view can be obtained through a dimension 1.View attribute, and coordinate vectors of the view screen, which are vertical, upward and rightward, are respectively obtained through a ViewDirection, upDirection, rightDirection attribute of the view; in addition, the data information of the view needs to be obtained through attribute information of other elements.
The core code is as follows:
B. Alignment marking:
The alignment marks are different from the dimension marks in that: the method has no labeling type and no corresponding view data, and other data extraction methods (acquiring basic data information, acquiring parameter associated data information and acquiring reference associated data information) are the same as the size labeling, namely, the steps A-a-A-c are repeated, and the basic data information, the parameter associated data information and the reference associated data information of the alignment labeling are extracted;
C. elevation:
C-a. Acquiring basic data information of elevation
Each elevation is extracted by traversing the set of stored elevations, elevation data information of the elevations is obtained through a level1.Elevation attribute, a unique identifier of the elevation is obtained through the level1.UniqueId attribute, and project elevation data information of the elevations is obtained through the level1. ProjectElevation;
The core code is as follows:
InformationData inforData=new InformationData();
Level level1=ele as Level;
inforData.elementInformation.Add("Elevation",level1.Elevation.ToString());
inforData.elementInformation.Add("ProjectElevation",level1.ProjectElevation.ToString());
eleData.allElementDatas.Add(level1.UniqueId,inforData);
c-b, acquiring a reference unique identifier of the elevation, and storing the information in a memory of reference data;
because the unique identifier of the elevation is inconsistent with the identifier referenced by the annotation when the elevation is taken as the constraint object of the size annotation, related data processing is needed for associating the data information of the subsequent elevation with the reference of the annotation;
The core code is as follows:
ElementDatas eleDataReference=new ElementDatas();
eleDataReference.refeElementDatas.Add("Level",inforData);
Where the output is made using the elevation derived reference constant, the actual situation is that the elevation reference is not the same as the elevation derived reference
extData.referanceElementDatas.Add(level1.GetPlaneReference().ConvertToStableRepresentation(ele.Document),eleDataReference);
D. sketch plane
Each sketch plane is extracted by traversing a collection of stored sketch planes, the sketch planes are indispensable elements for drawing geometric figures, each drawn line segment is attached to the corresponding sketch plane, and the number of sketch planes contained in different geometric bodies is different. Obtaining a plane where a sketch plane is located through GetPlane () method, and then respectively obtaining a normal vector, a starting point, an X-direction vector and a Y-direction vector corresponding to the plane through Normal, origin, XVec, YVec attribute;
The core code is as follows:
InformationData inforData=new InformationData();
PointData Normal=GetPointData(sketchPlane1.GetPlane().Normal);
inforData.pointDic.Add("Normal",Normal);
PointData Origin=GetPointData(sketchPlane1.GetPlane().Origin);
inforData.pointDic.Add("Origin",Origin);
PointData XVec=GetPointData(sketchPlane1.GetPlane().XVec);
inforData.pointDic.Add("XVec",XVec);
PointData YVec=GetPointData(sketchPlane1.GetPlane().YVec);
inforData.pointDic.Add("YVec",YVec);
eleData.allElementDatas.Add(sketchPlane1.UniqueId,inforData);
E. Reference plane
Extracting each reference plane by traversing a set of stored reference planes, acquiring data information of free end coordinates, tail end coordinates, normal vectors and origin coordinates by means of attributes of the reference planes, and acquiring whether the reference plane defines a model origin or not by means of a get_ PARAMETER (BUILTINPARAMETER) method, wherein the data information is used for matching new and old data in a reverse construction process;
The core code is as follows:
F. reference line
By traversing the set of stored reference lines, each reference line is extracted, only straight lines and circular arc lines are drawn in a process of drawing the reference lines, and the application of the straight lines and the circular arc lines in size marking constraint is the vast majority, so that only the reference lines of the straight lines and the circular arc lines are subjected to data extraction. The reference Line belongs to Curve class no matter straight Line or Curve, curve object of the model Line is obtained through the attribute of ModelLine1. GeomeryCurve, when the reference Line is straight Line, curve is strongly converted into Line, and the model Line of straight Line type is obtained; when the Curve is referred to, curve is strongly converted into Arc to obtain a model line of an Arc type; finally, corresponding data information is obtained through the attribute of the line;
The core code is as follows:
/>
G. reference point
Extracting each reference point by traversing a set of stored reference points, and acquiring the Position coordinates of the reference points by the Position attribute of the reference points;
The core code is as follows:
PointData Position=GetPointData(referencePoint1.Position);
inforData.pointDic.Add("Position",Position);
S3-3, obtaining geometric model information
The family model is formed by combining five types of geometric bodies, wherein the five geometric bodies are respectively: a stretching body, a rotating body, a fusion body, a lofting body and a fusion lofting body; each geometry has two forms, one is solid and the other is hollow. Since each geometry is drawn and generated differently and all the geometries are composed of lines and planes, the basic data of the geometry needs to be extracted separately, and one method can be shared for extracting the reference data of the geometry. It can be seen that the extraction of the geometric model information is divided into two major parts, namely basic data information and reference data information.
1) Filtering and sub-packaging all geometric bodies
Filtering all the geometric bodies in the group file according to the category by creating an element filter FilteredElementCollector and using a category filtering method, and respectively storing the geometric bodies in a corresponding memory;
The core code is as follows:
2) Processing data according to corresponding drawing and generating modes for different types of geometric bodies
A. stretching body
The basic data information of the stretched body includes: drawing starting point, drawing end point, boolean value (judging whether the drawing is entity or not), drawing sketch plane and drawing model line, and respectively obtaining drawing starting point, end point and Boolean value through StartOffset, endOffset, isSolid attribute of a drawing body; acquiring a set of all geometric data related to the stretching body through a GETDEPENDENTELEMENTS () method, sub-packaging the data according to the category of the data by using a GetElementListFormElementId () method, and finding out data about sketch planes and model contour lines from the data; in the drawing process, the situation that the drawing starting point of the generated geometric body is not 0 can occur, which directly affects the setting of the sketch plane in the reverse construction, so when the drawing starting point is not 0, corresponding modification is needed to be carried out on the corresponding sketch plane data. When the model contour line is processed, the model line is divided into categories such as straight lines, circular arcs, elliptical lines, spline curves and the like, and the obtained line set is disordered, and the creation of the stretching body requires the contour line to be orderly closed, so that secondary processing is required to be performed on the categories and the sequence of the lines in data processing.
The core code is as follows:
/>
/>
B. Fusion body
The basic data information of the fusion body comprises: the bottom sketch plane, the bottom model contour line, the top model contour line and the Boolean value are respectively obtained through IsSolid, bottomProfile, topProfile attributes of the fusion body; in the generation of the fusion body, the bottom contour line and the top contour line automatically generate a sketch plane belonging to the fusion body, and the coordinates of the contour lines are relative to the sketch plane, in the method provided by the API, only one sketch plane of the bottom contour line is needed for creating the fusion body, so that secondary treatment is needed for the coordinates of the bottom contour line and the top contour line according to the actual condition of the fusion body, and the secondary treatment comprises the following steps: the sketch plane of the bottom contour line is obtained by filtering through GETDEPENDENTELEMENTS () method, curveArrArray array is obtained through BottomProfile, topProfile attribute, the array is converted into list form through GetCurveListFormCurveArrArray () method, then the lines are processed into orderly closed sets through GetCurveDicListFormCurveList () method, and finally the coordinates of the lines are processed and output through GetInformationFormCurveDicList () method in combination with the actual condition of the fusion body;
The core code is as follows:
/>
C. Rotating body
The basic data information of the rotating body includes: the method comprises the steps of respectively obtaining a Boolean value, a starting rotation angle, a stopping rotation angle, a rotation shaft, a model contour line and a sketch plane through IsSolid, startAngle, endAngle, axis attributes of a rotation body, obtaining data information of the Boolean value, the starting rotation angle, the stopping rotation angle and the rotation shaft, obtaining information of the sketch plane and the model contour line through GETDEPENDENTELEMENTS () method filtration, and carrying out secondary treatment on the model contour line information through SortCurveList () and GetInformationFormCurveElementDicList () methods;
The core code is as follows:
/>
D. Lofting body
The basic data information of the lofting body comprises: the method comprises the steps of obtaining a Boolean value through IsSolid attributes of a lofting body, obtaining corresponding path and path sketch plane data information through PATHSKETCH attributes, and obtaining outline data information through ProfileSketch attributes; because the coordinate data of the contour line is based on the sketch plane, secondary processing is needed to be carried out on the coordinate information of the contour line, and the coordinate data is converted into local coordinates from space coordinates;
The core code is as follows:
/>
E. fusion lofting body
The basic data information of the fusion loft body comprises: the method comprises the steps of processing data of a fusion lofting body through attribute and line secondary processing according to the method of steps B and D in the step S3-3, wherein the characteristics of the fusion lofting body and the lofting body are combined by the fusion lofting body;
The core code is as follows:
3) Extracting geometric reference data information of geometric body
Acquiring a geometric data set of the entity object through a get_geometry () attribute, and controlling the detail degree of the view by utilizing DETAI LLEVEL attributes of Options geometric Options;
In the geometric data set, geometric data exists as geometryinstance and Solid aggregates, geometryinstance exists from the Solid aggregates, so that when the geometric data is processed, all data are converted into the Solid aggregates, and then unified processing is carried out, and the method comprises the following steps of:
The GeometryElement is strongly converted into the Solid, or GeometryElement is strongly converted into GeometryInstance, and then a Solid collection is obtained by utilizing a geometry Instance. The method comprises the steps that line information (edge) and face information (face) are contained in a Solid set, corresponding line and face data sets are obtained through solid1.edge and solid1.face attributes respectively, then each set is traversed, each line or face is subjected to data processing according to categories, data information of all line types is obtained through a GetGeometryReferenceFormCurve () method, data information of all face types is obtained through a GetGeometryReferenceFormFace () method, corresponding Reference unique identifiers are obtained through Reference attributes, and the data information is used for being associated with references of size labels;
The core code is as follows:
/>
/>
S4, creating an information extraction plug-in
A functional plug-in for automatically extracting model data information is manufactured on Revit software through a custom programming interface, in the embodiment, on a Visual Studio2019 platform, revit2020 edition of interface definition files RevitAPI.DLL and RevitAPIUI.DLL are referenced, and meanwhile, a naming space provided by a part RevitAPI is referenced, and plug-in development is realized by using C# language.
The information extraction function plug-in is realized by loading an Add-in file into the Revit software in a mode of extending the function based on an external application (External Application), and is invoked along with the starting of the Revit software and stopped along with the closing.
The method comprises the following specific steps:
① . Creating a class library and adding references: creating a class library, and sequentially adding a database API, an interface API, an application service API, an attribute API, a Windows window control and a naming space of data stream operation according to the functions to be realized;
The core code is as follows:
Using Autodesk.Revit.UI;
Using Autodesk.Revit.DB;
Using System.Windows.Forms;
Using System.IO;
...
② . Creating a Transaction: the transaction is an object for submitting a series of operations for modifying the Revit model to the document, any document modification operation needs to be contained in an opened transaction belonging to the document, otherwise, the operation is abnormally thrown;
The core code is as follows:
/>
③ . Main code programming: writing the main body function code of the information extracted in the step ②;
④ . Create plug-in button GetInfo: firstly adding an embedded panel, then calling PushButton classes to add a button control, and finally calling Uri classes to import corresponding icons into buttons;
⑤ . Registering and operating an expansion module: when the button in step ④ is finished, an internal starting file (namely an Add-in file) is compiled, the button is led into the Revit software, the path of the dll file and the ID of the dll are written into the file, which are generated by programming the function program of the component information extraction plug-in program realized by the text, the plug-in of the component information extraction method can be seen by opening the Revit software, and the BIM model component information extraction operation can be performed by clicking the button.
The XML file core code of addin is as follows:
the method according to claim 1, wherein: in the step S1, the family three-dimensional model includes five types of parameter information and model geometry: stretching body, rotator, fusion body, lofting body and fusion lofting body.
The foregoing is merely illustrative of the present invention, and the present invention is not limited thereto, and any changes or substitutions easily contemplated by those skilled in the art within the scope of the present invention should be included in the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (1)

1. A method based on revit family primitive model transconductance is characterized by comprising the following steps:
S1, creating a Revit three-dimensional model: building a family three-dimensional model based on a metric conventional model family template by using building information model software REVIT;
S2, revit building secondary development platform
RevitAPI implement software functionality extension by either of the following two ways:
A. The method is realized through an external command interface, the interface is provided with only one abstract function Excute, the abstract function is called as a main function when the plug-in runs, and the plug-in creation is completed by adding function codes to be realized in the main function;
B. The method is realized through an external application interface, the interface is provided with two abstract functions OnStartup and OnShutdown, and the creation of the functions is completed by reloading the OnStartup and OnShutdown abstract functions when an external command is used;
s3, extracting primitive information of Revit family model and generating data file
S3-1, obtaining basic information of family
1) Acquiring management class of family file data through the family file;
2) Obtaining the current family type and all family types of the family file through the management type obtained in the step 1), wherein each family type is defined as a specific name;
3) Obtaining family parameter information in a family file through the management class obtained in the step 1), wherein the family parameter information comprises the following components: parameter name, parameter family number, parameter type, whether it is an instance parameter or not, and formula information; acquiring a set containing group Parameters through the attribute Parameters of the management class of the group file data, traversing the group Parameters in the set through Foreach, respectively extracting names, group numbers and parameter type information corresponding to the group Parameters, and storing the information according to the corresponding group Parameters;
s3-2, obtaining reference primitive information in the family file
1) The reference primitive information in the family file includes six elements: the method comprises the steps of filtering six parts of elements through element filters, filtering and collecting the dimension marking and the alignment marking by using class filters, and filtering and collecting the rest elements by using class filters; the collected elements are put into IList < Element > sets through ToElements () method, and finally the sets are put into corresponding memories according to different elements;
2) Data processing is carried out on different elements respectively
A. And (3) size marking:
a-a. Acquiring basic data information
Extracting each dimension mark by traversing a set of stored dimension marks, and extracting corresponding basic data information by the attribute of the dimension mark, wherein the basic data information comprises: the unique identifier of the size marking, the front decoration text, the rear decoration text, the upper decoration text, the lower decoration text, whether the size marking is equal-division size marking or not and whether the size marking is related to the parameter or not;
A-b. obtaining parameter-associated data information
When the dimension marking is associated with the parameter, obtaining the associated group parameter through dimension1.Family Label, and extracting the basic information of the parameter by utilizing the attribute of the group parameter for the parameter matching in the subsequent model reverse building process;
a-c. obtaining reference associated data information
Obtaining marked reference data through dimension1.References, wherein the marked reference data comprises a unique identifier related to a constraint object;
a-d, obtaining the information of the dimension marking type
The types of dimensioning are classified as: straight line marking, radius marking, diameter marking, arc length marking, angle marking and elevation marking, and obtaining the type of the dimension marking through the dimension1.Dimension shape attribute; when the size label is a straight line label, the starting point of the straight line and the direction of the line need to be extracted due to the constraint of the reverse construction method; when the size is marked as other types, only extracting the starting point of the line and the basic information of the line;
a-e. obtaining dimension-marked view information
Obtaining a view through a menu 1.View attribute, and respectively obtaining vertical, upward and rightward coordinate vectors of a view screen through ViewDirection, upDirection, rightDirection attributes of the view;
B. Alignment marking:
repeating the steps A-a to A-c, and extracting the basic data information, the parameter associated data information and the reference associated data information of the alignment mark;
C. elevation:
C-a. Acquiring basic data information of elevation
Each elevation is extracted by traversing the set of stored elevations, elevation data information of the elevations is obtained through a level1.Elevation attribute, a unique identifier of the elevation is obtained through the level1.UniqueId attribute, and project elevation data information of the elevations is obtained through the level1. ProjectElevation;
c-b, acquiring a reference unique identifier of the elevation, and storing the information in a memory of reference data;
D. sketch plane
Extracting each sketch plane by traversing a set of stored sketch planes, obtaining a plane where the sketch plane is located by a GetPlane () method, and then respectively obtaining a normal vector, a starting point, an X-direction vector and a Y-direction vector corresponding to the plane by Normal, origin, XVec, YVec attributes;
E. Reference plane
Extracting each reference plane by traversing a set of storage reference planes, acquiring data information of free end coordinates, tail end coordinates, normal vectors and origin coordinates by means of attributes of the reference planes, matching new and old data in a reverse construction process, acquiring parameters of a definition origin by means of a get_ PARAMETER (BUILTINPARAMETER) method, and acquiring whether the reference plane defines a model origin;
F. reference line
Extracting each reference Line by traversing a set of stored reference lines, obtaining a Curve object of a model Line through a ModelLine1.GeomeryCurve attribute, and when the reference Line is a straight Line, strongly converting the Curve object into the Line to obtain the model Line of the straight Line type; when the Curve is referred to, curve is strongly converted into Arc to obtain a model line of an Arc type; finally, corresponding data information is obtained through the attribute of the line;
G. reference point
Extracting each reference point by traversing a set of stored reference points, and acquiring the Position coordinates of the reference points by the Position attribute of the reference points;
S3-3, obtaining geometric model information
1) Filtering and sub-packaging all geometric bodies
Filtering all the geometric bodies in the group file according to the category by creating an element filter FilteredElementCollector and using a category filtering method, and respectively storing the geometric bodies in a corresponding memory;
2) Processing data according to corresponding drawing and generating modes for different types of geometric bodies
The family three-dimensional model includes five types of parameter information and model geometry: the drawing body, the rotating body, the fusion body, the lofting body and the fusion lofting body;
A. stretching body
The basic data information of the stretched body includes: drawing starting point, drawing end point, boolean value (judging whether the drawing is entity or not), drawing sketch plane and drawing model line, and respectively obtaining drawing starting point, end point and Boolean value through StartOffset, endOffset, isSolid attribute of a drawing body; acquiring a set of all geometric data related to the stretching body through a GETDEPENDENTELEMENTS () method, sub-packaging the data according to the category of the data by using a GetElementListFormElementId () method, and finding out data about sketch planes and model contour lines from the data;
B. Fusion body
The basic data information of the fusion body comprises: the bottom sketch plane, the bottom model contour line, the top model contour line and the Boolean value are respectively obtained through IsSolid, bottomProfile, topProfile attributes of the fusion body; in the generation of the fusion body, the bottom contour line and the top contour line automatically generate a sketch plane belonging to the fusion body, and the coordinates of the contour lines are relative to the sketch plane, in the method provided by the API, only one sketch plane of the bottom contour line is needed for creating the fusion body, so that secondary treatment is needed for the coordinates of the bottom contour line and the top contour line according to the actual condition of the fusion body, and the secondary treatment comprises the following steps: the sketch plane of the bottom contour is obtained by filtering through GETDEPENDENTELEMENTS () method, the CurveArrArray array is obtained through BottomProfile, topProfile attribute, the array is converted into list form through GetCurveListFormCurveArrArray () method, and then the result is passed through
The GetCurveDicListFormCurveList () method processes the lines into an orderly closed set, and finally, the GetInformationFormCurveDicList () method is combined with the actual condition of the fusion body to process and output the coordinates of the lines;
C. Rotating body
The basic data information of the rotating body includes: the method comprises the steps of respectively obtaining a Boolean value, a starting rotation angle, a stopping rotation angle, a rotation shaft, a model contour line and a sketch plane through IsSolid, startAngle, endAngle, axis attributes of a rotation body, obtaining data information of the Boolean value, the starting rotation angle, the stopping rotation angle and the rotation shaft, obtaining information of the sketch plane and the model contour line through GETDEPENDENTELEMENTS () method filtration, and carrying out secondary treatment on the model contour line information through SortCurveList () and GetInformationFormCurveElementDicList () methods;
D. Lofting body
The basic data information of the lofting body comprises: the method comprises the steps of obtaining a Boolean value through IsSolid attributes of a lofting body, obtaining corresponding path and path sketch plane data information through PATHSKETCH attributes, and obtaining outline data information through ProfileSketch attributes; because the coordinate data of the contour line is based on the sketch plane, secondary processing is needed to be carried out on the coordinate information of the contour line, and the coordinate data is converted into local coordinates from space coordinates;
E. fusion lofting body
The basic data information of the fusion loft body comprises: the method comprises the steps of processing data of a fusion lofting body through attribute and line secondary processing according to the method of steps B and D in the step S3-3, wherein the characteristics of the fusion lofting body and the lofting body are combined by the fusion lofting body;
3) Extracting geometric reference data information of geometric body
Acquiring a geometric data set of the entity object through a get_geometry () attribute, and controlling the detail degree of the view by utilizing DETAI LLEVEL attributes of Options geometric Options;
In the geometric data set, geometric data exists as geometryinstance and Solid aggregates, geometryinsta nce exists from the Solid aggregates, so that when the geometric data is processed, all data are converted into the Solid aggregates, and then unified processing is carried out, and the method comprises the following steps of:
The GeometryElement is strongly converted into the Solid, or GeometryElement is strongly converted into GeometryInstance, and then a Solid collection is obtained by utilizing a geometry Instance. The method comprises the steps that line information and surface information are contained in a Solid set, corresponding line and surface data sets are obtained through solid1.edge and solid1.faces attributes respectively, then each set is traversed, each line or surface is subjected to data processing according to categories, data information of all line types is obtained through a GetGeometryR eferenceFormCurve () method, data information of all surface types is obtained through a GetGeometryReferenceFormFac e () method, corresponding Reference unique identifiers are obtained through Reference attributes, and the data are used for being associated with references marked by sizes;
S4, creating an information extraction plug-in
① . Creating a class library and adding references: creating a class library, and sequentially adding a database API, an interface API, an application service API, an attribute API, a Windows window control and a naming space of data stream operation according to the functions to be realized;
② . Creating a Transaction: submitting an operation of modifying the Revit model to an object of the document;
③ . Main code programming: writing the main body function code of the information extracted in the step ②;
④ . Create plug-in button GetInfo: firstly adding an embedded panel, then calling PushButton classes to add a button control, and finally calling Uri classes to import corresponding icons into buttons;
⑤ . Registering and operating an expansion module: when the button in the step ④ is finished, an internal starting file is compiled, the button is led into the interior of the Revit software, the path of the dll file and the ID of the dll, which are generated by programming the function program of the component information extraction plug-in program realized by the text, are written into the file, the plug-in of the component information extraction method can be seen by opening the Revit software, and the BIM model component information extraction operation can be performed by clicking the button.
CN202111157030.XA 2021-09-30 2021-09-30 Method for mutual conductance based on revit-family primitive model Active CN113902877B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111157030.XA CN113902877B (en) 2021-09-30 2021-09-30 Method for mutual conductance based on revit-family primitive model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111157030.XA CN113902877B (en) 2021-09-30 2021-09-30 Method for mutual conductance based on revit-family primitive model

Publications (2)

Publication Number Publication Date
CN113902877A CN113902877A (en) 2022-01-07
CN113902877B true CN113902877B (en) 2024-05-17

Family

ID=79189442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111157030.XA Active CN113902877B (en) 2021-09-30 2021-09-30 Method for mutual conductance based on revit-family primitive model

Country Status (1)

Country Link
CN (1) CN113902877B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114491752B (en) * 2022-01-20 2023-04-28 深圳迅维数字孪生技术有限公司 BIM model light weight method and system
CN115408763B (en) * 2022-10-31 2023-04-07 北京盈建科软件股份有限公司 BIM platform-based component generation method
CN116484654B (en) * 2023-06-21 2023-12-08 北京市第三建筑工程有限公司 Revit-based positioning method for pipeline in arc-shaped structure
CN116842611B (en) * 2023-06-27 2024-05-17 广州优比建筑咨询有限公司 Revit-based drawing annotation rapid drawing method, storage medium and equipment

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104252558A (en) * 2014-07-02 2014-12-31 哈尔滨工业大学 BIM (Building Information Modeling) platform-based numerical control machining pretreatment method of non-standard building enclosure component
KR101603622B1 (en) * 2014-10-21 2016-03-15 주식회사 위메이드아이앤씨 System and method for utilizing authoring tool of bim integrated design
CN107391862A (en) * 2017-07-28 2017-11-24 中建局集团建设发展有限公司 A kind of prefabricated concrete structure Digital Collaborative Design Method
CN110765520A (en) * 2019-10-10 2020-02-07 贵州百胜工程建设咨询有限公司 Parameterized BIM modeling method
CN112182700A (en) * 2020-09-17 2021-01-05 中北大学 BIM three-dimensional building model display method based on Web end
CN112182698A (en) * 2020-09-17 2021-01-05 中北大学 Depth extraction method based on revit wall body member
CN112182699A (en) * 2020-09-17 2021-01-05 中北大学 Information extraction method based on revit primitive model
CN113360965A (en) * 2020-03-06 2021-09-07 上海大学 Revit-based automatic modeling method and system for assembly type shear wall
WO2021174660A1 (en) * 2020-03-04 2021-09-10 杭州群核信息技术有限公司 Cloud-based general parameterized model parsing method and design system
CN113392462A (en) * 2021-06-29 2021-09-14 西安理工大学 Sewage pipe network rapid modeling method based on Revit secondary development

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110218777A1 (en) * 2010-03-03 2011-09-08 Honeywell International Inc. System and method for generating a building information model

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104252558A (en) * 2014-07-02 2014-12-31 哈尔滨工业大学 BIM (Building Information Modeling) platform-based numerical control machining pretreatment method of non-standard building enclosure component
KR101603622B1 (en) * 2014-10-21 2016-03-15 주식회사 위메이드아이앤씨 System and method for utilizing authoring tool of bim integrated design
CN107391862A (en) * 2017-07-28 2017-11-24 中建局集团建设发展有限公司 A kind of prefabricated concrete structure Digital Collaborative Design Method
CN110765520A (en) * 2019-10-10 2020-02-07 贵州百胜工程建设咨询有限公司 Parameterized BIM modeling method
WO2021174660A1 (en) * 2020-03-04 2021-09-10 杭州群核信息技术有限公司 Cloud-based general parameterized model parsing method and design system
CN113360965A (en) * 2020-03-06 2021-09-07 上海大学 Revit-based automatic modeling method and system for assembly type shear wall
CN112182700A (en) * 2020-09-17 2021-01-05 中北大学 BIM three-dimensional building model display method based on Web end
CN112182698A (en) * 2020-09-17 2021-01-05 中北大学 Depth extraction method based on revit wall body member
CN112182699A (en) * 2020-09-17 2021-01-05 中北大学 Information extraction method based on revit primitive model
CN113392462A (en) * 2021-06-29 2021-09-14 西安理工大学 Sewage pipe network rapid modeling method based on Revit secondary development

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
基于Autodesk Revit软件进行桥梁BIM设计的方法研究;张建军;杨晓;马宏深;宿霄男;赵航;;中国市政工程;20160825(第04期);99-102+113 *
基于BIM技术的复杂立交桥协同设计;宋福春;谢利斌;李孟臣;刘鉴霆;张国强;;沈阳工业大学学报;20180413(第06期);94-98 *
基于Dynamo的参数化设计研究;韩继宗;;居业;20191220(第12期);44+46 *
基于Revit的模型数据提取以及跨平台反建互导技术研究;寇锦德;《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》;20230115;C038-575 *
部分装配式框架结构自动拆分办法;刘春原;许晓文;付素娟;;河北工业大学学报;20171218(第01期);107-113 *

Also Published As

Publication number Publication date
CN113902877A (en) 2022-01-07

Similar Documents

Publication Publication Date Title
CN113902877B (en) Method for mutual conductance based on revit-family primitive model
US7492364B2 (en) System and method for creating and updating a three-dimensional model and creating a related neutral file format
CN112182699B (en) Information extraction method based on revit primitive model
CN109032949A (en) A kind of front-end code quality determining method and device
CN112182698B (en) Depth extraction method based on revit wall body component
CN102508654B (en) Method for designing ladder diagram editing software of embedded PLC (Programmable Logic Controller)
CN110083872B (en) BIM (building information modeling) -model-oriented data extraction method
CN103605660B (en) Graphic processing method for SCD (Substation Configuration Description) file
CN107145622A (en) A kind of configurable product model detection method for quality
CN103544343A (en) Serialized and parameterized modeling method of power chuck
CN109933851B (en) Bench endurance test data processing and analyzing method
CN110837703A (en) Pro/E-based hydraulic cylinder rapid design system and method
CN109086985B (en) Professional test information management system for spacecraft assembly
CN109408991A (en) A kind of model parameter visualization processing method based on FANUC PICTURE man-machine interface
Hong et al. Using a metamodel to represent object-oriented data models
CN111191327A (en) Parametric automatic modeling system of five-joint welding robot
CN112380637A (en) ABAQUS-based cup-shaped grinding wheel three-dimensional parametric geometric modeling method
CN110222385A (en) A kind of cock fast modeling method peculiar to vessel based on parametrization
CN115391173A (en) Method for converting Simulink-Stateflow model into NuSMV model
Ji et al. CAD/CAE integration system of mechanical parts
CN115543847A (en) Method for automatically generating test case based on UI design draft
CN114090611A (en) Method and device for generating cable inventory by terminal wiring table and electronic equipment
CN115081137A (en) Serialized modeling method under visual programming environment
LU501781B1 (en) Revit-based deep extraction method for wall component
Venu et al. A New Hybrid Approach to Recognize Machinable Features of PrismaticParts from STEP AP 203 File

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant