React Advanced Odontogram - v2.6.0
    Preparing search index...

    Type Alias AnatomyProfile

    Everything anatomy-specific, bundled so a runtime switch swaps it atomically. templates/templatesOccl hold inlined SVG text; toothTemplate maps each FDI tooth to its {tpl,rot,mirror}; occlusalTemplate is optional (only a profile that splits front/occlusal artwork populates it — classic reuses toothTemplate); layout drives the buildGrid branch; the three *CejY records are the perio-chart baseline anchors.

    type AnatomyProfile = {
        cejY: Record<number, number>;
        implantCejY: Record<number, number>;
        layout: "uniform16" | "twoArch";
        milktoothCejY: Record<number, number>;
        occlNos: number[];
        occlusalTemplate?: Map<
            number,
            { mirror: boolean; rot: number; tpl: number },
        >;
        primaryOcclNos?: number[];
        primaryOcclusalTemplate?: Map<
            number,
            { mirror: boolean; rot: number; tpl: number },
        >;
        primaryTemplates?: Record<number, string>;
        primaryTemplatesOccl?: Record<number, string>;
        primaryToothTemplate?: Map<
            number,
            { mirror: boolean; rot: number; tpl: number },
        >;
        primaryTplNos?: number[];
        templates: Record<number, string>;
        templatesOccl: Record<number, string>;
        toothTemplate: Map<number, { mirror: boolean; rot: number; tpl: number }>;
        tplNos: number[];
    }
    Index

    Properties

    cejY: Record<number, number>
    implantCejY: Record<number, number>
    layout: "uniform16" | "twoArch"
    milktoothCejY: Record<number, number>
    occlNos: number[]
    occlusalTemplate?: Map<number, { mirror: boolean; rot: number; tpl: number }>
    primaryOcclNos?: number[]
    primaryOcclusalTemplate?: Map<
        number,
        { mirror: boolean; rot: number; tpl: number },
    >
    primaryTemplates?: Record<number, string>

    OPTIONAL deciduous artwork. A profile that draws milk teeth as their own, correctly proportioned templates (rather than as a layer inside the permanent drawing) populates these; a profile that does not leaves them undefined and nothing downstream changes.

    The maps are keyed by the PERMANENT FDI tooth number the milk tooth occupies — the engine charts a milk tooth as a toothSelection on a permanent position (see PRIMARY_MILK in odontogram.ts), never as a 5x/7x number — while the tpl values they yield are the deciduous template numbers, which share the cejY/implantCejY anchor records with the permanent templates (the two number ranges cannot collide).

    primaryTemplatesOccl?: Record<number, string>
    primaryToothTemplate?: Map<
        number,
        { mirror: boolean; rot: number; tpl: number },
    >
    primaryTplNos?: number[]
    templates: Record<number, string>
    templatesOccl: Record<number, string>
    toothTemplate: Map<number, { mirror: boolean; rot: number; tpl: number }>
    tplNos: number[]