ChiroVision

Interactive Spine IK Model

📁 Background Image

Background X-ray

How to Use This Tool

Getting Started

This interactive 3D tool demonstrates inverse kinematics (IK) of the human spine, showing how distortions in one vertebra create compensatory curves throughout the entire spinal column. Upload an X-ray as a background reference, select individual vertebrae, and apply controlled distortions to visualize real-time biomechanical adaptations.

Tool Overview

The spine model consists of 25 vertebrae (C1-C7 cervical, T1-T12 thoracic, L1-L5 lumbar, plus sacrum) arranged with anatomically correct curvatures: cervical lordosis (35°), thoracic kyphosis (40°), and lumbar lordosis (35°). The inverse kinematics system automatically adjusts the entire spine when you manipulate a single vertebra, demonstrating how the body maintains balance and alignment.

Workflow Instructions

  • Step 1 - Upload Background: Click "Upload X-ray Image" to load a lateral full-spine X-ray. Check "Show Overlay" to display your X-ray behind the 3D spine model. This allows you to match the virtual spine to actual patient anatomy.
  • Step 2 - Adjust Spine Position: Use the Spine Scale slider to resize the model and X Position/Y Position sliders to move the spine left/right and up/down to align with your X-ray.
  • Step 3 - Select Vertebra: Either click directly on a vertebra in the 3D view (it will highlight in cyan) or use the dropdown menu to select a specific level (e.g., "C5", "T8", "L3").
  • Step 4 - Apply Distortions: Use the three distortion sliders to manipulate the selected vertebra:
    • Lateral Deviation: Move the vertebra side-to-side (creates scoliotic curves)
    • Axial Rotation: Rotate the vertebra around its vertical axis (mimics vertebral rotation in scoliosis)
    • Anterior/Posterior Tilt: Tilt the vertebra forward or backward (affects sagittal plane curves)
  • Step 5 - Observe Compensation: Watch how the entire spine automatically adjusts to maintain overall alignment. The inverse kinematics system creates realistic compensatory curves above and below the distorted vertebra.
  • Step 6 - Draw Curves (Optional): Click "Draw Curve" button and place multiple points on the screen to draw Bezier curves for measuring Cobb angles. Click "Clear Curves" to remove drawings.

Control Panel Explained

  • Background Image: Upload patient X-rays and toggle overlay visibility for comparison.
  • Vertebra Selection: Choose which vertebra to manipulate. "None (Neutral Spine)" resets to default anatomical position.
  • Distortion Controls: Three sliders apply biomechanical forces to the selected vertebra. Values typically range from -30° to +30°.
  • Global Spinal Curves: Adjust the overall cervical lordosis, thoracic kyphosis, and lumbar lordosis angles to match different patient presentations or demographic variations.
  • Spine Adjustments: Fine-tune the scale and position of the entire spine model for optimal alignment with background images.
  • Camera Controls: Reset the 3D view angle if you've rotated the camera (camera rotation is controlled by mouse drag in the 3D viewport).
  • Actions: Save a snapshot of the current view, reset all distortions to neutral, or clear the background image.

Spine Analysis Information

The right panel displays real-time analysis:

  • Normal Alignment: Indicates whether the spine is in neutral position or if distortions are applied.
  • Selected Vertebra: Shows which vertebra is currently selected and its spinal region.
  • Lateral Deviation: Displays the side-to-side displacement in degrees. Normal: 0° ± 2°.
  • Axial Rotation: Shows rotational displacement around the vertical axis. Normal: 0° ± 2°.
  • Anterior/Posterior Tilt: Displays forward/backward tilt angle. Normal: 0° ± 2°.

Educational Applications

  • Patient Education: Demonstrate how a single vertebral subluxation affects the entire spine, helping patients understand the importance of corrective care.
  • Treatment Planning: Visualize how correcting specific vertebral positions could influence overall spinal alignment.
  • Biomechanics Training: Teach students and practitioners about compensatory mechanisms and inverse kinematics in spinal biomechanics.
  • Scoliosis Analysis: Model different scoliotic curve patterns by applying lateral deviations and rotations at strategic levels.
  • Comparative Analysis: Overlay patient X-rays to compare actual pathology with theoretical biomechanical models.

Clinical Considerations

  • The inverse kinematics model simulates ideal compensatory mechanisms. Actual patient spines may show degenerative changes, muscle imbalances, or fixations that prevent perfect compensation.
  • Vertebral rotations (axial rotation) are a hallmark of structural scoliosis and cannot be fully corrected with distortion alone in real patients.
  • The model demonstrates biomechanical principles but should not replace clinical examination, palpation, or diagnostic imaging interpretation.
  • Global curve adjustments (cervical lordosis, thoracic kyphosis, lumbar lordosis) can be modified to reflect age-related changes or postural variations.

Technical Tips

  • Use your mouse to click and drag in the 3D viewport to rotate the camera view and see the spine from different angles.
  • The spine model uses anatomically proportioned vertebrae that decrease in size from lumbar to cervical regions.
  • Bezier curve drawing allows you to trace scoliotic curves and measure Cobb angles directly on the visualization.
  • The "Save Snapshot" function captures the current 3D view including your background image and distortions for documentation.
  • Reset to neutral position before working with a new patient case to ensure accurate baseline positioning.

Resetting and Exporting

  • Reset: Returns all vertebrae to neutral position and clears all distortions while keeping your background image.
  • Clear Background: Removes the uploaded X-ray image but preserves your spine distortions.
  • Save Snapshot: Exports the current 3D view as an image file for documentation or presentations.
Ready

🎤 Voice Commands

Say "CV" followed by any of these commands:

💡 Tips: