How Indicatrix compares
Where it sits next to the established faceting and gem-rendering tools, what it already does better, and what is still beta.
1The landscape
Faceting software splits into three jobs that different programs solve to different depths: authoring cutting instructions a human will actually cut on a faceting machine, rendering what the finished stone will look like, and analysing how well the cut performs as the stone is tilted. Indicatrix is one program that attempts all three, with the renderer being the mature part and the design editor still in beta.
- GemCAD
- Robert Strickland's faceting-design program: the long-standing reference for authoring cutting instructions. Its
.asctext export is the closest thing this field has to an interchange format, and.gemis its own binary save format. Strickland retired in 2023 and released GemCAD and GemRay free of charge — free to use, but not open source. - GemRay
- The ray-tracing companion to GemCAD: it renders a design, plots its brightness against tilt and can search the pavilion and crown angles for the best weighted brightness, but it cannot author designs itself. Its own documentation is unusually explicit about its limits — it does not model birefringence, dichroism or polarized light, and follows three colour rays rather than a spectrum.
- Gem Cut Studio
- A Windows faceting-design application, separate from GemCAD, with its own
.gcsproject format that stores a solved design (facets already closed into polygons) rather than a schedule to be solved. - Gem Diagram
- A browser-based faceting designer — nothing to install — that reads
.gem,.ascand.gcs, and renders in solid, realistic and ray-path modes. Subscription-priced. - DiamCalc
- OctoNus's cut-analysis and visualisation package, aimed at diamond grading and appraisal — parametric cut styles and proportions rather than an index-wheel schedule. OctoNus states that sales of DiamCalc and DiamCalc Pro are discontinued.
2Feature matrix
The Indicatrix column is checked against this repository's own source. Every
other cell was read out of that tool's own vendor page or user manual on
2026-09-21, and the cells marked ?, plus the rough-planning row,
were checked again against those sources on 2026-09-30 — the
sources are listed below. A ✗
means the documentation either states the limitation outright or describes the
mechanism closely enough to settle it; where a manual is simply silent, the cell
says ? and this page asserts nothing either way. Nothing here is a
benchmark, no version numbers are implied, and software moves — corrections are
welcome as issues.
Indicatrix is not affiliated with, endorsed by, or derived from any of these
programs.
| Indicatrix | GemCAD | GemRay | Gem Cut Studio | Gem Diagram | DiamCalc | |
|---|---|---|---|---|---|---|
| Authoring | ||||||
| Authors cutting instructions (angle, index, mast) | ✓ beta | ✓ | ✗ | ✓ | ✓ | ✗ parametric cuts |
| Positions facets by meet point rather than by a typed depth | ✓ | ✓ | ✗ | ✓ | ✗ angle + auto-distance | ✓ Cut Designer: 3-pt facets |
| Automatic search over angles against an optical objective | ✓ beta, cancellable | ✗ manual, via ray paths | ✓ Nelder–Mead, pavilion and crown scale | ✗ manual optimizer | ✗ yield search, not angle | ✓ Pro: cut proportions |
| Preform support | ✓ | ✓ | ✗ | ✓ preform tier | ? | ✓ Cut Designer: Custom Preform |
| Manufacturability checks (vanishing facets, gear quantization) | ✓ | ✓ cut-off facet dialog, gear rounding error | ✗ | ✓ gear re-map report | ? | ? |
| Plans cuts from a block of rough (yield, placement in the rough) | ✓ beta, block rough, up to 99 stones | ✗ by hand: L/W, Vol./W³ | ✗ optical merit only | ✗ single-design yield calculator | ✓ one design, orientation search | ✗ by hand: weight, locked limits |
| Rendering | ||||||
| Produces a physically-based image of the cut stone | ✓ | ✗ ray paths only | ✓ | ✓ | ✓ | ✓ |
| Refractive index evaluated per wavelength | ✓ 8 channels/path | ✗ | ✗ 3 colours | ✗ 3 colours | ✓ dispersion value | ✓ chromatic dispersion |
| Polarization tracked through every interface (Stokes–Mueller) | ✓ | ✗ | ✗ stated | ✗ | ? | ? |
| Birefringence, uniaxial and biaxial, with walk-off | ✓ | ✗ | ✗ stated | ✗ | ? | ? |
| Direction-dependent (pleochroic) absorption | ✓ | ✗ | ✗ stated | ✗ “in the future” | ✓ Alexandrite only, 3-axis | ? |
| Volumetric inclusions / haze | ✓ | ✗ | ? | ✓ Clarity: distance-based haze | ? | ✓ Pro: inclusion defocus |
| GPU compute path, verified against the CPU reference | ✓ tiered harness | ✗ | ✗ multicore CPU | ✗ | ? WebGL2 shader; check not stated | ? HDR engine on GPU; check not stated |
| Renders split across machines on a local network | ✓ mTLS 1.3 | ✗ | ? | ? | ? | ? |
| Analysis | ||||||
| Brilliance / windowing / extinction figures | ✓ | ✗ | ✓ | ✓ | ✓ windowing check + Ray Studio | ✓ ASET, Ideal-Scope |
| Performance swept across tilt angle, not a single pose | ✓ 181 pts × 4 azimuths, video export | ✗ | ✓ brightness vs. tilt | ✓ Tilt Performance | ? | ✓ DETAS: tilt sweep |
| Searchable library of designs | ✓ SQLite, built in | ✓ via Datavue II | ✗ | ✓ via Datavue | ✗ “no preset library yet” | ✓ via DataVue2 |
| Cut grade / appraisal report | ✗ | ✗ | ✗ | ✗ | ✗ stats only, no grade | ✓ |
| Practicalities | ||||||
| Source available under an open licence | ✓ MIT | ✗ free since 2023 | ✗ free since 2023 | ✗ | ✗ subscription | ✗ sales discontinued |
| Runs natively on Linux | ✓ | ✗ Windows | ✗ Windows | ✗ Windows, Mac | ✓ browser | ✗ Windows |
| Runs in a browser | ✓ editor, diagram, CPU render; no library | ✗ | ✗ | ✗ | ✓ | ✗ |
3Interoperability
This part is entirely verifiable, and it is the practical answer to "can I keep
using what I already have?". Everything below lives in
crates/indicatrix-formats.
| Format | Origin | Indicatrix reads | Indicatrix writes | Notes |
|---|---|---|---|---|
.asc |
GemCAD text export | ✓ | ✓ | Cutting instructions: angle, mast and index positions, per-facet names, plus meet instructions. The field's de facto interchange format, verified against a real-world corpus of 5,759 files: Windows-1252 files, both line endings, GemCAD's culet convention (angle 0 with a negative distance) and names bound to their index are all read and written back as GemCAD does. |
.gcs |
Gem Cut Studio | ✓ | ✓ experimental | Plain-text XML holding a solved design — every tier already carries its facets as closed polygons. Read per the file description in the Gem Cut Studio 1.1 user's manual; the conventions the manual leaves open were measured on 59 real files and checked field by field against the 56 that have an .asc sibling for the same design. The writer solves each facet's polygon from the facet planes and reads back correctly here, but has not yet been checked in Gem Cut Studio itself, and chiral designs are untested. |
.gem |
GemCAD native save | ✓ | ✗ | Binary, with no published specification. The geometry is now decoded from the binary: every facet plane, tier, name and cutting note, plus gear, symmetry, refractive index, headings and footnotes. Verified against a corpus of 254 files, all of which decode byte-exactly end to end; where a design also exists as an .asc, every tier's angle, mast and index set matches it. An embedded CAM preform is read but not converted. |
.indicatrix.toml |
Indicatrix | ✓ | ✓ | A sidecar beside the .asc, carrying the constraints and preform an .asc cannot express. Plain text, versioned, and losing it costs you only the extra metadata. |
The .gcs and .gem readers exist because real designs are
published in those formats with no .asc counterpart. The desktop editor
imports both into its library and opens both directly, converting them to
.asc cutting instructions. The .gem layout is clean-room
reverse-engineering from a file corpus; both readers are documented in the source
with what is confirmed, what is inferred, and what is still open.
4Scope, and where it is today
The goal is a complete gemstone faceting suite: author a design, solve it, optimise it, see what it will look like cut in a given material (32 built into the shared catalogue — see Materials), and export something a cutter can work from — one program, one data model, no round trip through a second tool. The renderer is the mature part of that. The design editor is not there yet.
The faceting CAD is in beta and under active development. Solving, optimising and export work on the designs in the bundled catalogue, but the editor's interaction model is still changing — so for now, check a design against an established CAD before cutting rough with it. That is a statement about the current state, not about the intended scope.
Concretely, what "in beta" already covers: a new design starts from a template gallery (five built-in starting shapes plus a blank design) or a step-by-step guided walkthrough that highlights the relevant panel at each stage; Solve and the angle-search Optimize pass both run off the UI thread and can be cancelled mid-search — a real checkpoint the search itself observes, not just a UI dismissal — rather than blocking the editor until a multi-minute run finishes; and the exported cutting sheet reports mast in millimetres once a girdle diameter is set, a yield/weight-loss figure against the preform, and a per-tier cheater (azimuth) offset column when a tier actually carries one.
Yield planning goes beyond the single-design preform figure. The beta Rough planner takes a rectangular block of rough and, from either the library filter or the whole library, ranks up to 10 layouts of up to 99 stones by total carats, each with a sawing plan (slabs, then bars, then pieces, over all 6 cut orders). It is an upper bound for a clean block: it plans for block-shaped rough only, not scanned or irregular rough and not inclusions, and it is desktop-only for now. The one other rough planner in the matrix is Gem Diagram's, which its documentation describes as an orientation search that starts from one loaded design and reports yield and finished weight for each orientation; it does not describe choosing among designs or stone counts.
Two things are out of scope by design rather than by schedule, and knowing which is which matters when you are deciding what to use:
- Not a jewellery CAD. Settings, prongs, shanks and casting — the stone is the whole model.
- Not a general 3D renderer. Geometry is convex half-space intersection, not triangle meshes; there is no scene graph, no import of arbitrary models, and no animation. That constraint is what makes the optics tractable.
5Why the optics depth matters
Most of the rendering rows above are the same argument in different forms. A gemstone is one of the few subjects where an RGB renderer's approximations are visible rather than academic: dispersion is the whole point of the object, the material is anisotropic, absorption depends on the direction light travelled through the crystal, and total internal reflection introduces phase shifts that a polarization-free tracer simply discards. Indicatrix evaluates the refractive index per wavelength from Sellmeier and Cauchy fits, carries Stokes vectors through Mueller matrices at every interface, splits ordinary and extraordinary rays with genuine Poynting walk-off, and applies absorption per direction — and then checks its own GPU port of all that against the CPU reference with a tiered equivalence harness.
The question that usually follows is why not simply render the stone in a general 3D package — Blender/Cycles, LuxCoreRender and the rest. They will light a gemstone mesh beautifully, but they have no notion of cutting instructions, an index wheel or a meet point, and they carry a single refractive index per material rather than a dispersion curve, so the fire has to be faked. The faceting tools above have the opposite problem: they know exactly what a tier is, and their renderers follow three colour rays.
Whether that depth is worth it depends on what you are doing. For laying out a schedule and getting it cut, an established authoring tool plus a quick preview is a perfectly sound workflow. The case for Indicatrix is when you want to see what a cut will actually look like in a specific material before committing rough to it — figure 5 on the overview is one cut in five materials with nothing else changed — or when you want the source of the thing making that claim.
6Sources
Every non-Indicatrix cell in section 2 was taken from the tool's own vendor page
or user manual, read on 2026-09-21; the rough-planning row and the re-check of
every ? cell used the sources below again on 2026-09-30, and the
entries added then are marked. Where a manual is silent on a capability this
page records ? rather than inferring absence, except where the
document explicitly states a limitation.
- GemCAD — gemcad.com/gemcad.html and the GemCad for Windows User's Guide (Strickland). Read again 2026-09-30: the manufacturability cell cites “Keeping Facets that are Cut Off” (PDF p. 38) and the index-gear rounding under Edit / Scale (PDF p. 31); the rough-planning cell cites the dimension table’s L/W and Vol./W³ figures and the carat-weight formula (PDF pp. 25–26).
- GemRay — gemcad.com/gemray.html, which states the non-modelling of birefringence, dichroism/trichroism and polarized light directly. Read again 2026-09-30: the GemRay for Windows User’s Guide (Strickland), section “Optimization” (PDF pp. 10–12: automatic Downhill Simplex search over pavilion and crown scale factors, and “the economics of yield” on PDF p. 11).
- Gem Cut Studio — Gem Cut Studio User's Manual v1.1.0. Read again 2026-09-30: “Manual Optimizer” (PDF p. 30) and “Size / Yield Calculator” (PDF p. 31).
- Gem Diagram — gemdiagram.com and its documentation site, docs.gemdiagram.com (Faceting Workflow, The Index Wheel, Working with Tiers, Refractive Index & Dispersion, Pleochroism, Ray Studio, Rough Planner, Materials, Presets, Saving & Opening Designs, Reports & Export, System Requirements, Troubleshooting & FAQ, Reference: Glossary). Read again 2026-09-30: Rough Planner: Best-Yield Overview, Rough Dimensions, Search Modes, Yield & Handoff, Size/Yield Calculator, Solid vs. Realistic Render, System Requirements, plus gemdiagram.com/features/rough-planner.php and Interface Tour; these are silent on preforms, cuttability checks, polarization, birefringence, inclusions, tilt sweeps and networked rendering, so those cells stay
?. - DiamCalc — octonus.com/3dcalc-software/diamcalc, the DiamCalc 3.2 beta Documentation PDF it links (Cut Designer's Custom Preform/Recut and facet-through-three-points tools, DETAS tilt sweep, inclusion rendering, DataVue2 library import), and the DiamCalc download page, whose installer is Windows-only. Read again 2026-09-30, in the same PDF: “7 Estimating weight of diamonds” and “8.6 Fixing parameters” (PDF pp. 139–146; the rough-planning cell) and “16 System Requirements” (PDF p. 220; the GPU cell). The manual has no entry for polarization, birefringence, pleochroism, manufacturability checks or networked rendering.