Class FeatureHitTester
Shared geographic hit-testing over encoding-neutral IS100Feature geometry, used by dataset processors to implement HitTestFeatures(double, double, double). Builds on the precise, hole-aware, segment-based Measure(IS100Feature, GeoPoint), so a pick matches an area feature by exact point-in-polygon containment and a point/curve feature by nearest-geometry distance.
public static class FeatureHitTester
- Inheritance
-
FeatureHitTester
- Inherited Members
Methods
HitTest<TFeature>(IEnumerable<TFeature>, double, double, double)
Returns every feature in features whose geometry
contains the point (area features) or lies within
radiusMeters of it (point/curve features), in
enumeration order. Each hit's Ordinal
is the feature's zero-based position in features, so
it aligns with GetFeatureInfoAt(int) when the
caller enumerates the features in the same order that method indexes.
public static IReadOnlyList<FeatureGeometryHit> HitTest<TFeature>(IEnumerable<TFeature> features, double latitude, double longitude, double radiusMeters) where TFeature : IS100Feature
Parameters
featuresIEnumerable<TFeature>The dataset's features, in ordinal order.
latitudedoublePick latitude in WGS-84 degrees.
longitudedoublePick longitude in WGS-84 degrees.
radiusMetersdoubleSearch tolerance for point/curve features in metres; area features use exact containment and ignore it. Negative or non-finite values are treated as 0.
Returns
- IReadOnlyList<FeatureGeometryHit>
The matching features in enumeration order, or an empty list.
Type Parameters
TFeature