Drone Survey Planning
A drone survey plans a flight that photographs a mesh you already have — from an earlier survey, a scan or a DEM — again, at a finer resolution. VRGS works out where every photo must be taken to reach a target ground sample distance (GSD) with the overlap structure-from-motion needs. It keeps the whole path clear of every loaded mesh and splits the flight into missions that fit your battery. You can reshape the path by hand, play it back through the drone's camera, find the best time of day to fly, and export the missions for DJI Pilot 2, Litchi or Google Earth.
It handles three kinds of surface:
- Ground — flown straight down (nadir), following the terrain.
- Hillsides — flown facing the slope.
- Cliffs and quarry faces — flown level along the face, the camera turned square-on to the rock in front of it.
A drone survey plan is a starting point, not a flight clearance. VRGS keeps the path clear of the meshes loaded in the project and above the bottom of the surveyed model. Trees, overhead wires, buildings, people and anything else that is not in a loaded mesh are not checked. Before every flight:
- inspect the whole path in the 3D view and with Play Drone's View;
- check it against the airspace, height limits and regulations where you fly;
- keep the drone in sight, and be ready to take control.
Quick start
- Load the mesh you want to photograph again. It must be loaded (in memory) to plan over it.
- (Optional) Select the triangles you want in detail with the Edit tab's selection tools. They become the survey's Focus area.
- In the project data tree, right-click the mesh and choose Plan Drone Survey.
- The new survey appears under Drone Surveys in the interpretation tree and is planned straight away. Select it to see its properties.
- Check the View, the Target GSD and the Camera, then read the Plan rows and any Warnings.
- (Optional) Mark the areas to fly in detail, at low detail or not at all (Survey area), find the best time to fly (Time of day), click photos on the path to see where they land (One photo), and reshape the path (Keyframes).
- Tick Play Drone's View to fly the path in the 3D view.
- Tick Export Mission Files and choose a format.
A new survey starts with defaults that suit the mesh:
- Target GSD — a quarter of the mesh's median triangle edge, rounded down to a 1–2–5 step. Dense matching puts a point every two pixels or so, so this gives a model about twice as fine as the one you have. It is never finer than 2 mm, nor coarser than the camera gets from 100 m.
- View — Horizontal (Cliff) when most of the surface is steeper than 60° and faces one way, Facing Slope when it leans more than 25° as a whole, otherwise Nadir. With triangles selected, only the selection is looked at.
Choosing a view mode
| View | Camera | Flight lines | Use it for |
|---|---|---|---|
| Nadir | Straight down | Across the map, along the mesh's long axis (or Line Azimuth), nose first, following the terrain | Ground, gentle slopes, plateaus |
| Facing Slope | Square-on to the surface's average facing | Level lines across the slope, stepping up it | Hillsides, spoil heaps, dipping bedding surfaces |
| Horizontal (Cliff) | Level, facing the cliff horizontally | Level lines along the face, stepping up it | Cliffs, quarry faces, road cuts, walls |
A surface that faces almost straight up is flown as Nadir whichever view you choose, and the plan says so.
Convergent photos for ground
A block of parallel photos all taken straight down is weak for structure-from-motion. Without photos that see the ground from more than one direction, a self-calibrating solution can bend the whole model into a shallow dome or bowl, and nothing in the photos shows it. Two settings give a nadir survey those directions:
- Camera Tilt (deg) tilts the camera forward of straight down, along the flight line. Neighbouring lines are flown opposite ways, so each strip of ground is seen from both sides. 10 to 20 degrees suits most surveys. The aircraft flies lower by the cosine of the tilt, so the GSD holds where the camera's axis meets the ground.
- Cross Grid flies the detail lines a second time, at right angles to the first, straight on from where the first set finishes. It takes about twice the photos and ties the block together in both directions.
Either helps; both together are strongest. With a low-detail pass, the low-detail pass is flown once, before both grids. Neither setting applies to Facing Slope or Horizontal surveys, which already look at the surface from the side.
Face The Surface
Face The Surface is on by default for Facing Slope and Horizontal. Each photo is aimed square-on to the rock in front of it — its average normal over the middle of the frame. So the camera:
- turns to follow the face round bays and headlands;
- looks down onto a face that leans back, and further down where it leans back further;
- spaces photos along a line by distance over the rock, so the overlap holds where the face turns.
In Horizontal mode each line follows the cliff's contour: it is flown at one altitude all along, and each photo slides in or out so that it stays square-on at the GSD distance. Where square-on would look past the top or bottom of the face, the photo looks at the edge instead.
Turn it off to have every photo look the same way: the face's average facing.
Which side of the surface
The side to fly comes from the mesh's triangle normals. If a mesh's triangles face into the rock — you get "The camera would have to look up … degrees" — tick Flip Side.
Max Incidence (default 70°) decides what counts as something to photograph. Surface tilted further than this from the camera's view — the walls in a nadir survey, the ledges in a cliff survey — is not a target. It still counts for clearance.
Staying clear of the surface
Min Clearance (default 5 m) is kept between the drone and every loaded mesh along the whole path: at every photo and along every leg between them. Not just the mesh being surveyed — a neighbouring model or DEM is as solid as the outcrop.
Position Error (default 2 m) is kept on top of it. The aircraft flies where its own positioning says it is, which on GNSS alone can be 1 to 3 m from where it really is; with RTK, about 0.1 m. The mesh's own georeferencing error counts too, and so does a gust near a face. Set it to what your aircraft and model can hold to. A survey made before this row starts at 0, so its plan keeps the clearance it was made with.
Wind matters most next to a face. Air spills over and round a cliff in gusts, and an aircraft holding its position on GNSS takes a moment to recover from one. On a windy day raise Position Error, or come back on a calmer one.
- A photo that is too close is moved back along its line. It then stands further off than planned, so its GSD is coarser; the plan warns you how many photos and by how much.
- A leg that would pass too close is routed round, through extra (transit) waypoints.
- A photo that cannot be cleared within reach is dropped, with a warning.
Facing Slope and Horizontal surveys also keep above the model's foot. A model of a cliff usually stops at the bottom of the face: the beach or the ground in front is not in it, so nothing else would keep the drone off it. The planner records the lowest point of the model along the face. No photo or leg goes lower than Min Clearance above it. The bottom line is flown at that height, with the camera pitched down to look at the foot of the cliff.
Where the foot rises along the face, the bottom line climbs with it. The next line up takes over once the foot passes its height, so only one line runs along the foot at a time.
The clearance check sees only meshes that are loaded. A mesh that is not loaded, or busy with another job, is not checked. If clearance could not be checked at all, the plan says "Clearance from the surface was NOT checked".
Survey area: Focus, Exclude and the rest
By default the whole mesh is flown at the target GSD. To fly only part of it in detail, or to leave something out, mark the mesh.
| Mark | What happens |
|---|---|
| Focus | Flown at the Target GSD. |
| Exclude | Not photographed — vegetation, a structure, people. The path may still cross it between photos, so it is not a no-fly zone. |
| Unmarked | With nothing marked Focus: flown at the Target GSD, like Focus. With some Focus marked: flown at low detail, or skipped (Unmarked Area). |
So:
- Nothing marked — the whole mesh is flown in detail.
- Only Exclude marked — everything else is flown in detail.
- Focus marked — the Focus area is flown in detail, and the rest at low detail (the default) or not at all.
Marking the mesh
- Select triangles on the mesh with the Edit tab's selection tools: Rectangle Select, Circle Select, Polygon Select or the Select Triangles brush.
- On the Edit tab, open Drone Survey Area and choose:
- Mark Focus
- Mark Exclude
- Unmark — returns the selected triangles to the unmarked rest
- Clear Marks — removes every mark from the survey
Marks add up: each one adds to what is already marked, and where marks meet, the last one wins. After marking, the selection on the mesh is cleared so you can see the marks, and the survey is planned again. Each marking can be undone.
The marks go to the drone survey shown in the properties. If no survey is shown, they go to the only survey of the mesh you selected on. If that is not clear — no survey, or several of that mesh — the messages panel asks you to select the survey in the project tree first.
Plan Drone Survey on a mesh with triangles selected marks the selection Focus.
While a survey is selected and visible, its mesh shows its marks: Focus green, Exclude red, the rest as it is.
Marks are kept as small cubes of space — about twice the mesh's triangle size — rather than as triangle numbers. So they survive the selection being cleared, the project being reloaded and the mesh being edited. The edge of a marked area can be ragged by about one cube, and unmarking a triangle unmarks the others in its cube.
Low-detail pass
With Focus marked and Unmarked Area set to Low Detail, the survey is flown in two passes:
- A low-detail pass over everything not excluded, at the Low Detail GSD. It covers the Focus area too, so the two sets of photos tie together in processing.
- The detail pass over the Focus area, at the Target GSD. It starts from whichever end is nearer to where the low-detail pass finished.
Both passes take off from the same point and are split into missions together. Low Detail GSD (cm) set to 0 (the default) means three times the Target GSD, which takes about a ninth of the photos per square metre. Set Unmarked Area to Skip to fly the Focus area alone.
Slope range
The slope rows keep only the parts of the surface whose surroundings slope, on average, within a range. They apply on top of the marks, and to both passes.
| Row | Meaning |
|---|---|
| Min Slope (deg) | Only where the surface slopes at least this steeply (0 = no limit). 60 keeps a cliff and leaves the beach below it. |
| Max Slope (deg) | Only where it slopes at most this steeply (90 = no limit). 30 keeps the ground and leaves the cliffs. |
| Slope Averaging (m) | The radius the slope is averaged over, so a boulder on the beach or a ledge on the face does not drop in or out on its own. 0 = half a photo's footprint. |
Area To Cover shows the surface the plan photographs in detail, and how the rest is treated.
Camera
Choose your camera from the list, or enter its numbers (editing any number makes it Custom):
- DJI Mavic 3 Enterprise (M3E)
- DJI Phantom 4 RTK / Phantom 4 Pro
- DJI Matrice 4E (M4E)
- DJI Mavic 2 Pro
- DJI Mini 3 Pro / Mini 4 Pro / Air 3 (48 MP)
- DJI Zenmuse P1, 35 mm lens
- Custom
| Row | Meaning |
|---|---|
| Sensor Width / Height (mm) | The sensor's size, width along the long side of the image. |
| Focal Length (mm) | The true focal length, not the 35 mm equivalent. |
| Image Width / Height (px) | The image size in pixels. |
| Shot Interval (s) | The shortest time the camera needs between photos. |
The presets are nominal specifications. Check them against your camera: the GSD scales directly with the focal length.
A preset describes the camera only. Whether an app can fly the route depends on the aircraft: see Which app flies the files.
Survey settings
| Row | Default | Meaning |
|---|---|---|
| Target GSD (cm/px) | from the mesh | The GSD to photograph the surface at. Smaller is finer — and closer. |
| View | from the mesh | Nadir, Facing Slope or Horizontal (Cliff). |
| Front Overlap (%) | 80 | Overlap between consecutive photos along a line. |
| Side Overlap (%) | 70 | Overlap between neighbouring lines. |
| Automatic Line Direction | on | Nadir: fly along the mesh's long axis, which needs the fewest turns. Tilted views always fly level lines. |
| Line Azimuth (deg) | Grid azimuth of the lines when not automatic (Nadir only). | |
| Camera Tilt (deg) | 0 | Nadir: tilt the camera forward along the line. See Convergent photos. |
| Cross Grid | off | Nadir: fly the detail lines again at right angles. See Convergent photos. |
| Face The Surface | on | See Face The Surface. |
| Flip Side | off | Plan on the other side of the surface. |
| Min Clearance (m) | 5 | See Staying clear. |
| Position Error (m) | 2 | Kept clear on top of Min Clearance: about 0.1 m with RTK, 1 to 3 m on GNSS alone. |
| Max Incidence (deg) | 70 | How far a surface may be tilted from the camera's view and still be photographed. |
Flight
Capture decides how each line is flown:
- Stop for each photo — the aircraft stops, steadies and shoots at every photo position. The sharpest photos, each exactly where planned, but slower.
- Shoot while moving — each line is flown without stopping, and the camera fires every photo spacing. Much quicker. Its speed along a line is held below the top speed by the camera's shot interval, or by motion blur: Max Blur × GSD ÷ shutter time. Line Speed says which limit applies. A low-detail line's pixels are coarser, so when motion blur is the limit it flies proportionally faster, and Line Speed shows its speed too.
| Row | Meaning |
|---|---|
| Speed (m/s) | Top speed: between lines, between photos when stopping, and along a line when moving. |
| Photo Stop (s) | Time to stop, steady, shoot and move off at each photo. When moving, the time to stop and turn at each line end. |
| Shutter (1/s) | When moving, the shutter speed the camera will use (1000 = 1/1000 s). Set the camera to it or faster. |
| Max Blur (px) | When moving, the most a photo may smear while the shutter is open. |
| Battery (min) | Usable flight time per battery. The plan is split into missions that fit, the flight out from and back to the take-off point included. Missions prefer to end at the end of a line. |
| Max Waypoints | Most waypoints in one mission (0 = no limit). Litchi files are always split at 99. |
Flight Time shows the estimate for the chosen capture mode, and what the other mode would take.
Take-off point
Every altitude in the exported missions is relative to the take-off point. Take off there, or from ground at the same elevation, for the drone to fly at the planned heights.
- Automatic (default) puts the take-off point on the ground below the first waypoint. If there is no surface below it — the first photo of a sea cliff is over water — it is put at the mesh's lowest elevation, with a warning. Set it to where you will actually take off.
- Typing X, Y or Z turns Automatic off. Changing X or Y drops the point onto the ground there.
The take-off point is drawn as a drone in the 3D view.
Height limits are measured from the ground under the aircraft in most places, not from the take-off point. The plan warns when a waypoint is more than 120 m above the take-off point, and that is only a rough guide. A line along the top of a sea cliff can be 100 m above a take-off point on the beach and 10 m above the ground under it; a line flown out over a valley is the other way round. Check the Google Earth preview against the ground, and the limits where you fly.
Reading the plan
| Row | Meaning |
|---|---|
| Standoff | Camera-to-surface distance that gives the Target GSD (and the low-detail pass's). With a Camera Tilt, it is measured along the camera's axis, and the row also gives the height above the surface. |
| Footprint | One photo's footprint on the surface, along and across the line, straight down from the standoff. To see where a particular photo lands, see Looking at one photo. |
| Spacing | Distance between photos and between lines. |
| Photos | Photos, flight lines (how many are low detail, and how many cross the rest) and path length. |
| Missions | Batteries the plan is split into, with each mission's flying time — 3 (12, 15, 9 min). Each is exported as its own file. A mission that cannot fit the battery is counted after the times — … min; 1 over the 18 min battery — and the Warnings say so. |
| Flight Time | Estimated flying time, out and back included. |
| Achieved GSD | Median and worst GSD along each photo's view axis — coarser than the target where a photo had to stand off to keep clear. With a low-detail pass, its median too. |
| Line Speed | Speed along a line when shooting while moving, and what limits it. |
| Warnings | Each warning is listed below it. Read them all before flying. |
In the 3D view each mission's path is drawn in its own colour. With Show View Axes on, a short stroke from each photo position shows the way its camera looks.
Looking at one photo
The Footprint row is one number for the whole survey: the frame straight down from the standoff. Over real ground a photo's footprint is rarely that rectangle. A tilted camera sees a wider strip at the far edge than the near one, a slope brings the ground nearer or takes it further away, and near a cliff edge part of the frame can look past the model altogether. To see what one photo covers:
- Select the survey, then click a photo position on its path in the 3D view. The photo nearest the click is picked, a white sphere marks it, and it is labelled Photo 57.
- Its footprint is drawn on the surface in white: the edges of the image, cast onto every loaded mesh and draped over the terrain. Where part of the frame meets no mesh, that part of the outline is dashed, drawn at the photo's planned distance. Lines run from the camera to the frame's corners.
- The footprints of the photos beside it are drawn fainter: the photo before and the one after it on its line, and the nearest photo on each line beside it. Where they cross the white outline is the overlap.
The Photo group in the properties describes the photo:
| Row | Meaning |
|---|---|
| Photo | The photo's number in flight order. Type a number, or use the arrows, to step from photo to photo. 0 shows none. |
| Show Footprint | Draw the footprint, the lines to its corners and the photos beside it (default on). |
| Where | 12 of 340, then its mission and flight line, and whether it is a keyframe. A low-detail or cross-grid line says so. |
| Camera | Where the photo is taken, the heading (grid degrees) and the gimbal pitch. |
| To Surface | Distance along the camera's axis to the first surface it meets, and the GSD there. |
| Footprint | The footprint's size from edge to edge through its middle, across the image and up it. When part of the image sees no loaded mesh, how much does. |
| Overlap | How much of this photo's footprint the photos beside it also see, measured on the surface: Along the line 81% before, 80% after; across 72% line 4, 70% line 6. Compare them with Front Overlap and Side Overlap. Ground hidden from the other photo behind a ridge still counts, so on very rough ground the real overlap can be lower. |
The footprint is drawn while the survey is selected. Clicking the path again picks another photo and leaves the survey selected; select something else, or another tree item, to put it away. Picking a photo is not an undo step, and it is not saved with the project.
With the 3D Translate tool, the keyframe you click is the photo looked at, so its footprint follows the drag and swings as you turn its camera (Keyframes). During a drag only the outline is drawn; the photos beside it and the overlaps follow when the drag ends.
Step through the photos at the ends of the lines and over the highest and lowest ground. That is where a footprint shrinks (high ground, close to the camera) or runs off the edge of the model, and where overlap is lost first.
Editing the path with keyframes
A plan is built through keyframes: each line's two ends, and the photos where a line bends (over a ridge) or its camera turns (round a headland). Between two keyframes the photos lie evenly along the straight leg, their cameras turned by the share of the way they are along. Keyframes are shown as spheres while the survey is selected, or while the 3D Translate tool is on.
With the 3D Translate tool:
- Click a keyframe's sphere and drag to move it. The photos on either side follow.
- Double-click the gadget, or press R, to turn the keyframe's camera with the orientation knob. The photos either side swing with it.
- Click the path between keyframes to add a keyframe there, so the line can bend at that point.
When a drag ends, the photos are laid out again between the keyframes at the line's photo spacing, and the path is kept clear of the surface and above the model's foot, then timed again.
Selecting a keyframe shows Selected Keyframe rows, so you can type its X, Y, Z, Heading (deg) and Gimbal Pitch (deg). Tick Remove Keyframe to make it an ordinary photo again; a line's two ends always stay.
After you edit the path by hand, changes to speeds, limits, clearance and the take-off point are applied to the edited path. A change to the layout — GSD, overlaps, view, camera or area — needs Replan Now, which lays the path out again and loses your edits. VRGS asks first, whether you tick Replan Now or choose Replan from the right-click menu.
Drone's-eye playback
Tick Play Drone's View in the Playback group, or right-click the survey and choose Play Drone's View. The 3D view flies the path through the drone's camera, at its field of view: out from the take-off point and back, for each mission.
Speed (x) sets how many times faster than real time it plays (default 10). Press Esc or click to stop.
Time of day and lighting
Structure-from-motion wants the surface evenly lit. A face half in sun and half in shade has shadow edges the matcher latches onto, and shadows that move during the flight differ from photo to photo. The best time to fly is when the surface is all in sun — better still with the sun square-on to it — or all in shade, and stays that way for the whole flight.
| Row | Meaning |
|---|---|
| Date | Day of the survey (YYYY-MM-DD). |
| Time Zone | The zone the survey site keeps its clocks in, chosen from Windows' list (this computer's zone to begin with). The UTC offset for the date, daylight saving included, follows from it. Choose Custom offset to type the offset yourself. |
| UTC Offset (h) | Hours the local clock is ahead of UTC on the survey date. Filled in by the time zone, or typed with Custom offset. Every time shown is local clock time. |
| Min Sun Elevation (deg) | No flying with the sun lower than this (default 15). |
| Battery Change (min) | Time on the ground between missions (default 5). |
| Planned Start | When the first mission takes off (HH:MM). |
| Analyse Lighting | Tick to follow the sun across the surface through the day, shadows cast by every loaded mesh included, and set the planned start to the best window. It runs in the background, as planning does: the Lighting row reads Analysing... 3 s meanwhile, and while the survey is being planned the analysis waits for the new plan. A Planned Start you type while it runs is kept. |
| Sun In 3D View | Light the 3D view as the sun will be at the planned start, with ray-traced shadows on an RT-capable GPU. |
The analysis fills in:
- Daylight — when the sun is high enough, and how long the whole flight takes with battery changes.
- Best Window — scored 0 to 1. It favours the surface evenly lit for the whole flight, the sun square-on to it, the sun out of the camera's view, and the hotspot out of the photos. The hotspot is the bright, shadowless patch round the point opposite the sun. It shows from any height, and from close in the drone's own shadow sits in it. Each photo's own direction is checked, so a tilted or turning camera is judged as it will really look.
- At Planned Start — the light over the flight from your planned start, and the sun's bearing and elevation.
- Notes and an hour-by-hour By Hour list.
A note also appears when the chosen time zone's clock is more than two hours from the survey's longitude: the times are probably not the site's own, so check the zone.
Lighting needs the project's coordinate reference system, to place the survey on the globe.
Exporting mission files
Tick Export Mission Files, or right-click the survey and choose Export Mission Files…, then pick a format:
| Format | For |
|---|---|
| DJI Pilot 2 waypoint route (.kmz) | DJI Pilot 2 and FlightHub 2 (WPML). Choose the aircraft in DJI Aircraft first: DJI Pilot 2 only opens a route made for its aircraft. |
| Litchi mission (.csv) | Litchi Mission Hub, for DJI consumer drones. At most 99 waypoints per mission. |
| Google Earth preview (.kml) | Checking the plan over imagery before going into the field. Heights are absolute. Not for flying. |
| Waypoint table (.csv) | Every waypoint of every mission, for any other planning tool. |
The DJI aircraft list:
- Mavic 3 Enterprise (M3E)
- Matrice 4E (M4E)
- Mavic 3 Multispectral (M3M)
- Mavic 3 Thermal (M3T)
- Mavic 3 Thermal Advanced (M3TA)
- Matrice 4T (M4T)
- Matrice 3D (Dock 2)
- Matrice 3TD (Dock 2)
- Matrice 4D (Dock 3)
- Matrice 4TD (Dock 3)
- Matrice 30
- Matrice 30T
- Matrice 350 RTK + H20
- Matrice 300 RTK + H20
On an aircraft with more than one lens the route fires the mapping (wide) camera. The gimbal pitch is set by waypoint actions in both files of the route — a step where it changes, an even turn along a line shot while moving — so a leaning face is photographed at the pitch planned for each photo.
Things to know:
- One file per mission for the DJI and Litchi formats. With more than one mission they are named
name_m01,name_m02and so on. - Altitudes are relative to the take-off point. The messages panel repeats where it is when you export.
- Headings are converted to true north. VRGS plans in grid coordinates, and the difference — the meridian convergence — is enough to put a cliff photo off the face.
- Shooting while moving, the photos inside each line are taken by distance. Waypoints a line flies straight past are left out of the flown files. In Litchi every photo is taken by distance, so either Path Mode takes them all: Curved Turns flies through the waypoints inside each line, Straight Lines stops at each of them.
- Stopping for each photo, in Litchi, leave the missions' Path Mode at Straight Lines: Curved Turns skips the waypoint actions that take the photos.
- Litchi limits. Litchi takes a photo at most every 100 m; a wider spacing is written as 100 m, and the messages panel says so. A camera pitched above the horizon needs Litchi's Gimbal Extension (+30°) setting, or it stops at 0°.
- The project needs a coordinate reference system that converts to latitude and longitude. Without one, export is refused.
- If the settings have changed since the survey was planned, VRGS asks before exporting the old plan.
Which app flies the files
| Aircraft | App | File |
|---|---|---|
| Mavic 3 Enterprise series, Matrice 4 series, Matrice 30, Matrice 300 and 350 RTK | DJI Pilot 2 | DJI Pilot 2 waypoint route (.kmz), imported into Pilot 2's route library on the controller. |
| Dock aircraft: Matrice 3D and 3TD (Dock 2), Matrice 4D and 4TD (Dock 3) | DJI FlightHub 2 | DJI Pilot 2 waypoint route (.kmz), imported into FlightHub 2's route library. |
| DJI consumer drones that Litchi supports: older models such as the Mavic 2 and Phantom 4 Pro in Litchi for DJI Drones, and the Mini 3 Pro and Mini 4 Pro in Litchi Pilot (Android) | Litchi | Litchi mission (.csv), imported into Litchi's Mission Hub, which passes it to the app. |
| Drones flown only with DJI Fly, such as the Air 3 and the consumer Mavic 3 | DJI Fly | DJI Fly imports no route file. Third-party tools can turn a Litchi mission into a DJI Fly waypoint mission; VRGS does not write or check those. |
Which drones each app supports changes with app and firmware versions. Before the survey day, import the files on the controller you will fly with. Open each mission with the aircraft on the ground, and check its waypoints, heights and camera pitch.
Actions and the right-click menu
| Row | Meaning |
|---|---|
| Replan Automatically | Plan again after every edit (default on). Planning runs in the background: the properties and the 3D view stay usable, the last plan stays drawn, and Status reads Planning... 3 s until the new plan replaces it. Edits you make meanwhile are not lost: when the run finishes, the survey is planned once more with the settings as they are then. |
| Replan Now | Plan again from the current settings. |
| DJI Aircraft | The aircraft written into DJI route files. |
| Export Mission Files | See Exporting. |
| Show View Axes | Draw the stroke along each photo's view. |
Every change made in a survey's properties can be undone with Undo (Ctrl+Z), and so can each area mark, each keyframe edit and each replan. Exporting, playback and Analyse Lighting are not undo steps: retype the Planned Start to go back to an earlier one.
While a survey is being planned, its path cannot be edited, exported or played, and the survey cannot be deleted; wait for the new plan to be drawn. Planning reads every loaded mesh, so for those seconds each one shows as busy in the background: deleting, unloading or editing a mesh, or marking an area on it, waits too. One survey is planned at a time; another that needs planning meanwhile says Waiting for '…' to finish and is planned straight after.
Right-click a survey in the interpretation tree for Replan, Export Mission Files…, Analyse Lighting, Show Sun In 3D View, Play Drone's View and Navigate To.
After the flight
- Bring every mission's photos into one structure-from-motion workflow with Add Photos… (see Running a reconstruction). Photos with GPS show as camera markers as they are added, so a missed line shows up at once.
- Keep the passes together. The low-detail pass covers the Focus area so that its photos share features with the detailed ones. Keep Low Detail GSD within about three times the target GSD, which is the default; much coarser photos may have too little in common with the fine ones to match.
- Tie the model to the ground with ground control points, or fly with RTK.
- Compare it with the model you started from: register it with ICP alignment, then see what changed with Mesh & Cloud Comparison.
Saving and older projects
A survey is saved with the project: its settings, area marks, plan, keyframes and lighting study. It draws, plays back and exports after a reload without its mesh being loaded. Planning it again needs the mesh loaded.
Surveys made with earlier versions are brought up to date when the project opens:
- A captured area to survey becomes Focus, with Unmarked Area set to Skip, so it flies as it did. An area to ignore becomes Exclude.
- A Facing Slope or Horizontal survey planned before paths were kept above the model's foot says "Planned before paths were kept above the model's foot: tick Replan Now before flying it". Exporting it asks first. Replan it before flying.
- In a project whose coordinate system is in feet (US survey feet, say), a survey planned before October 2026 was planned in feet taken for metres: its standoff, clearance and exported altitudes were out by a factor of 3.28. It says "Planned in the project's units taken for metres: tick Replan Now before flying it", and exporting it asks first. Replan it before flying. Plans are now made in metres whatever the project's units; the Take-off Point and keyframe rows stay in the project's units, like the mesh.
Troubleshooting
Messages appear in the Warnings rows, in the Status row or in the messages panel. They are grouped here by what they are about.
Planning
| Message | What to do |
|---|---|
| Nothing planned - see Warnings | Read the Warnings rows: the first says why. |
| The camera would have to look up … degrees … | The mesh's triangles face into the rock: tick Flip Side. |
| No part of … faces the camera within … degrees in this view mode. | Try another View, raise Max Incidence, or check the area marks and slope range. |
| Only …% of … faces the camera in this view mode … A cliff is better flown Horizontal. | Most of the surface is too steep for this view: use Horizontal (Cliff), or mark the part you want. |
| No part of the mesh is in the area to survey … | The marks or the slope range leave nothing: clear or change them. |
| The layout produced no photos. | Nothing in the area could be reached from a flight line. Check the View, the marks and the slope range. |
| The mesh has no prevailing facing direction … / The mesh does not face any one horizontal direction … | Its triangles face every way, as a closed object or mostly flat ground does, so the camera points straight down. Mark the face you want as Focus, or choose Nadir. |
| The surface faces almost straight up, so it is flown as nadir. | The surface is within about 10° of level. Nothing to do, unless you meant a steeper part: mark it Focus. |
| Covering this mesh at … cm/px would take about … photos. | More than 100,000 photos: use a coarser GSD, or mark a smaller Focus area. |
| The camera needs a positive sensor size … / The target GSD must be a positive number. / The photo or line spacing came out as zero … | One of the Camera rows or the Target GSD is 0 or blank. |
| The low-detail GSD is not coarser than the target GSD … | Set Low Detail GSD above the Target GSD, or to 0 for three times it. |
| The low-detail pass was left out: … | It found nothing to fly; the reason follows. The detail pass is planned as usual. |
| The cross grid was left out: … | The second grid found nothing to fly; the reason follows. The first grid is planned as usual. |
| Plan Drone Survey: … is not loaded, or is busy / … has no visible triangles | Load the mesh, wait for any job on it to finish, or show its triangles, then plan again. |
| The source mesh is no longer in the project | The mesh was deleted. The plan still draws and exports; to plan again, make a new survey on a mesh. |
| The source mesh is not loaded, or is busy … | Load the mesh, or wait for its job to finish, then tick Replan Now. |
Clearance and heights
| Message | What to do |
|---|---|
| The minimum clearance is 0, so nothing keeps the path off the surface. | Set Min Clearance above 0. |
| Clearance from the surface was NOT checked. | The meshes could not be checked — make sure the mesh is loaded and not busy, and replan. |
| Clearance was NOT checked against … busy meshes. | Other loaded meshes were being loaded or processed when the path was checked, so it may pass through them. Wait for them to finish, then tick Replan Now (or move a keyframe, which checks the path again). |
| The target GSD needs the camera … m from the surface, closer than the minimum clearance … | The camera cannot get close enough for the target GSD, so photos stand at the clearance and come out coarser. Use a coarser GSD or a longer lens, or lower Min Clearance only where it is safe. |
| … photos stand up to … m further off than planned … | They were moved back to keep clear; their GSD is coarser. Lower Min Clearance only if it is safe to. |
| … photos were dropped … / … legs could not be routed clear … | Part of the path cannot keep clear. Inspect it, reshape it with keyframes, or change the view or the area. |
| No photo position is clear of the surface. | The surface is too close all round, as in a narrow gully. Survey it another way, or lower the clearance only if it is safe. |
| The leg from the low-detail pass to the detail pass could not be routed clear … / The leg from the first grid to the cross grid … | Inspect the leg between the two passes, and move the Take-off Point or a keyframe if it passes too close. |
| There is no surface below the first waypoint … | Set the Take-off Point to where you will take off. |
| The highest waypoint is … m above the take-off point. | Height limits are usually measured from the ground under the aircraft: see Take-off point, and check the limit where you fly. |
| … waypoints are below the take-off point (the lowest … m). Some flight apps refuse them … | Take off from lower ground, and set the Take-off Point there. |
Flight and missions
| Message | What to do |
|---|---|
| … of the … missions are longer than the … min battery: the longest is about … min. | Even a single waypoint's flight out from the take-off point and back takes longer than one battery, so it flies alone and still does not fit — a take-off point far from the survey, or a short Battery (min). Move the Take-off Point nearer the survey, or raise Battery (min) only if your battery really allows it. The Missions row shows each mission's time. |
| Shooting while moving, the shot interval holds the speed along each line to … m/s. | The camera cannot take photos fast enough for the spacing. A lower Front Overlap spaces them further apart; or stop for each photo. |
| Shooting while moving, the motion blur holds the speed along each line to … m/s. | Faster, the photos would smear by more than Max Blur. A faster shutter (a higher Shutter (1/s)) lifts the limit, if the light allows it. |
| Stopping for each photo would be quicker: about … min against …. | The lines are short, or held slow, so the turns cost more than the stops. Set Capture to Stop for each photo. |
Area marks
| Message | What to do |
|---|---|
| Drone Survey Area: no drone survey is made from a mesh with triangles selected … | Select the survey in the project tree, or make one with Plan Drone Survey. |
| Drone Survey Area: more than one drone survey is made from the mesh with the selection … | Select the survey to mark in the project tree. |
| … nothing is selected on … | Select triangles on the survey's mesh before marking. |
| … its mesh is not loaded, or is busy, so the selection on it cannot be marked | Load the mesh, or wait for its job to finish, then mark again. |
| … a drone survey is being planned or analysed over its mesh; mark the selection when that has finished | Wait a moment for the plan (its Status counts the seconds), then mark again. The selection is kept. |
Editing and replanning
| Message | What to do |
|---|---|
| Settings changed: tick Replan Now to plan again | Replan Automatically is off: tick Replan Now. |
| Planning... 3 s | The survey is being planned in the background, and the last plan stays drawn until the new one replaces it. Carry on; its path, export and playback wait for the new plan. |
| Planning... 3 s; the settings have changed, so it plans again after | You changed a setting while it was planned. That plan is dropped when it finishes, and one more is made with the settings as they are then — one, however many edits you made. |
| Waiting for '…' to finish | Another survey is being planned or analysed, holding every loaded mesh. This one is planned straight after it. |
| … is being planned: edit its path when the new plan is drawn / … play it when the new plan is drawn | Its keyframes are about to be replaced. Wait for the new plan, then edit or play it. |
| Edited by hand: kept clear and timed once '…' has finished | Another survey's run holds the meshes. The path follows your edit now, and is kept clear and timed when that run ends. |
| Planning failed: … | Something went wrong in the planner; the reason follows. Tick Replan Now to try again, and report it if it happens again. |
| Settings changed, but the path was edited by hand … | A layout setting changed. Replan Now lays the path out again, losing the edits. |
| … a line's first and last keyframes stay; move them instead | A line's two ends cannot be removed. Drag them instead. |
| … a date is YYYY-MM-DD … / … a time is HH:MM on the 24-hour clock … | Type it again in that form. The value before is kept until then. |
| … was saved by a newer VRGS … | The survey has settings this version does not know. They are lost if you save the project here: open it in the newer version instead. |
Lighting and playback
| Message | What to do |
|---|---|
| … lighting not analysed. Plan the survey first | Plan it, then analyse. |
| … lighting not analysed. The project needs a coordinate system to place the sun / … does not convert to latitude and longitude | Set the project's coordinate reference system. |
| … lighting not analysed. The source mesh is not loaded, or is busy … | Load the mesh, or wait for its job to finish, then analyse. |
| Analysed once the plan being made is drawn / Waiting for '…' to finish (Lighting row) | The analysis waits for the survey's new plan, or for another survey's run, and starts by itself after it. |
| Shadows were NOT cast by … busy meshes. | Other loaded meshes were busy, so their shadows are missing: analyse again when they have finished. |
| … no time on … suits the flight … | The reason follows. If the sun stays below Min Sun Elevation all day, lower it to fly in what light there is. If the flight with its battery changes is longer than the daylight, split the survey over two days with area marks, or use a coarser GSD. |
| … this computer does not know the time zone … | The project was saved on a computer with a time zone this one lacks, and the saved UTC offset is kept as a custom one. Choose the zone again. |
| This GPU cannot ray trace … | The 3D view shows the sun's direction without shadows. Analyse Lighting still casts them. |
| … there is no path to play | Plan the survey first. |
| … open a 3D view to play the drone's view | Open a 3D view, then play. |
Exporting
| Message | What to do |
|---|---|
| This survey has no plan to export. | Plan it first. |
| This survey is being planned, or is waiting its turn to be … | Wait for the new plan to be drawn, then export. |
| This project has no coordinate reference system … | Set the project CRS before exporting or analysing lighting. |
| The settings have changed since this survey was planned … | The plan does not match the settings. Choose No and tick Replan Now, unless you mean to export the plan as it is. |
| This survey was planned before paths were kept above the bottom of the model … | Choose No, and replan it before flying it. |
| The mission files were not written. … | A position could not be converted to latitude and longitude, or the plan has no take-off point; the reason follows. Check the project's coordinate reference system and the Take-off Point. |
| Litchi takes a photo at most every 100 m … | The spacing was written as 100 m, so Litchi takes more photos than planned, not fewer. Nothing to do. |
| … degrees above the horizon: turn on Gimbal Extension … | Turn on Gimbal Extension (+30°) in Litchi's settings before flying. |