DK11 for Delphi | GisDataSet.TGIS_DataSet.Open | Constructors | Methods | Properties | Events
Open the database which meets extent and query. Will use RTree if available.
// Delphi public procedure Open( const _layer : TGIS_LayerVector; const _extent : TGIS_Extent; const _query : String = ''; const _shape : TGIS_Shape = nil; const _de9im : String = ''; const _skipDeleted : Boolean = True; const _maxRecords : Integer = -1 ); virtual;
// C++ Builder public: virtual void Open( TGIS_LayerVector* const _layer, TGIS_Extent* const _extent, const UnicodeString _query, TGIS_Shape* const _shape, const UnicodeString _de9im, const bool _skipDeleted, const int _maxRecords );
Name | Type | Description |
---|---|---|
_layer | TGIS_LayerVector | source layer for the dataset |
_extent | TGIS_Extent | extent of items to be found; expected _extent units are in a Layer coordinate space |
_query | String | query which must be matched by item; closely mimics SQL WHERE clause; for examples you can use 'AGE >= 18'; empty (default) means that no items will match. |
_shape | TGIS_Shape | if not nil, then only shapes matched dm9 matrix with _shape will be found |
_de9im | String | DE-9IM matrix of comparison |
_skipDeleted | Boolean | set a skip deleted treatment; by default deleted items will be ignored |
_maxRecords | Integer | maximum number of records to be returned; default is -1 which means no limit; 0 means that only structure will be filled |
Use this method to fill the dataset with all shapes in the layer matching given criteria. Using _query param we can narrow the result of the shape searching down to the minimum. This should speed up our process of locating a desirable shape.