All CollectionsDesigningFlowsFlow NodesFlow NodesHow to use each flow nodeBy Holly1 author·258 articlesRoads (flow node)Use the Roads node to change the color and settings of roads and pathsEnvelopeGenerate your allowable envelope, or the extents of your buildable area, with this transform.Write Feature PropertyWrite a property to a featureRepeatRepeat a value multiple timesWrite FeaturesWrite the geometric feature to the canvasGet Block IDSelect a block by name from a list and get its IDSkeleton EditorCreate building massing with customizable offsets, coverage settings, and corridor options. generates edge segments, enclosures, and endcapsRound CornersRound or chamfer the corners of a polygon or line.InsertInsert an item to a listInsert BlockInsert a block using a flowParking LotsGenerate parking bays on a geometryTo Square MetersConvert feet to meters- to be used in a flow where the units are not explicitly definedTo Square FeetConvert meters to feet - to be used in a flow where the units are not explicitly definedTo MetersConvert feet to meters- to be used in a flow where the units are not explicitly definedTo FeetConvert meters to feet - to be used in a flow where the units are not explicitly definedTo Cubic MetersConvert feet to meters- to be used in a flow where the units are not explicitly definedTo Cubic FeetConvert meters to feet - to be used in a flow where the units are not explicitly definedLine Shorten (legacy)Shorten a polyline by an amountDeconstruct FrameDeconstruct a frame into its componentsGet GLTFGet a GLTF file that exists in the current projectDeserializeDeserialize raw geometryReaderShows the JSON resulting from the node output it connects toPanelA panel that can hold text strings, code blocks, or numbersEThe mathematical constant E (Euler's number), an irrational number approximately equal to 2.718282PiThe mathematical constant Pi (π)InfinityThe mathematical constant infinity (∞)NumberA numberSaturate ColorSaturate a color.Random ColorGenerate a random colorMix ColorsInterpolate between two colors.Blend ColorsBlend two colors using blend modesConstruct ColorConstruct an rgb color from 3 number inputsColorA node that passes a color throughGet Block IDGet the ID of a blockGet Block DefinitionsGet all block definitions from a projectEvaluate BlockEvaluate a block to its features.Query RTreeQuery an rtree based on a featureInput ParameterCreate an end-user parametric input for your flowGet Point in GridGet a point in the project grid given u and v coordinates.Get Point LocationGet the Latitude and Longitude of a pointGet Feature Property NameGet the name of a giraffe property, formatted as a stringGet Flow NamesGet a map of flow names to idsGet Flow IDGet the id of a flowGet Project UnitsGet the units (meters, feet) of a projectGet Site Boundaryget the project boundary as a polygonGet Usage NamesGet the names of all of the usages in the projectGet Usage DataGet the data from a usageGet UsageGet a usage from a dropdownApply UsageApply a usage to a feature, including all of its defaults and nested categoriesGet Raw FeaturesGet all raw features in the projectGet Static Layer NamesGet a map of static layer names to idsGet Static Layer IDGet the ID of a static layerRead Static LayerRead a static layer from the projectWrite Feature ColorChoose a color for a featureRead Feature LayerRead a feature's layerSpread Feature PropertiesSpread properties into a featureSpreadSpread values into an object or listPickPick entries from an object by a keyObject EntriesGet the entries of an object as a listObject ValuesGet the values of an object as a listObject KeysGet the keys of an object as a listRead Feature PropertyRead a property value from a featureDelete PropertyDelete a single property from an objectWrite PropertyWrite a property to an object.Read PropertyRead a property from an objectParseParse a string into an objectStringifyTurn an object’s code into plain textString ContainsCheck if a string contains another string.Find and Replace StringFind and replace a stringSplit StringSplit a string into a list of stringsJoin StringsJoin a list of strings (concatenate)StringA node that contains a string.Key ByCreate an object from a list by a keyMap (node)Performs a set of instructions on each item in a listGroup by RangesGroup items in a list by ranges of a key. lower bound is inclusive, upper bound is exclusive.Group ByGroup items in a list by a keyRandom List ItemGet a random item from a listSomeCheck if some items in a list satisfy a conditionEveryCheck if every item in a list satisfies a condition.IncludesCheck if a list includes a valueIndex ofFinds an item and its index index in a listWeaveCombine two lists into a single list, alternating items from each list.StripSeparate the first, middle, and last items of a listSort NumbersSort a list of numbers from smallest to largest.Shuffle ListShuffles a list randomlyRotate ListRotate a list by a number of itemsReverse ListReverse a listFlatten ListFlatten a list of listsFlat MapMap a function over a list and flatten the resultFilter NullRemove NULL or undefined values from a listFilterChecks if each item in a list matches a boolean condition. Outputs 2 lists: matching and not matchingShiftRemoves the first item from a listPopPop (remove) an item from a listPushPush an item to a list (append an item to the end of a list)First ItemGet the first item in a listLast ItemGet the last item from a listList LengthGet the length of a listList ItemGet an item from a listEncapsulate in ListPlace an object in a listInstanced Group (legacy)Use flows to automate reusing multiple GroupsSubdivide RectanglesSubdivides rectangular polygons into a grid of dwellings with configurable spacing and dimensionsSubdivide LotsUse subdivide lots to divide a larger polygon into smaller parcels or lots by specifying the target frontage or area.Site FillUse Site Fill to fill an area with courtyard style buildings allowing for open space requirements.ApartmentUse the apartment transform to create an apartment building based on a single line.Random FillRandomly fill the polygon with a specified number of points.Random ReduceRandomly remove a number of elements from a listVertical ArrayThe vertical array transform copies geometry vertically in a stack.Rectangular ArrayConstruct a rectangular arrayGrid FillUse the grid fill transform to fill a polygon with evenly-spaced points on a grid.ArrayUse array to evenly space points along a polygon outline or line.Rotate VerticalRotates a geometry around the vertical axis using a flowTranslateTranslates a geometry along a vectorScaleScales a geometry about a centerStraight SkeletonGet the straight skeleton of a polygon.MetaballConstruct a meta ball from points and charges.Pole of InaccessibilityGet the pole of inaccessibility of an objectCentroid (dendrogram)Returns the centroid (visual center point) of a geometryVector CentroidThe Centroid finds the center point of a polygon and outputs it as a vector pointDistanceGet the distance between two pointsClosest PointGet the closest point on a geometry to a pointPoints in PolygonCheck if points are inside a polygonPoint in PolygonCheck if a point is inside a polygonExplodeExplode turns any multi-edge shape into lines and points (corners).Cull Duplicate PointsRemove duplicate points from a geometryRebuild GeometryRebuild (simplify) a geometry given a factorFillet CornersCurve the corners of a polygon or polylineBounding Box PropertiesReturns the properties of a bounding boxBounding BoxReturns the bounding box of a geometryEnclosed Polygoncreate an enclosed polygon from intersecting linesBoolean IntersectionGet the intersection of two geometries.Boolean DifferenceReturns the difference of two geometriesBoolean UnionReturns the union of multiple geometriesOffset LineMove the outline of a line or polygon a specified distance with offset line.Offset PolygonShrink or grow a polygon inside or outside the initiating shape with offset poly.AreaGet the area of a shapeCircleCreate a circle from a center pointRectanglecreate a rectangle from a center pointPolygon from Bounding BoxConstruct a polygon rom a bounding box.Polygon from PointsConstruct a polygon from pointsCatmull-RomCreate an interpolated curve from a set of pointsBezierCreate a bezier curve from a set of pointsGet SegmentsExplode a geometry into segmentsIntersect LinesGet the intersection of multiple linesFrame on PolylineGet a horizontal frame along a polyline at a given distanceStroke DashUse stroke dash to divide a line into segments of varying widths.Shatter PolylineShatter a polyline given a list of parametersSub CurveGet a sub curve of a polylineExtend PolylineExtend a polyline at both ends by a given lengthFlip PolylineFlip a polylineAlong PointUse along point to distribute a set number of points along a lineDivide LineDivide a line into a specified number of segmentsDivide DistanceDivide a line into equal distance pointslengthGet the length of a polylinemidpointGet the midpoint of a line or polylineControl PointsGet the end points of a geometryEnd PointsGet the end points of a polylineLine String from PointsConstruct a linestring from pointsLine SDLConstruct a line from a start point, direction and lengthLinecreate a line from 2 pointsconstruct objectConstruct a JSON objectconstruct key-value pairConstruct a key-value pairUnprojectInverse project a feature (turn a cartesian into a projected feature)Forward ProjectForward project a feature into a CartesianDeconstruct CartesianDeconstruct a cartesian feature into its componentsConstruct CartesianConstruct a cartesian from a geometryVector LengthGet the length of a vectorVector from LineGet a vector from the start to the end of a lineVector DotGet the dot product of two vectorsVector CrossGet the cross product of two vectorsVector Angle from NorthGet the angle between a vector and the north direction (in degrees, clockwise from north).Vector AngleGet the angle between two vectorsUnitizeUnitize a vectorUnit ZUnit vector in the z directionUnit YUnit vector in the y directionUnit XUnit vector in the x directionZero Vector[0, 0, 0]VectorA vector (primitive)Deconstruct VectorDeconstruct a vector to get its coordinatesconstruct vectorConstruct a vector from x, y, and z coordinatesBooleanA boolean (true/false)Ternary IfApplies a value based on a true/false conditionIn RangeCheck if a value is within a specified range (inclusive).Less Than or EqualCheck if a value is less than or equal to another valueLess ThanCheck if a value is less than another valueGreater Than or EqualCheck if a value is greater than or equal to another valueGreater ThanCheck if a value is greater than another valueNot EqualsCheck if two values are not equalEqualsCheck if two values are equalNotNegate a boolean valueOrCheck if at least one of two values is trueAndCheck if two values are both trueRadians to DegreesConvert radians to degreesDegrees to RadiansConvert degrees to radiansAtanGet the arctangent of a numberAcosGet the arccosine of a numberAsinGet the arcsine of a numberTanGet the tangent of an angleCosGet the cosine of an angleSinGet the sine of an angleseriesGenerate a series of numbersRandom IntegerGenerate a random integer between min and maxRandomGenerate a random number between 0 and 1SumSum a list of numbersAverageAverage a list of numbersFloorRound a number down to the nearest integerCeilRound a number up to the nearest integerRoundRound a number to the nearest integerRemapRemap a number from one range to anotherClampClamp a number between two valuesMinGet the minimum of two numbersMaxGet the maximum of two numbersNegateNegate a numberSqrtGet the square root of a numberPowerRaise a number to the power of another numberModuloCalculate the remainder of the division of two numbersDivideDivide two numbersMultiplyMultiply two numbersSubtractSubtract two numbersAddadd two numbersAbsGet the absolute value of a numberMinimum Bounding RectangleReturns the minimum bounding rectangle of a geometryGet Project IDGet the id of the projectGet Project GridGet the project gridJoin LinesJoin multiple lines into a single polylineReduceReduce a list to a single value using a functionRead FeatureReads the feature the flow is attached toDifference SetsFind the difference between two setsAdd to SetAdd an item to a setAlignAlign two featuresXor SetsFind the symmetric difference between two setsTween PolylinesTween between two polylinesUnion SetsFind the union of two setsSet to ArrayConvert a set to an arraySet HasCheck if a set contains an itemSetA setRemove from SetRemove an item from a setRaycastCast a ray and get intersections with polygonsPerlin Noise 2DGenerate 2D perlin noiseOrientOrient a geometry from one frame to anotherNullish CoalescingReturns the first non-null/undefined value between two inputs.New ListCreate a new empty listIntersect SetsFind the intersection of two setsInterpolate PointsInterpolate between two pointsInternal and External WallsInternal and external walls with adjacency codeIdentityOutputs the value that is passed inEvaluate FlowEvaluate a flowLargest Inscribed RectangleReturns the largest rectangle that fits inside a polygon, at any rotationArray Along CurveArrays points along input feature.Wedge (node)Construct a wedge primitivePyramid (node)Construct a pyramid primitiveCone (node)Construct a cone primitiveCylinder (node)Construct a cylinder primitiveSphere (node)Construct a sphere primitiveBox (node)Construct a box primitiveInscribed CircleReturns the largest circle that fits inside a polygonEdge-Aligned Inscribed RectangleReturns the largest rectangle inside a polygon aligned to one of its edges. touch edge keeps the rectangle flush with that edge, like a capped inward offsetGet FlowGet a flowConstruct VectorConstruct a vector