Back to Body Journal
SOURCE / PINNED RELEASE

Made of little things.

Body Journal

Release
e8049f8da4e2…
Author-recorded commit
61c04bf0e8aa…
License
LICENSE
Author’s source reference
nostr://npub182jczunncwe0jn6frpqwq3e0qjws7yqqnc3auccqv9nte2dnd63scjm4rf/wss%3A%2F%2Fgit.napplet.soy%2F/n-6c4554844c7

Archive hash verified: 4369d778da046a8b…. The source-to-build association is the author’s claim; it has not been independently rebuilt.

src/jaw-pose.ts
/** Normalized illustration amount. This is not a measured angle or TMJ model. */
export function parseJawOpening(value: unknown): number {
  if (typeof value !== 'number' || !Number.isFinite(value) || value < 0 || value > 1) throw new Error('Invalid jaw opening.');
  return value;
}
export function describeJaw(opening = 0): string {
  return opening > 0 ? `jaw ${opening >= .75 ? 'open' : 'partly open'} in illustration (not a measured range of motion)` : 'jaw closed in illustration';
}
export const mouthLimit = 'Adult reference mouth: 28 permanent teeth labeled with FDI numbers, exposed roots, a coarse tongue and jaw bones. No wisdom teeth, gums or palate are modeled. Exposed roots and gaps are atlas display choices, not findings. Tongue motion is schematic.';