I have dropped a GPS breadcrumb track (.gpx format) onto my project.  If I generate a a virtual field in this layer to calculate the distance between successive crumbs using the expression:

```
distance(($geometry),geometry(get_feature_by_id( @layer_name, $id+1)))
```

I get totally misleading results.  Why is this?  And is there anyway around it without saving the GPX file as a projected shapefile and redoing the calculation (which then works fine)?