Luxar Viewer API Documentation - v2026.9.22
    Preparing search index...

    Interface LinesMetadata

    Lines node metadata from zarr .zattrs

    This interface defines all metadata stored with a Lines node in the zarr archive. It enables type-safe access to line properties throughout the viewer.

    interface LinesMetadata {
        type: "lines";
        n_vertices: number;
        n_segments: number;
        ndim: number;
        original_line_type: LineTypeName;
        max_width: number;
        position_bounds?: PositionBounds;
        has_colors: boolean;
        has_sharpness: boolean;
        has_scalars?: boolean;
        colormap?: string;
        scalar_data_range?: [number, number];
        has_spatial_index?: boolean;
        has_labels?: boolean;
        has_image_labels?: boolean;
        has_keys?: boolean;
        ordering: OrderingMethodName;
        vertex_ordering?: OrderingMetadata;
        segment_ordering?: OrderingMetadata;
        transform?: number[];
        opacity?: number;
        absorption?: number;
        gamma?: number;
        intensity?: number;
        offset?: number;
        blending_mode?: BlendingModeName;
        layer?: boolean;
        extend_to_all?: string[];
    }
    Index
    type: "lines"

    Node type identifier

    n_vertices: number

    Total vertex count

    n_segments: number

    Total segment count

    ndim: number

    Vertex position dimensionality

    original_line_type: LineTypeName

    Original line type from Python API

    max_width: number

    Maximum line width in world units

    position_bounds?: PositionBounds

    Authored nD axis-aligned vertex bounds. Written unconditionally on every lines node by the compiler (geometry_writers/lines.py), and on an additive-ladder parent as the union over its levels — so it is the one authored extent that survives when a node has no spatial index. Optional only for hand-written metadata.

    has_colors: boolean

    Whether colors array is present

    has_sharpness: boolean

    Whether sharpness array is present

    has_scalars?: boolean

    Whether per-vertex scalar values for colormap lookup exist.

    gates whether the loader opens the scalars zarr array and whether NodeFactory.createLinesNode enables USE_COLORMAP.

    colormap?: string

    Named colormap or 'custom' (paired with colormap_lut zarr array). viewer reads this to choose the LUT texture; when set without has_scalars, the colormap path is suppressed (fail-closed).

    scalar_data_range?: [number, number]

    [min, max] for normalising scalars before LUT lookup. passed to material.updateScalarRange so a value of min samples LUT index 0 and max samples 255.

    has_spatial_index?: boolean

    Whether spatial index exists (redundant with ordering !== 'none', but explicit)

    has_labels?: boolean

    Whether per-element string labels exist (CSR-encoded, for hover tooltips)

    has_image_labels?: boolean

    Whether per-element image labels exist (CSR-encoded, for hover thumbnails)

    has_keys?: boolean

    Whether per-element stable string keys exist (CSR-encoded, for element actions)

    Spatial ordering method

    vertex_ordering?: OrderingMetadata

    Vertex ordering metadata (when ordering != 'none')

    segment_ordering?: OrderingMetadata

    Segment ordering metadata (when ordering != 'none')

    transform?: number[]

    4x4 transform matrix (column-major for THREE.js)

    opacity?: number

    Opacity multiplier

    absorption?: number

    Absorption coefficient κ (volumetric blending mode; identity 1.0)

    gamma?: number

    Gamma correction

    intensity?: number

    Intensity (linear color multiplier / gain)

    offset?: number

    Offset (additive brightness shift / black level subtraction)

    blending_mode?: BlendingModeName

    Blending mode

    layer?: boolean

    Whether this node is exposed as a layer in the Layers panel

    extend_to_all?: string[]

    List of dimension names to extend visibility across. Lines with extend_to_all will be visible regardless of slice position in the specified dimensions (e.g., ['time'] makes geometry visible at all time values).