Skip to content

Nodes · 3D

FitPlane3D

3Dv1app

Overview

Fits a plane through cloud points and lands it as a real card, snapped to the world — how proxy walls and floors get built. RANSAC ignores stray points, so on a ground-heavy solve it works with no knobs touched; give it a selection to fit one wall.

How to

How-to

  1. Wire a solved point cloud into cloud.
  2. With nothing selected it fits the dominant plane (usually the ground) and lands it as a card snapped to the world.
  3. Give it a selection of points to fit one wall; threshold is how far a point may sit from the plane and still count.

Inputs

InputWhat it takes
inthe image this node works on

Outputs

OutputType
outScene

Parameters

ParameterTypeDefaultWhat it does
txFloat0.0Translate X — position along the world X axis, metres.
tyFloat0.0Translate Y — position along the world Y axis (up), metres.
tzFloat0.0Translate Z — position along the world Z axis, metres. The camera looks down −Z.
rxFloat0.0Rotate around X, degrees.
ryFloat0.0Rotate around Y (turntable), degrees.
rzFloat0.0Rotate around Z (roll), degrees.
sxFloat1.0Scale along X. 1 = unchanged.
syFloat1.0Scale along Y.
szFloat1.0Scale along Z.
cloudTextThe PointCloud3D node to fit. Empty = the first tracker cloud in the scene.
selectionTextPoint indices to fit, as JSON ([3,7,9]) - one wall from its dots. Empty fits everything and lets the outlier rejection do the choosing.
thresholdFloat0.0How far a point may sit off the plane and still count as on it, in scene units. 0 = automatic (1% of the cloud's size).
seedInt1The random sampling seed. If the fit latches onto the wrong plane, bump it.
disabledBoolfalseBypass: the node passes its first input through untouched (D in the graph). The knobs keep their values for when it comes back.
labelTextA note shown under the node in the graph — what this node is FOR. Never affects the render or the cache.
hide_inputBoolfalseDraw the node without its input wire — a tidy graph for a node whose source is obvious (a Dot, a viewer tap).