mirror of
https://github.com/gpxstudio/gpx.studio.git
synced 2025-08-31 23:53:25 +00:00
get all previous point additional data when inserting new anchor
This commit is contained in:
@@ -389,16 +389,17 @@ export class RoutingControls {
|
|||||||
let projectedPt = projectedPoint(segment.trkpt[before], segment.trkpt[before + 1], this.temporaryAnchor.point);
|
let projectedPt = projectedPoint(segment.trkpt[before], segment.trkpt[before + 1], this.temporaryAnchor.point);
|
||||||
let ratio = distance(segment.trkpt[before], projectedPt) / distance(segment.trkpt[before], segment.trkpt[before + 1]);
|
let ratio = distance(segment.trkpt[before], projectedPt) / distance(segment.trkpt[before], segment.trkpt[before + 1]);
|
||||||
|
|
||||||
|
let point = segment.trkpt[before].clone();
|
||||||
|
point.setCoordinates(projectedPt);
|
||||||
|
point.ele = (1 - ratio) * (segment.trkpt[before].ele ?? 0) + ratio * (segment.trkpt[before + 1].ele ?? 0);
|
||||||
|
point.time = (segment.trkpt[before].time && segment.trkpt[before + 1].time) ? new Date((1 - ratio) * segment.trkpt[before].time.getTime() + ratio * segment.trkpt[before + 1].time.getTime()) : undefined;
|
||||||
|
point._data = {
|
||||||
|
anchor: true,
|
||||||
|
zoom: 0
|
||||||
|
};
|
||||||
|
|
||||||
minInfo = {
|
minInfo = {
|
||||||
point: new TrackPoint({
|
point,
|
||||||
attributes: projectedPt,
|
|
||||||
ele: (1 - ratio) * (segment.trkpt[before].ele ?? 0) + ratio * (segment.trkpt[before + 1].ele ?? 0),
|
|
||||||
time: (segment.trkpt[before].time && segment.trkpt[before + 1].time) ? new Date((1 - ratio) * segment.trkpt[before].time.getTime() + ratio * segment.trkpt[before + 1].time.getTime()) : undefined,
|
|
||||||
_data: {
|
|
||||||
anchor: true,
|
|
||||||
zoom: 0
|
|
||||||
}
|
|
||||||
}),
|
|
||||||
trackIndex,
|
trackIndex,
|
||||||
segmentIndex,
|
segmentIndex,
|
||||||
trkptIndex: before + 1
|
trkptIndex: before + 1
|
||||||
|
Reference in New Issue
Block a user