Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
2 contributors

Users who have contributed to this file

@scotttd @kike-garbo
674 lines (631 sloc) 25.2 KB

Grasshopper components for Revit

The Rhino Inside® technology allows Rhino and Grasshopper to be embedded within Revit.

It is important to have a basic understanding to the Revit Data Hierarchy of Category -> Family -> Type -> Instance/Element to create and select elements. There is a good guide at Revit Families: A Step-By-Step Introduction

This guide documents the Grasshopper components that support Revit interaction.

Components

Parameter Components (Params tab)

         
Icon Name Description
Geometric by Element Geometric Element Select one or more persistent Element(s) in Revit to be used in Grasshopper. Also can be used to convert a sub-part to the parent element
Host Host Represents a Revit document host element.
Edge Edge Represents a Revit edge from an element.
Face Face Select a Revit Element Face(s)
SketchPlane Sketch Plane Represents a Revit document sketch plane. (Selector in the future)
Vertex Vertex Select a Revit Element Vertex(s)
BeamByCurve Category Revit Category Param used for selecting persistent Category (future)
GeometricElement Geometric Element Select one or more persistent Element(s) in Revit to be used in Grasshopper. Also can be used to convert a sub-part to the parent element
ElementType Element Type Get Element type from the Element(s) input
Family Family Represents a Revit document family.
GraphicStyle Graphic Style Represents a Revit Graphic Style.
Level Level Represents a Revit Level
BuiltInParameterGroup Parameter Group Represents a Revit Parameter Group
ParameterKey Parameter Key Represents a Revit Parameter Key

Build Components

               
Icon Name Description
AdaptiveComponentByPointsAdd Adaptive Component by PointsAdds an adaptive component instance using a list of points to Revit. The points must be sorted in the same order as the adaptive component expects.
AddBeamByCurve Add Beam By Curve Create a Revit Beam Object using a 2d or 3d curve for an axis/ Also assign a level.
AddColumnByCurve Add Column By Curve Create a Revit Column Object using an axial curve
FamilyInstanceByLocation Add Family Instance by Location Given a position, add a FamilyInstance element to the active Revit document in a host element.
AddFloorByOutline Add Floor By Outline Create a Revit Floor using a plan curve
RoofByOutline Add Roof By Outline Create a Revit Roof by using a boundary curve, type and level.
ColumnByCurve Wall By Curve Create a Revit Wall Object using a plan curve. The Level, Type, Height and other properties can be specified. See the component help for options.
DirectShapeByLocation Add DirectShape By Location Create a Directshape instance from a Directshape Type. Insert a specific DirectShape instance. The input for this component many times will the the Element Type By Name Component.

Category Components

 
Icon Name Description
CategoryGraphicStyle Category Graphic Style Returns the Projections an Cut of a specifcs categories graphic style.
CategoryIdentity Category Identity Break a Revit Category into its component parts. Name, Parent, Allow Bounds and Material Quantities
CategoryObjectStyles Category Object Styles Returns category object style attributes like Line-Color, Material…
CategorySubCategories Category SubCategories Returns a list of all the subcategories of Category
ColumnByCurve Category Types A pick list of category types in Revit.
DirectShapeCategories DirectShape Category Selector Select a category for using with the DirectShape Component

Datum Components

Icon Name Description
GridByCurve Add Grid by Curve Add a Revit Grid line through a Rhino curve.
LevelByElevation Add Level by Elevation Add level by supplying an elevation height.

Document Components

Icon Name Description
BeamByCurve Document Categories Get Active Document Category list Using the Type, and HasMaterial filter.
BeamByCurve Document Elements Get Active Document Elements list using a Category filter
ColumnByCurve Document Element Types Get Active Document Element Types using the Category, Family and Type filter
BeamByCurve Document Levels Get Active Document levels list from Revit
ColumnByCurve Document Parameters Get Active Document Parameters attached to a specific category from Revit

Elements Components

Icon Name Description
BeamByCurve Element Decompose Decompose an Element into it's associated data including Constraints, Dimensions, Identity Data, Category, Family, Type, ID, etc... Once the Elemnt is wired into this component, Shift double-click on the component to exapand to all Parameters of that component. Ctrl double-click on the component then to collapse down to only used outputs.
BeamByCurve Element Geometry Returns one or more Rhino Breps(s) form a Revit Element
ColumnByCurve Element Identity Returns Element's Name, Category, Type and UUID
BeamByCurve Element Parameter Get Get Element's Parameter Value based on a Parameter Name
ColumnByCurve Element Parameters Get Element's Parameter names attached to a specific Element
BeamByCurve Element Parameters Set Set an Element's Parameter Value by Element, Key and Value
ColumnByCurve Element Preview Create a mesh from an Element using the LOD and the Mesh quality settings
DeleteElement Element Delete Deletes the specified element out of Revit.

Family Components

 
Icon Name Description
FamilyGetType Family Get Type Obtains a set of types that are owned by Family
FamilyLoad Load Family Loads a family into the document using optional overrides
FamilyNew Load Family Creates a new Family from a template including optional overrides
FamilySaveAs Family Save As... Saves the Family to a given file path.
AddFamilyElementByBrep Add Family By Brep Add a family using a Brep.
AddFamilyElementByCurve Add Family by Curve Add a family using curve objects.
VisibilityConstruct Visibility Construct Create a View Construct for a Family.

Filter Components

                                 
Icon Name Description
ElementExclusionFilter Element Exclusion Filter Filter used to exclude a set of elements.
ElementLogicalOrFilter Element Logical Or Filter Filter used to combine a set of filters that pass when any pass
ElementLogicalAndFilter.png Element Logical And Filter.png Filter used to combine a set of filters that pass when any pass
ElementCategoryFilter Element Category Filter Filter used to match elements by their category
ElementExcludeElementType Element Exclude Element Type Filter used to exclude element types
EElementClassFilter Element Class Filter Filter used to match elements by their API class
ElementTypeFilter Element Type Filter Filter used to match elements by their type
lementBoundingBoxFilter Element Bounding Box Filter Filter used to match elements by their position and interesction with a bounding area.
ElementIntersectsElementFilter Element Intersects Elements Filter Filter used to match elements that intersect to the given element
ElementIntersectsBrepFilter Element Intersects Brep Filter Filter used to match elements that intersect to the given brep
ElementIntersectsMeshFilter Element Intersects Mesh Filter Filter used to match elements that intersect to the given mesh
ElementDesignOptionFilter Element Design Option Filter Filter used to match elements associated to the given Design Option
ElementOwnerViewFilter Element Owner View Filter Filter used to match elements associated to the given View
ElementLevelFilter Element Level Filter Filter used to match elements associated to the given level
ElementSelectableViewFilter Element Selectable View Filter Filter used to match seletable elements into the given View
ElementParameterFilter Element Parameter Filter Filter used to match elements by the value of a parameter
ElementRuleEquals Element Rule Equals Filter used to match elements if value of a parameter equals to Value
ElementRuleGreater Element Rule Greater Filter used to match elements if value of a parameter greater than Value
ElementRuleGreaterOrEqual Element Rule Greater Or Equal Filter used to match elements if value of a parameter greater or equal than Value
ElementRuleLess Element Rule Less Filter used to match elements if value of a parameter less than Value
ElementRuleLessOrEqual Element Rule Less Or Equal Filter used to match elements if value of a parameter less or equal than Value
ElementRuleNotEquals Element Rule Not Equals Filter used to match elements if value of a parameter less than Value

Geometry Components

         
Icon Name Description
DirectShapeByBrep Add Brep by Shape Given a Brep, it adds a Brep element to the active Revit document
DirectShapeByCurve Add Curve Shape Given a Curve, it adds a Curve shape to the active Revit document
DirectShapeByMesh Add Mesh Shape Given a Mesh, it adds a Mesh element to the active Revit document
DirectShapeByPoint Add Point Shape Given a Point, it adds a Point element to the active Revit document
AddDirectShapeByGeometryAdd DirectShape GeometryCreate a Directshape Element from a Rhino Geometry. This is the most flexible way to import Geometry.

Host Components

Icon Name Description
HostObjectGetFaces Host Object Get Faces Obtains a set of types that are owned by Family.

Revit Input Components

 
Icon Name Description
BeamByCurve Select a built-in Parameter by Name Use a checklist, dropdown, scroll sequence or cycle interface to select a Parameter Key from Revit
ColumnByCurve Select a Family Use a checklist, dropdown, scroll sequence or cycle interface to select a family from Revit
BeamByCurve Select a Level Use a checklist, dropdown, scroll sequence or cycle interface to select a level from Revit
ColumnByCurve Select an Element Type by Name Select a specific Element type by its name. This component will be blank unless connected in combination with the Select Document Category or the Select a Family component to select a specific element within a Family or Category. Use a checklist, dropdown, scroll sequence or cycle interface to select a Element Type from Revit ColumnByCurve
ModelCategoriesPicker Select a Model Category Use a checklist, dropdown, scroll sequence or cycle interface to select a model category from Revit
AnnotationCategoriesPicker Select an Annotation Category Use a checklist, dropdown, scroll sequence or cycle interface to select an annotation category from Revit
AnalyticalCategoriesPicker Select a Analytical Category Use a checklist, dropdown, scroll sequence or cycle interface to select an analytical category from Revit

Massing Components

Icon Name Description
BeamByCurve Add form by Curve Given a list of curves, it adds a Form element to the active Revit document
BeamByCurve Add form by Geometry Given its Geometry, it adds a Form element to the active Revit document

Modeling Components

Icon Name Description
BeamByCurve Add Model Line by Curve Given a Curve, it adds a Curve element to the active Revit document
BeamByCurve Add Sketchplane by Plane Given a Rhino Plane, it adds a SketchPlane element to the active Revit document

Parameter Components

Icon Name Description
BeamByCurve Add Document Parameter by Name Given its Name, it adds a Parameter definition to the active Revit document
BeamByCurve Decompose a Parameter Key Decompose a parameter key into Name, Value Type, Visible Property and ID
BeamByCurve Decompose a Parameter Value Decompose a parameter value into Name, Value Type, Visible Property and ID
BeamByCurve Parameter Group Represent Revit Paramter Group
BeamByCurve Selector for a Parameter group Use a checklist, dropdown, scroll sequence or cycle interface to select a Parameter Group from Revit

Site Components

Icon Name Description
BeamByCurve Add Building Pad by Outline Given a set of contour Curves, it adds a BuildingPad element to the active Revit document
BeamByCurve Add Topography Element by Points Given a set of Points, it adds a Topography surface to the active Revit document

Type Components

Icon Name Description
ElementTypeDuplicate Duplicate an Element Type. Given a Name, it duplicates an ElementType into the active Revit document
ElementTypeIdentity Get the Element Type Identification Query type identity information to return Category, Family Name, Name and UUID.
ElementTypeSimiliar Select Similiar Types Selects the types that are Similiar to the input Type.
AddDirectShapeType Create a DirectShape Type Given its Geometry, it reconstructs a DirectShapeType to the active Revit document
You can’t perform that action at this time.