Home▸Fetal Monitoring & Non-Stress Test▸3D Continuous EFM Alarm Simulator

3D Continuous EFM Alarm Simulator

Orbit a real Three.js cardiotocograph strip — the same NICHD baseline, variability and duration-gated deceleration alarm logic as the 2D EFM simulator, now a genuine 3D FHR/TOCO scene you can fly around while the alarm beacon responds live.

Fetal Monitoring & Non-Stress Test3DAdvanced60 FPS📱 Mobile-adapted⇄ 2D version
3d-continuous-efm-alarm-simulator ↗ Open standalone

This is the 3D companion to the Continuous EFM Alarm Simulator: the same NICHD baseline/variability terminology and duration-gated alarm logic — a WARNING (Category II) once variability drops to 5 bpm or below, FHR leaves the 110–160 bpm band, or a deceleration of 15 bpm or more begins, and a CRITICAL alarm (Category III) once that deceleration persists past 24 simulated seconds, or absent variability (≤2 bpm) coincides with bradycardia or an active deceleration — now drives a genuine, freely-orbitable Three.js scene instead of a flat monitor strip. The FHR trace scrolls along a real 3D time axis with a second TOCO trace showing uterine activity in depth, a pulsing fetal-heart marker beats in sync with the live FHR, and an alarm beacon above the scene recolors and pulses exactly as the 2D banner does. Move the Baseline FHR and Pattern Severity sliders, or step Prev/Next through the same five clinical stages as the original, and watch the strip, heartbeat and beacon respond identically to the 2D cardiotocograph.

⚙ Under the hood

The exact genSample() waveform generator and updateAlarmLogic() duration-gated thresholds from the 2D original drive a real Three.js scene: a scrolling FHR/TOCO strip built from a live-updated BufferGeometry with vertex colors, translucent 110/160 bpm baseline-band planes, a pulsing fetal-heart mesh, and an alarm beacon whose color and pulse rate track the same NONE/WARNING/CRITICAL states as the 2D banner.

Fetal MonitoringCTGNICHDThree.js

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)