Giter Club home page Giter Club logo

revit_dynamo-3dwireframe_to_revitmodel_converter's Introduction

Revit Dynamo - 3D Wireframe to Revit Model Conversion

This script helps to enhance coordination between architects and structural eningeers during design development. This script is especially useful for complicated structures and automates converting a 3D wireframe (DWG format) to structural members in Revit during the design coordination iterative process. This then serves as a foundation model for the structural engineer to update member sizes or add structural members in Revit after structural analysis is performed.

The script requires a DWG file format linked into the Revit model. Using Dynamo Player, user is prompted to selected which linked CAD element to process. Based on layers in the CAD file, user can specify which model category to apply to a layer. It is important for the structural engineer to communicate to the architect what structural member layer types and how to assign 3D wireframe elements to which layers in their authoring software (i.e. Rhino). This is especially important when differentiating between structural columns and structural framing elements. This script only applies to modeling structural elements to a 3D wireframe.

NOTE:

  1. The Model Examples Folder contains a sample 3D wireframe and output structural Revit model.
  2. User to load desired structural families prior to running script.
  3. User still needs to update element parameters such as Structural Usage or Start/End Connections.

Getting Started

Environment setup regarding script development logistics.

  • IDE:

    • Revit Dynamo
  • Language:

    • Visual Programming / Python for Custom Node Creation
  • Output File Type:

    • dyn
  • Additional Library Packages Implemented:

    • Data Shapes
    • BimorphNodes

Dynamo Script Development & Structure

Script features and specs.

  • Software Required

    • Revit (any version with Dynamo 2.1 and above installed)
  • User Interface

    • User executes Dynamo Player to initiate script -Data Shapes MultipleInputForm++ node used to obtain user input to perform structural modeling task
  • Setup Requirements and Capabilities

    • Structural engineer to communicate/coordinate with architect what structural member Layer types needed and how to assign 3D wireframe elements to appropriate Layer
    • User to load desired structural families prior to running script.
    • User still needs to update element parameters such as Structural Usage or Start/End Connections.

Dynamo Script Layout

Overall graph view

  1. User Input

    • Uses Data Shapes package to create input types and to be used in MultipleInputForm++ (obtain user input)

  2. Example of Backend Process Per User Input

    • This process makes the selected linked CAD file easily accessed for processing by removing nested lists

  3. User Input

    • Uses Data Shapes package to create input types and to be used in MultipleInputForm++ (obtain user input)
    • Creates consolidated list taking user selection from (2.) and model family type information from (1.).

  4. Example of Backend Process Per User Input

    • Each process accesses user input by associated list index
      • The selected layer will be used to access 3D lines on that layer to be converted to curves (using BimmorphNodes - CAD.CurvesFromCADLayers node)
      • The selected structural frame or structural column type is assigned to curve if user has checked the box for type to be modeled
      • The selected level is assigned for element level association.

  5. Revit Model Element Created

    • StructuralFraming.BeamByCurve or StructuralFraming.ColumnByCurve Node is used to take the user input from (4.) to generate a Revit model element.
    • This is repeated for all curves filtered by user selected CAD Layer.

Mapping Script to UI

  1. UI associated to (Dynamo Script Layout 2.)

  2. UI associated to (3.) resulting from user input from (Dynamo Script Layout 2.) and information from (Dynamo Script Layout 1.).

  3. Resulting Output after applying Revit structural elments to column layer and brace layer associated to (Dynamo Script Layout 5.).

Running Script & User Implementation Instructions

  1. Clone or download project.
  2. In own Revit project Link CAD in example 3D wireframe model (3D_Wireframe-Example.dwg) in Model Examples folder or own wireframe model.
  3. User to load desired structural families prior to running script.
  4. Open Dynamo Player and select folder with 3DWireframe_To_RevitModel_Converter.dyn to display script (DYN).

  5. Follow user prompt and select linked CAD file to process

  6. Follow next user prompt to auto model to 3D wireframe

  7. The following is the result of the input in (6.).

  8. Reapeat steps (4.) - (6.) until all desired elements are modeled.

  9. Below is what the completed example should look like. Strutural engineer or modeler can now clean-up and update model as needed in Revit.

revit_dynamo-3dwireframe_to_revitmodel_converter's People

Contributors

flyingturtle13 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.