INITIALIZING...
v9 (Physics Fixed)
⚠️ Warnings

Welcome to CNC Simulator v9 (Physics Fixed)

Professional Grade Machining in Your Browser

🔪 Real-time Milling Experience physics-based material removal and chip generation.
📝 G-Code Support Import and run standard G-code files efficiently.
🛠️ Tool Library Manage end mills, ball nose, and V-bits with customizable specs.
⚠️ Collision Detection Stay safe with real-time collision monitoring and warnings.
CAM Analysis Report
Stats
Total Dist {{ analysisResults.stats.totalDistance.toFixed(2) }} mm
Min Z {{ analysisResults.stats.minZ.toFixed(2) }} mm
Issues ({{ analysisResults.warnings.length }})
No issues detected.
{{ warn.message }}
{{ panelExpanded ? '▼ Collapse Controls' : '▲ Expand Controls' }}
×
Simulation
Simulation Speed
Feed Override
Spindle Override
Manual Controls
Spindle {{ spindleManual ? 'ON' : 'OFF' }}
View Options
Show Toolpath {{ showToolpath ? 'ON' : 'OFF' }}
Show Chips {{ showChips ? 'ON' : 'OFF' }}
Tool Load {{ settings.showToolLoad ? 'ON' : 'OFF' }}
Spindle Load {{ toolLoad.load }}%
Deflection {{ toolLoad.deflection }}mm
⚠️ CHATTER DETECTED
Status {{ status }}
Current Line {{ currentLine }} / {{ totalLines }}
Feed Rate {{ feedRate }} mm/min
Set Work Zero
Jog Controls
⚙️ Advanced
Job Navigation
Line {{ currentLine }} / {{ totalLines }}
Load G-code to enable navigation
Volume {{ ((stockWidth * stockDepth * stockHeight) / 1000).toFixed(1) }} cm³
Grid Points {{ Math.ceil(stockWidth / stockResolution) * Math.ceil(stockDepth / stockResolution) }}
Connecting to GRBL console...
{{ line.text }}
>
{{ isParsing ? 'Loading G-code...' : 'Jumping...' }}
Select Tool
{{ tool.name }}
Ø {{ tool.diameter }}mm
{{ tool.type }}
Tool Library Editor
{{ tool.name }}
{{ tool.type }} - Ø{{ Number(tool.diameter).toFixed(2) }}mm
Edit Tool
Collet Stickout Flute Len Dia Collet Angle Stickout Dia
Must be > Flute Length and < Total Length - 5mm
• {{ err }}
Select a tool to edit
Current Tool {{ currentTool.name }}
Diameter {{ currentTool.diameter }}mm
Type {{ currentTool.type }}
Stock Material
X (Width)
Y (Depth)
Z (Height)
Volume {{ ((stockWidth * stockDepth * stockHeight) / 1000).toFixed(1) }} cm³
Grid Points {{ Math.ceil(stockWidth / stockResolution) * Math.ceil(stockDepth / stockResolution) }}
App Info
Version v{{ appVersion }}
Platform {{ deviceType }}
Sample G-Code
📋 {{ currentSampleInfo.name }}
{{ currentSampleInfo.description }}
Required Tool:
🔧 {{ currentSampleInfo.tool }}
G-Code Editor
Lines {{ gcodeLineCount }}
Characters {{ gcodeText.length }}
{{ isParsing ? 'Processing G-Code...' : 'Jumping to line...' }}
{{ Math.round((parseProgress / parseTotal) * 100) }}%
Line {{ parseProgress }} of {{ parseTotal }}
WORK
X {{ formatCoord(workCoords.x) }}
Y {{ formatCoord(workCoords.y) }}
Z {{ formatCoord(workCoords.z) }}
A {{ formatCoord(workCoords.a || 0) }}
B {{ formatCoord(workCoords.b || 0) }}
C {{ formatCoord(workCoords.c || 0) }}
MACHINE
X {{ formatCoord(machineCoords.x) }}
Y {{ formatCoord(machineCoords.y) }}
Z {{ formatCoord(machineCoords.z) }}
A {{ formatCoord(machineCoords.a || 0) }}
B {{ formatCoord(machineCoords.b || 0) }}
C {{ formatCoord(machineCoords.c || 0) }}
TOOL LOAD
Load {{ toolLoad.load }}%
Power
{{ toolLoad.power }}kW
Deflection
{{ toolLoad.deflection }}mm
Tool Wear {{ toolLoad.wear }}%
Overload Chatter