Using Dynamo to Automatically Attach Ceiling Lights at Different Heights
This guide explains how to use projection techniques in Dynamo to efficiently batch-place face-based families, such as ceiling lights, at varying heights.
Step 1: Extract Coordinate Points
Start by selecting the panel surface. Using projection, filter out two Z-axis faces and generate instance points. This is done by projecting two-dimensional coordinate points obtained from CAD either below or above the panel, using point nodes.
Step 2: Extract the Projection Surface
Next, use the projection from Step 1 to eliminate unnecessary faces. Group the remaining faces into pairs to extract the vertices and base points of the board. Use null values to exclude the four side faces, and filter for the two faces perpendicular to the coordinate points.
Step 3: Determine the Z-Value and Coordinates
Since the projection is along the Z direction, only two coordinate points will be obtained. Compare these two Z-values to identify the bottom of the board. Extract the coordinates of the bottom board for use in later steps.
Step 4: Organize the Surface List
Following the previous method, divide the surface list into two groups based on their properties.
Step 5: Select Family Types
Choose the appropriate family types for the ceiling lights to be placed.
Step 6: Apply Conditional Logic in Dynamo
Use an if-statement in Dynamo to evaluate the surfaces, assigning two values as True and False respectively. For ceiling lights, only two sides will appear, so evaluating just one side is sufficient to determine the correct value.
By classifying and unifying the plane and coordinate points, and attaching a reference vector, you can efficiently place a large number of face-based families. Previously, surfaces and coordinate points were paired, and the first or second term was selected based on the earlier evaluation to match faces and points correctly.
Related Skills
Dynamo: Quickly Inspecting Revit Model Components















Must log in before commenting!
Sign Up