Table of Contents

Class FeatureHitTester

Namespace
EncDotNet.S100.Datasets.Pipelines.Geometry
Assembly
EncDotNet.S100.Datasets.Pipelines.dll

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

features IEnumerable<TFeature>

The dataset's features, in ordinal order.

latitude double

Pick latitude in WGS-84 degrees.

longitude double

Pick longitude in WGS-84 degrees.

radiusMeters double

Search 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