C# 클래스 IsraelHiking.API.Services.GpxSplitterService

상속: IGpxSplitterService
파일 보기 프로젝트 열기: IsraelHikingMap/Site

공개 메소드들

메소드 설명
GetMissingLines ( NetTopologySuite.Geometries.LineString gpxLine, IReadOnlyList existingLineStrings, double minimalMissingPartLength, double closestPointTolerance ) : List

This part of this splitter will remove line that already exsits and will split lines that are close to an exsiting line. This can be used with both OSM lines and other parts of the same GPS trace. The algorithm is faily simple - Go over all the points in the given gpxLine and look for point that are close to existingLineStrings

SplitSelfLoops ( NetTopologySuite.Geometries.LineString gpxLine, double closestPointTolerance ) : List

This part of the splitter if responsible for splitting a line with a self loop. It will allway return lines that do not have self loop, but can be duplicate of one another Use GetMissingLines method to remove those duplications.

비공개 메소드들

메소드 설명
AddLineString ( ICollection gpxSplit, System.Coordinate coordinates ) : void
IsCloseToALine ( System.Coordinate coordinate, IReadOnlyList lineStrings, double closestPointTolerance ) : bool
IsClosingALoop ( NetTopologySuite.Geometries.LineString gpxLine, int currentIndex, double closestPointTolerance ) : bool

메소드 상세

GetMissingLines() 공개 메소드

This part of this splitter will remove line that already exsits and will split lines that are close to an exsiting line. This can be used with both OSM lines and other parts of the same GPS trace. The algorithm is faily simple - Go over all the points in the given gpxLine and look for point that are close to existingLineStrings
public GetMissingLines ( NetTopologySuite.Geometries.LineString gpxLine, IReadOnlyList existingLineStrings, double minimalMissingPartLength, double closestPointTolerance ) : List
gpxLine NetTopologySuite.Geometries.LineString The line to manipulate
existingLineStrings IReadOnlyList The lines to test agains
minimalMissingPartLength double The minimal length allowed to a trace that can be added
closestPointTolerance double The distace of the closest point allowed
리턴 List

SplitSelfLoops() 공개 메소드

This part of the splitter if responsible for splitting a line with a self loop. It will allway return lines that do not have self loop, but can be duplicate of one another Use GetMissingLines method to remove those duplications.
public SplitSelfLoops ( NetTopologySuite.Geometries.LineString gpxLine, double closestPointTolerance ) : List
gpxLine NetTopologySuite.Geometries.LineString The line to look for self loops in
closestPointTolerance double The tolerance of the distance that is considered a self loop
리턴 List