Gun position
Where the battery is firing from
KDF · Modified ballistic model
Where the battery is firing from
The point you want to hit
Where the round actually landed
Enter both elevations to work out the slope.
Waiting for positions
| Leg | Distance | Bearing |
|---|---|---|
| Gun → Target | – | – |
| Gun → Fall of shot | – | – |
| Target → Fall of shot | – | – |
| Fall of shot → Target | back bearing | – |
Bearings read from the gun, and from the target to the fall of shot. Arrows show where the next round must move.
Move and zoom the map so the box covers the area you need.
Starting...
Enter positions on the calculator to see them here.
Choose a location to see the forecast.
Loading your log...
Exports are managed by admins. Need a copy of your mission log? Ask an admin to export it for you.
Shows the right-angled correction triangle (Line & Range legs) between Target and Fall of Shot. Direct distances between all positions are always retained.
Visualizes line and range shift as perpendicular legs between Target and Fall of Shot. Direct distances between all positions are always retained.
No one has shared a location yet.
The calculator turns the three positions into flat distances on the ground, using a mean Earth radius of R = 6,371,000 m. It then compares where the round landed with where you wanted it.
North-south and east-west distance, in metres.
ΔN = rad(lat₂ − lat₁) × R ΔE = rad(lon₂ − lon₁) × R × cos(rad((lat₁ + lat₂) / 2))
Bearing is measured clockwise from north.
Distance = √(ΔN² + ΔE²) Bearing = atan2(ΔE, ΔN) (0° to 360°)
Line says which way to swing. Range says whether to lengthen or shorten.
Line = LEFT if bearing(Gun→FOS) > bearing(Gun→Target), else RIGHT Range = ADD if distance(Gun→FOS) < distance(Gun→Target), else DROP Line shift = | d(Target→FOS) × sin(360° − bearing(Target→FOS)) | Range shift = | d(Target→FOS) × cos(360° − bearing(Target→FOS)) |
The miss is measured against the gun's line of fire. Line is the miss across that line, range is the miss along it.
θ = bearing(Target→FOS) − bearing(Gun→Target) Line shift = | d(Target→FOS) × sin(θ) | Range shift = | d(Target→FOS) × cos(θ) | Line = LEFT if d × sin(θ) > 0 (landed right), else RIGHT Range = DROP if d × cos(θ) > 0 (landed beyond), else ADD
A full circle is 360° or 6,400 NATO mils, so 1° = 17.78 mils. Distances are rounded to the nearest metre.