Section
A SceneObject whose data is { "type": "section", …SectionRecord } — the tag plus every field of SectionRecord.
SectionRecord
Used by: CellType, PieceData, RenderCell.
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { SectionEntity } from "./SectionEntity.js";
export type SectionRecord = {
/**
* geometry — the cutting-plane entities.
*/
sections: Array<SectionEntity>, };| field | type | optional | class | doc |
|---|---|---|---|---|
sections | Array<SectionEntity> | no | geometry | geometry — the cutting-plane entities. |
SectionEntity
One cutting plane. A cut keeps the −normal half-space.
Used by: SectionRecord.
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { PerViewFlag } from "./PerViewFlag.js";
/**
* One cutting plane. A cut keeps the −normal half-space.
*/
export type SectionEntity = {
/**
* geometry — a point on the cutting plane, mm.
*/
point: [number, number, number],
/**
* geometry — the cutting plane's unit normal.
*/
normal: [number, number, number],
/**
* intent — views the plane cuts in: `true` = every view including the
* free camera, `false` = none, a list = exactly those view keys,
* a camera function = the views it holds for.
*/
active: PerViewFlag,
/**
* intent — free-form record data.
*/
attributes?: Record<string, unknown>, };| field | type | optional | class | doc |
|---|---|---|---|---|
point | [number, number, number] | no | geometry | geometry — a point on the cutting plane, mm. |
normal | [number, number, number] | no | geometry | geometry — the cutting plane's unit normal. |
active | PerViewFlag | no | intent | intent — views the plane cuts in: true = every view including the free camera, false = none, a list = exactly those view keys, a camera function = the views it holds for. |
attributes | Record<string, unknown> | yes | intent | intent — free-form record data. |
PerViewFlag
intent — properties.visible: absent/true = every view, false = none, a list = exactly those view keys, an arrow (camera) => boolean = the cameras the function holds for (its source text, run at render resolve time against the session's camera by Sight::satisfies, because a component's own views are ignored once it is placed and the host's camera is unknown inside it). Empty list refused at evaluate. Render ships it as All(bool) against the session's Sight (render::placement_shown): the active view's pose, else the free camera the host reported; a list holds only in a named view, and with no pose at all nothing holds.
Used by: Instance, ResolvedLayer, SectionEntity.
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* intent — `properties.visible`: absent/`true` = every view, `false` = none,
* a list = exactly those view keys, an arrow `(camera) => boolean` = the
* cameras the function holds for (its source text, run at render resolve time
* against the session's camera by `Sight::satisfies`, because a component's
* own `views` are ignored once it is placed and the host's camera is unknown
* inside it). Empty list refused at evaluate. Render ships it as `All(bool)`
* against the session's `Sight` (`render::placement_shown`): the active view's
* pose, else the free camera the host reported; a list holds only in a named
* view, and with no pose at all nothing holds.
*/
export type PerViewFlag = boolean | Array<string> | string;One of:
booleanArray<string>string