Point Calibration
Node ID: pointCalibration · Role: Sink · Realtime config: no
Description
Marks known real-world points with a tracked stylus body and solves the rigid transform that aligns the optical tracking frame with a set of virtual reference points (e.g. collapse a virtual cube onto its real counterpart). With a Target Body wired, points are instead measured in that body’s frame, solving the transform from the body’s tracked frame to the reference (e.g. CAD) frame - apply it to the DTrack body to re-frame its marker geometry. Includes a pivot calibration that recovers the stylus tip offset by rotating the stylus around a fixed tip.
Inputs / Outputs
- Inputs:
Optical- Stylus,TargetBody(Optical) - Target Body - Outputs: (none)
Properties
Each row shows the setting’s label in the node’s Properties panel and, in code, its key in the node’s settings object in the config file. A setting omitted from the config file uses the default shown here.
| Property | Type | Default | Description |
|---|---|---|---|
Stylus Tip Offset tipOffset | vector3 | {"x":0.0,"y":0.0,"z":0.0} | Offset from the tracked stylus body origin to its physical tip, in the body frame (m). Solve it with the pivot calibration in the Point Alignment view. |
Example node definition
A minimal entry in config.json looks like the block below. Paste it under the sinks key, keyed by an instance name of your choice. All settings are optional: anything not listed under settings uses the default from the Properties table above. See The configuration file for how the sections and endpoint wiring work.
{
"sinks": {
"pointCalibration": {
"inputEndpoints": [
"inproc://optical_data",
"inproc://targetBody_data"
],
"inputDataFilter": [
"Optical",
"Optical"
],
"settings": {}
}
}
}