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

    Module types/mesh

    Mesh type definitions for luxar-viewer.

    These types mirror Python luxar.core.Mesh and enable type-safe handling of triangle-surface data throughout the viewer. See docs/specs/MESH_NODE_SPEC.md.

    Two things here differ from the Points/Lines/GSplats siblings, and both are structural rather than incidental:

    1. No primary size scalar. Points carry radii, Lines widths, GSplats cholesky_factors — a per-element extent that the loader must know about because it pads query bounds and drives an instanced quad. A triangle's extent comes from its own three vertices, so a mesh has nothing of the kind and adds zero padding to scene bounds (spec §2.2).
    2. Topology, not ranges. LoadedPointsData/LoadedLinesData describe a subset selected by a spatial-index range query. A mesh is whole-node resident (spec §7): LoadedMeshData is always the entire mesh, and what varies with the slice is only which faces are indexed — see data/mesh/projection.ts.
    MeshMetadata
    LoadedMeshData
    MeshProjectionBounds
    MeshProjectionTargetBuffers
    MeshDataLoader
    MeshUserData
    MeshShading
    MeshTextureEncoding
    MeshTextureColorSpace
    MeshTextureFilter
    MeshTextureWrap
    MeshMaterialKind
    MeshColorArray
    MeshTextureData
    KTX2TextureDecoder
    MeshViewState
    isMeshUserData