Node library¶
Every node in the library, with its inputs and outputs: 589 nodes in 38 category groups. Pick a category below, or type a node's name in the search box at the top.
Categories¶
-
1 node
Note, ... -
17 nodes
Color.ByARGB,Color.ByHSV,Color.ByValues, ... -
5 nodes
JSON.Parse,JSON.Stringify,Snapshot.Diff, ... -
18 nodes
DateTime.Add,DateTime.AddWorkdays,DateTime.ByDate, ... -
17 nodes
Dictionary.ByKeysValues,Dictionary.ContainsKey,Dictionary.Count, ... -
4 nodes
Watch,Watch Image,Watch List, ... -
37 nodes
CSV.AppendToFile,CSV.ReadFromFile,CSV.WriteToFile, ... -
42 nodes
BoundingBox.ByCorners,BoundingBox.Center,BoundingBox.Contains, ... -
4 nodes
IFC.GuidDecode,IFC.GuidEncode,IFC.IsGlobalId, ... -
11 nodes
Boolean,Choice,Color Picker, ... -
62 nodes
List.AddItemToEnd,List.AddItemToFront,List.AllIndicesOf, ... -
18 nodes
And,Equals,GreaterThan, ... -
38 nodes
Add,Divide,Math.Abs, ... -
2 nodes
Report.Html,Report.Markdown, ... -
36 nodes
String.Concat,String.Contains,String.EndsWith, ... -
7 nodes
Graph.Folder,System.Environment,System.OpenPath, ... -
28 nodes
Table.AddColumn,Table.AddFormulaColumn,Table.Column, ... -
1 node
Reroute, ... -
17 nodes
Action.Ghost,Action.Highlight,Action.Isolate, ... -
9 nodes
Audit.DuplicateItems,Audit.MissingProperty,Distance.BetweenItems, ... -
14 nodes
Appearance.ColorByValues,Appearance.ColorByValuesTemporary,Appearance.Focus, ... -
9 nodes
Camera.Current,Camera.LookAt,Camera.Restore, ... -
52 nodes
Clash.AllGroups,Clash.CompareSnapshots,Clash.Deduplicate, ... -
4 nodes
SavedItem.AddComment,SavedItem.ClearComments,SavedItem.Comments, ... -
9 nodes
Application.Version,Document.AppendFiles,Document.Current, ... -
12 nodes
BCF.ExportIssues,BCF.ImportIssues,Export.ClashReport, ... -
3 nodes
Grids.ClosestIntersection,Grids.Intersections,Grids.Levels, ... -
6 nodes
Markup.AddCloud,Markup.AddNumberTag,Markup.AddShape, ... -
5 nodes
Model.Info,Model.Remove,Model.Snapshot, ... -
15 nodes
ModelItem.AncestorNameMatches,ModelItem.AncestorPropertyMatches,ModelItem.Ancestors, ... -
13 nodes
Properties.AsDictionary,Properties.Categories,Properties.CustomTabs, ... -
2 nodes
Search.ByGuid,Search.ByProperty, ... -
9 nodes
Captured Selection,Selection.AddToCurrent,Selection.Clear, ... -
17 nodes
SelectionSet.ByName,SelectionSet.Create,SelectionSet.CreateFromSearch, ... -
11 nodes
TimeLiner.AutoAttachByProperty,TimeLiner.Tasks,TimelinerTask.AttachSet, ... -
7 nodes
ModelItem.GetTransform,ModelItem.MoveTo,ModelItem.ResetTransform, ... -
4 nodes
Units.All,Units.Convert,Units.Current, ... -
23 nodes
SavedViewpoint.Apply,SavedViewpoint.ByName,SavedViewpoint.CopyOverrides, ...
All nodes¶
| Node | Category | What it does |
|---|---|---|
Action.Ghost |
Workflow.Actions | Per item: applies a TEMPORARY transparency to the given items (wire the whole found set) so the highlighted item reads against a faded context. |
Action.Highlight |
Workflow.Actions | Per item: applies a TEMPORARY color to the current item so it stands out — captured per viewpoint by Action.SaveViewpoint, so each view keeps its own highlight. |
Action.Isolate |
Workflow.Actions | Per item: shows the current item and hides everything else (Appearance.Isolate). |
Action.OverrideColor |
Workflow.Actions | Per item: overrides the current item's color (Appearance.OverrideColor). |
Action.ResetAppearance |
Workflow.Actions | Per item: removes color and transparency overrides from the current item (Appearance.Reset). |
Action.ResetTemporaryAppearance |
Workflow.Actions | Per item: clears all TEMPORARY color/transparency overrides (Appearance.ResetTemporary) — put first in the sequence so the previous item's highlight/ghost doesn't linger into this view. |
Action.SaveViewpoint |
Workflow.Actions | Per item: saves the current view as a saved viewpoint named from the item. |
Action.ShowAll |
Workflow.Actions | Per item: un-hides every item in the model (Appearance.ShowAll) — a reset step, e.g. |
Action.ZoomTo |
Workflow.Actions | Per item: frames the current item in the view (Camera.ZoomToItems). |
Add |
Math | Adds two numbers. |
And |
Logic | Returns true only when both inputs are true. |
Appearance.ColorByValues |
Navisworks.Appearance | One-node color-coding: pairs each item with its value, colors each distinct value (categorical palette, or a blue→red gradient when every value is numeric) and outputs the legend. |
Appearance.ColorByValuesTemporary |
Navisworks.Appearance | Like Appearance.ColorByValues, but the colours are TEMPORARY (viewpoint-scoped) overrides: nothing is written into the file, Viewpoint.Save with bakeOverrides on keeps them in a saved viewpoint (colour by clash status or by level, one view each), and Appearance.ResetTemporary clears them. |
Appearance.Focus |
Navisworks.Appearance | Focus on some items: they stay as they are and everything else in the model fades by otherTransparency percent (0 = opaque, 100 = invisible) with a TEMPORARY transparency override — the Action.Ghost look in one node, no permanent change. |
Appearance.Hide |
Navisworks.Appearance | Hides model items in the viewport. |
Appearance.Isolate |
Navisworks.Appearance | Shows only these items and hides everything else (undo with Appearance.ShowAll). |
Appearance.OverrideColor |
Navisworks.Appearance | Overrides the color of model items (a permanent override: saved with the file and undoable). |
Appearance.OverrideColorTemporary |
Navisworks.Appearance | Applies a TEMPORARY (viewpoint-scoped) color override — unlike Appearance.OverrideColor (a single global permanent override), a temporary override is what Viewpoint.SaveWithOverrides bakes into each saved view, so every viewpoint keeps its own coloring. |
Appearance.OverrideTransparency |
Navisworks.Appearance | Overrides the transparency of model items, from 0 (opaque) to 1 (invisible). |
Appearance.OverrideTransparencyTemporary |
Navisworks.Appearance | Applies a TEMPORARY (viewpoint-scoped) transparency override (from 0 = opaque to 1 = invisible; Appearance.Focus takes percent, 0 to 100) — the ghosting that Viewpoint.SaveWithOverrides bakes into each saved view. |
Appearance.Reset |
Navisworks.Appearance | Removes permanent color and transparency overrides from model items, restoring their original materials. |
Appearance.ResetAll |
Navisworks.Appearance | Removes every permanent color/transparency override in the model — a clean slate before re-coloring. |
Appearance.ResetTemporary |
Navisworks.Appearance | Clears every TEMPORARY color/transparency override in the model — a clean slate before highlighting the next item. |
Appearance.Show |
Navisworks.Appearance | Shows (un-hides) model items in the viewport. |
Appearance.ShowAll |
Navisworks.Appearance | Shows (un-hides) every item in the model — undoes Appearance.Hide and Appearance.Isolate. |
Application.Version |
Navisworks.Document | The running Navisworks product name and API version (report headers, compatibility checks). |
Audit.DuplicateItems |
Navisworks.Analysis | Finds duplicated geometry (double-exported elements) by running a temporary Duplicate clash test over the items. |
Audit.MissingProperty |
Navisworks.Analysis | Finds every item that does NOT carry the given property — the data-completeness audit. |
BCF.ExportIssues |
Navisworks.Export | Exports clash results (or saved viewpoints) as BCF 2.1 issues (.bcfzip: markup, camera viewpoint, component GUIDs, snapshot) — the vendor-neutral bridge into BIMcollab / Konekt / Revizto / ACC. |
BCF.ImportIssues |
Navisworks.Export | Reads a BCF 2.0/2.1 package: per topic title/status/description/comments/component GUIDs/camera, plus the model items each topic's components resolve to (matched by IFC GlobalId, then InstanceGuid). |
Boolean |
Input | A true/false toggle. |
BoundingBox.ByCorners |
Geometry | Creates an axis-aligned bounding box spanning two opposite corner points, given in any order (the smaller coordinates become the box's min corner, the larger its max corner). |
BoundingBox.Center |
Geometry | Returns the center point of a bounding box. |
BoundingBox.Contains |
Geometry | Tests whether a point lies inside a bounding box (points on the boundary count as inside). |
BoundingBox.ContainsBox |
Geometry | True when the inner box fits entirely inside the outer box (touching faces count as inside). |
BoundingBox.Corners |
Geometry | The 8 corner points of a bounding box: the bottom face counter-clockwise from the Min corner (0-3), then the top face in the same order (4-7). |
BoundingBox.Expand |
Geometry | Grows a bounding box by an amount on every side (negative shrinks it; shrinking past zero size is an error) — a clearance or tolerance zone around an element. |
BoundingBox.Footprint |
Geometry | The plan (floor) area of a bounding box: size X times size Y, ignoring height. |
BoundingBox.Intersects |
Geometry | Tests whether two bounding boxes overlap (touching counts as intersecting). |
BoundingBox.Overlap |
Geometry | The bounding box shared by two overlapping boxes; an error when they do not meet, so test with BoundingBox.Intersects first. |
BoundingBox.PlanGap |
Geometry | The widest strip of open floor between an inner box (equipment) and the outer box (opening) in plan — the 'space between the equipment and the opening edge'. |
BoundingBox.Scale |
Geometry | Scales a bounding box about its center by a factor (2 = double, 0.5 = half) — e.g. |
BoundingBox.Size |
Geometry | Returns a bounding box's size along each axis and its min/max corner points. |
BoundingBox.SurfaceArea |
Geometry | The total area of a bounding box's six faces (square model units) — e.g. |
BoundingBox.Translate |
Geometry | Moves a bounding box by an offset vector, keeping its size. |
BoundingBox.Union |
Geometry | ONE bounding box fitting every box and/or point wired in — the geometric union, e.g. |
BoundingBox.Volume |
Geometry | The volume of a bounding box (cubic model units); a flat box has volume 0. |
Camera.Current |
Navisworks.Camera | The current camera position, focal distance and vertical field height, read again on every run. |
Camera.LookAt |
Navisworks.Camera | Moves the camera to 'eye' looking at 'target' (up stays +Z). |
Camera.Restore |
Navisworks.Camera | Puts a camera back on the current view: the viewpoint kept by Camera.Save, or a saved viewpoint. |
Camera.Save |
Navisworks.Camera | Keeps a copy of the current camera inside the graph (nothing is added to the Saved Viewpoints window; for that use Viewpoint.Save). |
Camera.SetFieldOfView |
Navisworks.Camera | Sets the camera's vertical field of view in degrees (perspective camera) — smaller = more zoomed/telephoto, larger = wider. |
Camera.SetProjection |
Navisworks.Camera | Switches the camera between perspective (true) and orthographic (false) projection. |
Camera.SetStandardView |
Navisworks.Camera | Sets the camera to a standard view (top, bottom, front, back, left, right, iso) and frames the given items — or the whole model when none are wired. |
Camera.ZoomToItems |
Navisworks.Camera | Frames the given items in the current view (per-item close-ups, screenshot staging). |
Captured Selection |
Navisworks.Selection | Snapshots the current Navisworks selection and keeps it, so the graph runs on that fixed set even after you select something else (Selection.Current, in contrast, reads the live selection again on every run). |
Choice |
Input | A pick-list with your own options (one per line); gives the chosen text and its position. |
Clash.AllGroups |
Navisworks.Clash.Group | Every result group of every clash test in the document, as ONE flat list — the whole-project entry point for group workflows: wire it into Loop.Item and let ClashGroup.Info hand each iteration its results, group name and test name. |
Clash.CompareSnapshots |
Navisworks.Clash.Report | Diffs two clash snapshots: clashes NEW since the baseline, clashes RESOLVED (disappeared), and clashes PERSISTING in both (with their previous status) — the weekly delta report no plugin does via live API. |
Clash.Deduplicate |
Navisworks.Clash.Filter | Keeps ONE clash per unique item pair — the same two elements clashing at five points, or mirrored across an A-vs-B and B-vs-A test matrix, count once. |
Clash.FilterByAngle |
Navisworks.Clash.Filter | Keeps only the clash results whose crossing angle (see ClashResult.Angle) is within a degree range — e.g. |
Clash.FilterByDepth |
Navisworks.Clash.Filter | Keeps clashes whose penetration depth falls in a range, in the unit you name — minDepth 0.025 with units Meters drops every grazing clash shallower than 25 mm, the #1 noise reducer. |
Clash.FilterByItemProperty |
Navisworks.Clash.Filter | Keeps clashes whose two items' PROPERTY values match a pair of texts, in either order — the semantic clash rule: category "Element", property "Category", value1 "Pipe", value2 "Wall" keeps pipe-vs-wall clashes whichever side the pipe landed on. |
Clash.FilterByOrientation |
Navisworks.Clash.Filter | Keeps only the clashes between elements of the given box shapes, matched in either order — shape1=run + shape2=wall keeps pipes through walls, run/riser + slab keeps pipes through floors; Clash.FilterByAngle alone cannot tell those apart (both cross at ~90°). |
Clash.FilterBySet |
Navisworks.Clash.Filter | Keeps clashes whose items belong to a selection/search set (either one, both, or a specific side) — sets are the coordination scope language: "only my package", "only against the existing building". |
Clash.FilterBySnapshot |
Navisworks.Clash.Filter | Turns "what is new since last week" into live clash results you can select, group, assign or report: compares the results with a snapshot saved by Clash.SnapshotToFile, using the same identity as Clash.CompareSnapshots (the test and the pair of items, by InstanceGuid or tree path), and keeps the new ones (not in the snapshot) or the persisting ones (already in it). |
Clash.FilterByStatus |
Navisworks.Clash.Filter | Keeps only the clash results with the given status(es) — pick one from the dropdown, or wire several comma-separated ("New,Active"; the Clash.Statuses node builds that from toggles). |
Clash.GroupResults |
Navisworks.Clash.Group | Puts an explicit list of clash results into a named group in Clash Detective — YOUR grouping rule, not a built-in one: filter results any way you like, then group what came out. |
Clash.GroupResultsByGridIntersection |
Navisworks.Clash.Group | Groups a test's results by the model's own grid: each group is named after the nearest grid intersection and level (e.g. |
Clash.GroupResultsByLevel |
Navisworks.Clash.Group | Groups a test's results by nearest level below each clash point (wire your level names and elevations) — per-floor triage. |
Clash.GroupResultsByProximity |
Navisworks.Clash.Group | Groups a test's results into clusters whose clash points lie within a radius of the cluster seed — one issue per hotspot. |
Clash.GroupResultsBySameItem |
Navisworks.Clash.Group | Groups a test's results so every clash involving the same element lands in one group (named after the element) — turns thousands of raw clashes into one issue per element. |
Clash.GroupResultsByStatus |
Navisworks.Clash.Group | Groups a test's results by status (New/Active/Reviewed/Approved/Resolved) — one triage bucket per status in Clash Detective. |
Clash.ResultsTable |
Navisworks.Clash.Report | Makes a table of the clash results you wire in: one row per result with its test, group, name, GUID, status, distance, assignee, description, creation date, the two items (path and GUID) and the clash point. |
Clash.RunAllTests |
Navisworks.Clash.Tests | Runs every Clash Detective test in the document — the weekly coordination re-run in one node. |
Clash.SnapshotToFile |
Navisworks.Clash.Report | Saves a clash-run snapshot (per result: test, item identities, status, distance, clash point) as JSON — one half of the between-runs delta report. |
Clash.Status |
Navisworks.Clash.Tests | A clash status as a dropdown (New/Active/Reviewed/Approved/Resolved) — wire it into ClashResult.SetStatus or Clash.FilterByStatus instead of typing the text. |
Clash.Statuses |
Navisworks.Clash.Tests | Pick SEVERAL clash statuses with toggles — the multi-select for Clash.FilterByStatus: switch on New and Active to work everything not yet reviewed. |
Clash.SummaryTable |
Navisworks.Clash.Report | Per-test clash counts by status (test × Total/New/Active/Reviewed/Approved/Resolved) — the clash summary matrix. |
Clash.Tests |
Navisworks.Clash.Tests | All Clash Detective tests in a document, including those inside folders. |
ClashGroup.ByName |
Navisworks.Clash.Group | Finds a clash result group by test name + group name and opens it up: the results inside, the group's own status, and the count. |
ClashGroup.Info |
Navisworks.Clash.Group | Everything about a clash result group, straight from the group object — the results inside, its name and status, and the TEST it belongs to (object and name). |
ClashResult.Angle |
Navisworks.Clash.Results | The angle in degrees (0–90) between the two clashing elements, taken from each element's overall direction (its bounding-box diagonal). |
ClashResult.Assign |
Navisworks.Clash.Results | Assigns a clash result, or a whole result group, to a person or trade. |
ClashResult.ByGuid |
Navisworks.Clash.Results | Finds clash results again from their GUIDs — the way back from a BCF topic or a snapshot to the live result: wire the guid output of BCF.ImportIssues and send the results to ClashResult.SetStatus. |
ClashResult.Center |
Navisworks.Clash.Results | The clash point of a result, in document units. |
ClashResult.Documentation |
Navisworks.Clash.Results | How documented a clash already is — whether it has a saved viewpoint, redline markup, and how many comments. |
ClashResult.Focus |
Navisworks.Clash.Results | Focuses the view on clash results the way double-clicking one in Clash Detective does: hides everything else (isolate), zooms the camera to the clashing pair, and optionally selects the elements. |
ClashResult.Info |
Navisworks.Clash.Results | Name, status, distance, description, assignee and creation time of a clash result, plus its GUID (what BCF topics and ClashResult.ByGuid use), the name of its test and the name of its group (empty when it is not in a group). |
ClashResult.Items |
Navisworks.Clash.Results | The two model items involved in a clash result. |
ClashResult.Orientation |
Navisworks.Clash.Results | ClashResult.Angle with world context: the crossing angle PLUS each element's bounding-box shape — "slab" (thin horizontal), "wall" (thin upright), "riser" (long vertical), "run" (long horizontal) or "block" — and its slope from horizontal (0–90°). |
ClashResult.Rename |
Navisworks.Clash.Results | Renames a clash result or result group — with lacing and String nodes this is batch renaming ("Clash1" → "Pipe vs Duct L02-B3"). |
ClashResult.SaveImage |
Navisworks.Clash.Results | Renders a clash snapshot (scene plus clash highlight) to a .png/.jpg/.bmp file — the picture half of every clash report. |
ClashResult.SetDescription |
Navisworks.Clash.Results | Sets the description text of a clash result, or of a whole result group (context for reports and reviews). |
ClashResult.SetStatus |
Navisworks.Clash.Results | Sets the status of a clash result, or of a whole result group (wire the group from ClashTest.Groups or ClashGroup.ByName) — approve a group in one step. |
ClashResult.Size |
Navisworks.Clash.Results | The size of the clash overlap region — its bounding-box volume in document units³. |
ClashResult.Viewpoint |
Navisworks.Clash.Results | The camera viewpoint Navisworks generates for a clash result; optionally applies it to the current view. |
ClashTest.ByName |
Navisworks.Clash.Tests | Finds a clash test by its display name (searches folders too). |
ClashTest.ClearResults |
Navisworks.Clash.Tests | Removes every result (and result group) of a clash test and leaves the test and its settings in place — the clean slate before a re-run. |
ClashTest.Create |
Navisworks.Clash.Tests | Creates a clash test between two item selections — script the weekly test matrix instead of clicking it. |
ClashTest.Delete |
Navisworks.Clash.Tests | Deletes a clash test and all of its results from the document. |
ClashTest.Duplicate |
Navisworks.Clash.Tests | Duplicates a clash test — type, tolerance, rules and both selections — as a new test named "<name> copy" (or newName) in the same folder. |
ClashTest.Edit |
Navisworks.Clash.Tests | Edits an existing clash test in place — name, test type, tolerance, merge-composites and the two selections; every input left at its default ("", "unchanged", -1, unwired) keeps the current value. |
ClashTest.Groups |
Navisworks.Clash.Tests | All result groups of a clash test — groups, names, each group's own status and result count, index-aligned. |
ClashTest.Info |
Navisworks.Clash.Tests | Name, status, type, tolerance, last run time and result count of a clash test. |
ClashTest.Name |
Navisworks.Clash.Tests | The display name of a clash test — the one-output companion of ClashTest.Info for wiring names into reports, group lookups and file paths. |
ClashTest.Rename |
Navisworks.Clash.Tests | Renames a clash test — wire a test or its current name. |
ClashTest.Results |
Navisworks.Clash.Tests | The individual results of a clash test (grouped results are flattened). |
ClashTest.Run |
Navisworks.Clash.Tests | Runs one clash test now and reports the result count. |
Color Picker |
Input | A color chosen with a picker. |
Color.ByARGB |
Color | Creates a color from alpha, red, green and blue values (0-255). |
Color.ByHSV |
Color | Creates a color from hue (degrees, wraps around), saturation and value (0-1, clamped). |
Color.ByValues |
Color | One color per value, equal values sharing a color — feed parameter values in, feed the colors to Appearance.OverrideColor per group, and use the uniqueValues/uniqueColors legend for reports. |
Color.Components |
Color | Splits a color into its red, green, blue and alpha channels (0-255). |
Color.ContrastText |
Color | Black or white, whichever reads better on a background color (WCAG contrast) — for labels on coloured fills and legends. |
Color.Darken |
Color | Makes a color darker by shifting its HSL lightness down by amount (0-1, clamped); alpha is kept. |
Color.FromHex |
Color | Parses a hex color string ("#RRGGBB" or "#AARRGGBB"). |
Color.Gradient |
Color | A list of N colors evenly blended between two colors (endpoints included; defaults blue to red) — for heat-map style legends and value ramps. |
Color.Invert |
Color | Inverts a color's red, green and blue channels (the photographic negative); alpha is kept. |
Color.Lerp |
Color | Interpolates between two colors (t clamped to 0-1). |
Color.Lighten |
Color | Makes a color lighter by shifting its HSL lightness up by amount (0-1, clamped); alpha is kept. |
Color.Palette |
Color | A named palette as a list of colors: colourblind-safe, tableau, pastel, status (green/amber/red/grey) or the viridis, heat and grey ramps interpolated to count; fixed palettes cycle past their size. |
Color.Random |
Color | A pseudo-random color, stable per seed: the same seed always gives the same color (re-runs stay consistent); change the seed for another one. |
Color.RandomList |
Color | A list of visually distinct pseudo-random colors (golden-angle hues), stable per seed — ideal for coloring N groups apart. |
Color.ToHex |
Color | Formats a color as hex text, "#RRGGBB" (or "#AARRGGBB" with includeAlpha) — the reverse of Color.FromHex. |
Color.ToHSV |
Color | Splits a color into hue (degrees, 0-360), saturation and value (0-1); greys have hue 0. |
Color.WithAlpha |
Color | Returns a color with its alpha (opacity) replaced, 0 = transparent to 255 = opaque; red, green and blue are unchanged. |
CSV.AppendToFile |
File | Appends rows to a CSV file (same quoting and date format as CSV.WriteToFile), writing the optional headers only when the file is new or empty. |
CSV.ReadFromFile |
File | Reads a CSV file into a list of rows. |
CSV.WriteToFile |
File | Writes a list of rows to a CSV file, replacing what was there, and creates missing folders. |
Date |
Input | A date (and optional time), typed as 2026-10-01 or 2026-10-01 14:30. |
DateTime.Add |
DateTime | Adds an amount of time to a date/time in a chosen unit — seconds, minutes, hours, days, weeks, months or years (negative values go back). |
DateTime.AddWorkdays |
DateTime | Moves a date/time by a number of working days, skipping the weekend (Saturday and Sunday, or Friday and Saturday): Friday + 1 is Monday, Monday - 1 is Friday, Saturday + 1 is Monday. |
DateTime.ByDate |
DateTime | Creates a date from year, month and day numbers. |
DateTime.Compare |
DateTime | Compares two date/times: -1 when the first is earlier, 0 when equal, 1 when it is later. |
DateTime.Components |
DateTime | Splits a date/time into year, month, day, hour, minute, second, English weekday name, day of year, ISO week, ISO year and quarter. |
DateTime.DaysBetween |
DateTime | Returns the signed number of days between two date/times (end minus start), with the time of day as a fraction. |
DateTime.Difference |
DateTime | How far apart two date/times are in a chosen unit — seconds, minutes, hours, days, weeks, months or years (end minus start, so a negative number means the end is earlier). |
DateTime.EndOf |
DateTime | Returns the last millisecond of the day, week, month, quarter or year containing a date/time (start of the next period minus 1 ms). |
DateTime.Format |
DateTime | Formats a date/time as text using a .NET format string (invariant culture): yyyy-MM-dd gives 2026-07-10, dd/MM/yyyy gives 10/07/2026, HH:mm gives 14:30, MMMM gives the English month name. |
DateTime.FromExcelSerial |
DateTime | Converts an Excel date serial number (days since 1899-12-30, the time of day as the fraction; 46000.5 is noon) to a date/time — what Excel.ReadFromFile and Table.FromExcelFile hand over for a date cell. |
DateTime.FromUnixSeconds |
DateTime | Converts Unix seconds since 1970-01-01 UTC to a (UTC) date/time. |
DateTime.IsWeekend |
DateTime | True when a date falls on the weekend (Saturday and Sunday, or Friday and Saturday) — a mask for filtering a schedule down to working days. |
DateTime.Now |
DateTime | Returns the current local date and time (captured at execution). |
DateTime.Parse |
DateTime | Parses text as a date/time. |
DateTime.Range |
DateTime | Creates a list of dates from a start to an end (both included) with a step in days, weeks, months or years ("every month" lands on the same day of each month, clamped to the month's end); at most 100000 items. |
DateTime.StartOf |
DateTime | Returns midnight at the start of the day, week, month, quarter or year containing a date/time. |
DateTime.Today |
DateTime | Returns today's local date at midnight (captured at execution). |
DateTime.ToUnixSeconds |
DateTime | Converts a date/time to Unix seconds since 1970-01-01 UTC (a value without a time zone is taken as UTC). |
Dictionary.ByKeysValues |
Dictionary | Creates a dictionary from a list of keys and a list of values of the same length. |
Dictionary.ContainsKey |
Dictionary | Tests whether a dictionary has the given key (case-sensitive). |
Dictionary.Count |
Dictionary | Returns the number of entries in a dictionary. |
Dictionary.FromRows |
Dictionary | Builds a dictionary from a list of [key, value] rows (a later row wins for a repeated key). |
Dictionary.Invert |
Dictionary | Swaps keys and values into a new dictionary (values become text keys; for equal values the last entry wins). |
Dictionary.Keys |
Dictionary | Returns all keys of a dictionary as a list. |
Dictionary.Merge |
Dictionary | Combines several dictionaries into a new one; for a repeated key the later dictionary wins. |
Dictionary.RemoveKey |
Dictionary | Returns a copy of the dictionary without the given key (a missing key is fine). |
Dictionary.RemoveKeys |
Dictionary | Returns a copy of the dictionary without any of the listed keys (a key it does not have is fine). |
Dictionary.SelectKeys |
Dictionary | Returns a copy of the dictionary with only the listed keys, in the order they are listed (trim a property bag to the few keys a report needs). |
Dictionary.SetValueAtKey |
Dictionary | Returns a copy of the dictionary with the given key set or updated; the input dictionary is not changed. |
Dictionary.SetValues |
Dictionary | Returns a copy of the dictionary with several keys set or updated at once, from a list of keys and a list of values of the same length (the several-key version of Dictionary.SetValueAtKey). |
Dictionary.ToRows |
Dictionary | Converts a dictionary to a list of [key, value] rows. |
Dictionary.ValueAtKey |
Dictionary | Returns the value stored under the given key; a missing key is an error (Dictionary.ValueOrDefault gives a fallback instead, Dictionary.ValueAtPath follows a path into nested data). |
Dictionary.ValueAtPath |
Dictionary | Follows a path into nested data (the result of JSON.Parse or XML.Parse) and returns what it finds there, or a default value when any step is missing. |
Dictionary.ValueOrDefault |
Dictionary | Returns the value stored under a key, or a default value when the key is missing. |
Dictionary.Values |
Dictionary | Returns all values of a dictionary as a list. |
Directory Path |
Input | A path to a directory. |
Directory.Copy |
File | Copies a folder with all its files and sub-folders to another place (creates the destination; files already there are kept, and a file with the same name is only replaced when overwrite is true - checked before anything is copied). |
Directory.Create |
File | Creates a folder including any missing parent folders (does nothing when it already exists). |
Directory.Delete |
File | Deletes a folder (an empty one, or with its whole content when recursive is true); returns false when it did not exist. |
Directory.Exists |
File | Tests whether a folder exists at the given path; a file, a missing folder and a blank path all give false. |
Directory.Find |
File | Finds files or folders under a folder by wildcard (several allowed, separated by ";"), in every sub-folder unless recursive is off. |
Directory.Move |
File | Moves or renames a folder with everything in it. |
Distance.BetweenItems |
Navisworks.Analysis | Shortest distance between two selections, with the closest (witness) point on each side. |
Divide |
Math | Divides the first number by the second. |
Document.AppendFiles |
Navisworks.Document | Appends design files to the document — Directory.FindFiles → Document.AppendFiles → Document.Save is the Navisworks Batch Utility in three nodes. |
Document.Current |
Navisworks.Document | The active Navisworks document. |
Document.Info |
Navisworks.Document | File name, title, display units and model count of a document, read again on every run. |
Document.Merge |
Navisworks.Document | Merges another Navisworks file into the document with duplicate resolution — pulls a colleague's review artifacts (sets, viewpoints, comments) into yours. |
Document.Models |
Navisworks.Document | The models (appended source files) loaded in a document, read again on every run. |
Document.Open |
Navisworks.Document | Opens ONE file into the document, REPLACING its current contents (the headless batch driver). |
Document.Refresh |
Navisworks.Document | Refreshes every linked/appended file from disk — Home > Refresh, scriptable. |
Document.Save |
Navisworks.Document | Saves the document as .nwf (references to the source files) or .nwd (a published snapshot with the appearance overrides baked in) to the given path; the extension decides. |
Equals |
Logic | Tests whether two values are equal, the same way as Logic.Compare with ==: numbers compare by value (2 equals 2.0), text ignores upper and lower case, text that reads as a number equals that number ("5" equals 5), text that reads as a date equals that date, and two lists are equal when they have the same items in the same order. |
Excel.ReadFromFile |
File | Reads an .xlsx worksheet into rows + headers + the sheet names (dates arrive as Excel serial numbers, convert them with DateTime.FromExcelSerial; .xls is not supported). |
Excel.WriteToFile |
File | Writes rows (+ optional headers) to an .xlsx worksheet. |
Export.ClashReport |
Navisworks.Export | One-node clash report. |
Export.IfcClasses |
Navisworks.Export | Lists the friendly IFC class names (Wall, Beam, Door, …) accepted by Export.IfcSetClassMap. |
Export.IfcCoordinates |
Navisworks.Export | Base-point and georeferencing options for Export.ToIfc: geometry/model/custom origin, rotation and IFC4 georeferencing. |
Export.IfcParameterRule |
Navisworks.Export | One property rename/relocate rule for Export.ToIfc — moves/renames a source property into a target IFC Pset/name on export. |
Export.IfcRoles |
Navisworks.Export | Maps Navisworks source properties to IFC roles — Type→IfcElementType, Level→IfcBuildingStorey, Material→IfcMaterial, Classification→IfcClassificationReference — for Export.ToIfc. |
Export.IfcSetClassMap |
Navisworks.Export | Assigns an IFC class to every item of the named saved/search sets (set→class), producing the classMap for Export.ToIfc. |
Export.IfcSpatialNames |
Navisworks.Export | Names for the IFC spatial tree (Project/Site/Building/default Storey) used by Export.ToIfc. |
Export.ToCsv |
Navisworks.Export | Writes one CSV row per model item with a Name column plus property columns, straight from the model: a quick quantity take-off file. |
Export.ToIfc |
Navisworks.Export | Exports model items to IFC (IFC4/IFC2x3) via the BIMCamel exporter: spatial tree, instancing, property sets, materials, base quantities and georeferencing. |
Export.ViewpointImage |
Navisworks.Export | Renders a view to a .png/.jpg/.bmp file via the Navisworks image exporter. |
FallHazard.EdgeHandrailCheck |
Navisworks.Analysis | Marks the floor edges around voids: green where the gap across the void is under the limit (safe), red where it is over the limit and there is no handrail (needs one), and blue where a handrail covers it — override any of the three colours with the colour inputs. |
FallHazard.FloorOpeningMap |
Navisworks.Analysis | Whole-floor fall-hazard heat map. |
File Path |
Input | A path to a file. |
File.Copy |
File | Copies a file to a new path (creates the destination folder; refuses to replace an existing file unless overwrite is true). |
File.Delete |
File | Deletes a file; returns true when it was deleted and false when it did not exist. |
File.Exists |
File | Tests whether a file exists at the given path; a folder, a missing file and a blank path all give false. |
File.Hash |
File | Computes a checksum of a file's content (SHA256, SHA1 or MD5) as lower-case hex text - handy for change detection. |
File.Info |
File | Reads a file's name, extension, folder, size in bytes and modified / created dates; a missing file gives exists = false and empty values instead of an error. |
File.Move |
File | Moves or renames a file (creates the destination folder; refuses to replace an existing file unless overwrite is true). |
Flow.Require |
Workflow | Stops with your own error message when a condition is false; when it is true the value passes through unchanged. |
Flow.Then |
Workflow | Passes a value through unchanged AFTER the wired 'after' nodes have run — makes the execution order of side-effect nodes explicit (e.g. |
Flow.Try |
Workflow | Carries on after a failure: gives the node's result, or your fallback plus the error text when that node failed — nothing after it turns red. |
Flow.Wait |
Workflow | Waits the given number of seconds (at most 600; nothing can stop the wait early, so Navisworks looks frozen meanwhile), then passes the value through unchanged - use it to pause between steps of a workflow. |
Flow.When |
Workflow | Runs the nodes wired after it only when the condition is true; when false they are skipped (idle, not an error) — e.g. |
Graph.Folder |
System | The folder of the graph file, which is where a relative path in a file node starts (for a graph that was never saved: Documents\CamelGraph; in the Script Player and the command line: the folder of the script). |
GreaterThan |
Logic | Returns true when the first number is greater than the second. |
GreaterThanOrEqual |
Logic | Returns true when the first number is greater than or equal to the second. |
Grids.ClosestIntersection |
Navisworks.Grids | The grid intersection and level nearest to any point — ready-made "B-3 : Level 2" location labels for clash naming, reports and zone tagging. |
Grids.Intersections |
Navisworks.Grids | All grid intersections of the active grid system, per level — names like "A-1" with positions in document units. |
Grids.Levels |
Navisworks.Grids | The model's own levels from the active grid system — names and elevations (document units) without hand-typed elevation lists. |
If |
Logic | Returns one of two values depending on a boolean condition. |
IFC.GuidDecode |
IFC | Converts a 22-character IFC GlobalId such as "0$WU4A9R19$vKWO$AdOnKA" back to a standard lower-case hyphenated GUID — the form Navisworks shows as an item's GUID. |
IFC.GuidEncode |
IFC | Converts a standard GUID such as "3f81e10a-25b0-49ff-9520-63f2a763150a" to the 22-character IFC GlobalId (the IFC base-64 form, alphabet 0-9 A-Z a-z _ $) — the format of IFC files and BCF references. |
IFC.IsGlobalId |
IFC | True when a text is a 22-character IFC GlobalId (alphabet 0-9 A-Z a-z _ $, first character 0 to 3) and false for a plain GUID, any other text or an empty cell, so a column that mixes both forms can be split before IFC.GuidDecode or IFC.GuidEncode. |
IFC.Normalize |
IFC | Writes an id in one form whichever form it comes in: a 22-character IFC GlobalId or a standard GUID (with hyphens, without, or in braces) becomes the form you choose, a GlobalId (default) or a lower-case hyphenated GUID. |
Integer |
Input | A whole number (no slider range): a count, an index, a level. |
Integer Slider |
Input | An integer selected with a slider. |
IsNull |
Logic | True when the value is null (nothing came out). |
IsNullOrEmpty |
Logic | True when the value is null, an empty string, an empty list or an empty dictionary — the guard for "did anything come out?" checks before If branches. |
JSON.Parse |
Data | Parses a JSON string into dictionaries, lists and values. |
JSON.ReadFromFile |
File | Reads a JSON file into dictionaries, lists and values (every number becomes a double). |
JSON.Stringify |
Data | Serializes any value to a JSON string. |
JSON.WriteToFile |
File | Writes any value to a JSON file, replacing what was there, and creates missing folders. |
LessThan |
Logic | Returns true when the first number is less than the second. |
LessThanOrEqual |
Logic | Returns true when the first number is less than or equal to the second. |
List.AddItemToEnd |
List | Appends a value to the end of a list (returns a new list). |
List.AddItemToFront |
List | Returns a new list with the value prepended — the front-side twin of List.AddItemToEnd. |
List.AllIndicesOf |
List | Every zero-based index at which the item occurs in the list — List.IndexOf finds only the first. |
List.AllTrue |
List | True when EVERY element of the list is true — collapse a mask into one verdict. |
List.AnyTrue |
List | True when AT LEAST ONE element of the list is true — "did anything match?" in one node. |
List.Average |
List.Statistics | The arithmetic mean of the numbers of a list. |
List.Chop |
List | Chops a list into consecutive sublists: one length chops evenly ([1..7] by 3 → [1,2,3],[4,5,6],[7]); a list of lengths is applied in sequence and repeats until the input runs out (Dynamo behavior). |
List.Clean |
List | Removes null elements from a list, at every nesting level — the mop-up after laced calls that emitted nulls for missing elements (a yellow node badge points here). |
List.Contains |
List | Tests whether a list contains a value. |
List.Count |
List | Returns the number of elements in a list. |
List.CountTrue |
List | Counts the true and not-true elements of a mask — "37 of 340 matched" for reports without filtering first. |
List.CountValues |
List.Statistics | Tallies a list: each distinct value, in order of first appearance, with the number of times it occurs. |
List.Create |
List | Builds a list from the wired item inputs, in order. |
List.CumulativeSum |
List.Statistics | A running total: each item is the sum of the list up to and including that position. |
List.Cycle |
List | Repeats the whole list a number of times, end-to-end ([a,b] × 3 → [a,b,a,b,a,b]). |
List.DropItems |
List | Drops elements from the start of the list — or from the END with a negative amount (Dynamo behavior). |
List.DropWhile |
List | Drops items from the start of the list for as long as the mask is true; keeps everything from the first false. |
List.Duplicates |
List.Statistics | The values that occur more than once, with how many times each occurs — duplicate GUIDs, marks or names. |
List.FilterByBoolMask |
List | Splits a list into elements whose mask entry is true ("in") and the rest ("out"). |
List.FilterByValue |
List | Keeps the items that pass a test such as > 100, contains "wall", matches "A-*" or in ["L01", "L02"] — optionally testing a parallel list of keys instead; returns the matches, the rest and the mask. |
List.FirstItem |
List | Returns the first element of a list. |
List.Flatten |
List | Flattens a nested list by a given number of levels (-1 = completely). |
List.GetItemAtIndex |
List | Returns the element at the given index (negative indexes count from the end). |
List.GroupByKey |
List | Groups list elements by a parallel key list of the same length; returns the groups (in the order each key first appears) and their unique keys. |
List.Histogram |
List.Statistics | Splits the range of the numbers into equal bins and counts how many fall in each — the data behind a distribution chart. |
List.IndexOf |
List | Returns the index of the first occurrence of a value in a list (-1 when absent). |
List.Insert |
List | Returns a new list with the value inserted at the index (0 = front; the list's length = append; negative counts from the end). |
List.LastIndexOf |
List | The zero-based index of the LAST occurrence of the item (-1 when absent) — the back-to-front twin of List.IndexOf, with the same rules for comparing values. |
List.LastItem |
List | Returns the last element of a list. |
List.MaximumItem |
List | The largest element of a list (numbers, texts or dates). |
List.Median |
List.Statistics | The middle value of the numbers of a list (the mean of the two middle ones when the count is even); the same as List.Percentile at 50. |
List.Merge |
List | Concatenates any number of lists into one — a multi-input socket: connect as many wires as you like, in the order you want them. |
List.MinimumItem |
List | The smallest element of a list (numbers, texts or dates). |
List.MostCommon |
List.Statistics | The value that occurs most often in a list (the earliest wins a tie) and how many times. |
List.OfRepeatedItem |
List | A list of one value repeated N times — constant columns for tables, or a fixed pairing partner under Longest lacing. |
List.Pairs |
List | Pairs each item with the next one: [[a, b], [b, c], …] — consecutive points, segments, steps. |
List.Percentile |
List.Statistics | The value below which a given percentage of the numbers lie (linear interpolation, like Excel's PERCENTILE.INC); 50 is the median, 0 the smallest and 100 the largest number. |
List.Product |
List.Statistics | Multiplies the numbers of a list. |
List.Range |
List | Creates a sequence of numbers from start to end (both included) using the given step; a negative step counts down, a step that moves away from end gives an empty list. |
List.RemoveItemAtIndex |
List | Removes the elements at the given indices and returns one new list (negative indexes count from the end). |
List.ReplaceItemAtIndex |
List | Returns a new list with the element at the index replaced (negative indexes count from the end). |
List.ReplaceNulls |
List | Replaces every null element with a substitute value, at every nesting level — keeps list lengths and alignment intact where List.Clean would shift them. |
List.RestOfItems |
List | Everything but the first element — pairs with List.FirstItem for head/tail processing. |
List.Reverse |
List | Returns the list in reverse order. |
List.SetDifference |
List | The distinct elements of the FIRST list that are NOT in the second — subtract an ignore-list from a result set. |
List.SetIntersection |
List | The distinct elements present in BOTH lists (ordered as in the first) — what two searches/sets have in common. |
List.SetUnion |
List | The distinct elements present in EITHER list (first-seen order) — combine two item sets without duplicates. |
List.ShiftIndices |
List | Rotates the list: +1 moves every element one place towards the end and wraps the last to the front ([a,b,c] → [c,a,b]); negative rotates the other way. |
List.Shuffle |
List | Shuffles a list; the same seed always gives the same order, so a run can be repeated. |
List.Slice |
List | A sub-range of the list: from start (inclusive) to end (exclusive), taking every step-th element; leave end empty to go to the end of the list. |
List.Sort |
List | Returns the list sorted ascending, or largest first with descending. |
List.SortByKey |
List | Sorts list elements by a parallel key list of the same length, smallest key first or largest first with descending; returns the sorted elements and keys. |
List.StandardDeviation |
List.Statistics | The standard deviation of the numbers of a list (population by default; tick 'sample' to divide by n-1, which needs at least two numbers). |
List.Statistics |
List.Statistics | Count, sum, minimum, maximum, average, median and standard deviation of a list of numbers in one node. |
List.Sum |
List.Statistics | Adds up the numbers of a list. |
List.TakeEveryNthItem |
List | Takes the n-th, 2n-th, 3n-th ... |
List.TakeItems |
List | Takes elements from the start of the list — or from the END with a negative amount (Dynamo behavior). |
List.TakeWhile |
List | Takes items from the start of the list for as long as the mask is true (stops at the first false). |
List.Transpose |
List | Swaps rows and columns of a list of lists — the table pivot for Excel/CSV data and property grids. |
List.UniqueItems |
List | Removes duplicate elements from a list, keeping the first of each and the original order. |
List.WithIndex |
List | Pairs each item with its position: [[0, item0], [1, item1], …]. |
List.Zip |
List | Pairs two lists by position: [[a0, b0], [a1, b1], …], as long as the shorter list. |
Log.Write |
File | Appends one line "yyyy-MM-dd HH:mm:ss LEVEL message" (local time) to a log file and returns that line. |
Logic.Choose |
Logic | Picks one of several options by position (0 = first) — a multi-way If. |
Logic.Compare |
Logic | Compares two values — numbers, text or dates — with a test chosen from a list (==, >, contains, matches, regex …). |
Logic.IsBetween |
Logic | True when a number, text or date lies between a lower and an upper bound (bounds included by default). |
Logic.NotEquals |
Logic | True when two values are different — the opposite of Equals, with the same rules: numbers compare by value, text ignores upper and lower case, text that reads as a number or a date is compared as one, and two lists are equal when they have the same items in the same order. |
Logic.Switch |
Logic | Gives the result that goes with the first case equal to the value, otherwise the fallback — a status-to-colour or code-to-name mapping. |
Logic.TypeOf |
Logic | Names the kind of a value — number, text, boolean, datetime, list, dictionary, null or the object's type — for debugging what a node really returns. |
Logic.Xor |
Logic | True when exactly one of the two inputs is true. |
Loop.Collect |
Workflow | Closes a loop and collects one value per iteration. |
Loop.Item |
Workflow | Yields the current item of a loop. |
Markup.AddCloud |
Navisworks.Markup | EXPERIMENTAL: draws a revision-cloud redline through the given markup-space points (undocumented Navisworks API). |
Markup.AddNumberTag |
Navisworks.Markup | EXPERIMENTAL: draws a circled number on a saved viewpoint and optionally attaches a comment — a tag substitute (real Find-Tags tags have no public API). |
Markup.AddShape |
Navisworks.Markup | EXPERIMENTAL: draws a line, arrow or ellipse redline on a saved viewpoint (undocumented Navisworks API). |
Markup.AddText |
Navisworks.Markup | EXPERIMENTAL: draws a text redline on a saved viewpoint (undocumented Navisworks API). |
Markup.Clear |
Navisworks.Markup | EXPERIMENTAL: removes every redline markup from a saved viewpoint (undocumented Navisworks API). |
Markup.List |
Navisworks.Markup | EXPERIMENTAL: lists the redline markups on a saved viewpoint — types, texts and anchor positions. |
Math.Abs |
Math | Returns the absolute value of a number. |
Math.Acos |
Math | Inverse cosine: the angle whose cosine is the value (result in degrees by default). |
Math.Asin |
Math | Inverse sine: the angle whose sine is the value (result in degrees by default). |
Math.Atan |
Math | Inverse tangent: the angle for a slope (result in degrees by default). |
Math.Atan2 |
Math | Angle of the direction (x, y) from the X axis, from -180 to 180 degrees — the heading between two points. |
Math.Ceiling |
Math | Rounds a number up to the nearest integer. |
Math.Clamp |
Math | Limits a number to a range: below the minimum gives the minimum, above the maximum gives the maximum. |
Math.Cos |
Math | Cosine of an angle (degrees by default). |
Math.Degrees |
Math | Converts radians to degrees. |
Math.Exp |
Math | e raised to a power (the inverse of the natural logarithm). |
Math.Floor |
Math | Rounds a number down to the nearest integer (-2.5 becomes -3; Math.Truncate drops the decimals towards zero instead). |
Math.Formula |
Math | Evaluates a formula such as "a * b + 2" or "if(a > 10, a - 10, 0)" over the inputs a to f. |
Math.IsClose |
Math | True when two numbers differ by no more than the tolerance (the same unit as the numbers) — the safe way to ask "are these equal?" for lengths and levels read from a model, where 0.1 + 0.2 is not exactly 0.3. |
Math.Lerp |
Math | Linear interpolation: a at t = 0, b at t = 1, in between for values between (not limited, so t = 2 goes past b; Math.Clamp keeps t in 0 to 1). |
Math.Ln |
Math | Natural logarithm (base e) of a positive number. |
Math.Log |
Math | Logarithm of a positive number to a base (10 by default). |
Math.MapRange |
Math | Linearly remaps a value from one range to another (values outside the range extrapolate). |
Math.Max |
Math | Returns the larger of two numbers. |
Math.Min |
Math | Returns the smaller of two numbers. |
Math.Negate |
Math | Flips the sign of a number (5 becomes -5). |
Math.Percent |
Math | What percentage the part is of the total (37 of 340 gives 10.88); 0 when the total is 0, so an empty model reads 0 % (Divide, in contrast, gives Infinity for a zero divisor). |
Math.Pi |
Math | The constant pi (3.14159…). |
Math.Pow |
Math | Raises the first number to the power of the second. |
Math.Radians |
Math | Converts degrees to radians. |
Math.Random |
Math | Returns a random number in a range. |
Math.Round |
Math | Rounds a number to the given number of decimal digits (midpoints round away from zero). |
Math.RoundToMultiple |
Math | Rounds to the nearest multiple of a step, e.g. |
Math.Sequence |
Math | A list of count numbers starting at start and growing by step (the count-based sibling of List.Range). |
Math.Sign |
Math | -1 for a negative number, 0 for zero, 1 for a positive number. |
Math.Sin |
Math | Sine of an angle (degrees by default). |
Math.Sqrt |
Math | Returns the square root of a non-negative number. |
Math.Tan |
Math | Tangent of an angle (degrees by default); slope = tan(angle). |
Math.Truncate |
Math | Drops the decimals, towards zero (2.7 becomes 2, -2.7 becomes -2). |
Model.Info |
Navisworks.Model | The cached and original source file paths of a model, its native units (unit-mismatch audits across appended files) and its root model item — one node for the federated-file inventory. |
Model.Remove |
Navisworks.Model | Removes a WHOLE appended source model from the document (accepts a Model, a 0-based index, or a file name). |
Model.Snapshot |
Navisworks.Model | Captures the named properties of the given items as a dictionary keyed by each item's instance GUID (items without one are keyed "path:" plus their tree path) — the input Snapshot.Diff compares, so save one with JSON.WriteToFile now and diff it against a later run to see added, removed and changed items. |
Model.Statistics |
Navisworks.Model | Counts items per model file, class or layer: how many items, how many carry geometry and each group's share of all items. |
ModelItem.AncestorNameMatches |
Navisworks.ModelItem | Walks an item's ancestor chain (nearest first) and tests each name against the text: contains / starts with / ends with, or their "doesn't" negations — true when NO ancestor matches. |
ModelItem.AncestorPropertyMatches |
Navisworks.ModelItem | The general form of ModelItem.AncestorNameMatches: walks an item's ancestor chain (nearest first) and tests ANY property you name — category + property as the Properties window shows them — against the text: contains / starts with / ends with or their "doesn't" negations (true when NO ancestor matches). |
ModelItem.Ancestors |
Navisworks.ModelItem | The chain of parents of a model item, up to its model root. |
ModelItem.BoundingBox |
Navisworks.ModelItem | The axis-aligned bounding box of a model item, in document units. |
ModelItem.Children |
Navisworks.ModelItem | The direct children of a model item. |
ModelItem.CombinedBoundingBox |
Navisworks.ModelItem | ONE bounding box fitting all the given items together (per-group when wired a list of groups) — frame a whole cluster for a section box or zoom. |
ModelItem.CommonAncestor |
Navisworks.ModelItem | The deepest common ancestor of the given items in the selection tree — the smallest branch (room, level, block, model) that contains them all. |
ModelItem.Descendants |
Navisworks.ModelItem | All descendants of a model item (the whole subtree below it). |
ModelItem.GetTransform |
Navisworks.Transform | Reads an item's current (active) transform: origin = its translation (a practical base point), matrix = 16 numbers row-major (feed ModelItem.SetTransform to round-trip), hasOverride = whether a permanent transform override is applied. |
ModelItem.IfcGuid |
Navisworks.ModelItem | The 22-character IFC GlobalId of an item: the value of its GlobalId / IfcGUID / IFC GUID / Guid property when it has one (as the Navisworks IFC import creates it), otherwise its InstanceGuid encoded the same way; null when it has neither. |
ModelItem.Info |
Navisworks.ModelItem | Everything quick to know about a model item in one node: its display name (the class name when it has none), class name and localized class name (layer/group/geometry detection), instance GUID ("" when absent, a stable cross-run identity for reports), whether it carries geometry and whether it is hidden right now. |
ModelItem.ModelName |
Navisworks.ModelItem | The name of the model/file an item comes from (the root of its selection tree, e.g. |
ModelItem.MoveTo |
Navisworks.Transform | Moves model items so the centre of their combined bounding box lands on a target point — place a group by where it should be, not by how far to push it. |
ModelItem.Parent |
Navisworks.ModelItem | The parent of a model item (null for a model root). |
ModelItem.Path |
Navisworks.ModelItem | The selection-tree path of an item as one text, from its model file down to the item ("Structure.nwc > Level 1 > Walls > Basic Wall") — a label for BCF titles, clash names and reports. |
ModelItem.ReferencePoints |
Navisworks.ModelItem | Candidate base/reference points of an item, in world document units. |
ModelItem.ResetTransform |
Navisworks.Transform | Removes permanent transform overrides, restoring items to their original position. |
ModelItem.RotateAboutAxis |
Navisworks.Transform | Rotates model items by an angle (degrees) about an axis through a point. |
ModelItem.Scale |
Navisworks.Transform | Scales model items uniformly about a point — default: the centre of the items' combined bounding box, so the group grows or shrinks in place and keeps its internal layout. |
ModelItem.SetTransform |
Navisworks.Transform | Sets the permanent transform override of model items to an absolute 4×4 matrix (16 numbers, row-major, translation at indices 3/7/11) — mirror-place or scale-in-place for power users. |
ModelItem.SourceInfo |
Navisworks.ModelItem | One-node answer to "which file did this element come from and what is it": the source file name, the Item-tab Type (falling back to the item's class name), and the owning appended model. |
ModelItem.Translate |
Navisworks.Transform | Moves model items by a vector, in document units (chain Units.Convert for meters/feet). |
Models.RootItems |
Navisworks.Model | The root model items of every model loaded in a document, read again on every run. |
Modulo |
Math | Returns the remainder of dividing the first number by the second. |
Multiply |
Math | Multiplies two numbers. |
Not |
Logic | Inverts a boolean value. |
Note |
Annotation | A free-floating text note on the canvas — document your graph for the next person. |
Number |
Input | A number literal. |
Number Slider |
Input | A number selected with a slider. |
Or |
Logic | Returns true when at least one input is true. |
Path.ChangeExtension |
File | Replaces the extension of a path ("a.nwd" + "nwf" gives "a.nwf"); empty text removes the extension. |
Path.Combine |
File | Joins a folder path and a file name with the correct separator. |
Path.GetDirectory |
File | Returns the folder part of a path ("C:\Models\site.nwd" gives "C:\Models"); empty text for a root or a bare file name. |
Path.GetExtension |
File | Returns the extension of a path with its leading dot (".nwd"), or empty text when there is none. |
Path.GetFileName |
File | Returns the file name of a path including its extension ("C:\Models\site.nwd" gives "site.nwd"). |
Path.GetFileNameWithoutExtension |
File | Returns the file name of a path without its extension ("C:\Models\site.nwd" gives "site"). |
Path.GetFullPath |
File | Resolves a path to an absolute path the way the file nodes do: a relative path starts in the graph's folder (the folder of the saved graph file; Documents\CamelGraph for a graph that was never saved), and the quotes of a path pasted from Explorer are removed. |
Path.GetRelativePath |
File | Expresses a path relative to a base folder; returns the full path when they are on different drives. |
Path.IsAbsolute |
File | Tests whether a path is absolute (starts at a drive, network share or root) rather than relative. |
Path.Join |
File | Joins any number of folder and file name parts into one path with the correct separator, for example C:\Projects + North + HVAC + model.nwd. |
Path.Normalize |
File | Cleans a path as text: one separator style, no trailing separator, "." and ".." resolved (the disk is never read). |
Point.ByCoordinates |
Geometry | Creates a 3D point from X, Y and Z coordinates. |
Point.Centroid |
Geometry | The centroid (average position) of a list of points; several wires can feed the one input. |
Point.Components |
Geometry | Splits a point into its X, Y and Z coordinates. |
Point.Distance2D |
Geometry | The distance between two points measured in plan (XY only, Z ignored) — for horizontal run lengths and offsets. |
Point.DistanceTo |
Geometry | Returns the straight-line distance between two points. |
Point.Lerp |
Geometry | Interpolates between two points: t = 0 is the first, t = 1 the second; t is not clamped, so other values extend the line beyond them. |
Point.Midpoint |
Geometry | The point halfway between two points. |
Point.Round |
Geometry | Rounds a point's X, Y and Z to the given number of decimal digits (midpoints round away from zero) — tidies float noise before comparing or grouping points. |
Point.Translate |
Geometry | Offsets a point by a vector, returning a new point. |
Properties.AsDictionary |
Navisworks.Properties | Every property of an item flattened to a "Category.Property" → value dictionary (full data dump). |
Properties.Categories |
Navisworks.Properties | The property category names available on a model item. |
Properties.CustomTabs |
Navisworks.Properties | The user-defined property tabs on an item (discovery/QA before SetCustom or RemoveCustomTab). |
Properties.Discover |
Navisworks.Properties | Lists every property the given items carry, one row per category and property with how many items have it (Items), how many different values it holds (Distinct, counted up to 10000) and the first few values (Samples) — the answer to "what data does this model actually have?". |
Properties.HasProperty |
Navisworks.Properties | True when the item carries the property — drives model-QA missing-data masks. |
Properties.InCategory |
Navisworks.Properties | All property names and values inside one category of an item. |
Properties.RemoveCustomTab |
Navisworks.Properties | Removes a user-defined property tab from items. |
Properties.RenameCustomTab |
Navisworks.Properties | Renames a user-defined property tab in place (same properties, same internal name — search sets targeting the tab stay valid). |
Properties.SetCustom |
Navisworks.Properties | Writes ONE set of names and values as a user-defined property tab onto every item you give it — values are searchable, schedulable, and travel with the NWF/NWD (source files are never modified). |
Properties.SetCustomFromTable |
Navisworks.Properties | Writes a table onto model items as a user-defined property tab, a DIFFERENT row for every item — the spreadsheet-to-model step in one node (Table.FromExcelFile, Table.Join with Properties.ToTable, then this). |
Properties.ToTable |
Navisworks.Properties | Reads the named properties of every item into a table with one row per item and one column per name ("Element.Category", "Item|Layer", a bare property name, or @Name, @Path, @Guid), ready for the Table nodes, Excel or CSV; a property an item lacks is an empty cell. |
Properties.Value |
Navisworks.Properties | Reads a property value from a model item, converted to a plain value. |
Properties.ValueAsString |
Navisworks.Properties | Reads a property value as text. |
Proximity.Cluster |
Navisworks.Analysis | Groups items into clusters of touching geometry (gap <= tolerance, chained) — turns loose shapes into logical elements, e.g. |
Proximity.NearestDistance |
Navisworks.Analysis | For each item, the distance to the NEAREST of the targets (document units), so you can flag items with nothing close by — e.g. |
Report.Html |
Report | Builds a self-contained HTML report from tables and text ("# Heading" makes a heading) — light and dark, printable, ready for Text.WriteToFile or an e-mail. |
Report.Markdown |
Report | Builds a Markdown report from tables and text — for Teams, issue trackers and wikis. |
Reroute |
Utility | A wire waypoint that passes its value through unchanged. |
SavedItem.AddComment |
Navisworks.Comments | Adds a comment to a saved viewpoint, selection/search set, folder, clash result or result group — the Review-tab Comments feature, scriptable; lace over results for review notes in bulk. |
SavedItem.ClearComments |
Navisworks.Comments | Deletes every comment on a saved viewpoint, selection/search set, folder, clash result or result group (replace-all with an empty thread). |
SavedItem.Comments |
Navisworks.Comments | The comment thread on any saved item (viewpoint, set, folder, clash test): bodies, authors, statuses and creation dates, index-aligned. |
SavedItem.SetCommentStatus |
Navisworks.Comments | Changes the status (New, Active, Approved, Resolved) of one comment, or of every comment, on a saved viewpoint, selection/search set, folder, clash result or result group, keeping its text, its author and its place in the thread — close out review comments without clearing the thread. |
SavedViewpoint.Apply |
Navisworks.Viewpoints | Makes a saved viewpoint the current view (camera, plus any saved overrides). |
SavedViewpoint.ByName |
Navisworks.Viewpoints | Finds a saved viewpoint by its display name (searches folders too). |
SavedViewpoint.CopyOverrides |
Navisworks.Viewpoints | Copies the appearance the way one saved view looks — its colour, transparency and hidden-item overrides — onto another saved view, WITHOUT changing that view's camera. |
SavedViewpoint.Delete |
Navisworks.Viewpoints | Deletes a saved viewpoint: wire the viewpoint itself (so exactly that one goes, whatever its folder), or its name, or its folder path and name ("Reviews/Week 12/Level 1"). |
SavedViewpoint.Duplicate |
Navisworks.Viewpoints | Duplicates a saved viewpoint in its folder, copying its camera and any baked appearance overrides. |
SavedViewpoint.Folder |
Navisworks.Viewpoints | The folder containing a saved viewpoint: its path as "A/B" ("" for top-level viewpoints) and the folder itself — drives folder-based status workflows. |
SavedViewpoint.Info |
Navisworks.Viewpoints | Reads a saved viewpoint: its name, folder path ("A/B", "" at the top level), whether it carries a section box, whether it has baked appearance or visibility overrides, its comment count and its camera — the position and the look-at point (one focal distance ahead of the camera, or one unit when none is stored). |
SavedViewpoint.MoveToFolder |
Navisworks.Viewpoints | Moves a saved viewpoint into a folder (appended at the end). |
SavedViewpoint.Name |
Navisworks.Viewpoints | The display name of a saved viewpoint. |
SavedViewpoint.Rename |
Navisworks.Viewpoints | Renames a saved viewpoint (accepts the viewpoint, its current name or a folder path and name such as "Reviews/Week 12/Level 1"; searches folders too). |
SavedViewpoint.Update |
Navisworks.Viewpoints | Re-captures the current view into an existing saved viewpoint — the UI's "Update" — keeping its name, folder and place in the list. |
Search.ByGuid |
Navisworks.Search | Finds the items whose instance GUID equals any of the given GUIDs (text, a 22-character IFC GlobalId, or GUID values) in one pass over the model — not one search per GUID — and lists the GUIDs that matched nothing; walks every item of the document once (O(items)). |
Search.ByProperty |
Navisworks.Search | Finds every model item by one property, like Find Items with its condition drop-down: equals a value, contains text, matches a wildcard pattern (* and ?), is >, >=, < or <= a number (e.g. |
Selection.AddToCurrent |
Navisworks.Selection | Adds items to the existing Navisworks selection (union) and returns the result. |
Selection.Clear |
Navisworks.Selection | Clears the interactive Navisworks selection. |
Selection.Current |
Navisworks.Selection | The model items currently selected in Navisworks, read again on every run (press Run after selecting something else and the new selection comes through). |
Selection.Invert |
Navisworks.Selection | The items that are NOT in the current selection (Navisworks' own invert, so whole untouched branches come back as one item each); it does not change the selection — wire it into Selection.SetCurrent to select them. |
Selection.Remove |
Navisworks.Selection | Takes the given items out of the current Navisworks selection and returns what is still selected; items that are not selected themselves (for example children of a selected parent) are ignored. |
Selection.Resolve |
Navisworks.Selection | Re-selects items at another selection-tree level — File, Layer, FirstObject, LastObject, LastUnique, Geometry — like Navisworks' selection resolution option (Options > Interface > Selection). |
Selection.SelectAll |
Navisworks.Selection | Selects everything in the Navisworks UI and returns the selected items. |
Selection.SetCurrent |
Navisworks.Selection | Replaces the interactive Navisworks selection with the given items. |
SelectionSet.ByName |
Navisworks.SelectionSets | Finds a saved selection or search set by its display name (searches folders too). |
SelectionSet.Create |
Navisworks.SelectionSets | Creates a saved selection set from the given items, filed in the folder you name (a folder from SelectionSets.CreateFolder, a folder name, or a path such as "Walls/Level 1"; a folder that does not exist yet is created; empty means the top level). |
SelectionSet.CreateFromSearch |
Navisworks.SelectionSets | Creates a live SEARCH set from a property rule, with the same modes as Search.ByProperty (equals, contains, wildcard, >, >=, <, <= or exists; a list in value means any of its entries) — it re-evaluates as the model changes, so "Diameter > 100" or "Name contains DEMO" stays up to date. |
SelectionSet.Delete |
Navisworks.SelectionSets | Deletes a saved selection or search set by name (searches folders too). |
SelectionSet.Duplicate |
Navisworks.SelectionSets | Duplicates a saved selection or search set in its folder (a search set stays a live search); the copy is named "<name> copy" unless newName is given. |
SelectionSet.Info |
Navisworks.SelectionSets | What a saved set is: its name, whether it is a fixed "selection" or a live "search" set, how many items it selects right now (a search set is evaluated once to count; turn includeCount off when you only need the name, kind or folder of many sets) and its folder path ("" at the top level). |
SelectionSet.Items |
Navisworks.SelectionSets | The model items a saved set selects. |
SelectionSet.MoveToFolder |
Navisworks.SelectionSets | Moves a saved selection or search set into a folder (appended at the end). |
SelectionSet.Name |
Navisworks.SelectionSets | The display name of a saved selection or search set. |
SelectionSet.Rename |
Navisworks.SelectionSets | Renames a saved selection or search set (accepts the set or its current name; searches folders too). |
SelectionSets.All |
Navisworks.SelectionSets | All saved selection and search sets in a document, including those inside folders. |
SelectionSets.BulkByPropertyValues |
Navisworks.SelectionSets | One search set per distinct value of a property (e.g. |
SelectionSets.CreateFolder |
Navisworks.SelectionSets | Creates a folder in the Sets window, optionally nested under a parent folder. |
SelectionSets.DeleteFolder |
Navisworks.SelectionSets | Deletes a Sets window folder. |
SelectionSets.InFolder |
Navisworks.SelectionSets | All saved selection and search sets inside a folder, in Sets window order. |
SelectionSets.RenameFolder |
Navisworks.SelectionSets | Renames a Sets window folder (accepts the folder, its current name or a path like "Walls/Level 1"; searches nested folders too). |
SelectionSets.SortFolder |
Navisworks.SelectionSets | Sorts a Sets window folder's contents alphabetically by name (A to Z, ignoring case; entries with the same name keep their order) so you never drag sets into order again. |
Snapshot.Diff |
Data | Diffs two GUID-keyed dictionaries: added/removed/changed keys (values compared by JSON equality; nested dictionary key order is ignored). |
String |
Input | A string literal. |
String.Concat |
String | Joins two strings into one. |
String.Contains |
String | Tests whether a string contains the given substring. |
String.EndsWith |
String | Tests whether a string ends with the given suffix. |
String.Format |
String | Fills a .NET composite format such as "{0} is {1:0.00} m" with the wired values (invariant culture, "{{" and "}}" are literal braces). |
String.FromNumber |
String | Formats a number as text with fixed decimals, an optional thousands separator and a prefix/suffix (invariant culture). |
String.FromObject |
String | Converts any value (including whole lists) to its display string. |
String.IndexOf |
String | Returns the zero-based index of the first occurrence of a text (-1 when absent). |
String.IsBlank |
String | Tests whether a text is null, empty or only whitespace. |
String.Join |
String | Joins the elements of a list into a single string with a separator. |
String.LastIndexOf |
String | Returns the zero-based index of the last occurrence of a text (-1 when absent). |
String.Left |
String | Returns the first characters of a text (the whole text when the count is larger). |
String.Length |
String | Returns the number of characters in a string. |
String.Lines |
String | Splits a text into a list of lines (handles \r\n, \n and \r), optionally dropping the empty ones. |
String.PadLeft |
String | Pads a text on the left with a character up to a total width ("7" becomes "007" with width 3 and padChar 0). |
String.PadRight |
String | Pads a text on the right with a character up to a total width. |
String.RegexIsMatch |
String | Tests whether a .NET regular expression matches anywhere in a text (use ^ and $ to match the whole text). |
String.RegexMatch |
String | Finds the first match of a regular expression: whether it was found, the matched text and the capture groups 1..n. |
String.RegexMatches |
String | Returns the text of every match of a regular expression as a list (empty when nothing matches). |
String.RegexReplace |
String | Replaces every match of a regular expression; $1, $2, ... |
String.RegexSplit |
String | Splits a text into a list of parts wherever a regular expression matches. |
String.RemoveDiacritics |
String | Removes accents from letters ("é" becomes "e") so names compare and sort without them. |
String.Repeat |
String | Repeats a text a number of times (0 to 10000), optionally with a separator between the copies. |
String.Replace |
String | Replaces all occurrences of a substring with another string. |
String.Reverse |
String | Reverses the characters of a text. |
String.Right |
String | Returns the last characters of a text (the whole text when the count is larger). |
String.Split |
String | Splits a string into a list of substrings around a separator. |
String.StartsWith |
String | Tests whether a string starts with the given prefix. |
String.Substring |
String | Extracts part of a string from a start index (-1 length = to the end). |
String.Template |
String | Replaces {name} placeholders in a text with the values of a dictionary ("{{" and "}}" are literal braces). |
String.ToLower |
String | Converts a string to lowercase. |
String.ToNumber |
String | Converts a numeric string to a number. |
String.ToTitleCase |
String | Capitalises the first letter of every word and lowercases the rest ("bim COORDINATION" becomes "Bim Coordination"). |
String.ToUpper |
String | Converts a string to uppercase. |
String.Trim |
String | Removes whitespace (or the given characters) from both ends of a string. |
String.TrimEnd |
String | Removes whitespace (or the given characters) from the end of a text. |
String.TrimStart |
String | Removes whitespace (or the given characters) from the start of a text. |
Subtract |
Math | Subtracts the second number from the first. |
System.Environment |
System | Reports the Windows user, computer name, operating system and the current, temp, Documents and AppData folders. |
System.OpenPath |
System | Opens a file or folder with its default application, or shows it selected in Explorer when reveal is true. |
System.Run |
System | Runs a program with arguments, waits for it (stopped after Advanced > timeoutSeconds, 60 by default) and returns its exit code, output and error text. |
Table.AddColumn |
Table | Adds a column at the end: a list with one value per row, or a single value repeated on every row. |
Table.AddFormulaColumn |
Table | Adds a column calculated per row from the others, e.g. |
Table.Column |
Table | The cells of one column, top to bottom — wire it into List.Sum, List.CountValues, Search or a property writer. |
Table.Concat |
Table | Stacks tables one below the other, matching columns by name; a column one table lacks is left empty — weekly snapshots, one table per model. |
Table.Distinct |
Table | Keeps only the first row for each distinct value of the given columns (a list of names or one text with commas), or of the whole row when none are given. |
Table.Filter |
Table | Splits a table by a test on one column — Level == "L02", Length > 3000, Name matches "W-*", Level in "L01, L02" — into the rows that pass and the rows that do not. |
Table.FromColumns |
Table | Makes a table from columns: a list of lists, one per column, with optional names — for results that come as parallel lists. |
Table.FromCsvFile |
Table | Reads a CSV file straight into a table (numbers become numbers, everything else stays text). |
Table.FromDictionaries |
Table | Makes a table from a list of dictionaries (one row each); the columns are all their keys — property bags become rows. |
Table.FromExcelFile |
Table | Reads an Excel worksheet straight into a table. |
Table.FromRows |
Table | Makes a table from rows of cells and column names (or from the first row) — the doorway from Excel, CSV and list data. |
Table.GroupBy |
Table | Groups rows by one or more columns (a list of names or one text with commas) and works out count, sum, average, min, max, median, first, last, list or distinct per group — "sum:Volume", "count" — the pivot-table core for quantities. |
Table.Info |
Table | How many rows and columns a table has, and its column names (the headers output is the list of names, in column order). |
Table.Join |
Table | Joins two tables on one or more key columns (inner, left or outer) — add the Excel columns to the model data by GUID or mark. |
Table.Pivot |
Table | Cross-tabulates: rows from one column, columns from another, each cell the sum (or count, average …) of a third — clashes by level and status. |
Table.RemoveColumns |
Table | Drops the listed columns and keeps the rest. |
Table.RenameColumn |
Table | Renames one column. |
Table.Row |
Table | One row of a table as a dictionary from column name to cell (0 is the first row; -1 the last). |
Table.Rows |
Table | The rows of a table as a list of lists of cells (for Excel.WriteToFile, CSV.WriteToFile and the List nodes). |
Table.SelectColumns |
Table | Keeps only the listed columns, in that order. |
Table.SetColumn |
Table | Replaces the cells of a column in place, keeping its position and name, or adds the column at the end when there is none of that name. |
Table.Slice |
Table | Takes count rows from a starting row (count -1 takes all the rest) — the first 10 rows: start 0, count 10. |
Table.Sort |
Table | Sorts the rows by one or more columns, as a list of names or one text ("Level, -Length" sorts by level, then longest first); numbers numerically, text alphabetically, empty cells last. |
Table.ToCsvFile |
Table | Writes one table, with its column names, to a CSV file; a file that is already there is replaced. |
Table.ToDictionaries |
Table | The rows of a table as dictionaries (column name to cell) — for JSON.WriteToFile or per-row lookups. |
Table.ToExcelFile |
Table | Writes one table, with its column names, to an Excel worksheet. |
Table.ToText |
Table | Renders a table as Markdown, CSV, tab-separated or an HTML table — for a report, an e-mail or a log. |
Table.Unmatched |
Table | The rows of the left table that find no partner in the right table, using the same keys and the same matching as Table.Join (GUIDs match whatever their case, a blank key never matches) — which model elements have no row in the Excel list, which GUIDs were not found. |
Takeoff.SumPropertyByGroup |
Navisworks.Analysis | One-node QTO rollup: groups items by a property value and sums a numeric property per group (e.g. |
Text.AppendToFile |
File | Appends text (plus a line break by default) to the end of a text file, creating the file and folder if needed. |
Text.ReadFromFile |
File | Reads the entire content of a text file as one text. |
Text.WriteToFile |
File | Writes text to a file, replacing what was there, and creates missing folders; returns the path. |
TimeLiner.AutoAttachByProperty |
Navisworks.TimeLiner | For every TimeLiner task (subtasks included), finds all items whose property value equals the task name (or, with matchOn "Display id", the task's display id) and attaches them — the UI's "Auto-Attach Using Rules", scriptable. |
TimeLiner.Tasks |
Navisworks.TimeLiner | All TimeLiner tasks in a document, with subtasks flattened into one list, read again on every run. |
TimelinerTask.AttachSet |
Navisworks.TimeLiner | Attaches a saved selection/search set to a task as a LIVE link (like Attach Set in the UI) — the core 4D-linking automation. |
TimelinerTask.ByName |
Navisworks.TimeLiner | Finds a TimeLiner task by its name (subtasks too). |
TimelinerTask.Create |
Navisworks.TimeLiner | Creates a TimeLiner task with planned dates and optionally attaches model items. |
TimelinerTask.Delete |
Navisworks.TimeLiner | Deletes a TimeLiner task together with its subtasks. |
TimelinerTask.Info |
Navisworks.TimeLiner | Name, id, planned and actual dates, task type and progress of a TimeLiner task, the name of its parent task (empty for a top-level task) and its depth (0 for a top-level task, 1 for a subtask ...). |
TimelinerTask.Items |
Navisworks.TimeLiner | The model items attached to a TimeLiner task. |
TimelinerTask.SetActual |
Navisworks.TimeLiner | Sets a task's ACTUAL start and/or end dates (the planned dates are untouched; use TimelinerTask.SetDates for those) — record what happened on site next to the plan. |
TimelinerTask.SetDates |
Navisworks.TimeLiner | Updates a task's planned start/end dates in place — bulk schedule edits without a re-import. |
TimelinerTask.SetProgress |
Navisworks.TimeLiner | Sets a task's percent complete (0-100; anything outside is clamped) — update progress from a site report in bulk. |
Units.All |
Navisworks.Units | Every unit name accepted by Units.Convert and Units.ScaleFactor. |
Units.Convert |
Navisworks.Units | Converts a length, an area or a volume from one unit to another (e.g. |
Units.Current |
Navisworks.Units | The display units of a document (all API lengths, areas and volumes use them), read again on every run. |
Units.ScaleFactor |
Navisworks.Units | The multiplier that converts a length, an area or a volume from one unit to another. |
Vector.Add |
Geometry | Adds two vectors (a + b). |
Vector.Angle |
Geometry | The angle between two vectors in degrees, 0 (same direction) to 180 (opposite); a zero-length vector has no direction and is an error. |
Vector.ByCoordinates |
Geometry | Creates a 3D direction vector from X, Y and Z components. |
Vector.ByPoints |
Geometry | Creates the vector that leads from one point to another (end minus start). |
Vector.Components |
Geometry | Splits a vector into its X, Y and Z components. |
Vector.Cross |
Geometry | The cross product of two vectors: a vector perpendicular to both (right-hand rule), zero when they are parallel. |
Vector.Dot |
Geometry | The dot product of two vectors: positive when they point the same way, 0 when perpendicular, negative when opposed. |
Vector.IsParallel |
Geometry | True when two vectors lie along the same line (same or opposite direction) within a length-independent tolerance; zero-length vectors are an error. |
Vector.IsPerpendicular |
Geometry | True when two vectors meet at a right angle within a length-independent tolerance; zero-length vectors are an error. |
Vector.Length |
Geometry | Returns the length (magnitude) of a vector. |
Vector.Negate |
Geometry | Reverses a vector so it points the opposite way. |
Vector.Normalize |
Geometry | Scales a vector to length 1, keeping its direction (a zero-length vector has no direction and is an error). |
Vector.Scale |
Geometry | Multiplies a vector by a number (2 doubles its length, -1 reverses it). |
Vector.Subtract |
Geometry | Subtracts one vector from another (a - b). |
Vector.XAxis |
Geometry | The unit vector along the X axis, (1, 0, 0). |
Vector.YAxis |
Geometry | The unit vector along the Y axis, (0, 1, 0). |
Vector.ZAxis |
Geometry | The unit vector along the Z axis, (0, 0, 1) — straight up. |
Viewpoint.Save |
Navisworks.Viewpoints | Saves the current view as a saved viewpoint in the Saved Viewpoints window. |
Viewpoint.SetSectionBox |
Navisworks.Camera | Applies a section box around a region on the current view (Sectioning > Box, scriptable) — chain ModelItem.BoundingBox for the clash-viewpoint close-up look. |
Viewpoint.VisibleItems |
Navisworks.Viewpoints | Checks which of the given items a viewpoint can see (bounding box vs the camera frustum). |
Viewpoints.All |
Navisworks.Viewpoints | All saved viewpoints in a document, including those inside folders. |
Viewpoints.CreateFolder |
Navisworks.Viewpoints.Folders | Creates a folder in the Saved Viewpoints window, optionally nested under a parent folder. |
Viewpoints.DeleteFolder |
Navisworks.Viewpoints.Folders | Deletes a Saved Viewpoints folder together with every viewpoint and sub-folder in it, or with contentsOnly on empties the folder and keeps it — the clean-up before Viewpoints.FromClashResults fills "Clash Views" again. |
Viewpoints.DuplicateFolder |
Navisworks.Viewpoints.Folders | Duplicates a Saved Viewpoints folder — a new folder (created as a sibling) with copies of every viewpoint and nested sub-folder inside. |
Viewpoints.ExportFile |
Navisworks.Viewpoints.Files | Exports saved viewpoints — camera, section box and folder location — to a portable JSON package for Viewpoints.ImportFile to rebuild in ANOTHER model, even one in different units. |
Viewpoints.FromClashResults |
Navisworks.Viewpoints | Batch-generates one saved viewpoint per clash result, camera aimed at the clash — the clash-triage staple. |
Viewpoints.ImportFile |
Navisworks.Viewpoints.Files | Rebuilds the viewpoints from a Viewpoints.ExportFile package in THIS model: camera, section box and folder structure. |
Viewpoints.InFolder |
Navisworks.Viewpoints.Folders | All saved viewpoints inside a folder, in Saved Viewpoints window order. |
Viewpoints.RenameFolder |
Navisworks.Viewpoints.Folders | Renames a Saved Viewpoints folder (accepts the folder, its current name or a path such as "Reviews/Week 12"; searches nested folders too). |
Viewpoints.SortFolder |
Navisworks.Viewpoints.Folders | Sorts a Saved Viewpoints folder's contents alphabetically by name (A→Z), ignoring case — so you never drag-and-drop views into order again. |
Watch |
Display | Displays the incoming value. |
Watch Image |
Display | Displays the image file at the incoming path (PNG, JPG, BMP). |
Watch List |
Display | Displays the elements of a list, one per line. |
Watch Table |
Display | Displays a table as a grid: column names on top, one line per row. |
Web.Download |
System | Downloads a file (IFC, BCF, zip, picture, anything) from an http(s) address and saves it byte for byte; missing folders are created and an existing file is only replaced when overwrite is true. |
Web.Get |
System | Downloads text from an http(s) address with GET; an error status such as 404 is returned (ok = false), only a network failure or timeout is an error. |
Web.Post |
System | Sends data to an http(s) address with POST (JSON by default, e.g. |
Workflow.ForEach |
Workflow | Runs a sequence of actions on each item, one item fully before the next (zoom, isolate, save viewpoint, then the next item), the per-item ordered loop that wiring and lacing cannot express. |
XML.Parse |
Data | Parses XML into dictionaries, lists and strings (attributes as "@name", repeated elements as lists, mixed text as "#text"). |
XML.ReadFromFile |
Data | Reads an XML file into dictionaries, lists and strings, in the same shape as XML.Parse (attributes as "@name", repeated elements as lists, mixed text as "#text"). |
Zip.Create |
File | Packs files and folders into a zip archive (a folder is stored with its structure under its own name); a missing source is an error. |
Zip.Extract |
File | Unpacks a zip archive into a folder; refuses entries that would escape the folder and files that already exist unless overwrite is true. |
Zip.List |
File | Lists the entry names inside a zip archive without extracting it. |
Zone.AssignByVolumes |
Navisworks.Analysis | Tags each target with the name of the zone volume containing its bounding-box center — the iConstruct Zone Tool as one node. |