Dental Implant Plan
Read a CBCT in the browser and plan against the bone you can actually see. DICOM ARRIVES DIRECTLY: drop the series folder, or a .zip of it, and it loads — implicit and explicit VR little endian, which is what Planmeca, Carestream, Sirona and i-CAT write. No dcm2niix step. Slices are ordered by ImagePositionPatient projected onto the slice normal, never by InstanceNumber, which some units write backwards; Z spacing comes from the median gap between consecutive slices rather than from SliceThickness, which describes how thick a slice is and says nothing about the distance between two of them. RescaleSlope and RescaleIntercept are applied per slice, so the intensity legend prints Hounsfield units rather than detector counts. WHAT IS REFUSED, BY NAME: every compressed transfer syntax — JPEG baseline, lossless, JPEG-LS, JPEG 2000, RLE, deflate — plus retired big-endian, colour DICOM and 32-bit pixel data. The error names the transfer syntax UID it found, because that is the one fact that tells you which converter setting to change. A series that partly failed reports how many slices it read: a half-loaded volume renders as a squashed one that still looks like a scan. NIfTI and NRRD load too, so a converted scan is not locked out. CUTTING, AND THE WAY ROUND IT: section planes cannot cut the volume. They work by setting the renderer clipping planes, which three.js injects as shader chunks into its own materials, and the raymarcher is a hand-written shader that never receives them. So the volume crops on three axes and nothing more. Extract a bone surface at the ISO threshold instead and you get a real marching-cubes mesh, which sections, measures in millimetres, and exports — that is what the section tool here cuts, along with any arch scan you dropped beside it. FIXTURES ARE PLACEHOLDERS. A fixture is a plain cylinder, 4.0 mm by 10 mm, whose diameter, length, position and angulation are all editable. There is no fixture catalogue, no thread geometry and no manufacturer data, and the plate will not imply a cylinder is a specific implant. It is there to carry a depth and an axis you can measure against the bone. Each axis of the render is capped at 256 voxels, so a 512-cube CBCT loads decimated by two and an ISO threshold sits very slightly differently than it would at full resolution. THE PLAN PRINTS. A PDF placement schedule lists every placed solid with its diameter, length, world position and angulation in degrees, and the sheet says PLACEHOLDER in as many words — the numbers are the plan, and they are what you measure against the bone. NOT HERE: nerve canal tracing, automatic bone-density scoring, drill-guide generation, and any suggestion of where an implant should go. Voxels are never serialized: a published track reopens on the same window, threshold, crop and fixtures, and the scan is re-dropped.
Supported file formats: NII, NII.GZ, NRRD, DCM, DICOM, STL, PLY, OBJ, 3MF, GLB, GLTF