TopologyValidator¶
Namespace: ThinkGeo.Core
public static class TopologyValidator
Inheritance Object → TopologyValidator
Methods¶
PolygonsMustNotOverlap(IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonsMustNotOverlap(IEnumerable<Feature> polygonFeatures)
Parameters¶
polygonFeatures
IEnumerable<Feature>
Returns¶
PolygonsMustNotHaveGaps(IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonsMustNotHaveGaps(IEnumerable<Feature> polygonFeatures)
Parameters¶
polygonFeatures
IEnumerable<Feature>
Returns¶
PolygonsMustContainPoint(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonsMustContainPoint(IEnumerable<Feature> polygonFeatures, IEnumerable<Feature> pointFeatures)
Parameters¶
polygonFeatures
IEnumerable<Feature>
pointFeatures
IEnumerable<Feature>
Returns¶
PolygonsMustBeWithinPolygons(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonsMustBeWithinPolygons(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)
Parameters¶
featuresToValidateAgainst
IEnumerable<Feature>
featuresToValidate
IEnumerable<Feature>
Returns¶
PolygonBoundariesMustOverlapLines(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonBoundariesMustOverlapLines(IEnumerable<Feature> polygonFeatures, IEnumerable<Feature> lineFeatures)
Parameters¶
polygonFeatures
IEnumerable<Feature>
lineFeatures
IEnumerable<Feature>
Returns¶
PolygonsMustOverlapPolygons(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonsMustOverlapPolygons(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)
Parameters¶
featuresToValidateAgainst
IEnumerable<Feature>
featuresToValidate
IEnumerable<Feature>
Returns¶
PolygonsMustNotOverlapPolygons(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonsMustNotOverlapPolygons(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)
Parameters¶
featuresToValidateAgainst
IEnumerable<Feature>
featuresToValidate
IEnumerable<Feature>
Returns¶
PolygonsMustOverlapEachOther(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonsMustOverlapEachOther(IEnumerable<Feature> firstPolygonGroup, IEnumerable<Feature> secondPolygonGroup)
Parameters¶
firstPolygonGroup
IEnumerable<Feature>
secondPolygonGroup
IEnumerable<Feature>
Returns¶
PolygonBoundariesMustOverlapPolygonBoundaries(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PolygonBoundariesMustOverlapPolygonBoundaries(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)
Parameters¶
featuresToValidateAgainst
IEnumerable<Feature>
featuresToValidate
IEnumerable<Feature>
Returns¶
LinesMustFormClosedPolygon(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustFormClosedPolygon(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustNotHavePseudonodes(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustNotHavePseudonodes(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustNotOverlap(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustNotOverlap(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustNotSelfOverlap(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustNotSelfOverlap(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustNotIntersect(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustNotIntersect(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustNotSelfIntersect(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustNotSelfIntersect(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustNotSelfIntersectOrTouch(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustNotSelfIntersectOrTouch(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustBeSinglePart(IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustBeSinglePart(IEnumerable<Feature> lineFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
Returns¶
LinesMustNotOverlapLines(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustNotOverlapLines(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)
Parameters¶
featuresToValidateAgainst
IEnumerable<Feature>
featuresToValidate
IEnumerable<Feature>
Returns¶
LinesMustBeCoveredByLines(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustBeCoveredByLines(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)
Parameters¶
featuresToValidateAgainst
IEnumerable<Feature>
featuresToValidate
IEnumerable<Feature>
Returns¶
LineEndPointsMustTouchPoints(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult LineEndPointsMustTouchPoints(IEnumerable<Feature> lineFeatures, IEnumerable<Feature> pointFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
pointFeatures
IEnumerable<Feature>
Returns¶
LinesMustOverlapPolygonBoundaries(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult LinesMustOverlapPolygonBoundaries(IEnumerable<Feature> lineFeatures, IEnumerable<Feature> polygonFeatures)
Parameters¶
lineFeatures
IEnumerable<Feature>
polygonFeatures
IEnumerable<Feature>
Returns¶
PointsMustBeWithinPolygons(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PointsMustBeWithinPolygons(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> polygonFeatures)
Parameters¶
pointFeatures
IEnumerable<Feature>
polygonFeatures
IEnumerable<Feature>
Returns¶
PointsMustTouchPolygonBoundaries(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PointsMustTouchPolygonBoundaries(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> polygonFeatures)
Parameters¶
pointFeatures
IEnumerable<Feature>
polygonFeatures
IEnumerable<Feature>
Returns¶
PointsMustTouchLineEndpoints(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PointsMustTouchLineEndpoints(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> lineFeatures)
Parameters¶
pointFeatures
IEnumerable<Feature>
lineFeatures
IEnumerable<Feature>
Returns¶
PointsMustTouchLines(IEnumerable<Feature>, IEnumerable<Feature>)¶
public static TopologyValidationResult PointsMustTouchLines(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> lineFeatures)
Parameters¶
pointFeatures
IEnumerable<Feature>
lineFeatures
IEnumerable<Feature>
Returns¶
BuildRTreeIndex(IEnumerable<BaseShape>)¶
internal static STRtree<BaseShape> BuildRTreeIndex(IEnumerable<BaseShape> baseShapes)
Parameters¶
baseShapes
IEnumerable<BaseShape>
Returns¶
STRtree<BaseShape>
IsPointOnTheLine(Vertex, Vertex, PointShape)¶
internal static bool IsPointOnTheLine(Vertex startVertex, Vertex endVertex, PointShape point)
Parameters¶
startVertex
Vertex
endVertex
Vertex
point
PointShape