Skip to content

Deprecated Nodes & Packages

Andreas Dieckmann edited this page Dec 27, 2025 · 62 revisions

Over time, some of the functionality developed for the Clockwork package has become available as built-in Dynamo functionality. Whenever that happens, I deprecate the respective Clockwork node.

Future candidates for deprecation

See deprecation schedule

Clockwork for Dynamo 4.x

...

Clockwork for Dynamo 3.x

The following nodes were at some point deprecated in Clockwork for Dynamo 3.x or not migrated from the previous package version at all:

Node Replacement
Booleans.AnyFalse Use built-in node List.AnyFalse instead
Booleans.AnyTrue Use built-in node List.AnyTrue instead
ScopeIf+ Use built-in nodes ScopeIf (only inside custom nodes) or (refactored) If instead
Sheet.Schedules Use built-in node Sheet.Schedules instead
View.Direction Use built-in node View.ViewDirection instead
View.Scale Use built-in node View.Scale instead
View.TemporarilyIsolateCategory Use built-in node View.IsolateCategoriesTemporary instead
View.TemporarilyIsolateElement Use built-in node View.IsolateElementsTemporary instead

Clockwork for Dynamo 2.x

The following nodes were at some point deprecated in Clockwork for Dynamo 2.x or not migrated from the previous package version at all:

Node Replacement
Dimension.SetType Use Clockwork's Element.SetType (formerly FamilyInstance.SetType) instead
Directory.Contents+ Use built-in node FileSystem.GetDirectoryContents instead
Element.IsOfCategory Use Clockwork's Element.Category+ or built-in node Element.GetCategory with built-in node List.Equals instead
(re-added in 2.3.0)
FamilyType.FamilyName Use built-in node ElementType.FamilyName instead
Floor.ResetSlabShape Use Clockwork's Element.ResetSlabShape (formerly Roof.ResetSlabShape) instead
Floor.SlabShapeByPoints Use Clockwork's Element.SlabShapeByPoints (formerly Roof.SlabShapeByPoints) instead
Floor.SlabShapeHasBeenModified Use Clockwork's Element.SlabShapeHasBeenModified (formerly Roof.SlabShapeHasBeenModified) instead
Group.Members Use built-in node Group.GetMembers instead
Material.Properties Use built-in nodes Material.Color, Material.MaterialClass, Material.Shininess, Material.Smoothness & Material.Transparency instead
RoomTag.SetType Use Clockwork's Element.SetType (formerly FamilyInstance.SetType) instead
TextElement.Text Use built-in nodes ModelText.Text and TextNote.Text respectively instead
Topography.IsSubregion Use Clockwork's Element.SuperComponent and compare result against null
VersionNumber.ToInteger Use new Clockwork node VersionNumber.Compare instead
WallType.Kind Use built-in node WallType.Kind instead

Clockwork for Dynamo 1.x

The following nodes were at some point deprecated in Clockwork for Dynamo 1.x or not migrated from the previous package version at all:

Node Replacement
BoundingBox.ByElement Use built-in node Element.BoundingBox instead.
If you need a Revit BoundingBox convert with Clockwork's RevitBoundingBox.FromDynamoBoundingBox
CurtainSystem.ByFace Use built-in node CurtainSystem.ByFace instead
DetailLevel.Coarse, DetailLevel.Fine & DetailLevel.Medium Use built-in node Detail Level instead
DimensionType.Style Use built-in node DimensionType.StyleType instead
Document.LinksAndImports Use built-in nodes Element Types (set to ImportInstance) and All Elements of Type as well as Clockwork's ImportInstance.IsLinked instead
Element.ParameterIsReadOnly Use built-in nodes Parameter.ParameterByName and Parameter.IsReadOnly instead
Elements.GroupByHost Use Clockwork's Element.Host+and built-in node List.GroupByKey instead
GlobalParameter.GetValue Use built-in node GlobalParameter.Value instead
List.RepeatItemsByLengths Use built-in node List.OfRepeatedItem instead with both inputs set to @L1
List.SublistLengths Use built-in node List.Count with input set to @L2
List.SublistsContain Use built-in node List.ContainsItem with "list" input set to @L2
RevisionCloud.FromCurves Use built-in node RevisionCloud.ByCurve instead
Room.IsPointInside Use built-in node Room.IsInsideRoom instead
Room.IsUnbounded Use new Clockwork node Room.State instead and check if return value equals "Not enclosed"
TextAlignFlags.Bottom, TextAlignFlags.Center, TextAlignFlags.Left, TextAlignFlags.Middle, TextAlignFlags.Right & TextAlignFlags.Top Use built-in nodes Select Horizontal Text Alignment && Select Vertical Text Alignmentinstead
TextElement.Text Use built-in node TextNote.Text instead
(re-added in 1.32.0)
TextNote.ByStringAndPosition Use built-in node TextNote.ByLocation instead
UV.IsInsidePolygon Use built-in node Polygon.ContainmentTest instead
Wall.ByFace Use built-in node Wall.ByFace instead
WallLocationLine.CoreCenterline, WallLocationLine.CoreExterior, WallLocationLine.CoreInterior, WallLocationLine.FinishFaceExterior, WallLocationLine.FinishFaceInterior & WallLocationLine.WallCenterline Use built-in node Wall Location instead

Clockwork for Dynamo 0.9.x

The following nodes were at some point deprecated in Clockwork for Dynamo 0.9.x or not migrated from the previous package version at all:

Node Replacement
Document.Path Use built-in nodes Document.Current, Document.FilePath and FilePath.DirectoryName instead
List.ChopByLengths Use built-in node List.Chop instead
(re-added in 1.0.3)
SolarAnalysisType.Average, SolarAnalysisType.Cumulative & SolarAnalysisType.Peak Not needed anymore due to changes in package Solar Analysis for Dynamo

Clockwork for Dynamo 0.8.2

The following nodes were at some point deprecated in Clockwork for Dynamo 0.8.2 or not migrated from the previous package version at all:

Node Replacement
Buckyball.Coordinates, Buckyball.Struts & Buckyball.Surfaces These nodes have been integrated into Clockwork's Buckyball.ByOriginAndRadius and are no longer needed
Document.DimensionTypes Use built-in nodes Element Types (set to DimensionTypes) and All Elements of Type instead
DoorOrWindow.ExitsToOneRoomOnly Functionality is now more or less integrated into Clockwork's Door.Rooms and Window.Rooms nodes (roomCount output)
Element.Type (LinkedFile) Use Clockwork's Element.Type instead
HostedObject.FacingOrientation Use built-in node FamilyInstance.FacingOrientation instead
Roof.CreationMethodIsByExtrusion, Roof.CreationMethodIsByFace, Roof.CreationMethodIsByFootprint & Roof.CreationMethodIsInPlace Use Clockwork's Roof.CreationMethod and string comparison instead
Roof.KindIsBasic & Roof.KindIsGlazed Use Clockwork's Roof.Kind and string comparison instead
StructuralFoundation.KindIsIsolated, StructuralFoundation.KindIsSlab & StructuralFoundation.KindIsWallFooting Use Clockwork's StructuralFoundation.Kind and string comparison instead
Surface.Vertices Use built-in nodes Face.Vertices and Vertex.PointGeometry instead
UnitType.FromDynamoUnitType Functionality is now integrated into Clockwork's UnitType.DisplayUnitType
Centimeters.ToFeet, CubicFeet.ToCubicMeters, CubicMeters.ToCubicFeet, Feet.ToCentimeters, Feet.ToMeters, Feet.ToMillimeters, Meters.ToFeet, Millimeters.ToFeet, SquareFeet.ToSquareMeters & SquareMeters.ToSquareFeet Use built-in node Convert Between Units instead
View.DetailLevelIsCoarse, View.DetailLevelIsFine & View.DetailLevelIsMedium Use Clockwork's View.DetailLevel and string comparison instead
View.TypeIs3D, View.TypeIsAreaPlan, View.TypeIsCeilingPlan, View.TypeIsDetail, View.TypeIsDraftingView, View.TypeIsElevation, View.TypeIsFloorPlan, View.TypeIsLegend, View.TypeIsRendering, View.TypeIsSchedule, View.TypeIsSection & View.TypeIsWalkthrough Use Clockwork's View.Type and string comparison instead
Wall.CreationMethodIsByFace, Wall.CreationMethodIsInPlace & Wall.CreationMethodIsStandard Use Clockwork's Wall.CreationMethod and string comparison instead
WallType.FunctionIsCoreShaft, WallType.FunctionIsExterior, WallType.FunctionIsFoundation, WallType.FunctionIsInterior, WallType.FunctionIsRetaining & WallType.FunctionIsSoffit Use Clockwork's WallType.Function and string comparison instead
WallType.KindIsBasicWall, WallType.KindIsCurtainWall & WallType.KindIsStackedWall Use Clockwork's WallType.Kind and string comparison instead

Clockwork for Dynamo 0.7.x

The following nodes were at some point deprecated in Clockwork for Dynamo 0.7.x or not migrated from the previous package version at all:

Node Replacement
Accumulate List Use LunchBox Mass Addition in package LunchBox instead
All Placed Loadable Family Types of Category Use Clockwork's All Placed Family Types of Category instead
Angle Between Vectors Use LunchBox Vector Angle in package LunchBox instead
Combine List With Nested List & Combine Two Nested Lists Use built-in node List.Combine instead
Count True And False Use built-in nodes CountTrue & CountFalse instead
CurtainSystem.Type, Dimension.Type, Floor.Type, Roof.Type, StructuralFoundation.FootingType & Wall.Type
(aka Get Curtain System Type, Get Dimension Type, Get Floor Type, Get Roof Type, Get Footing Type & Get Wall Type in 0.6.3)
Use Clockwork's Element.Type instead
Curve Array Curve arrays now need to be created inside the python nodes that will use them, so a separate node is useless
Degrees To Radians Use built-in node Math.DegreesToRadians instead
Directory.FromFilePath
(aka Get Directory From File Path in 0.6.3)
Use built-in node Directory.FromPath instead
Dispatch Use built-in node List.FilterByBoolMask instead
Elements.RemoveDuplicates
(aka Duplicate Revit Elements From List in 0.6.3)
Use built-in node List.UniqueItems instead
False For All (Booleans) Use built-in node AllFalse instead
Filter List By Category Use Clockwork's Element.IsOfCategory in conjunction with the built-in node List.FilterByBoolMask instead
Filter List By Regular Expression Matches Use Clockwork's String.MatchRegularExpression in conjunction with the built-in node List.Filter instead
Filter Roofs By Creation Method This node was split up into several nodes that can be used in conjunction with the built-in node List.Filter:
Roof.CreationMethod, Roof.CreationMethodIsByExtrusion, Roof.CreationMethodIsByFace, Roof.CreationMethodIsByFootprint, Roof.CreationMethodIsInPlace
Filter Roofs By Kind This node was split up into several nodes that can be used in conjunction with the built-in node List.Filter:
Roof.Kind, Roof.KindIsBasic, Roof.KindIsGlazed
Filter Structural Foundations By Kind This node was split up into several nodes that can be used in conjunction with the built-in node List.Filter:
StructuralFoundation.Kind, StructuralFoundation.KindIsIsolated, StructuralFoundation.KindIsSlab, StructuralFoundation.KindIsWallFooting
Filter Views By Detail Level This node was split up into several nodes that can be used in conjunction with the built-in node List.Filter:
View.DetailLevel, View.DetailLevelIsCoarse, View.DetailLevelIsFine, View.DetailLevelIsMedium
Filter Walls By Creation Method This node was split up into several nodes that can be used in conjunction with the built-in node List.Filter:
Wall.CreationMethod, Wall.CreationMethodIsByFace, Wall.CreationMethodIsInPlace, Wall.CreationMethodIsStandard
Filter Wall Types By Function This node was split up into several nodes that can be used in conjunction with the built-in node List.Filter:
WallType.Function, WallType.FunctionIsCoreShaft, WallType.FunctionIsExterior, WallType.FunctionIsFoundation, WallType.FunctionIsInterior, WallType.FunctionIsRetaining, WallType.FunctionIsSoffit
Filter Wall Types By Kind This node was split up into several nodes that can be used in conjunction with the built-in node List.Filter:
WallType.Kind, WallType.KindIsBasicWall, WallType.KindIsCurtainWall, WallType.KindIsStackedWall
Get Faces From Solid Use built-in node Geometry.Explode instead
Get Family From Family Type Use built-in node FamilySymbol.Family instead
Get Family Instances By Category Use built-in node All Elements Of Category instead
Get Family Instances By Category And Name Use built-in node All Elements Of Category and Clockwork's All Elements of Name instead
Get Family Symbols From Family Use built-in node Family.Symbols instead
Get Family Type Use built-in node FamilyInstance.Symbol instead
Get First Four Indices Use code block instead (mylist[0..3])
Get First Three Indices Use code block instead (mylist[0..2])
Get Highest And Lowest From List Use built-in nodes List.MaximumItem & List.MinimumItem instead
Get Phase By Name Use Clockwork's All Elements Of Name in conjunction with Clockwork's Document.Phases instead
If Empty Replace With New Value <Empty> items do not appear anymore in 0.7.x
If X Equal, If X Greater Than, If X Greater Than Or Equal, If X Less Than & If X Less Than Or Equal Use Formula node (if(condition,val_if_true,val_if_false)) or code block (condition ? val_if_true : val_if_false) instead
Is Empty <Empty> items do not appear anymore in 0.7.x
LibG Vector Components Use built-in nodes Vector.X, Vector.Y & Vector.Z instead
List.BinaryToDecimal Use Clockwork's String.BinaryToDecimal instead
Mesh From Face This was a Revit-specific method. Meshes now use ASM geometry so this node no longer serves a purpose
Plane By Reference Or Sketch Plane Use built-in nodes ReferencePlane.Plane & SketchPlane.Plane instead
Plane Properties Use built-in nodes Plane.Normal, Plane.Origin, Plane.Xaxis & Plane.Yaxis instead
Radians To Degrees Use built-in node Math.RadiansToDegrees instead
Recursive Boolean Difference Use built-in node Solid.DifferenceAll instead
Remove Duplicates From List Use built-in node List.UniqueItems instead
Remove Duplicate Uvs Or XYZ From List Use built-in nodes Point.PruneDuplicates & List.UniqueItems instead
Replace Substring Use built-in node String.Replace instead
Select Subcategory By Name Use Clockwork's All Elements Of Name in conjunction with Clockwork's Category.Subcategories instead
SolarRadiationCSV.Parse
(aka Parse Solar Radiation CSV in 0.6.3)
This node was used for processing CSV files generated by the Solar Radiation Analysis tool in Autodesk Vasari.
This functionality is now available in package Solar Analysis for Dynamo
Topo To Mesh Use built-in node Topo.Mesh instead
Transform Curve Loop This was a Revit-specific method that is no longer needed
Triangles From Mesh This node was replaced by Mesh.FaceVertices
True For All (Booleans) Use built-in node AllTrue instead
UV Components Use built-in nodes UV.U & UV.V instead
UV Or XYZ Is In List Use built-in node List.ContainsItem instead
Vectors Are Parallel Use built-in node Vector.IsParallel instead
XYZs Almost Equal Use built-in node Geometry.IsAlmostEqualTo instead
XYZs From MeshTriangle This node was replaced by Mesh.FaceVertices

Pre-Clockwork Packages

If you have installed Clockwork or are planning to do so, you should uninstall all of my previous 0.6.3 packages (that is if you had those installed at all, of course). As a rule of thumb, uninstall everything that is organized in the CAAD_RWTH category in the node browser. Here's a (hopefully) complete list of all deprecated 0.6.3 packages:

  • Accumulate List
  • Almost Zero
  • Alphabetical Sequence
  • Altitude And Azimuth From Vector
  • Angle Between Vectors
  • Angle Bisector
  • Angle By Angle Sum
  • Binary To Decimal
  • Buckyball
  • Central Projection On Face
  • Central Projection On Plane
  • Convex Hull 2D
  • Correct Normal Orientation
  • Count Sequences Of True Or False
  • Count True And False
  • Create Placeholder Sheets
  • CSV To List
  • Curve Array
  • Custom Rounding
  • Dispatch
  • Drop Last Row And Column From UV Field
  • Elements From And To IDs
  • Equal List Lengths
  • Evaluate Divided Surface Grid Nodes
  • Exterior Angle
  • Family To Type And Back
  • Foundation Stuff
  • Get And Set Family Type
  • Get And Set Name
  • Get Bounding Box
  • Get Current Revit Document Path
  • Get Directory From File Path
  • Get Element By Face
  • Get Element Location
  • Get Faces From Solid
  • Get Highest And Lowest From List
  • Get Third XYZ Axis
  • Group List Of Lists By Key
  • Has Out-Of-Plane XYZs
  • Hosted Object Stuff
  • Increment Or Decrement By 1
  • Intersects For Divided Surfaces
  • Invert And Mirror Normalized values
  • Is Empty
  • Is Multiple
  • Is Odd Number
  • Is Point Inside Polygon
  • Is Related To Mass
  • Law Of Cosines
  • Law Of Sines
  • LibG Vector Components
  • Lines Through Points (Closed Loop)
  • List Not Empty
  • Mappable Conditions
  • Match List With Key Values
  • Material Stuff
  • Mesh Stuff
  • Move XYZs from Plane To Plane
  • Normalization
  • Parameter Exists
  • Parse Solar Radiation CSV
  • Phasing Stuff
  • Plane By Reference Or Sketch Plane
  • Plane From First 3 XYZs
  • Plane From Planar Face
  • Plane Properties
  • Plane-Vector Intersection
  • Project Stuff
  • Pythagorean Theorem
  • Recursive Boolean Difference
  • Regular Expressions
  • Remove Duplicates From List
  • Replace Substring
  • Return List Or Single Value
  • Revit API Helpers
  • Revit App Version Info
  • Roof And Floor Stuff
  • Room Stuff
  • Select By Category
  • Sequence With Leading Zeros
  • Similar
  • Simple Patterning
  • Solve Triangle By XYZs
  • Sort List Of Lists
  • Standard Colours
  • Standard Normals
  • Subcategory Stuff
  • Sublist Helpers
  • Swap UV
  • Switch
  • Topo Stuff
  • Transform Curve Loop
  • True And False For Any And All
  • Turn Into List
  • Unit Conversion
  • UV Components
  • Vector And Plane Are Parallel
  • Vector Is In Plane
  • Vector-Vector Intersection
  • Vectors Are Orthogonal
  • Vectors Are Parallel
  • View Stuff
  • Wall Stuff
  • XYZ Axis From Vector
  • XYZ Grid From Face

Clone this wiki locally