Developer's Guide - MapGuide Open Source - OSGeo
Developer's Guide - MapGuide Open Source - OSGeo
Developer's Guide - MapGuide Open Source - OSGeo
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Querying Feature Data<br />
In order to work with feature data, you must first select the features you are<br />
interested in. This can be done with the Viewer or through Web API calls.<br />
Feature Readers<br />
A feature reader, represented by an MgFeatureReader object, is used to iterate<br />
through a list of features. Typically, the feature reader is created by selecting<br />
features from a feature source.<br />
To create a feature reader, use the MgFeatureService::SelectFeatures()<br />
method. See Selecting with the Web API (page 35) for details about selection.<br />
To process the features in a feature reader, use the<br />
MgFeatureReader::ReadNext() method. You must call this method before<br />
being able to read the first feature. Continue calling the method to process<br />
the rest of the features.<br />
The MgFeatureReader::GetPropertyCount() method returns the number of<br />
properties available for the current feature. When you know the name and<br />
type of the feature property, call one of the<br />
MgFeatureReader::GetPropertyType() methods (where PropertyType<br />
represents one of the available types) to retrieve the value. Otherwise, call<br />
MgFeatureReader::GetPropertyName() and<br />
MgFeatureReader::GetPropertyType() before retrieving the value.<br />
Selecting with the Web API<br />
Selections can be created programatically with the Web API. This is done by<br />
querying data in a feature source, creating a feature reader that contains the<br />
features, then converting the feature reader to a selection (MgSelection object).<br />
To create a feature reader, apply a selection filter to a feature class in the feature<br />
source. A selection filter can be a basic filter, a spatial filter, or a combination<br />
of the two. The filter is stored in an MgFeatureQueryOptions object.<br />
Basic filters are used to select features based on the values of feature properties.<br />
For example, you could use a basic filter to select all roads that have four or<br />
more lanes.<br />
Querying Feature Data | 35