All Cadcorp SIS API Methods

CombineLocus Method

Description

Creates a named Spatial Filter in a Named Object Library by combining two named Spatial Filter objects using a Boolean operation, replacing any existing Spatial Filter with the same name.

Syntax

Visual Basic
Public Function CombineLocus( _
   ByVal locusOutput As String, _
   ByVal locus1 As String, _
   ByVal locus2 As String, _
   ByVal mode As Integer _
) As Integer

Parameters

locusOutput
The named Spatial Filter to create, or replace (see Remarks).
locus1
The first Spatial Filter to combine, or an empty string (see Remarks).
locus2
The second Spatial Filter to combine, or an empty string (see Remarks).
mode

The Boolean operation to use:

SIS_BOOLEAN_AND    the Items' centroid must be in both Spatial Filter objects.
SIS_BOOLEAN_OR   the Item's centroid must be in at least one of the original Spatial Filter objects.
SIS_BOOLEAN_XOR the Item's centroid must be in exactly one of the original Spatial Filter objects.
SIS_BOOLEAN_DIFF the Item's centroid must be in Spatial Filter1, but not in Spatial Filter2.

Remarks

The new Spatial Filter works by making and storing a copy of the two old Spatial Filter objects. The new Spatial Filter will not support any advanced testing modes, but instead will use the testing modes of the two Spatial Filter objects. Any changes to the existing Spatial Filter objects after calling this method will not affect the new Spatial Filter.

Either Spatial Filter1 or Spatial Filter2 may be empty strings (but not both). An empty string for a Spatial Filter means no Spatial Filter (i.e. no Items are excluded). Therefore, by using an empty string for Spatial Filter1 with the SIS_BOOLEAN_DIFF mode the effect of Spatial Filter2 can be reversed.

Available: GEO OD

Group:

Example

sis.CombineLocus ("CombinedSpatialFilter", SpatialFilter1$, SpatialFilter2$, SIS_BOOLEAN_AND)