LuciadCPillar 2023.1.04
luciad::MapQueryFeaturesResult Struct Reference

Contains information about (parts of) features hit by a Query, returned by Map::queryFeatures. More...

#include <luciad/maps/IMapQueryFeaturesCallback.h>

Public Member Functions

 MapQueryFeaturesResult (LayerFeatureId featureId, std::optional< Coordinate > mapTouchPoint, bool overlay)
 Create a MapQueryFeaturesResult containing information about (part of) a touched feature. More...
 
bool operator!= (const MapQueryFeaturesResult &rhs) const
 
bool operator== (const MapQueryFeaturesResult &rhs) const
 

Public Attributes

LayerFeatureId featureId
 Object that has been hit by the query. More...
 
std::optional< CoordinatemapTouchPoint
 Location where a part of the feature has been touched in the Map reference. More...
 
bool overlay = false
 When overlay is true, it means that the part of the feature that was touched is always painted on top of everything else. More...
 

Detailed Description

Contains information about (parts of) features hit by a Query, returned by Map::queryFeatures.

Since
2020.1

Constructor & Destructor Documentation

◆ MapQueryFeaturesResult()

luciad::MapQueryFeaturesResult::MapQueryFeaturesResult ( LayerFeatureId  featureId,
std::optional< Coordinate mapTouchPoint,
bool  overlay 
)

Create a MapQueryFeaturesResult containing information about (part of) a touched feature.

Parameters
featureIdlayer/feature that was touched.
mapTouchPointlocation where the feature was touched. This parameter is optional: if absent, a screen space component (e.g. a label) has been hit.
overlayflag if the hit is drawn as an overlay and hence on top of other features.
Since
2020.2

Member Function Documentation

◆ operator!=()

bool luciad::MapQueryFeaturesResult::operator!= ( const MapQueryFeaturesResult rhs) const

◆ operator==()

bool luciad::MapQueryFeaturesResult::operator== ( const MapQueryFeaturesResult rhs) const

Member Data Documentation

◆ featureId

LayerFeatureId luciad::MapQueryFeaturesResult::featureId

Object that has been hit by the query.

◆ mapTouchPoint

std::optional<Coordinate> luciad::MapQueryFeaturesResult::mapTouchPoint

Location where a part of the feature has been touched in the Map reference.

This field is optional:

  • if it has a value, it means that the part of the feature that has been hit was painted on the map.
  • if it doesn't have a value, it means that the part of the feature that has been hit was painted in screen space. This is for example the case for labels. Note that in that case, the overlay field will be true as well.
Since
2020.2

◆ overlay

bool luciad::MapQueryFeaturesResult::overlay = false

When overlay is true, it means that the part of the feature that was touched is always painted on top of everything else.

This is currently the case for labels.

Since
2020.2