03_Core_ConceptsFeature Type

Feature Type

Purpose

This note defines the HAPI Feature Type categories that determine the mathematical routing of survey records.

Source Priority

  1. HAPI User Manual.pdf
  2. FeatureCatalogue.json
  3. Feature Catalogue Specification.md

Definition

A Feature Type is the high-level mathematical channel assigned to a Feature_Code. It determines how HAPI groups records and what type of Civil 3D drafting output is produced.

Supported Feature Types

Feature TypeMeaningTypical Output
1POINTA feature represented by one coordinate.COGO Point plus optional block reference.
2POINTA feature whose length and orientation are defined by two points.Block reference or connecting Feature Line.
LINEARA continuous open line string.Civil 3D Feature Line, labels, flow arrows where applicable.
POLYGONAn enclosed or rectangle-derived shape.Enclosing rectangle, closed Feature Line, scalable block, or polygonal symbol.

Feature Catalogue Distribution

The current FeatureCatalogue.json contains 197 feature entries in the following routing distribution:

Feature TypeCount
LINEAR79
1POINT70
POLYGON41
2POINT7

Rules by Feature Type

1POINT

A 1POINT feature is placed at a single surveyed coordinate. Some 1POINT features may support a Sizing_Number override if the feature must be treated as a rectangle-derived object.

2POINT

A 2POINT feature uses two consecutive points to determine orientation and length. Some 2POINT features may also support a Sizing_Number override.

LINEAR

A LINEAR feature represents an open continuous line string. It may support Clustering_Number logic to connect non-sequential records, and some linear features support curve-segment interpretation via Segment_Type_Indicator.

POLYGON

A POLYGON feature represents an enclosed shape. It may use:

Relationship to Point Code Suffixes

Suffix TypeMain Feature Types AffectedEffect
Sizing_Number1POINT, 2POINT, POLYGONOverrides default point count for rectangle construction.
Clustering_NumberLINEAR, POLYGONLinks related records that may be non-sequential.
Supplementary_SuffixSelected feature-specific casesAdds compound feature semantics.

Implementation Notes

Preferred planned functions:

  • ResolveFeatureType
  • RouteSurveyRecord
  • ProcessOnePointFeature
  • ProcessTwoPointFeature
  • ProcessLinearFeature
  • ProcessPolygonFeature

The Feature Type should be obtained from Feature_Catalogue, not inferred from the visible shape of a code string.

Open Questions

  • Confirm whether future C# plugin routing should preserve these four Feature Type names exactly or map them to richer domain classes.
Built with LogoFlowershow