User Tools

Site Tools


api:dk11:delphi:gislayervector.tgis_layervector.findfirst_tgis_extent_string_tgis_shape_string_boolean

TGIS_LayerVector.FindFirst(TGIS_Extent; String; TGIS_Shape; String; Boolean) method

DK11 for Delphi | GisLayerVector.TGIS_LayerVector.FindFirst | Overloads | Constructors | Fields | Methods | Properties | Events

Finds the first occurrence of an item which meets an extent, query, and additional parameters. Will use RTree if available.

Available also on: .NET | Java | ActiveX | Python.

Syntax

// Delphi
public
  function FindFirst(
    const _extent : TGIS_Extent;
    const _query : String;
    const _shape : TGIS_Shape;
    const _de9im : String;
    const _skipDeleted : Boolean
  ) : TGIS_Shape; overload; virtual;
// C++ Builder
public:
  virtual TGIS_Shape* FindFirst(
    TGIS_Extent* const _extent,
    const UnicodeString _query,
    TGIS_Shape* const _shape,
    const UnicodeString _de9im,
    const bool _skipDeleted
  ) /* overload */;

Parameters

Name Type Description
_extent TGIS_Extent extent of items to be found; the layer has been attached to the Viewer then expected _extent units are in a Viewer coordinate space; otherwise 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 _de9im 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

Result

Type Description
TGIS_Shape Shape itself or nil.

Remarks

See: FindNext

Use this method to find to the first shape 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 desired shape.

To locate a shape, simply choose an existing layer and use FindFirst method of with a proper extent and a SQL query as a WHERE clause.

References

2022/11/16 01:22

Page Tools