LU501781B1 - Revit-based deep extraction method for wall component - Google Patents

Revit-based deep extraction method for wall component Download PDF

Info

Publication number
LU501781B1
LU501781B1 LU501781A LU501781A LU501781B1 LU 501781 B1 LU501781 B1 LU 501781B1 LU 501781 A LU501781 A LU 501781A LU 501781 A LU501781 A LU 501781A LU 501781 B1 LU501781 B1 LU 501781B1
Authority
LU
Luxembourg
Prior art keywords
information
wall
revit
obtaining
parameter
Prior art date
Application number
LU501781A
Other languages
German (de)
Inventor
Jianying Xue
Fan Wu
Original Assignee
Shanxi Zhongbei Jianxin Industrial Tech Research Institute Co Ltd
Univ North 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 Shanxi Zhongbei Jianxin Industrial Tech Research Institute Co Ltd, Univ North China filed Critical Shanxi Zhongbei Jianxin Industrial Tech Research Institute Co Ltd
Priority to LU501781A priority Critical patent/LU501781B1/en
Application granted granted Critical
Publication of LU501781B1 publication Critical patent/LU501781B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/08Construction

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Geometry (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Structural Engineering (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Data Mining & Analysis (AREA)
  • Architecture (AREA)
  • Civil Engineering (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Stored Programmes (AREA)

Abstract

The present invention relates to a Revit-based deep extraction method for a wall component, belongs to the technical field of building information modeling, and solves the technical problem of wall information loss caused by different drawing logic and demand information between building information modeling (BIM) software platforms. The solution is as follows: Revit, as the BIM mainstream software, is adopted for secondary development based on an application programming interface (API) of Revit, and a plug-in for extracting component model information is created, so as to facilitate information reading and one-click export; extracted information can be adopted for seamless mutual export among different software, so as to further simplify and optimize extraction and exchange of the model information in Revit; and the platform is combined with other platforms to display an entire building model for example comparison.

Description

REVIT-BASED DEEP EXTRACTION METHOD FOR WALL COMPONENT 4501781
TECHNICAL FIELD
[01] The present invention belongs to the technical field of building information modeling, and particularly relates to a Revit-based deep extraction method for a wall component.
BACKGROUND ART
[02] Building information modeling (BIM), as a digitalized and informationized expression of a building model, can enable knowledge resource sharing of building information, and the BIM is also being gradually shifted from the concept of building model information to a platform providing a reliable decision basis and information sharing in the overall life cycle of a building.
[03] Currently, the BIM model has created a model conversion interface on some software, however, where a complex building structure is required for refined analysis, re-modeling is still necessary, which is time and labor consuming and poses difficulty in model error checking and other problems, and the complex building structure model based on BIM requires to involve physical information query, extraction, assignment, etc., of multiple types of components, resulting in large workload and easy occurrence of errors. Therefore, the BIM model can be automatically converted to generate a fine model by compiling, extracting and reversely establishing the program, so as to guarantee the consistency of different models, improve the modeling efficiency, and enable excellent engineering application prospects and use values.
SUMMARY
[04] The present invention is realized by technical solution as follows:
[05] A Revit-based deep extraction method for a wall component includes:
[06] S1, performing three-dimensional modeling in Revit: building information modeling software with Revit to create a three-dimensional wall model;
[07] S2, building a Revit secondary development platform;
[08] where a Revit application programming interface (API) implements software functional extension in either of the following two modes:
[09] A, finishing by means of an interface of an external command: the interface of the external command has only one abstract function, Excute, when a plug-in runs, the abstract function is called as a main function, and the plug-in is created by adding a function code required to be implemented into the main function; and
[10] B, finishing by means of an interface of an external application: the interface of the external application has two abstract functions, OnStartup and OnShutdown, and when the external command is issued, a function is created by reloading the abstract functions, OnStartup and OnShutdown;
[11] S3, extracting Revit primitive model information,
[12] where Revit primitive model information includes project information parameters and a component parameter, the project information parameters including project reference information and project material library parameter information, and 1 the following operations are executed in Revit primitive model information extraction: LUS01 781
[13] S31, obtaining a project parameter:
[14] Step 1, obtaining project basic attributes including a project name, a project number, a project release date and a project address; and
[15] Step 2, obtaining project reference primitive information, including an elevation axis grid and a reference plane, where a class corresponding to an elevation 1s Level and is inherited from an Element class, and an elevation height is obtained by means of a Level Elevation attribute corresponding to BuiltInParameter and is inherited from LEVEL-ELEV;
[16] S32, obtaining an attribute parameter of a foundation wall:
[17] (1) classifying component obtaining methods: sequentially obtaining information of a single wall component, information of two adjacent walls and chamfer information thereof, and information of all walls of the project;
[18] (2) extracting parameter information:
[19] the component parameter information including an instance parameter and a type parameter, firstly, viewing parameter information of a corresponding primitive instance using LookUp, and converting a traversed or clicked element into a wall; secondly, obtaining key information required by the wall component by calling Parameter get Parameter (BuiltInParameter parameterld) and IList <Parameter> GetParameters (string name) methods; thirdly, extracting parameter information contained in the component from building information modeling (BIM), with the parameter information including a wall starting point, a wall ending point, thickness, a bottom high layer, a top high layer, a profile frame coordinate, a main component ID, a unique ID, a wall category ID as well as a volume; and finally, completely extracting and packaging attribute parameter information of the component for calling by means of the main function; and
[20] (3) extracting basic geometric parameter information of the wall: obtaining geometric data of the entity object by means of an Element. Geometry attribute;
[21] A, for a wall body component: a geometry attribute of the wall body component directly contains a geometric entity of the instance, and elements in the geometric entity may be directly traversed at option details opt.DetailLevel = ViewDetailLevel Fine, so as to obtain the geometric data of the instance; and
[22] B, for a wall accessory component: provided that option details are not set, the geometric information of the body component and the geometric information of the wall accessory component are divided in combination with a GeometryInstance.GetSymbolGeometry method; to obtain the geometric data, firstly, geometric elements symbolgeometry of a family type is obtained, and then the geometric elements of the family type are traversed layer by layer to sequentially obtain a side, a surface and a body of the component;
[23] S33, obtaining triangular mesh graphic information of the component:
[24] (1) firstly, defining two list sets to classify and store data, defining a XYZ list for storing vertex coordinates of a triangular patch, and then defining an Int list for storing a surface index of the triangular patch;
[25] (2) traversing each surface in the entity and converting the surface into a 2 triangular patch; LUS01 781
[26] (3) obtaining vertex coordinates of the triangular patch, and putting same into the XYZ list; and
[27] (4) creating a dictionary, storing the vertex coordinates of the triangular patch into the dictionary by traversing the XYZ list, removing repeated vertex coordinates, so as to finally obtain an index value corresponding to a point coordinate by traversing the vertex coordinates in the dictionary, and then making the vertex coordinate correspond to the index value;
[28] S34, obtaining extended attribute parameter information of an arc wall: performing secondary mathematical operation on extracted information of a starting point, an end point and a radius of the arc wall to obtain a convexity;
[29] S35, obtaining extended parameter information of a multi-covering wall: entering a wall category information layer, entering a composite structure layer through a method of public CompoundStructure GetCompoundStructure () in HostObj Attributes, and then traversing information of each layer so as to obtain parameters and thickness of each surface layer;
[30] S36, obtaining extended parameter information of a wall accessory component:
[31] locking a geometric object from the Element. Geometry attribute, obtaining a member parameter of a WallSweep class, and finally, information of a positioning point of the accessory component, a vertical distance and a horizontal distance from a wall and a length of the accessory component may be obtained by means of secondary computation;
[32] S37, obtaining parameter information of a door and window opening component on the wall;
[33] Firstly, creating two single element collectors to collect a door and a window by means of BuiltInCategory. OST Windows and BuiltInCategory. OST Doors, respectively; secondly, creating a multi-element collector to collect rectangular holes and circular holes by means of BuiltIn Category. OST WallRect Opening and BuiltIn Category. OST ArcWallRectOpening; thirdly, positioning a related wall by means of Host. Id, to obtain parameter information in BuiltInParameter INSTANCE SILL. HEIGHT PARAM; and finally, obtaining a bottom elevation, an overall positioning point and a local positioning point of the door and the window, and a bottom elevation, overall starting point and end point coordinates and related starting point and end point coordinates of the opening in combination with the secondary calculation;
[34] S38, forming a special-shaped opening in a special-shaped wall and the foundation wall:
[35] (1) determining a shape of the wall by obtaining points, lines and surfaces of a bottom surface, a top surface and side surfaces; and
[36] (2) obtaining a related surface, where three types of surfaces, including PlannerFace, CylindricalFace and RuledFace appear, one elliptical annular face has two RuledFaces, one circular annular face has two CylindricalFaces, however, both faces may not be determined and computed, and all the faces are required be forcibly 3 converted into the PlannerFaces, filtering all planes out, performing secondary LUS01 781 computation on line groups contained in the planes, collecting the line groups by using a set, performing shape determination according to a size of the set, determining the line group to be a polygon with the number of set members greater than or equal to 3, extracting and collecting points of the polygonal line group, filtering repeated points, and obtaining coordinate points corresponding to each line group; and performing Arc and Ellipse determination by means of AsCurve () with the number of set members equaling to 2, and finally obtaining contour shapes, coordinates and positioning points of the special-shaped wall and the special-shaped opening;
[37] S39, obtaining chamfer information of adjacent walls:
[38] obtaining two positioning lines of the adjacent walls from a Location attribute, determining intersection of the two positioning lines by means of SetComparisonResult.Disjoint, and obtaining chamfer parameter information through an intersection computing method; and
[39] S4, creating an information extraction plug-in:
[40] (1) 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 selection function API, a Windows window control and a namespace of a data flow operation based on functions required to be implemented;
[41] (2) creating a transaction: submitting a series of operations modifying a Revit model to an object of a document;
[42] (3) compiling a main code: writing in the main function codes of the extraction information;
[43] (4) creating a plug-in button “wall information extraction”: firstly, adding an embedded panel, then calling a PushButton class to add a button control, and finally calling a Uri class to import a corresponding icon into a button;
[44] (5) registering and running an expansion module: writing, upon the manufacturing of the button, an Add-in file as an internal starting file, such that the button may be imported into the Revit software; and
[45] (6) writing a path of dll file and an ID of .dll generated by programming of the component information extraction plug-in into the file by a function program, opening the Revit software to obtain a plug-in of “wall information extraction”, and clicking the button to perform extraction operation on BIM wall model component information.
[46] Further, in S1, the three-dimensional wall model includes a foundation wall, a special-shaped wall, a door in the special-shaped wall, a window, an opening, a special-shaped opening in the special-shaped wall, adjacent walls, a layered wall, an arc-shaped wall, a wall decoration strip, a partition strip as well as a multi-covering wall.
[47] Further, in S2, Revit plug-in calling requires registration to be completed by loading a Revit.addin file.
[48] Further, in S2, tools used in Revit secondary development platform building include Visual Studio 2017, Revit SDK, Revit Lookup and AddinManager.
4
BRIEF DESCRIPTION OF THE DRAWINGS LUS01781
[49] FIG. 1 is a general flow diagram of wall data extraction based on the present invention.
DETAILED DESCRIPTION OF THE EMBODIMENTS
[50] The present invention will be further described in detail in combination with the accompanying drawings and the embodiment.
[51] As shown in FIG. 1, a Revit-based deep extraction method for a wall component includes:
[52] S1, perform three-dimensional modeling in Revit: the three-dimensional wall model includes a foundation wall, a special-shaped wall, a door in the special-shaped wall, a window, an opening, a special-shaped opening in the special-shaped wall, adjacent walls (with a chamfer automatically generated), a layered wall, an arc-shaped wall, a wall decoration strip, a partition strip with a multi-covering wall;
[53] S2, build a Revit secondary development platform: Revit plug-in calling requires registration to be completed by loading a Revit.addin file, and tools used in Revit secondary development platform building include VisualStudio 2017, Revit SDK, Revit Lookup and AddinManager;
[54] S3, extract Revit primitive model information:
[55] the Revit primitive model information includes project information parameters and a component parameter, the project information parameters including project reference information and project material library parameter information, and the following operations are executed in Revit primitive model information extraction:
[56] S31, obtain a project parameter:
[57] Step 1, obtain project basic attributes including a project name, a project number, a project release date and a project address; and
[58] Step 2, obtain project reference primitive information, including an elevation axis grid and a reference plane, where a class corresponding to an elevation is Level and is inherited from an Element class, an elevation height is obtained by means of a Level Elevation attribute, and the Level Elevation attribute corresponds to BuiltInParameter and is inherited from LEVEL-ELEV;
[59] S32, obtain an attribute parameter of a foundation wall:
[60] (1) classify component obtaining methods: sequentially obtain information of a single wall component, information of two adjacent walls and chamfer information thereof, as well as information of all walls of the project;
[61] (2) extract parameter information:
[62] the component parameter information including an instance parameter and a type parameter, firstly, view parameter information of a corresponding primitive instance with LookUp, and convert a traversed or clicked element into a wall; secondly, obtain key information required by the wall component by calling Parameter get _ Parameter (BuiltInParameter parameterld) and IList <Parameter> GetParameters (string name) methods; thirdly, extract parameter information contained in the component from building information modeling (BIM), the parameter information including a wall starting point, a wall ending point, thickness, a bottom high layer, a top high layer, a profile frame coordinate, a main component ID, a unique ID, a wall category ID as well LUS01 781 as a volume; and finally, completely extract and packaging attribute parameter information of the component for calling by means of the main function; and
[63] (3) extract basic geometric parameter information of the wall: obtain geometric data of the entity object by means of an Element. Geometry attribute;
[64] S33, obtain triangular mesh graphic information of the component:
[65] specific steps are as follows:
[66] (1) firstly, define two list sets to classify and store data, define a XYZ list for storing vertex coordinates of a triangular patch, and define an Int list for storing a surface index of the triangular patch;
[67] (2) traverse each surface in the entity and convert the surface into a triangular patch;
[68] (3) obtain vertex coordinates of the triangular patch, and put same into the XYZ list; and
[69] (4) create a dictionary, store the vertex coordinates of the triangular patch into the dictionary by traversing the XYZ list, remove repeated vertex coordinates, so as to finally obtain an index value corresponding to a point coordinate by traversing the vertex coordinates in the dictionary, and make the vertex coordinate correspond to the index value;
[70] S34, obtain extended attribute parameter information of an arc wall,
[71] perform secondary mathematical operation on extracted information of a starting point, an end point and a radius of the arc wall to obtain a convexity;
[72] S35, obtain extended parameter information of a multi-covering wall:
[73] in a process of obtaining the multi-covering wall, enter a wall category information layer, enter a composite structure layer through a method of public CompoundStructure GetCompoundStructure () in HostObj Attributes, and then traverse information of each layer to obtain parameters and thickness of each surface layer;
[74] S36, obtain extended parameter information of a wall accessory component;
[75] S37, obtain parameter information of a door and window opening component on the wall;
[76] S38, form a special-shaped opening in a special-shaped wall and the foundation wall;
[77] S39, obtain chamfer information of adjacent walls; and
[78] S4, create an information extraction plug-in:
[79] specific steps are as follows:
[80] (1) create a class library and add a reference: create a class library, and sequentially add a database application programming interface (API), an interface API, an application service API, an attribute API, a selection function API, a Windows window control as well as a namespace of a data flow operation according to functions required to be implemented;
[81] (2) create a transaction: submit a series of operation modifying a Revit model to an object of a document, where any document modification operation is required to be contained in an opened sub-transaction belonging to the document, or else, the document modification operation is abnormally thrown; 6
[82] (3) compile main codes: write in main function codes of the extraction LU501 781 information:
[83] (4) create a plug-in button “wall information extraction”: firstly, add an embedded panel, then call a PushButton class to add a button control, and finally call a Uri class to import a corresponding icon into a button;
[84] (5) register and run an expansion module: write, upon the manufacturing of the button, an Add-in file as an internal starting file, such that the button may be imported into the Revit software; and
[85] (6) write a path of .dll file and an ID of .dll generated by programming by a function program of the component information extraction plug-in into the file, open the Revit software to obtain a plug-in of “wall information extraction”, and click the button to perform extraction operation on BIM wall model component information. The path of dll file and the ID of .dll generated by programming of the component information extraction plug-in are written into the file by the function program, the plug-in of the component information extraction method implemented by the present invention may be viewed by opening the Revit software, and the extraction operation on the BIM wall model component may be performed by clicking the button.
7

Claims (1)

WHAT IS CLAIMED IS: LUS01781
1. A Revit-based deep extraction method for a wall component, comprising: S1, performing three-dimensional modeling through Revit: building information modeling software with Revit to establish a three-dimensional wall model, S2, building a Revit secondary development platform; S3, extracting Revit primitive model information, wherein the Revit primitive model information comprises project information parameters and a component parameter, the project information parameters comprising project reference information and project material library parameter information, and the following operations are executed in Revit primitive model information extraction: S31, obtaining a project parameter; S32, obtaining an attribute parameter of a foundation wall; S33, obtaining triangular mesh graphic information of the component; S34, obtaining extended attribute parameter information of an arc wall; S35, obtaining extended parameter information of a multi-covering wall; S36, obtaining extended parameter information of a wall accessory component; S37, obtaining parameter information of a door and window opening component on the wall; S38, forming a special-shaped opening in a special-shaped wall and the foundation wall; and S39, obtaining chamfer information of adjacent walls: obtaining two positioning lines of the adjacent walls from a Location attribute, determining intersection of the two positioning lines by means of SetComparisonResult.Disjoint, and obtaining chamfer parameter information through an intersection computing method; and S4, creating an information extraction plug-in.
1
LU501781A 2022-04-03 2022-04-03 Revit-based deep extraction method for wall component LU501781B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
LU501781A LU501781B1 (en) 2022-04-03 2022-04-03 Revit-based deep extraction method for wall component

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
LU501781A LU501781B1 (en) 2022-04-03 2022-04-03 Revit-based deep extraction method for wall component

Publications (1)

Publication Number Publication Date
LU501781B1 true LU501781B1 (en) 2022-10-03

Family

ID=83464010

Family Applications (1)

Application Number Title Priority Date Filing Date
LU501781A LU501781B1 (en) 2022-04-03 2022-04-03 Revit-based deep extraction method for wall component

Country Status (1)

Country Link
LU (1) LU501781B1 (en)

Similar Documents

Publication Publication Date Title
US20230274045A1 (en) Building information modeling (bim)-based intelligent drafting method for prefabricated buildings
CN112182698B (en) Depth extraction method based on revit wall body component
CN109214068B (en) BIM-based bottom assembled building information extraction method
KR100558952B1 (en) Method for automation of software manufacturing process based on graphic user interface design, and computer readable medium having thereon computer executable instruction for performing the same
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
CN111506950B (en) BIM structure transformation increment information generation and storage system and method
CN113902877B (en) Method for mutual conductance based on revit-family primitive model
CN114238488B (en) Multi-professional digital fruit integration and data interaction method and system
Zhang et al. A holistic literature review of building information modeling for prefabricated construction
CN112465958A (en) WebGL-based BIM model lightweight display method
CN108170855B (en) CityGML and IFC data unified query and data extraction method
CN115293106A (en) BIM bill of materials-based three-code system cost application method
CN104143215A (en) Informatization model design method of cable-membrane structure
LU501781B1 (en) Revit-based deep extraction method for wall component
CN116186831A (en) Semantic structured description and compliance inspection method and system for building engineering design
KR100943294B1 (en) Data portal service system and method
Helfert Perspectives of big data quality in smart service ecosystems (quality of design and quality of conformance)
Zhihui et al. Intelligent Data Mining of Computer‐Aided Extension Residential Building Design Based on Algorithm Library
CN114896655A (en) Method, device, equipment and medium for determining component calculated amount in antique building project
Lei et al. Measurement of Information Loss and Transfer Impacts of Technology Systems in Offsite Construction Processes
Afzal et al. Systematic investigation of interoperability issues between BIM and BEM
CN117371114B (en) Working model intelligent creation method and system based on BIM design platform
Lu et al. Frame design of the BIM based budget software of nuclear power projects
CN110737932B (en) Method for analyzing engineering temporary facility cost by using BIM (building information modeling)

Legal Events

Date Code Title Description
FG Patent granted

Effective date: 20221003