CN113902877A - Method for mutual conductance based on revit group primitive models - Google Patents

Method for mutual conductance based on revit group primitive models Download PDF

Info

Publication number
CN113902877A
CN113902877A CN202111157030.XA CN202111157030A CN113902877A CN 113902877 A CN113902877 A CN 113902877A CN 202111157030 A CN202111157030 A CN 202111157030A CN 113902877 A CN113902877 A CN 113902877A
Authority
CN
China
Prior art keywords
information
data
family
obtaining
model
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.)
Granted
Application number
CN202111157030.XA
Other languages
Chinese (zh)
Other versions
CN113902877B (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

Images

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)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

A method based on mutual conductance of primitive models of a Revit family belongs to the technical field of building information models and solves the problem of information isolated island caused by the fact that model data between BIM modeling software cannot be communicated at the present stage. Through the export and import of model data information, not only can relevant data information in the model be conveniently checked, but also the support of a data format can be provided for mutual conductance between the revit model and other software, and the development process of realizing multiple purposes of one module and solving the problem of data information isolated island between the existing building software is promoted.

Description

Method for mutual conductance based on revit group primitive models
Technical Field
The invention belongs to the technical field of building information models, and particularly relates to a method for mutual conductance based on a revit group primitive model.
Background
At present, the application level of the BIM (building Information modeling) technology is still in an initial development stage, the corresponding system and standard are not complete, and a large amount of BIM software is in development or preliminary application exploration. Model data between many modeling software cannot be intercommunicated, resulting in data islanding.
According to the BIM technical concept, the technology needs to run through the whole life cycle of a building, each professional software is needed to cooperate during the whole life cycle, and the development of the BIM technology is greatly influenced by the defect of data non-intercommunication. At present, most foreign building software quoted in China has data results mostly not meeting 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 the development process of the BIM technology in China 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 isolated island caused by the fact that model data between BIM modeling software cannot be intercommunicated at the present stage.
The invention is realized by the following technical scheme.
A method based on mutual conductance of revit family primitive models comprises the following steps:
s1, creating a Revit three-dimensional model: building information model software REVIT is utilized to create a family three-dimensional model based on a metric conventional model family template;
s2 and revit secondary development platform construction
RevitAPI realizes software function extension in any one of the following two ways:
A. the method is realized through an external command interface, the interface has and only has one abstract function Excute, when a plug-in runs, the plug-in is called as a main function, and the plug-in creation is completed by adding a function code to be realized in the main function;
B. the method is realized through an external application interface, the interface has two abstract functions of OnStartup and OnShutdown, and when an external command is used, the creation of the function is completed by reloading the OnStartup and OnShutdown abstract functions;
s3, extracting primitive information of Revit family model and generating data file
S3-1, obtaining basic family information
1) Acquiring a management class of the family file data through the family file;
2) acquiring 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 the family file through the management class obtained in the step 1), wherein the family parameter information comprises: parameter name, parameter family number, parameter type, whether it is an instance parameter, and formula information; acquiring a set containing the family Parameters through the attribute Parameters of the management class of the family file data, traversing the family Parameters in the set through Foreach, respectively extracting the name, group number and parameter type information corresponding to the family Parameters, and storing the information according to the corresponding family Parameters;
s3-2, obtaining the reference primitive information in the family file
1) The reference primitive information in the family file comprises six elements: the method comprises the following steps that size marking, alignment marking, elevation, a sketch plane, a reference plane and other reference information are carried out, the six elements are filtered through an element filter, the size marking and the alignment marking are filtered and collected through a category filter, and the other elements are filtered and collected through the category filter; putting the collected elements into an ILIst < Element > set by a ToElements () method, and finally putting the set into a corresponding memory according to different elements;
2) respectively processing different elements
A. And (3) size marking:
a-a. obtaining basic data information
Extracting each dimensioning by traversing the set of stored dimensioning, and then extracting corresponding basic data information by the attributes of the dimensioning, the basic data information comprising: marking a unique identifier, a front decorative character, a rear decorative character, an upper decorative character, a lower decorative character, whether the size is equal-division size marking or not and whether the size is associated with parameters or not;
a-b, obtaining parameter associated data information
When the size label is associated with the parameter, obtaining the associated family parameter through dimension1.family Label, extracting the basic information of the parameter by using the attribute of the family parameter for matching the parameter in the subsequent model back-building process;
a-c. obtaining reference associated data information
Obtaining annotated reference data through dimension1.references, wherein the annotated reference data comprises a unique identifier related to a constraint object;
a-d, obtaining size marking type information
The types of size labels are: the method comprises the following steps of linear marking, radius marking, diameter marking, arc length marking, angle marking and elevation marking, wherein the type of size marking is obtained through a dimension1 dimension shape attribute; when the size is marked as a straight line, the starting point of the straight line and the direction of the line need to be extracted due to the constraint of the back-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 labeled view information
Obtaining a view through a dimension 1.View attribute, and respectively obtaining vertical, upward and rightward coordinate vectors of a view screen through a ViewDirection attribute, an UpDirection attribute and a rightDirection attribute of the view;
B. and (4) alignment and labeling:
repeating the steps A-a-A-c, and extracting the aligned and labeled basic data information, the parameter associated data information and the reference associated data information;
C. elevation:
c-a. obtaining basic data information of standard height
Extracting each elevation by traversing a set of stored elevations, then obtaining elevation data information of the elevation by a level1.elevation attribute, obtaining a unique identifier of the elevation by a level1.unique attribute, and obtaining project elevation data information of the elevation by a level1.project elevation;
c-b, acquiring a reference unique identifier of the elevation, and storing the information into a memory for reference data;
D. sketch plane
Extracting each sketch plane by traversing a collection of stored sketch planes, obtaining the 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 through Normal, Origin, XVec and YVec attributes;
E. reference plane
Extracting each reference plane by traversing a set of storage reference planes, acquiring data information of a free end coordinate, a terminal coordinate, a normal vector and an origin coordinate by the attributes of the reference planes, matching new and old data in a back-building process, obtaining a parameter of 'defining the origin' by a get _ parameter (BuiltInParameter) method, and acquiring whether the reference plane defines the origin of a model;
F. reference line
Extracting each reference Line by traversing a set of stored reference lines, obtaining a Curve object of a model Line by a modelline1.geometryCurve attribute, and when the reference lines are straight lines, converting the Curve into Line to obtain straight Line type model lines; when the Curve is referenced, converting Curve into Arc to obtain a model line of a circular Arc type; finally, corresponding data information is obtained through the attributes of the lines;
G. reference point
Extracting each reference point by traversing the set of the storage reference points, and acquiring the Position coordinates of the reference points by the Position attribute of the reference point;
s3-3, obtaining geometric model information
1) Filtering and packaging all the geometric bodies
Filtering all geometric bodies in the family file according to categories by creating an element filter FilterElementCollector and using a class filtering method, and respectively storing the geometric bodies in corresponding memories;
2) respectively processing the data according to the corresponding drawing and generation modes for different types of geometric bodies
The family of three-dimensional models includes five types of parametric information and model geometry: the device comprises a stretching body, a rotating body, a fusion body, a sample placing body and a fusion sample placing body;
A. stretching body
The basic data information of the stretched body includes: a stretching starting point, a stretching end point, a Boolean value (whether the determination is an entity or not), a drawn sketch plane and a drawn model line, wherein the stretching starting point, the stretching end point and the Boolean value are respectively obtained through StartOffset, EndOffset and IsSolid attributes of a stretching body; acquiring a set of all geometric data related to the stretched body by a GetDependentElements () method, subpackaging the data according to the category of the data by using a GetElementListFormElementId () method, and finding data related to a sketch plane and a model contour line from the data;
B. fusion body
The basic data information of the fusion includes: the method comprises the following steps of obtaining a bottom sketch plane, a bottom model contour line, a top model contour line and a Boolean value respectively through IsSolid, BottomProfile and TopProfile attributes of a fusion body to obtain a Boolean value, a bottom contour line set and a top contour line set; in the generation of the fusion, the bottom contour line and the top contour line can automatically generate a sketch plane belonging to the fusion, 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, so that secondary processing is needed for the coordinates of the bottom contour line and the top contour line according to the actual situation of the fusion, and the secondary processing comprises the following steps: the sketch plane of the bottom contour line is obtained by filtering through a GetDependentElements () method, a CurveArrArrarrarrarrarraray array is obtained through BottomProfile and TopProfile attributes, the array is converted into a list form through a GetCurveListFormCrarrArraray (), then the line is processed into an orderly closed set through a GetCurvDicListFormCrist () method, and finally the coordinate processing of the line is output by combining the actual situation of the fusion body through a GetInformationnFormCristi () method;
C. rotating body
The basic data information of the revolution solid includes: the method comprises the steps of obtaining Boolean value, start rotation angle, end rotation angle, rotation Axis, model contour line and sketch plane respectively through IsSolid, StartAngle, EndAngle and Axis attributes of a rotator, obtaining data information of the Boolean value, the start rotation angle, the end rotation angle and the rotation Axis respectively, filtering through a GetDependentElements () method to obtain information of the sketch plane and the model contour line, and performing secondary processing on the information of the model contour line through a SortCurveList () method and a GetInformationFormSteelementDicList () method;
D. sample placing body
The basic data information of the lofting body comprises: the system comprises a Boolean value, a lofting path, a path sketch plane and a model contour line, wherein the Boolean value can be obtained through an Issolid attribute of a lofting body, the corresponding path and path sketch plane data information can be obtained through a PathSketch attribute, and the data information of the contour line can be obtained through a ProfileSetch attribute; because the coordinate data of the contour lines are based on the sketch plane, secondary processing needs to be carried out on the coordinate information of the contour lines, and the coordinate data are converted into local coordinates from space coordinates;
E. fusion lofting body
The basic data information of the fusion lofting body comprises: the fusion loft combines the characteristics of the fusion and the loft, and the data of the fusion loft is processed by secondary processing of attributes and lines according to the methods of steps B and D in step S3-3;
3) extracting the geometric reference data information of the 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 using a Detai lLevel attribute of an Options geometric option;
in the geometry data set, the geometry data exists in a collective of geotryinstance and Solid, and the geotryinstance exists in a collective of Solid, so when processing the geometry data, all the data is converted into the Solid collective, and then the unified processing is carried out, and the method comprises the following steps:
converting GeometryElement into Solid by force, or converting GeometryElement into GeometryInstance by force, and obtaining Solid set by utilizing a GeometryInstance and GetSymbolGeometry () method; line information and surface information are contained in the Solid set, corresponding line and surface data sets are obtained through Solid1.edges and Solid1.faces attributes respectively, then traversal is carried out on each set, data processing is carried out on each line or surface according to the type, data information of all line types is obtained through a GetGeoMethyreferenceFormSource () method, data information of all surface types is obtained through a GetGeoMethyreferenceFormFace () method, corresponding Reference unique identifiers are obtained through Reference attributes and are used for being related to references marked by sizes;
s4 creating information extraction plug-in
Creating a class library and adding a reference: 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 namespace of data stream operation according to functions to be realized;
secondly, creating a Transaction: submitting an operation of modifying the Revit model to an object of the document;
thirdly, compiling the main code: writing the main function code of the extracted information;
fourthly, creating a plug-in button GetInfo: firstly, adding an embedded panel, then calling a PushButton class to add a button control, and finally calling a Uri class to introduce a corresponding icon into a button;
registering and operating an expansion module: after the button is finished, an internal starting file is compiled, the button is led into the interior of Revit software, the path of a dll file and the ID of the dll, which are generated by the function program of extracting the component information plug-in realized by the text, are written into the file, the plug-in of the method for extracting the component information can be seen by opening the Revit software, and the BIM model component information can be extracted by clicking the button.
Compared with the prior art, the invention has the beneficial effects that:
the invention uses BIM main stream software Revit to carry out secondary development by means of an open API thereof, and creates a plug-in for generating a Revit family model data document and a plug-in for generating a Revit family model by combining the family model data document. Through the export and import of model data information, not only can relevant data information in the model be conveniently checked, but also the support of a data format can be provided for mutual conductance between the revit model and other software, and the development process of realizing multiple purposes of one module and solving the problem of data information isolated island between the existing building software is promoted.
Drawings
FIG. 1 is a general flow diagram of data extraction;
FIG. 2 is a flow chart of plug-in creation;
FIG. 3 is a flow chart of primitive data information extraction.
Detailed Description
The invention is described in further detail below with reference to the figures and examples.
A method based on mutual conductance of revit family primitive models comprises the following steps:
s1, creating a Revit three-dimensional model: building information model software REVIT is utilized to create a family three-dimensional model based on a metric conventional model family template;
s2 and revit secondary development platform construction
RevitAPI realizes software function extension in any one of the following two ways:
A. the method is realized through an external Command (IExternal Command) interface, the interface has and only has one abstract function Excute, when the plug-in runs, the plug-in is called as a main function, and the plug-in creation is completed by adding functional codes required to be realized in the main function;
B. the method is realized through an External Application interface (External Application), the interface has two abstract functions of OnStartup and OnShutdown, and when an External command is used, the function creation is completed by reloading the OnStartup and OnShutdown abstract functions;
development involves tools: visual Studio2019, Revit2020, RevitAPI2020, RevitLookUp 2020.
S3, extracting primitive information of Revit family model and generating data file
The invention is developed based on RevitAPI2020, and extracts data are divided into three major parts, namely family basic information, reference primitive information and geometric model information by researching the API extension method and combining the characteristics of the family model data.
S3-1, obtaining basic family information
1) Acquiring a management class FamilyManger of the family file data through a family file doc, FamilyManager;
2) acquiring 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 the family file through the management class obtained in the step 1), wherein the family parameter information comprises: parameter name, parameter family number, parameter type, whether it is an instance parameter (boolean value), and formula information; acquiring a set FamiliParameterSet containing family Parameters through attribute Parameters of a management class FamiliManger of family file data, traversing the family Parameters in the set through Foreach, respectively extracting names, group numbers and parameter type information corresponding to the family Parameters, and storing the information according to the corresponding family Parameters;
the core code is as follows:
// obtaining management classes for family file data
FamilyManager famManger=doc.FamilyManager;
// obtaining the current family type of the family file
FamilyType curType=famManger.CurrentType;
Obtaining the name of the type of the current family
string curTypeName=curType.Name;
// obtaining all family types of family files
Figure BDA0003288667430000071
// obtaining family parameter information in family files
Figure BDA0003288667430000072
Figure BDA0003288667430000081
S3-2, obtaining the reference primitive information in the family file
1) The reference primitive information in the family file comprises six elements: the method comprises the steps that size labels, alignment labels, elevations, sketch planes, reference planes and other reference information are filtered through an element filter filtered element collector, in order to distinguish the size labels from the alignment labels, a class filter (OfCategory () method) is adopted to filter and collect the size labels and the alignment labels, and other elements are filtered and collected through a class filter (OfClass () method); putting the collected elements into an ILIst < Element > set by a ToElements () method, and finally putting the set into a corresponding memory according to different elements;
the core code is as follows:
// filters of individual elements
Figure BDA0003288667430000082
Figure BDA0003288667430000091
2) Respectively processing different elements
A. And (3) size marking:
a-a. obtaining basic data information
Extracting each dimensioning by traversing the set of stored dimensioning, and then extracting corresponding basic data information by the attributes of the dimensioning, the basic data information comprising: marking a unique identifier, a front decorative character, a rear decorative character, an upper decorative character, a lower decorative character, whether the size is equal-division size marking or not and whether the size is associated with parameters or not;
the core code is as follows:
Figure BDA0003288667430000092
Figure BDA0003288667430000101
a-b, obtaining parameter associated data information
When the size label is associated with the parameter, obtaining the associated family parameter through dimension1.family Label, extracting the basic information of the parameter by using the attribute of the family parameter for matching the parameter in the subsequent model back-building process;
the core code is as follows:
Figure BDA0003288667430000102
a-c. obtaining reference associated data information
In the family file, marking is to determine the object to be restricted by reference, and marked reference data is obtained by reference 1.refer, wherein the marked reference data contains a unique identifier related to the restricted object; many elements in the document can be used as the objects of the constraint, such as a reference plane, an elevation, a reference line, a reference point, a geometric line plane and a model line, and all the elements have corresponding unique identifiers, the unique identifiers of some elements are consistent with the identifier in the annotation reference, and the unique identifiers of some elements are not consistent with the identifier in the annotation reference, so that some corresponding data processing is needed at a later stage.
The core code is as follows:
Figure BDA0003288667430000103
Figure BDA0003288667430000111
a-d, obtaining size marking type information
The types of size labels are: the method comprises the following steps of linear marking, radius marking, diameter marking, arc length marking, angle marking and elevation marking, wherein the type of size marking is obtained through a dimension1 dimension shape attribute; when the size is marked as a straight line, due to the constraint of the back-construction method, the Origin of the straight line and the Direction of the line need to be extracted; when the sizes are marked as other types, only the Origin of the line and the basic information of the line are extracted.
The core code is as follows:
the output of the marking data is modified as follows due to the particularity of the marking parameters of the straight line during the reconstruction
Figure BDA0003288667430000112
A-e. obtaining dimension labeled view information
In the creation of a model, a view is divided into a plane view and a vertical view, the attribute information of different views is different, when the size marking is not uniform size marking or the constraint object is not a geometric line, the view can be obtained through a dimension 1.view attribute, and the vertical, upward and rightward coordinate vectors of a view screen are respectively obtained through the ViewDirection, UpDirection and RightDirection attributes of the view; in addition to this, the data information of the view needs to be obtained through the attribute information of other elements.
The core code is as follows:
Figure BDA0003288667430000121
B. and (4) alignment and labeling:
the difference between the alignment mark and the size mark is as follows: the method has the advantages that the method has no mark type and no corresponding view data, and other data extraction methods (obtaining basic data information, obtaining parameter associated data information and obtaining reference associated data information) are the same as the size mark, 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 which are aligned and marked are extracted;
C. elevation:
c-a. obtaining basic data information of standard height
Extracting each elevation by traversing a set of stored elevations, then obtaining elevation data information of the elevation by a level1.elevation attribute, obtaining a unique identifier of the elevation by a level1.unique attribute, and obtaining project elevation data information of the elevation by a level1.project elevation;
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 into a memory for reference data;
when the elevation is used as a constraint object of the dimension marking, the unique identifier of the elevation is inconsistent with the identifier referred by the marking, and related data processing is needed to be carried out in order to associate the data information of the subsequent elevation with the reference of the marking;
the core code is as follows:
ElementDatas eleDataReference=new ElementDatas();
eleDataReference.refeElementDatas.Add("Level",inforData);
the output is made by reference constant derived from elevation, which is different from the reference derived from elevation
extData.referanceElementDatas.Add(level1.GetPlaneReference().ConvertToStableRepresentation(ele.Document),eleDataReference);
D. Sketch plane
Each sketch plane is extracted by traversing the collection of the 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 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 through Normal, Origin, XVec and YVec attributes;
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 storage reference planes, acquiring data information of free end coordinates, terminal coordinates, normal vectors and origin coordinates by the attributes of the reference planes, and matching new and old data in the back-building process, wherein the reference planes have the function of defining the origin of the model, and acquire parameters of the defined origin by a get _ parameter (BuiltInParameter) method to acquire whether the reference planes define the origin of the model;
the core code is as follows:
Figure BDA0003288667430000141
F. reference line
Each reference line is extracted by traversing the set of the stored reference lines, only straight lines and circular arc lines are supported to be drawn in the process of drawing the reference lines, and the application of the straight lines and the circular arc lines in size marking constraint accounts for most of the application, so that only the reference lines of the types of the straight lines and the circular arc lines are subjected to data extraction. Obtaining a Curve object of a model Line through a modelline1.GeometryCurve attribute, and when the reference Line is a straight Line, converting Curve into Line to obtain a straight Line type model Line; when the Curve is referenced, converting Curve into Arc to obtain a model line of a circular Arc type; finally, corresponding data information is obtained through the attributes of the lines;
the core code is as follows:
Figure BDA0003288667430000142
Figure BDA0003288667430000151
G. reference point
Extracting each reference point by traversing the set of the storage reference points, and acquiring the Position coordinates of the reference points by the Position attribute of the reference point;
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 composed of five types of geometric bodies, wherein the five types of geometric bodies are respectively as follows: a stretching body, a rotating body, a fusion body, a sample placing body and a fusion sample placing body; each geometry has two forms, one solid and the other hollow. Because the drawing and generating modes of each geometric body are different, and all the geometric bodies are composed of lines and surfaces, the drawing and generating modes need to be carried out independently when basic data of the geometric bodies are extracted, and a method can be shared when reference data of the geometric bodies are extracted. Therefore, the extraction of the geometric model information is divided into two parts, namely basic data information and reference data information.
1) Filtering and packaging all the geometric bodies
Filtering all geometric bodies in the family file according to categories by creating an element filter FilterElementCollector and using a class filtering method, and respectively storing the geometric bodies in corresponding memories;
the core code is as follows:
Figure BDA0003288667430000161
Figure BDA0003288667430000171
2) respectively processing the data according to the corresponding drawing and generation modes for different types of geometric bodies
A. Stretching body
The basic data information of the stretched body includes: a stretching starting point, a stretching end point, a Boolean value (whether the determination is an entity or not), a drawn sketch plane and a drawn model line, wherein the stretching starting point, the stretching end point and the Boolean value are respectively obtained through StartOffset, EndOffset and IsSolid attributes of a stretching body; acquiring a set of all geometric data related to the stretched body by a GetDependentElements () method, subpackaging the data according to the category of the data by using a GetElementListFormElementId () method, and finding data related to a sketch plane and a model contour line from the data; in the drawing process, the situation that the stretching starting point of the generated geometric body is not 0 can occur, which directly affects the setting of the sketch plane in the back-up process, so when the stretching starting point is not 0, corresponding modification needs to be performed on the corresponding sketch plane data. When processing the model contour lines, the classification of the model lines into straight lines, circular arc lines, elliptical lines, spline curves, and the like, and the acquired line sets are disordered and disordered, and the creation of the stretched body requires that the contour lines are orderly closed, so that the classification and the sequence of the lines need to be secondarily processed in the data processing.
The core code is as follows:
Figure BDA0003288667430000172
Figure BDA0003288667430000181
Figure BDA0003288667430000191
B. fusion body
The basic data information of the fusion includes: the method comprises the following steps of obtaining a bottom sketch plane, a bottom model contour line, a top model contour line and a Boolean value respectively through IsSolid, BottomProfile and TopProfile attributes of a fusion body to obtain a Boolean value, a bottom contour line set and a top contour line set; in the generation of the fusion, the bottom contour line and the top contour line can automatically generate a sketch plane belonging to the fusion, 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, so that secondary processing is needed for the coordinates of the bottom contour line and the top contour line according to the actual situation of the fusion, and the secondary processing comprises the following steps: the sketch plane of the bottom contour line is obtained by filtering through a GetDependentElements () method, a CurveArrArrarrarrarrarraray array is obtained through BottomProfile and TopProfile attributes, the array is converted into a list form through a GetCurveListFormCrarrArraray (), then the line is processed into an orderly closed set through a GetCurvDicListFormCrist () method, and finally the coordinate processing of the line is output by combining the actual situation of the fusion body through a GetInformationnFormCristi () method;
the core code is as follows:
Figure BDA0003288667430000192
Figure BDA0003288667430000201
C. rotating body
The basic data information of the revolution solid includes: the method comprises the steps of obtaining Boolean value, start rotation angle, end rotation angle, rotation Axis, model contour line and sketch plane respectively through IsSolid, StartAngle, EndAngle and Axis attributes of a rotator, obtaining data information of the Boolean value, the start rotation angle, the end rotation angle and the rotation Axis respectively, filtering through a GetDependentElements () method to obtain information of the sketch plane and the model contour line, and performing secondary processing on the information of the model contour line through a SortCurveList () method and a GetInformationFormSteelementDicList () method;
the core code is as follows:
Figure BDA0003288667430000202
Figure BDA0003288667430000211
D. sample placing body
The basic data information of the lofting body comprises: the system comprises a Boolean value, a lofting path, a path sketch plane and a model contour line, wherein the Boolean value can be obtained through an Issolid attribute of a lofting body, the corresponding path and path sketch plane data information can be obtained through a PathSketch attribute, and the data information of the contour line can be obtained through a ProfileSetch attribute; because the coordinate data of the contour lines are based on the sketch plane, secondary processing needs to be carried out on the coordinate information of the contour lines, and the coordinate data are converted into local coordinates from space coordinates;
the core code is as follows:
Figure BDA0003288667430000212
Figure BDA0003288667430000221
E. fusion lofting body
The basic data information of the fusion lofting body comprises: the fusion loft combines the characteristics of the fusion and the loft, and the data of the fusion loft is processed by secondary processing of attributes and lines according to the methods of steps B and D in step S3-3;
the core code is as follows:
Figure BDA0003288667430000222
3) extracting the geometric reference data information of the 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 using a Detai lLevel attribute of an Options geometric option;
in the geometry data set, the geometry data exists in a collective of geotryinstance and Solid, and the geotryinstance exists in a collective of Solid, so when the geometry data is processed, all data is converted into the Solid collective, and then the unified processing is carried out, and the method comprises the following steps:
converting GeometryElement into Solid by force, or converting GeometryElement into GeometryInstance by force, and obtaining Solid set by utilizing a GeometryInstance and GetSymbolGeometry () method; line information (edge) and face information (face) are contained in the Solid set, corresponding line and face data sets are obtained through attributes of Solid1.edges and Solid1.faces respectively, then traversal is carried out on each set, data processing is carried out on each line or face according to the type, data information of all line types is obtained through a GetGeoMetryReferenceFormSource () method, data information of all face types is obtained through a GetGeoMetryReferenceFormFace () method, corresponding unique Reference identifiers are obtained through Reference attributes and are used for being associated with references of size labeling;
the core code is as follows:
Figure BDA0003288667430000231
Figure BDA0003288667430000241
Figure BDA0003288667430000251
s4 creating information extraction plug-in
Functional plug-ins for automatically extracting model data information are manufactured on Revit software through a custom programming interface, in the embodiment, on a Visual Studio2019 platform, Revit2020 interface definition files RevitAPI.DLL and RevitAPI.DLL are quoted, a part of a naming space provided by RevitAPI is quoted, and plug-in development is realized by using C # language.
The information extraction function plug-in is used for realizing program self-starting by loading an Add-in file into Revit software in a mode of extending functions based on External Application (External Application), calling along with the starting of the Revit software and stopping along with the closing of the Revit software.
The method comprises the following specific steps:
creating a class library and adding a reference: 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 namespace of data stream operation according to 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;
...
secondly, creating a Transaction: the transaction is to submit a series of operations for modifying the Revit model to an object of the document, any operation for modifying the document needs to be contained in an opened transaction belonging to the document, and otherwise, the operation is abnormally thrown out;
the core code is as follows:
Figure BDA0003288667430000252
Figure BDA0003288667430000261
thirdly, compiling the main code: writing the main function code of the extracted information;
fourthly, creating a plug-in button GetInfo: firstly, adding an embedded panel, then calling a PushButton class to add a button control, and finally calling a Uri class to introduce a corresponding icon into a button;
registering and operating an expansion module: after the button is finished, an internal start file (namely an Add-in file) is compiled, the button is led into the interior of Revit software, a path of a dll file and an ID of the dll file, which are generated by programming a function program for extracting the component information plug-in realized by the text, are written into the file, the plug-in of the method for extracting the component information can be seen by opening the Revit software, and the BIM model component information can be extracted by clicking the button.
The core code of the XML file of addin is as follows:
Figure BDA0003288667430000262
the method of claim 1, wherein: in step S1, the family three-dimensional model includes parameter information and five types of model geometry: a tensile body, a rotational body, a fusion body, a lofting body, and a fusion lofting body.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present invention are 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 appended claims.

Claims (1)

1. A method based on mutual conductance of primitive models of a revit family is characterized by comprising the following steps:
s1, creating a Revit three-dimensional model: building information model software REVIT is utilized to create a family three-dimensional model based on a metric conventional model family template;
s2 and revit secondary development platform construction
RevitAPI realizes software function extension in any one of the following two ways:
A. the method is realized through an external command interface, the interface has and only has one abstract function Excute, when a plug-in runs, the plug-in is called as a main function, and the plug-in creation is completed by adding a function code to be realized in the main function;
B. the method is realized through an external application interface, the interface has two abstract functions of OnStartup and OnShutdown, and when an external command is used, the creation of the function is completed by reloading the OnStartup and OnShutdown abstract functions;
s3, extracting primitive information of Revit family model and generating data file
S3-1, obtaining basic family information
1) Acquiring a management class of the family file data through the family file;
2) acquiring 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 the family file through the management class obtained in the step 1), wherein the family parameter information comprises: parameter name, parameter family number, parameter type, whether it is an instance parameter, and formula information; acquiring a set containing the family Parameters through the attribute Parameters of the management class of the family file data, traversing the family Parameters in the set through Foreach, respectively extracting the name, group number and parameter type information corresponding to the family Parameters, and storing the information according to the corresponding family Parameters;
s3-2, obtaining the reference primitive information in the family file
1) The reference primitive information in the family file comprises six elements: the method comprises the following steps that size marking, alignment marking, elevation, a sketch plane, a reference plane and other reference information are carried out, the six elements are filtered through an element filter, the size marking and the alignment marking are filtered and collected through a category filter, and the other elements are filtered and collected through the category filter; putting the collected elements into an ILIst < Element > set by a ToElements () method, and finally putting the set into a corresponding memory according to different elements;
2) respectively processing different elements
A. And (3) size marking:
a-a. obtaining basic data information
Extracting each dimensioning by traversing the set of stored dimensioning, and then extracting corresponding basic data information by the attributes of the dimensioning, the basic data information comprising: marking a unique identifier, a front decorative character, a rear decorative character, an upper decorative character, a lower decorative character, whether the size is equal-division size marking or not and whether the size is associated with parameters or not;
a-b, obtaining parameter associated data information
When the size label is associated with the parameter, obtaining the associated family parameter through dimension1.family Label, extracting the basic information of the parameter by using the attribute of the family parameter for matching the parameter in the subsequent model back-building process;
a-c. obtaining reference associated data information
Obtaining annotated reference data through dimension1.references, wherein the annotated reference data comprises a unique identifier related to a constraint object;
a-d, obtaining size marking type information
The types of size labels are: the method comprises the following steps of linear marking, radius marking, diameter marking, arc length marking, angle marking and elevation marking, wherein the type of size marking is obtained through a dimension1 dimension shape attribute; when the size is marked as a straight line, the starting point of the straight line and the direction of the line need to be extracted due to the constraint of the back-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 labeled view information
Obtaining a view through a dimension 1.View attribute, and respectively obtaining vertical, upward and rightward coordinate vectors of a view screen through a ViewDirection attribute, an UpDirection attribute and a rightDirection attribute of the view;
B. and (4) alignment and labeling:
repeating the steps A-a-A-c, and extracting the aligned and labeled basic data information, the parameter associated data information and the reference associated data information;
C. elevation:
c-a. obtaining basic data information of standard height
Extracting each elevation by traversing a set of stored elevations, then obtaining elevation data information of the elevation by a level1.elevation attribute, obtaining a unique identifier of the elevation by a level1.unique attribute, and obtaining project elevation data information of the elevation by a level1.project elevation;
c-b, acquiring a reference unique identifier of the elevation, and storing the information into a memory for reference data;
D. sketch plane
Extracting each sketch plane by traversing a collection of stored sketch planes, obtaining the 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 through Normal, Origin, XVec and YVec attributes;
E. reference plane
Extracting each reference plane by traversing a set of storage reference planes, acquiring data information of a free end coordinate, a terminal coordinate, a normal vector and an origin coordinate by the attributes of the reference planes, matching new and old data in a back-building process, obtaining a parameter of 'defining the origin' by a get _ parameter (BuiltInParameter) method, and acquiring whether the reference plane defines the origin of a model;
F. reference line
Extracting each reference Line by traversing a set of stored reference lines, obtaining a Curve object of a model Line by a modelline1.geometryCurve attribute, and when the reference lines are straight lines, converting the Curve into Line to obtain straight Line type model lines; when the Curve is referenced, converting Curve into Arc to obtain a model line of a circular Arc type; finally, corresponding data information is obtained through the attributes of the lines;
G. reference point
Extracting each reference point by traversing the set of the storage reference points, and acquiring the Position coordinates of the reference points by the Position attribute of the reference point;
s3-3, obtaining geometric model information
1) Filtering and packaging all the geometric bodies
Filtering all geometric bodies in the family file according to categories by creating an element filter FilterElementCollector and using a class filtering method, and respectively storing the geometric bodies in corresponding memories;
2) respectively processing the data according to the corresponding drawing and generation modes for different types of geometric bodies
The family of three-dimensional models includes five types of parametric information and model geometry: the device comprises a stretching body, a rotating body, a fusion body, a sample placing body and a fusion sample placing body;
A. stretching body
The basic data information of the stretched body includes: a stretching starting point, a stretching end point, a Boolean value (whether the determination is an entity or not), a drawn sketch plane and a drawn model line, wherein the stretching starting point, the stretching end point and the Boolean value are respectively obtained through StartOffset, EndOffset and IsSolid attributes of a stretching body; acquiring a set of all geometric data related to the stretched body by a GetDependentElements () method, subpackaging the data according to the category of the data by using a GetElementListFormElementId () method, and finding data related to a sketch plane and a model contour line from the data;
B. fusion body
The basic data information of the fusion includes: the method comprises the following steps of obtaining a bottom sketch plane, a bottom model contour line, a top model contour line and a Boolean value respectively through IsSolid, BottomProfile and TopProfile attributes of a fusion body to obtain a Boolean value, a bottom contour line set and a top contour line set; in the generation of the fusion, the bottom contour line and the top contour line can automatically generate a sketch plane belonging to the fusion, 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, so that secondary processing is needed for the coordinates of the bottom contour line and the top contour line according to the actual situation of the fusion, and the secondary processing comprises the following steps: the sketch plane of the bottom contour line is obtained by filtering through a GetDependentElements () method, a CurveArrArrarrarraray array is obtained through BottomProfile and TopProfile attributes, the array is converted into a list form through a GetCurveListFormCirraray () method, and the list is obtained through filtering through a GetDependentElements () method
Processing the lines into an orderly closed set by a GetCurveDicListFormCurveList () method, and finally, combining the actual situation of the fusion by the GetInformationFormCisList () method to output the coordinate processing of the lines;
C. rotating body
The basic data information of the revolution solid includes: the method comprises the steps of obtaining Boolean value, start rotation angle, end rotation angle, rotation Axis, model contour line and sketch plane respectively through IsSolid, StartAngle, EndAngle and Axis attributes of a rotator, obtaining data information of the Boolean value, the start rotation angle, the end rotation angle and the rotation Axis respectively, filtering through a GetDependentElements () method to obtain information of the sketch plane and the model contour line, and performing secondary processing on the information of the model contour line through a SortCurveList () method and a GetInformationFormSteelementDicList () method;
D. sample placing body
The basic data information of the lofting body comprises: the system comprises a Boolean value, a lofting path, a path sketch plane and a model contour line, wherein the Boolean value can be obtained through an Issolid attribute of a lofting body, the corresponding path and path sketch plane data information can be obtained through a PathSketch attribute, and the data information of the contour line can be obtained through a ProfileSetch attribute; because the coordinate data of the contour lines are based on the sketch plane, secondary processing needs to be carried out on the coordinate information of the contour lines, and the coordinate data are converted into local coordinates from space coordinates;
E. fusion lofting body
The basic data information of the fusion lofting body comprises: the fusion loft combines the characteristics of the fusion and the loft, and the data of the fusion loft is processed by secondary processing of attributes and lines according to the methods of steps B and D in step S3-3;
3) extracting the geometric reference data information of the 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 using a Detai lLevel attribute of an Options geometric option;
in the geometry data set, the geometry data exists in a collective of geotryinstance and Solid, and the geotryinstance exists in a collective of Solid, so when processing the geometry data, all the data is converted into the Solid collective, and then the unified processing is carried out, and the method comprises the following steps:
converting GeometryElement into Solid by force, or converting GeometryElement into GeometryInstance by force, and obtaining Solid set by utilizing a GeometryInstance and GetSymbolGeometry () method; line information and surface information are contained in the Solid set, corresponding line and surface data sets are obtained through Solid1.edges and Solid1.faces attributes respectively, then each set is traversed, data processing is carried out on each line or surface according to the type, data information of all line types is obtained through a GetGeometryR effect FormC () method, data information of all surface types is obtained through a GetGeometryReferenceFormFac () method, corresponding Reference unique identifiers are obtained through Reference attributes and are used for being related to references of size labels;
s4 creating information extraction plug-in
Creating a class library and adding a reference: 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 namespace of data stream operation according to functions to be realized;
secondly, creating a Transaction: submitting an operation of modifying the Revit model to an object of the document;
thirdly, compiling the main code: writing the main function code of the extracted information;
fourthly, creating a plug-in button GetInfo: firstly, adding an embedded panel, then calling a PushButton class to add a button control, and finally calling a Uri class to introduce a corresponding icon into a button;
registering and operating an expansion module: after the button is finished, an internal starting file is compiled, the button is led into the interior of Revit software, the path of a dll file and the ID of the dll, which are generated by the function program of extracting the component information plug-in realized by the text, are written into the file, the plug-in of the method for extracting the component information can be seen by opening the Revit software, and the BIM model component information can be extracted 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 true CN113902877A (en) 2022-01-07
CN113902877B 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)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114491752A (en) * 2022-01-20 2022-05-13 深圳迅维数字孪生技术有限公司 Lightweight method and system of BIM (building information modeling) model
CN115408763A (en) * 2022-10-31 2022-11-29 北京盈建科软件股份有限公司 BIM platform-based component generation method
CN116484654A (en) * 2023-06-21 2023-07-25 北京市第三建筑工程有限公司 Revit-based positioning method for pipeline in arc-shaped structure
CN116842611A (en) * 2023-06-27 2023-10-03 广州优比建筑咨询有限公司 Revit-based drawing annotation rapid drawing method, storage medium and equipment

Citations (11)

* 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
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

Patent Citations (11)

* 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
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
刘春原;许晓文;付素娟;: "部分装配式框架结构自动拆分办法", 河北工业大学学报, no. 01, 18 December 2017 (2017-12-18), pages 107 - 113 *
宋福春;谢利斌;李孟臣;刘鉴霆;张国强;: "基于BIM技术的复杂立交桥协同设计", 沈阳工业大学学报, no. 06, 13 April 2018 (2018-04-13), pages 94 - 98 *
寇锦德: "基于Revit的模型数据提取以及跨平台反建互导技术研究", 《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》, 15 January 2023 (2023-01-15), pages 038 - 575 *
张建军;杨晓;马宏深;宿霄男;赵航;: "基于Autodesk Revit软件进行桥梁BIM设计的方法研究", 中国市政工程, no. 04, 25 August 2016 (2016-08-25), pages 99 - 102 *
韩继宗;: "基于Dynamo的参数化设计研究", 居业, no. 12, 20 December 2019 (2019-12-20), pages 44 *

Cited By (6)

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

Also Published As

Publication number Publication date
CN113902877B (en) 2024-05-17

Similar Documents

Publication Publication Date Title
CN113902877A (en) Method for mutual conductance based on revit group primitive models
US7492364B2 (en) System and method for creating and updating a three-dimensional model and creating a related neutral file format
CN107045526A (en) A kind of pattern recognition method of electronics architectural working drawing
CN109032949A (en) A kind of front-end code quality determining method and device
CN110765523A (en) BIM technology-based rapid construction method for deep foundation pit support structure
CN103605660B (en) Graphic processing method for SCD (Substation Configuration Description) file
CN110083872A (en) A kind of data extraction method towards BIM model
CN112818460A (en) Intelligent building rollover method from two-dimensional drawing to three-dimensional model
CN112861384A (en) CATIA-based electrostatic dust collector three-dimensional model construction method
WO2023241519A1 (en) Bim component creation method and apparatus, and digital design resource library application method and apparatus
CN113485160A (en) Simulation modeling method and device based on pattern matching recognition
Leu et al. NX 10 for engineering design
CN105988792A (en) Nuclear power software development automation system and method
CN111191327A (en) Parametric automatic modeling system of five-joint welding robot
CN115130186A (en) Method for quickly creating pipeline system based on modeling software
Ji et al. CAD/CAE integration system of mechanical parts
CN115081137A (en) Serialized modeling method under visual programming environment
CN115391173A (en) Method for converting Simulink-Stateflow model into NuSMV model
CN114090611A (en) Method and device for generating cable inventory by terminal wiring table and electronic equipment
Noack Converting CAD drawings to product models
Venu et al. A New Hybrid Approach to Recognize Machinable Features of PrismaticParts from STEP AP 203 File
LU501781B1 (en) Revit-based deep extraction method for wall component
CN117392269B (en) Pipe network drawing data extraction method and device
CN110737932B (en) Method for analyzing engineering temporary facility cost by using BIM (building information modeling)
Nehéz et al. CAD tools for knowledge based part design and assembly versioning

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