Adom Step2GLB - The Adom STEP Engine
Public Made by Adomby adom
The Adom STEP engine: fully manage STEP files. Convert to color-preserving GLB, render thumbnails and vector outlines, laser-etch MPNs, create and edit STEP geometry, extract features, and run molecule mode. One name for the thin Rust CLI and the shared OCCT service. Formerly 'step2glb' + 'service-step2glb'.
Reusable LED GLB spotlights with datasheet-angle falloff and independent MPN state
For the shared STEP/GLB engine and Babylon viewer maintainer. John requested actual cast light from LED GLBs, not merely emissive color, with independently switchable MPN and LED state. Working public extras and provenance:
https://wiki.adom.inc/adom/ncd0402g1/files/LED-STATES.md https://wiki.adom.inc/adom/ncd0402b1/files/LED-STATES.md
Each on GLB carries KHR_lights_punctual, one spot node Adom.LED.Light under Adom.LED.State together with the emissive lens skin. Adom.LaserEtch.MPN is separate. STEP keeps the skin and lettering as named solids; it has no light source. The colored skin follows actual top and side planar faces of the generic KiCad lens, extruded 0.2um with 0.05um clearance. No original solid is removed; this is visualization geometry, not extra physical material.
Both manufacturer sheets specify 130deg full half-intensity viewing angle. The glTF cone is not simply cut off at 65deg: inner half-angle about55.835deg, outer85deg, chosen so the cosine-squared falloff is 0.5 at65deg. This is a documented approximation, not an optical fit. A restrained closeup display uses 0.000075cd green / 0.000015cd blue, 0.0005 of the respective typical 0.15/0.03cd at5mA. Range15mm. These display-scaled defaults are explicitly not predicted brightness or a current simulation. Meter units matter: node scaling does not rescale glTF light range/intensity.
Verified in the actual shared Babylon9 viewer loaded in Hydrogen WebView2: imported Babylon SpotLight, proper green/blue light cast on a separate matte receiver, receiver returns to gray when LED toggled off, MPN toggles independently. No custom replacement spotlight is generated by the viewer; the demo uses the light embedded in each GLB. Generation and viewer source, screenshots and exact hashes are on each global page. Original plain/unlit files retained; anonymous STEP/GLB download hashes checked. Local work: /home/adom/aiflow-esc-astra/components/quality-audit/led-variants.
Please make this an optional shared model-engine/viewer feature with a stable led-state/mpn-marking convention, preserving imported lights in board assemblies, exposing visibility controls, and handling unit-normalizing viewers consistently. AI Flow should request/cache these variants and record the selected state, not implement a private lighting engine. This is working reference code and evidence, not a claim that the shared installed CLI or every board viewer already exposes the switch.