Draw a survey polygon on the map and FlyPath turns it into an optimized flight grid — the right flight direction, a boustrophedon waypoint pattern, and live readouts for ground-sample-distance, photo count, flight distance, and estimated batteries. Export a DJI WPML .kmz and walk it to the controller. Before you launch, the same map tells you the airspace you're entering — Class B/C/D, Special Use Airspace, active TFRs, and the UAS Facility Map grid max altitude for your site.
A survey starts as a polygon sketched on the 3D scene. Set altitude, speed, gimbal pitch, front/side overlap, and flight direction — or let FlyPath pick the direction that minimizes turns. It lays down a boustrophedon (lawn-mower) grid of waypoints and recomputes the mission stats as you tune the parameters.
.kmz export — clean-room WPML writer produces a payload-readable mission file for DJI aircraft.// draw polygon → tune params → flyable mission { "surveyPolygon": { "rings": [[[-118.25,34.05],…]] }, "altitudeMeters": 90, "frontOverlap": 0.8, "sideOverlap": 0.7, "gimbalPitch": -90 } → optimized flight grid + mission stats ● Mini 3 Pro · 12 waypoints · 1708 m 90 photos · GSD 2.87 cm/px · 1 battery
The survey polygon draws against a live FAA airspace layer — controlled airspace, special-use areas, active TFRs, and the UAS Facility Map grid that tells you the max altitude authorized at that cell. When a planned mission overlaps controlled airspace or exceeds the grid max, FlyPath surfaces a warning banner so it's seen before launch, not after.
Class B, C, D, and E5 surface areas from the FAA UAS spatial data — the same shapefiles that define where authorization matters.
MOAs, restricted, and prohibited areas rendered with the survey so a mission plan never quietly crosses a SUA boundary.
Temporary Flight Restrictions refreshed on a short TTL — the layer that changes day to day, not every chart cycle.
The UAS Facility Map grid max-altitude for the cell under your survey — the number that tells you whether your planned altitude fits.
Overlay the familiar sectional chart for context alongside the digital airspace polygons.
FAA GeoJSON mirrored to a local GPKG with per-dataset TTL (grid/Class/SUA refresh on the 56-day cycle; TFRs every 12 hours) — works air-gapped once cached.
Airspace awareness reflects the implemented FAA-data layer (Class B/C/D/E5, SUA, TFRs, UASFM grids, sectionals) with point-in-polygon lookup at /api/airspace/at. LAANC authorization submission is roadmap (Phase 2, gated on a USS partner agreement) and is not yet functional; FAA flight-plan filing via 1800WxBrief is an explicit non-goal (no open API, not required for Part 107 / recreational ops).
Every capability is a localhost route. Build mission-planning UIs, automate survey generation, or pipe the .kmz into another tool — all against the in-process server.
| Capability | Endpoint | Notes |
|---|---|---|
| Planner capabilities | GET /api/flypath/capabilities | Sidecar availability + supported export formats |
| Drone specs catalog | GET /api/flypath/drones | Camera/sensor table that drives the GSD math |
| Plan mission | POST /api/flypath/plan | Polygon + params → waypoints, stats, battery split |
| Export WPML | POST /api/flypath/export | Mission → DJI WPML .kmz |
| Airspace at point | GET /api/airspace/at?lat=&lon= | Class/SUA lookup for a coordinate |
| UASFM grid max | GET /api/airspace/grid?lat=&lon= | Max authorized altitude for the cell |
| Airspace status | GET /api/airspace/status | Data freshness + last-refresh per dataset |
| Airspace features | GET /api/airspace/features | Polygons for map rendering (Class, SUA, TFR) |
Routes reflect the implemented FlyPathRoutes.cs and AirspaceRoutes.cs. Verified end-to-end: Mini 3 Pro survey, 12 waypoints, 1708 m, 90 photos, GSD 2.87 cm/px, WPML .kmz export.
Drone work is a pipeline, and 3D Map Explorer covers every stage in the same desktop. Plan the flight here, fly it with live telemetry on the same map, then carry the products through the rest of the workflow without switching tools.
FlyPath mission planning + FAA airspace awareness — draw the polygon, tune the grid, export the .kmz, check the airspace.
This page →Connect the autopilot over MAVLink and watch the drone fly as a live green track — position, battery, mode, armed state — published to the TAK team as a friendly air track.
Live telemetry →After the flight, process the photo folder with OpenDroneMap (SfM) into an orthomosaic COG and a surface model — the products your survey was meant to produce.
3D reconstruction →For video sorties, play STANAG/MISB KLV-tagged drone video with a live sensor footprint on the map — and convert raw DJI clips into STANAG-compliant FMV.
Full Motion Video →Once the orthomosaic is on the ImageServer, classify it: supervised (SAM, Max-Likelihood), unsupervised (K-means), or land-cover segmentation — with a full accuracy-assessment confusion matrix.
Image classification →Draw the survey, tune the grid, read the GSD, check the airspace, and export the flight — then carry the imagery all the way through processing and analysis on the same desktop.