Skip to content
Let's Talk!

ArchiModellingTools

General architectural modelling utilities — area/length measurement, layer management, display mode control, isolation tools, and block creation.


Measurement

knAreainSF

Calculates the total area in square feet (SF) of selected geometry and copies the numeric result to the clipboard.

Property Detail
Input Select curves, surfaces, polysurfaces, meshes, or extrusions (preselect supported)
Output Prints total area (SF), valid/invalid counts; copies value to clipboard

Note

Temporarily switches the document unit system to feet for calculation, then restores the original units.


knAreainSM

Calculates the total area in square metres (sq.m) of selected geometry and copies the value to the clipboard.

Property Detail
Input Select curves, surfaces, polysurfaces, meshes, or extrusions
Output Prints total area (sq.m), valid/invalid counts; copies value to clipboard

knAddRoomDimsText

Measures a room's length × width by picking two pairs of points inside a layout detail, then places a formatted feet-and-inches annotation text at a chosen location.

Property Detail
Works in Layout space with at least one detail view
Input Detail view selection; pick length start/end; pick width start/end; place text
Output Text annotation formatted as X'-Y" × X'-Y"

Note

Accounts for the detail's PageToModelRatio. Remembers the last used detail via sc.sticky across runs.


Layer Management

knHideLayers

Hides all objects that share the same layer(s) as the current selection.

Property Detail
Input Select one or more objects (preselect supported)
Output All objects on the same layer(s) are hidden

knIsolateLayers

Isolates the layers of selected objects — hides all objects that do not share a layer with the selection.

Property Detail
Input Select one or more objects (preselect supported)
Output Objects on all other layers are hidden

knRandomColorstoLayers

Assigns a random RGB colour to each layer. Can operate on all layers or a selected subset.

Property Detail
Input Option: All Layers or select specific layers
Output Each layer receives a random colour

knDeleteLayers

Deletes a named layer and all objects on it. Unlocks the layer first if needed, then purges it from the document.

Property Detail
Input Type the layer name to delete
Output All objects on matching layers deleted; layer purged

Selection

knSelAllGroups

Selects all objects belonging to any named group in the document.

Property Detail
Input None
Output All grouped objects become selected

knIsolateGroups

Selects all grouped objects, then runs Rhino's Isolate to hide everything else.

Property Detail
Input None
Output All grouped objects isolated; ungrouped objects hidden

Display Modes

knSetObjectDisplayMode

Sets a per-object display mode override on selected objects. The user chooses from all available viewport display modes.

Property Detail
Input Select objects; choose display mode from a list
Output Selected objects render in the chosen mode in the active viewport

knMatchObjectDisplayMode

Copies the per-object display mode override from a source object and applies it to all target objects.

Property Detail
Input (1) Select target objects; (2) select source object to match
Output Targets inherit the source's display mode override

knRemoveDisplayModeOverrides

Removes any per-object display mode override from selected objects in the active viewport, reverting them to the default viewport display mode.

Property Detail
Input Select objects
Output Display mode overrides cleared for the active viewport

knWireframeDisplay

Toggles selected objects between wireframe display override and their normal display mode. If an override already exists it is removed; otherwise a wireframe override is applied.

Property Detail
Input Select objects
Output Wireframe override applied — or existing override removed

Blocks

knCreateBlock

Creates a new block definition from selected objects, using a three-point rectangle to define the block's local coordinate plane and origin.

Property Detail
Input Pick 3 points for the plane; select objects; enter block name
Output New block instance definition added to the document

Annotations

knPlaceNumbersinSeq

Places sequentially numbered text labels at user-picked locations (1, 2, 3 …).

Property Detail
Input Pick multiple locations in sequence
Output Text objects numbered from 1 at each picked point, using the current dimension style

Geometry

knPlanarizeSurface

Tests whether a surface is planar. If not, projects its border onto the surface's mid-normal plane and creates a new planar BREP.

Property Detail
Input Select a surface
Output If non-planar: new planar BREP added. If already planar: reports and exits.

knaddContructionLine

Draws a very long construction line through two picked points (scaled 500× to simulate infinity). Line is drawn grey for reference use.

Property Detail
Input Pick two points
Output Grey construction line 500× the length between the two points

Miscellaneous

knToggleGumballSnap

Toggles Rhino's Gumball Snappy mode on/off and prints the new state.

Property Detail
Input None
Output Flips SnappyGumballEnabled; prints "Gumball snap is ON/OFF"

knImportWorksessionFiles

Imports all worksession reference files into the current document as regular geometry.

Property Detail
Input Yes/No prompt to SaveAs first
Output All worksession .3dm files imported into the active document

knObjectColortoMaterial

Applies each object's display colour as its render material diffuse colour, and also sets the print colour to match.

Property Detail
Input Select objects (preselect supported)
Output Object materials updated to match display colours

knGetDotPosition

Prints the world-space coordinates of a selected point dot to the Rhino command line.

Property Detail
Input Select a point dot object
Output Prints (x, y, z) to the console

knWelcomeForm

Opens the 3XNHUB internal digital-platform welcome screen as a modeless Eto form.

Property Detail
Input None
Output Modeless Eto window with About/Inspiration dropdowns and file upload field

Work in Progress

knLengthinF

Stub

Not yet implemented. Template command only.


knLengthinM

Partially implemented

Currently uses area properties rather than curve length. Intended to measure edge/curve length in metres.


Stubs (not yet implemented)

Command Status
knChangeBlockName Stub — placeholder code only
knCheckElevation Stub — placeholder code only
knMovetoMidPt Incomplete — MoveObject call missing argument
knParkingGenerator Stub — placeholder code only