ST_RelateMatch
Prev | 8.11.1. Topological Relationships | Next

## Name

ST_RelateMatch — Tests if a DE-9IM Intersection Matrix matches an Intersection Matrix pattern

## Synopsis

`boolean ST_RelateMatch(`text intersectionMatrix, text intersectionMatrixPattern`)`;

## Description

Tests if a Dimensionally Extended 9-Intersection Model (DE-9IM) `intersectionMatrix` value satisfies an `intersectionMatrixPattern`. Intersection matrix values can be computed by ST_Relate.

For more information refer to Section 5.1, “Determining Spatial Relationships”.

Performed by the GEOS module

Availability: 2.0.0

## Examples

    SELECT ST_RelateMatch('101202FFF', 'TTTTTTFFF') ;
    -- result --
    t

Patterns for common spatial relationships matched against intersection matrix values, for a line in various positions relative to a polygon

    SELECT pat.name AS relationship, pat.val AS pattern,
           mat.name AS position, mat.val AS matrix,
           ST_RelateMatch(mat.val, pat.val) AS match
        FROM (VALUES ( 'Equality', 'T1FF1FFF1' ),
                     ( 'Overlaps', 'T*T***T**' ),
                     ( 'Within',   'T*F**F***' ),
                     ( 'Disjoint', 'FF*FF****' )) AS pat(name,val)
        CROSS JOIN
            (VALUES  ('non-intersecting', 'FF1FF0212'),
                     ('overlapping',      '1010F0212'),
                     ('inside',           '1FF0FF212')) AS mat(name,val);

     relationship |  pattern  |     position     |  matrix   | match
    --------------+-----------+------------------+-----------+-------
     Equality     | T1FF1FFF1 | non-intersecting | FF1FF0212 | f
     Equality     | T1FF1FFF1 | overlapping      | 1010F0212 | f
     Equality     | T1FF1FFF1 | inside           | 1FF0FF212 | f
     Overlaps     | T*T***T** | non-intersecting | FF1FF0212 | f
     Overlaps     | T*T***T** | overlapping      | 1010F0212 | t
     Overlaps     | T*T***T** | inside           | 1FF0FF212 | f
     Within       | T*F**F*** | non-intersecting | FF1FF0212 | f
     Within       | T*F**F*** | overlapping      | 1010F0212 | f
     Within       | T*F**F*** | inside           | 1FF0FF212 | t
     Disjoint     | FF*FF**** | non-intersecting | FF1FF0212 | t
     Disjoint     | FF*FF**** | overlapping      | 1010F0212 | f
     Disjoint     | FF*FF**** | inside           | 1FF0FF212 | f

## See Also

Section 5.1, “Determining Spatial Relationships”, ST_Relate

Prev | Up | Next
ST_Relate | Home | ST_Touches