About Stockpile360
Stockpile360 calculates the volume of stockpiles of gravel, wood chips, soil, sand and similar materials from measurements made with a Haglöf Geo instrument.
You measure points around the foot of the pile (base points) and across the pile (measurement points). The app fits a base plane through the base points and calculates the volume between the base plane and the surface of the pile. The result appears immediately, together with base area, perimeter, mean height and the slope of the base.
Stockpile360 is the web version of Haglöf’s Windows program HeapCalcVol and uses the same calculation methods. It runs in the browser and needs no installation. The survey file is read only in your own browser and is not sent anywhere.
Getting started
- Survey the pile with the Geo instrument. Measure points around the whole foot and densely enough across the pile. Tops, ridges and break lines improve accuracy the most.
- Transfer the survey file (CSV) from the instrument to your computer.
- Open Stockpile360 and click Open CSV file, or drop the file anywhere on the page.
- Check the base area in the plan view. The orange line is the base and the squares are the base points. Correct point types or vertices if needed (chapters 6 and 7).
- Fill in the report fields (date, operator, site/object, comments) and save the report as a PDF.
The survey file
Stockpile360 reads the semicolon-separated CSV files saved by the Geo instrument. The first row holds the column headings. Rows starting with # hold the instrument settings, and rows starting with $ are measurements.
Columns used
| Column | Meaning |
|---|---|
X(m) | Northing. Required. |
Y(m) | Easting. Required. |
Z(m) | Height. Required. |
TYPE | BASE marks a base point. Other values, such as TARGET, are measurement points. |
SD | Slope distance to the point. Used to filter out faulty measurements. |
LAT, LON | GPS position. Used for the map link and the coordinate system. |
ID, SNR, VER | Measurement ID, instrument serial number and software version. |
UNIT | M for metres, F for feet. |
Filtering short measurements
Measurements with a slope distance (SD) of 1.2 m or less are treated as faulty and removed. The number is shown as filtered in the Survey file panel. You can change the limit under Settings.
Coordinates in the plan view
The plan view shows local coordinates in metres, counted from the first measurement and levelled to the base plane. The original coordinates are kept and used when you save an adjusted file or export GeoJSON.
Results
| Value | Explanation |
|---|---|
| Volume | The pile’s volume above the base plane, multiplied by the adjustment factor. The method used is shown below the value. |
| Base area | The area of the base, measured in the base plane. Shown in hectares above 10,000 m². Below the value you see how the base points were chosen and how many vertices the base has. |
| Mean height | Average height above the base plane. The highest measured point is shown below the value. |
| Perimeter | The circumference of the base. The number of grid points in the calculation is shown below the value. |
| Base slope | The slope of the base plane relative to the horizontal, in degrees and percent. |
Further down, Method comparison shows the volume according to both the grid and the triangle method. It is a quick plausibility check. Large differences often point to sparsely surveyed parts of the pile.
The plan view
The plan view shows the pile from above. Colours show the height above the base plane, from blue-green at the foot to brown at the top, following the scale in the toolbar.
Layers
- Height grid: the coloured cells the grid volume is calculated from.
- Triangles: the triangulation used by the triangle method.
- Measurement points: the points across the pile.
- Base points: the vertices of the base. The base outline stays visible when they are hidden.
Hidden points cannot be selected. This is useful when you want to select a section and include only one kind of point.
Navigating
| Action | Result |
|---|---|
| Mouse wheel or + − | Zooms in and out. |
| Drag the map | Pans. |
| ⤢ | Fits the pile to the window. |
| ⟲ ⟳ | Rotates the map 15° counter-clockwise or clockwise. |
| Alt + drag | Rotates the map freely. |
| N | Resets so that north points up. |
The north arrow at the top left turns with the map, and the rotation in degrees is shown below it. Rotation only affects the display, not the calculation. The PDF report shows the plan view with the same rotation as on screen.
Selecting points
- Click a point to select it. The box below the map shows its coordinates, height and what you can do with the point.
- Shift + click adds points to or removes points from the selection.
- Shift + drag, or the Select area button, selects all visible points inside a rectangle.
- Esc or Deselect clears the selection.
Changing point types and excluding points
Mistakes happen in the field. A whole section may have been measured as base points, or a base point may be missing. You can change the type of the points afterwards.
- If needed, hide the point type you want to leave out using the Base points or Measurement points check box.
- Click Select area and drag a rectangle around the points. You can also use Shift + click.
- Choose Make base points or Make measurement points in the box below the map.
- Check the new base area and volume. The change shows immediately.
The first time you change a type, the base points currently shown become type BASE, and then the change is applied. From then on, base points are chosen by point type (Point type BASE). If the points are not in order around the pile, the app orders them by angle around the centre of the pile.
Excluding points
Exclude removes the selected points from the calculation entirely, for example a faulty measurement against a vehicle or a tree top. The Restore excluded points link in the Survey file panel brings them back.
Editing the base
By default the base is formed by the outermost points (the convex hull), or by points of type BASE if the file has any. If the pile has an indentation, or you want to follow the foot more closely, you can edit the base by hand.
- Click Edit base in the plan view toolbar.
- Drag a vertex to move it.
- Click an edge to add a new vertex there, then drag it into place.
- Select a vertex and press Delete to remove it. The base needs at least three vertices.
- Click Done. Reset base returns to the automatic base.
Profiles and 3D view
The profiles show all points seen from the south (east–west) and from the east (north–south). The orange line is the base plane. Points that are unreasonably high or low are easy to spot here.
The 3D view shows the surface of the pile. Drag in the view to rotate freely, or use the buttons:
| Button | View |
|---|---|
| Reset | The default perspective, obliquely from above. |
| Top | Straight from above. |
| N, E, S, W | The pile seen from the north, east, south or west. |
| ⟲ ⟳ | Turns the view 45° at a time. |
| Vertical exaggeration | Exaggerates the height ×1, ×2 or ×4 so the shape is easier to see. Does not affect the volume. |
Settings
| Setting | Function |
|---|---|
| Volume method | Grid or Triangles, see chapter 12. |
| Base points | Outermost points, Point type BASE or Manually adjusted. |
| Units | Metric (m, m², m³) or imperial (ft, ft², ft³ and yd³). |
| Coordinate system | Used for GeoJSON export. Automatic usually works. |
| Adjustment factor | Multiplied by the volume, for example to convert loose to solid measure. Default 1.0. |
| Grid spacing | Cell size in the grid method. Default 1 m. |
| Min. slope distance SD | Measurements with a shorter slope distance are filtered out. Default 1.2 m. |
Language
The EN and SV buttons in the header switch language immediately, even with a survey file open. The first time, the browser’s language is used if Stockpile360 supports it, otherwise English. When you choose a language, the choice is remembered for next time. Reports, file names and messages follow the chosen language, and the Manual link opens the manual in the same language.
Settings and report fields are saved in the browser until next time.
Saving and exporting
Save report (PDF)
Creates a two-page A4 report with the Stockpile360 and Haglöf logos. Page 1 holds the report fields, instrument data, the result, the method comparison and the plan view. Page 2 holds the 3D view and both profiles.
Export GeoJSON
Creates a map file with the base area as a polygon and all points, for QGIS and other GIS software (chapter 11).
Copy to clipboard
The button in the header copies a text version of the report that you can paste into an email or another program.
Save adjusted file
The button in the Survey file panel saves the survey file with your changes as <file name>_adjusted.csv, in the same format as the instrument file:
- Point types are rewritten so that the vertices of the base get
TYPE = BASE. - Excluded points are removed.
- Base points are put in order around the pile.
- Vertices added with Edit base become new base point rows.
All other rows are left unchanged. When you open the adjusted file again, you get the same base area and volume.
Print report
The button appears when Stockpile360 is opened as a page of its own in the browser. The printout includes the report fields, result, plan view, profiles and 3D view.
Opening in QGIS
The GeoJSON file uses WGS 84 coordinates (lat/lon) as the GeoJSON standard requires, so QGIS places the pile correctly on the map without extra settings.
- Click Export GeoJSON in the Report panel.
- Drag the file into QGIS, or choose Layer › Add Layer › Add Vector Layer.
- QGIS asks which sublayers to add. Choose both the polygon (base area) and the points.
- Style the points by the
kindfield, and show for examplevolume_m3as a label on the base area.
| Field | Content |
|---|---|
kind | base_area, base_point, measurement, excluded or base_point_added. |
volume_m3 | The volume, plus grid_volume_m3 and triangle_volume_m3 (on the base area). |
base_area_m2 | Base area, plus perimeter, mean height, maximum height and slope (on the base area). |
height_above_base_m | The point’s height above the base plane. |
north, east | Original coordinates from the survey file. |
crs_source | The coordinate system the file’s X/Y were converted from. |
Coordinate system
The app finds the coordinate system by comparing the instrument’s GPS position with X/Y in the file. It can choose between SWEREF 99 TM, the local SWEREF 99 zones and UTM. If the survey uses local coordinates, the pile is placed at the GPS position and marked as an approximate position, because the north direction cannot then be determined exactly. A file without a GPS position cannot be exported as GeoJSON.
.json instead of .geojson. QGIS opens it the same way.How the volume is calculated
1. The base plane
A plane is fitted through the base points by orthogonal regression, that is, the plane with the smallest sum of squared perpendicular distances to the points. All points are then rotated so that the base plane is level (height 0). This gives the correct volume even when the pile lies on a slope.
2a. The grid method
The base is divided into a grid (1 × 1 m by default). For each cell inside the base, the height is interpolated from the three nearest points among the two nearest base points and the four nearest measurement points, weighted by 1/distance².
2b. The triangle method
The base and measurement points are triangulated with a Delaunay triangulation. The volume is the sum of the prisms under each triangle inside the base.
Which method should I choose?
The grid method gives a smoother surface and is the default, just as in HeapCalcVol. The triangle method follows the measurement points exactly and works well when the pile is surveyed densely and evenly. On test piles with a known volume, both methods came within a few percent of the true volume.
Messages and troubleshooting
| Message | Cause and remedy |
|---|---|
| Cannot find the columns X(m), Y(m) and Z(m) | The file is not a survey file from the Geo instrument, or the heading row is missing. Check that the right file is selected. |
| All measurements were filtered out | All measurements are shorter than the SD limit. Lower Min. slope distance SD under Settings. |
| The base points do not form a closed, simple polygon | The sides of the base cross. Check the point types or edit the base by hand. |
| The file has no base points (TYPE = BASE) | You chose Point type BASE, but the file has no such points. The outermost points are used instead. |
| Too few measurement points inside the base | At least four measurement points are needed to compute heights. Survey more points across the pile. |
| Measurement points lie outside the edge of the base | Points outside the base do not affect the grid volume. Check that the base encloses the whole pile. |
| The file has no GPS position | GeoJSON cannot be placed on a map. Volume calculation, PDF and adjusted file work as usual. |
| The file could not be saved in this view | The browser or view does not allow downloads. Open Stockpile360 as a page of its own and try again. |
Version history
- Stockpile360 and the manual are available in English and Swedish.
- Language selector in the header. The first time, the browser’s language is used if supported, otherwise English, and the chosen language is remembered.
- PDF report, clipboard text, file names and messages follow the chosen language.
- The plan view can be rotated (⟲ ⟳, Alt + drag) and reset to north up.
- Base points can be hidden in the plan view and left out of selections.
- Perspective buttons in the 3D view: Reset, Top, N, E, S, W and 45° turns.
- The Copy report button is now called Copy to clipboard.
- Online manual with a link from the app.
- First web version under the name Stockpile360.
- Grid and triangle methods, method comparison, profiles and 3D view.
- Switching between measurement point and base point, area selection, exclusion and manual base editing.
- Save adjusted survey file, PDF report with 3D view and GeoJSON export for QGIS.
- HeapCalcVol for Windows, Haglöf Sweden AB.