MapLink Pro 11.1.1.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
Loading...
Searching...
No Matches
TSLAutoTitleHelper Class Reference

Detailed Description

This class provides helper functions for automatic creation of building and property outlines.

Static Public Member Functions

static bool createAutoTitlePolygons (const TSLMapDataLayer *mapLayer, const TSLAutoTitleData &parameters, TSLAutoTitleProperty *properties, int numProperties, bool categorise)
 
static bool createAutoTitlePolygons (const TSLMapDataLayer *mapLayer, const TSLStandardDataLayer *additionalLayer, const TSLAutoTitleData &parameters, TSLAutoTitleProperty *properties, int numProperties, bool categorise)
 

Member Function Documentation

◆ createAutoTitlePolygons() [1/2]

static bool TSLAutoTitleHelper::createAutoTitlePolygons ( const TSLMapDataLayer * mapLayer,
const TSLAutoTitleData & parameters,
TSLAutoTitleProperty * properties,
int numProperties,
bool categorise )
static

This method attempts to automatically create building and property outlines for the specified properties. In the following descriptions :

  • A building outline is considered the result of a simple 'bound' around the seed point
  • A property outline is the final result of the auto title process, after unnecessary building edges have been removed and gaps filled.
  • An orphan chain is a line that has one end that does not join another line.

The basic algorithm used is as follows.

  • Decompose the map data into individual edges.
  • Add small fillet edges across small gaps.
  • For each property seed point, find the smallest enclosing polygon - a bound-type operation.
  • Find all building seeds and force the edges around them to have a building outline feature.
  • For building outlines that are continuations of a fence line, force them to have a fence line feature code.
  • Remove all remaining building outline features.
  • Remove any small orphan chains.
  • Extend any longer orphan chains to nearby map features.
  • For each property seed point, find the new smallest enclosing polygon - a bound-type operation.
  • Optionally, extend the corners of the property outline to specified features.
  • Compare and categorise the produced polygons.
Parameters
mapLayerThis is the map data layer from which to extract the edge data.
parametersThis supplies configuration information to tune the algorithm performance.
propertiesThis specifies an array of properties for which to generate outlines. The m_buildingOutline, m_propertyOutline and m_category members of the elements of this array are populated by this call.
numPropertiesThis specifies the number of properties in the 'properties' array.
categoriseThis flag indicates whether the properties should be compared and categorised after creation.
Returns
true on success, false otherwise.

◆ createAutoTitlePolygons() [2/2]

static bool TSLAutoTitleHelper::createAutoTitlePolygons ( const TSLMapDataLayer * mapLayer,
const TSLStandardDataLayer * additionalLayer,
const TSLAutoTitleData & parameters,
TSLAutoTitleProperty * properties,
int numProperties,
bool categorise )
static

This method attempts to automatically create building and property outlines for the specified properties. In the following descriptions :

  • A building outline is considered the result of a simple 'bound' around the seed point
  • A property outline is the final result of the auto title process, after unnecessary building edges have been removed and gaps filled.
  • An orphan chain is a line that has one end that does not join another line.

The basic algorithm used is as follows.

  • Decompose the map data into individual edges, marking building outlines.
  • Add small fillet edges across small gaps.
  • For each property seed point, find the smallest enclosing polygon - a bound-type operation.
  • Find all building seeds and force the edges around them to have a building outline feature.
  • For building outlines that are continuations of a fence line, force them to have a fence line feature code.
  • Remove all remaining building outline features.
  • Remove any small orphan chains.
  • Extend any longer orphan chains to nearby map features.
  • For each property seed point, find the new smallest enclosing polygon - a bound-type operation.
  • Optionally, extend the corners of the property outline to specified features.
  • Compare and categorise the produced polygons.
Parameters
mapLayerThis is the map data layer from which to extract the edge data.
additionalLayerThis is a layer containing additional line to be used.
parametersThis supplies configuration information to tune the algorithm performance.
propertiesThis specifies an array of properties for which to generate outlines. The m_buildingOutline, m_propertyOutline and m_category members of the elements of this array are populated by this call.
numPropertiesThis specifies the number of properties in the 'properties' array.
categoriseThis flag indicates whether the properties should be compared and categorised after creation.
Returns
true on success, false otherwise.