@huukhanhnguyen/model / schema/vocabulary/laneMethods
schema/vocabulary/laneMethods
LaneMethodDef
LaneMethodDef =
LaneNodeDef& {args:NodeArgEntry[];tooltip:string; }
The tables[]/textures[] shape: every method there has a tooltip and an arg list (possibly empty), and both evaluators index them unguarded.
LaneNodeDef
LaneNodeDef = {
args?:NodeArgEntry[];defaultKey:string;label:string;tooltip?:string; }
A lane method as the CATALOG shows it: display metadata + the arg schema. args absent = the method takes none (a docDivider, a tableSheets).
args?
optionalargs?:NodeArgEntry[]
defaultKey
defaultKey:
string
label
label:
string
tooltip?
optionaltooltip?:string
TextureMethodDef
TextureMethodDef =
LaneMethodDef& {type:"source"|"filter"; }
A texture method either STARTS the image stream or transforms it.
HEAD_TABLE_METHODS
constHEAD_TABLE_METHODS:Set<string>
Heads that seed the table stream (not row nodes). A chain uses one head XOR rows.
TABLE_METHODS
constTABLE_METHODS:Record<string,LaneMethodDef>
TEXTURE_METHODS
constTEXTURE_METHODS:Record<string,TextureMethodDef>
VIEW_METHOD_DEFS
constVIEW_METHOD_DEFS: {view3d: {args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; };viewDetail: {args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; };viewElevation: {args: {default:string;key:string;label:string;options:string[];tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; };viewFilter: {args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; };viewPlan: {args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; };viewSection: {args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; };viewStyle: {args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }; }
The view-chain vocabulary (View.operations): the five HEADS plus the two steps. Which methods are heads stays in schema/viewChain.ts's VIEW_HEAD_METHOD_NAMES, type-pinned to this table (a head that is not a declared method stops compiling).
view3d
view3d: {
args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }
view3d.args
args: {
default:string;key:string;label:string;tooltip:string;type:string; }[]
view3d.defaultKey
defaultKey:
string="view3d"
view3d.label
label:
string="3D view"
view3d.tooltip
tooltip:
string="3D camera head (family 3d) — restores the 3D viewport via settings.activeView, AND places on paper as an AXONOMETRIC (the drawing projects in parallel down the camera direction; fov is ignored there). An inline perspective pose (position/target/up/fov), OR a cameras[] key (XOR — not both), which is also the only way to name an ORTHOGRAPHIC 3D view."
viewDetail
viewDetail: {
args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }
viewDetail.args
args: {
default:string;key:string;label:string;tooltip:string;type:string; }[]
viewDetail.defaultKey
defaultKey:
string="detail"
viewDetail.label
label:
string="Detail"
viewDetail.tooltip
tooltip:
string="Detail-view head (family detail) — frames a FLAT components[] entry's own 2D content 1:1: no camera, no projection. The one path a detail/chart/diagram takes to paper; a 3D component fails soft with a named error."
viewElevation
viewElevation: {
args: {default:string;key:string;label:string;options:string[];tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }
viewElevation.args
args: {
default:string;key:string;label:string;options:string[];tooltip:string;type:string; }[]
viewElevation.defaultKey
defaultKey:
string="elevation"
viewElevation.label
label:
string="Elevation"
viewElevation.tooltip
tooltip:
string= "Elevation-view head. direction = 'front'|'back'|'left'|'right'. Crop lives on the viewObject."
viewFilter
viewFilter: {
args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }
viewFilter.args
args: {
default:string;key:string;label:string;tooltip:string;type:string; }[]
viewFilter.defaultKey
defaultKey:
string="filter"
viewFilter.label
label:
string="Filter"
viewFilter.tooltip
tooltip:
string="Stackable filter step — rules array of {key, equals?, notEquals?, override?}. Multiple steps AND together; node enabled toggles the layer."
viewPlan
viewPlan: {
args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }
viewPlan.args
args: {
default:string;key:string;label:string;tooltip:string;type:string; }[]
viewPlan.defaultKey
defaultKey:
string="plan"
viewPlan.label
label:
string="Plan"
viewPlan.tooltip
tooltip:
string="Plan-view head. cut = world Z height (absent = roof plan, no cut); depth = visible range below cut. Crop lives on the viewObject."
viewSection
viewSection: {
args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }
viewSection.args
args: {
default:string;key:string;label:string;tooltip:string;type:string; }[]
viewSection.defaultKey
defaultKey:
string="section"
viewSection.label
label:
string="Section"
viewSection.tooltip
tooltip:
string="Section-view head. plane (sectionPlane node key, quoted) XOR position+direction; depth. Crop lives on the viewObject."
viewStyle
viewStyle: {
args: {default:string;key:string;label:string;tooltip:string;type:string; }[];defaultKey:string;label:string;tooltip:string; }
viewStyle.args
args: {
default:string;key:string;label:string;tooltip:string;type:string; }[]
viewStyle.defaultKey
defaultKey:
string="viewStyle"
viewStyle.label
label:
string="Style"
viewStyle.tooltip
tooltip:
string="Style step — name of a styles[] entry (quoted or expression). Multiple steps: last wins (validate warns)."