DK11 for .NET | TatukGIS.NDK.TGIS_LayerVector.Loop | Overloads | Constructors | Fields | Methods | Properties | Events
Prepares enumerator (also known as iterator or cursor) to iterate the layer.
// C# public virtual TGIS_LayerVectorEnumeratorFactory Loop( TGIS_Extent _extent, string _query );
' VisualBasic Public Overridable Function Loop( ByVal _extent As TGIS_Extent, ByVal _query As String ) As TGIS_LayerVectorEnumeratorFactory
// Oxygene public function Loop( _extent : TGIS_Extent; _query : String ) : TGIS_LayerVectorEnumeratorFactory; virtual;
Name | Type | Description |
---|---|---|
_extent | TGIS_Extent | extent of items to be found; expected _extent units are in a Layer coordinate space |
_query | string 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. |
Type | Description |
---|---|
TGIS_LayerVectorEnumeratorFactory | Shape itself or nil. |
// Indirect use foreach (shp in layer.Loop( some_extent, "POPULATION>100000 AND AREA>50333") ) { dosomething(); } // Direct enumerator use TGIS_LayerVectorEnumerator en ; en = layer.Loop( some_extent, "POPULATION>100000 AND AREA>50333").GetEnumerator() ; while (en.MoveNext()) { shp = en.GetCurrent(); dosomething(); } en.Dispose() ;
'Indirect use For Each shp In layer.Loop( some_extent, "POPULATION>100000 AND AREA>50333") ) dosomething() Next 'Direct enumerator use Dim en As TGIS_LayerVectorEnumerator en = layer.Loop( some_extent, "POPULATION>100000 AND AREA>50333").GetEnumerator() While (en.MoveNext()) shp = en.GetCurrent() dosomething() End While en.Dispose() ;