Feature Type
Feature Type
Purpose
This note defines the HAPI Feature Type categories that determine the mathematical routing of survey records.
Source Priority
- HAPI User Manual.pdf
- FeatureCatalogue.json
- 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 Type | Meaning | Typical Output |
|---|---|---|
1POINT | A feature represented by one coordinate. | COGO Point plus optional block reference. |
2POINT | A feature whose length and orientation are defined by two points. | Block reference or connecting Feature Line. |
LINEAR | A continuous open line string. | Civil 3D Feature Line, labels, flow arrows where applicable. |
POLYGON | An 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 Type | Count |
|---|---|
LINEAR | 79 |
1POINT | 70 |
POLYGON | 41 |
2POINT | 7 |
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:
- predefined grouping lengths
- Sizing_Number rectangle fitting
- Clustering_Number irregular polygon closure
- proximity thresholds from Global_Configuration
Relationship to Point Code Suffixes
| Suffix Type | Main Feature Types Affected | Effect |
|---|---|---|
| Sizing_Number | 1POINT, 2POINT, POLYGON | Overrides default point count for rectangle construction. |
| Clustering_Number | LINEAR, POLYGON | Links related records that may be non-sequential. |
| Supplementary_Suffix | Selected feature-specific cases | Adds compound feature semantics. |
Implementation Notes
Preferred planned functions:
ResolveFeatureTypeRouteSurveyRecordProcessOnePointFeatureProcessTwoPointFeatureProcessLinearFeatureProcessPolygonFeature
The Feature Type should be obtained from Feature_Catalogue, not inferred from the visible shape of a code string.
Related Notes
Open Questions
- Confirm whether future C# plugin routing should preserve these four Feature Type names exactly or map them to richer domain classes.