MapLink Pro .
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
Loading...
Searching...
No Matches
envitia Namespace Reference

Namespaces

namespace  colorref_literals

Classes

struct  InformationTree
struct  MapLinkProjectImpl
struct  win_colorref
 RGB colour stored as a 32-bit value with red in the least significant byte. More...
struct  Point2D_
 A point with two coordinates of the same type. More...
struct  interval
 An interval with independently open or closed endpoints. More...
struct  bounds
 Two-dimensional bounds formed from X and Y intervals. More...
struct  OutputMapOptions
 Options used when creating an output map. More...
struct  GLDataPostProcessorOptions
struct  RasterOverviewDefaults
struct  WMSConfigurationDefaults
struct  MapMetadataDefaults
struct  ThrowingError
class  MapLinkProject
 Manage a map-building project, its layers, datasets and output maps. More...

Enumerations

enum  MapLinkDatasetTypeEnum { TSLMAPLINK_DatasetUnknown = 0 , TSLMAPLINK_DatasetVector = 1 , TSLMAPLINK_DatasetRaster = 2 , TSLMAPLINK_DatasetTerrain = 3 }
enum  NodeType {
  MAP , LAYER , DATASET , DATA ,
  UNKNOWN
}
enum  FILE_LOAD_STATUS { FILE_LOAD_STATUS_ERROR = 0 , FILE_LOAD_STATUS_OK = 1 , FILE_LOAD_STATUS_CANCEL_FILE = 2 , FILE_LOAD_STATUS_CANCEL_DATASET = 3 }
enum  FeatureMaskMode { FEATURE_MASK_AS_BLACKLIST = 0 , FEATURE_MASK_AS_WHITELIST = 1 , CONVERSION_READ_BLACK_WRITE_WHITE = 2 , CONVERSION_READ_WHITE_WRITE_BLACK = 3 }
enum  TilesStrategyType { tileStrategyTypeTileBased , tileStrategyTypeResolutionBased , tileStrategyTypeRangeBased }
enum  FBkSectionType { FBkSectionTypeReference = 2 , FBkSectionTypeVector = 4 , FBkSectionTypeRaster = 8 }
enum class  interval_type { interval_type::closed , interval_type::open }
 Select whether an interval includes its endpoint. More...

Functions

MapInformation * getMapInformation (MapLinkProjectImpl &)
std::list< LayerInformation * > getLayerInfos (MapLinkProjectImpl &)
BUILDER_EXPORT win_colorref lerp (win_colorref a, win_colorref b, double t)
 Interpolate between two colours using the factor t.
template<typename T, interval_type left, interval_type right>
constexpr bool below_interval (interval< T, left, right > i, T x) noexcept
 Test whether a value lies below an interval's lower endpoint.
template<typename T, interval_type left, interval_type right>
constexpr bool above_interval (interval< T, left, right > i, T x) noexcept
 Test whether a value lies above an interval's upper endpoint.
template<typename T, interval_type left, interval_type right>
constexpr bool in_interval (interval< T, left, right > i, T x) noexcept
 Test whether a value belongs to an interval, respecting open endpoints.
template<typename T, interval_type left, interval_type right>
constexpr bool is_degenerate (interval< T, left, right > i) noexcept
 Test whether an interval contains no values.
template<typename T, interval_type left, interval_type right>
constexpr auto hull (interval< T, left, right > a, interval< T, left, right > b) noexcept -> interval< T, left, right >
 Find the smallest interval spanning both input intervals.
template<typename T, typename... Ts>
constexpr auto hull (T first, Ts... args) noexcept -> interval< T, interval_type::closed, interval_type::closed >
 Find the smallest closed interval spanning the input values.
template<typename T, interval_type left, interval_type right>
constexpr auto intersection (interval< T, left, right > a, interval< T, left, right > b) noexcept -> std::optional< interval< T, left, right > >
 Compute the overlap of two intervals.
template<typename T, interval_type left, interval_type right>
constexpr auto hull (bounds< T, left, right > a, bounds< T, left, right > b) noexcept -> bounds< T, left, right >
 Find the smallest bounds spanning two input bounds.
template<typename T, typename... Ts>
constexpr auto hull (Point2D_< T > first, Ts... args) noexcept -> bounds< T, interval_type::closed, interval_type::closed >
 Find the smallest closed bounds spanning the input points.
template<typename T, interval_type left, interval_type right>
constexpr auto intersection (bounds< T, left, right > a, bounds< T, left, right > b) noexcept -> std::optional< bounds< T, left, right > >
 Compute the region shared by two bounds.
template<typename T, interval_type left, interval_type right>
constexpr auto bottom_left (bounds< T, left, right > b) -> Point2D_< T >
 Get the point at the lower X and Y endpoints.
template<typename T, interval_type left, interval_type right>
constexpr auto top_right (bounds< T, left, right > b) -> Point2D_< T >
 Get the point at the upper X and Y endpoints.
template<typename T, interval_type left, interval_type right>
constexpr auto corners (bounds< T, left, right > b)
 Get the lower-left and upper-right corners of the bounds.
BUILDER_EXPORT TileFilter * loadFilter (std::string name)
 Load a dataset filter by name.

Function Documentation

◆ above_interval()

template<typename T, interval_type left, interval_type right>
bool envitia::above_interval ( interval< T, left, right > i,
T x )
constexprnoexcept

Test whether a value lies above an interval's upper endpoint.

Template Parameters
TEndpoint type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
iInterval to test against.
xValue to test.
Returns
Whether the value is outside the interval on the upper side.

◆ below_interval()

template<typename T, interval_type left, interval_type right>
bool envitia::below_interval ( interval< T, left, right > i,
T x )
constexprnoexcept

Test whether a value lies below an interval's lower endpoint.

Template Parameters
TEndpoint type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
iInterval to test against.
xValue to test.
Returns
Whether the value is outside the interval on the lower side.

◆ bottom_left()

template<typename T, interval_type left, interval_type right>
auto envitia::bottom_left ( bounds< T, left, right > b) -> Point2D_< T >
constexpr

Get the point at the lower X and Y endpoints.

Template Parameters
TCoordinate type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
bBounds from which to obtain the point.
Returns
The lower-left point of the bounds.

◆ corners()

template<typename T, interval_type left, interval_type right>
auto envitia::corners ( bounds< T, left, right > b)
constexpr

Get the lower-left and upper-right corners of the bounds.

Template Parameters
TCoordinate type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
bBounds from which to obtain the corners.
Returns
The lower-left and upper-right corner points.

◆ getLayerInfos()

std::list< LayerInformation * > envitia::getLayerInfos ( MapLinkProjectImpl & )

◆ getMapInformation()

MapInformation * envitia::getMapInformation ( MapLinkProjectImpl & )

◆ hull() [1/4]

template<typename T, interval_type left, interval_type right>
auto envitia::hull ( bounds< T, left, right > a,
bounds< T, left, right > b ) -> bounds< T, left, right >
constexprnoexcept

Find the smallest bounds spanning two input bounds.

Template Parameters
TCoordinate type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
aFirst bounds.
bSecond bounds.
Returns
Bounds spanning both inputs.

◆ hull() [2/4]

template<typename T, interval_type left, interval_type right>
auto envitia::hull ( interval< T, left, right > a,
interval< T, left, right > b ) -> interval< T, left, right >
constexprnoexcept

Find the smallest interval spanning both input intervals.

Template Parameters
TEndpoint type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
aFirst interval.
bSecond interval.
Returns
An interval spanning both inputs.

◆ hull() [3/4]

template<typename T, typename... Ts>
auto envitia::hull ( Point2D_< T > first,
Ts... args ) -> bounds< T, interval_type::closed, interval_type::closed >
constexprnoexcept

Find the smallest closed bounds spanning the input points.

Template Parameters
TCoordinate type.
TsTypes of additional points.
Parameters
firstFirst point.
argsAdditional points to include.
Returns
Closed bounds spanning all input points.

◆ hull() [4/4]

template<typename T, typename... Ts>
auto envitia::hull ( T first,
Ts... args ) -> interval< T, interval_type::closed, interval_type::closed >
constexprnoexcept

Find the smallest closed interval spanning the input values.

Template Parameters
TValue type.
TsTypes of additional values.
Parameters
firstFirst value.
argsAdditional values to include.
Returns
A closed interval from the minimum to the maximum input value.

◆ in_interval()

template<typename T, interval_type left, interval_type right>
bool envitia::in_interval ( interval< T, left, right > i,
T x )
constexprnoexcept

Test whether a value belongs to an interval, respecting open endpoints.

Template Parameters
TEndpoint type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
iInterval to test against.
xValue to test.
Returns
Whether the value is inside the interval.

◆ intersection() [1/2]

template<typename T, interval_type left, interval_type right>
auto envitia::intersection ( bounds< T, left, right > a,
bounds< T, left, right > b ) -> std::optional< bounds< T, left, right > >
constexprnoexcept

Compute the region shared by two bounds.

Template Parameters
TCoordinate type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
aFirst bounds.
bSecond bounds.
Returns
The overlap, or std::nullopt if either axis has no overlap.

◆ intersection() [2/2]

template<typename T, interval_type left, interval_type right>
auto envitia::intersection ( interval< T, left, right > a,
interval< T, left, right > b ) -> std::optional< interval< T, left, right > >
constexprnoexcept

Compute the overlap of two intervals.

Template Parameters
TEndpoint type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
aFirst interval.
bSecond interval.
Returns
The overlap, or std::nullopt if the intervals do not overlap.

◆ is_degenerate()

template<typename T, interval_type left, interval_type right>
bool envitia::is_degenerate ( interval< T, left, right > i)
constexprnoexcept

Test whether an interval contains no values.

Template Parameters
TEndpoint type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
iInterval to test.
Returns
Whether the interval is empty.

◆ lerp()

BUILDER_EXPORT win_colorref envitia::lerp ( win_colorref a,
win_colorref b,
double t )

Interpolate between two colours using the factor t.

Parameters
aColour at the start of the interpolation.
bColour at the end of the interpolation.
tInterpolation factor.
Returns
A colour interpolated between a and b.

◆ loadFilter()

BUILDER_EXPORT TileFilter * envitia::loadFilter ( std::string name)

Load a dataset filter by name.

Parameters
nameName of the filter to load.
Returns
The loaded filter, or nullptr if loading fails.

◆ top_right()

template<typename T, interval_type left, interval_type right>
auto envitia::top_right ( bounds< T, left, right > b) -> Point2D_< T >
constexpr

Get the point at the upper X and Y endpoints.

Template Parameters
TCoordinate type.
leftLower endpoint inclusion.
rightUpper endpoint inclusion.
Parameters
bBounds from which to obtain the point.
Returns
The upper-right point of the bounds.