Table 4-4. Postgres Geometric Operators
Operator | Description | Usage |
---|---|---|
+ | Translation | '((0,0),(1,1))'::box + '(2.0,0)'::point |
- | Translation | '((0,0),(1,1))'::box - '(2.0,0)'::point |
* | Scaling/rotation | '((0,0),(1,1))'::box * '(2.0,0)'::point |
/ | Scaling/rotation | '((0,0),(2,2))'::box / '(2.0,0)'::point |
# | Intersection | '((1,-1),(-1,1))' # '((1,1),(-1,-1))' |
# | Number of points in polygon | # '((1,0),(0,1),(-1,0))' |
## | Point of closest proximity | '(0,0)'::point ## '((2,0),(0,2))'::lseg |
&& | Overlaps? | '((0,0),(1,1))'::box && '((0,0),(2,2))'::box |
&< | Overlaps to left? | '((0,0),(1,1))'::box &< '((0,0),(2,2))'::box |
&> | Overlaps to right? | '((0,0),(3,3))'::box &> '((0,0),(2,2))'::box |
<-> | Distance between | '((0,0),1)'::circle <-> '((5,0),1)'::circle |
<< | Left of? | '((0,0),1)'::circle << '((5,0),1)'::circle |
<^ | Is below? | '((0,0),1)'::circle <^ '((0,5),1)'::circle |
>> | Is right of? | '((5,0),1)'::circle >> '((0,0),1)'::circle |
>^ | Is above? | '((0,5),1)'::circle >^ '((0,0),1)'::circle |
?# | Intersects or overlaps | '((-1,0),(1,0))'::lseg ?# '((-2,-2),(2,2))'::box; |
?- | Is horizontal? | '(1,0)'::point ?- '(0,0)'::point |
?-| | Is perpendicular? | '((0,0),(0,1))'::lseg ?-| '((0,0),(1,0))'::lseg |
@-@ | Length or circumference | @-@ '((0,0),(1,0))'::path |
?| | Is vertical? | '(0,1)'::point ?| '(0,0)'::point |
?|| | Is parallel? | '((-1,0),(1,0))'::lseg ?|| '((-1,2),(1,2))'::lseg |
@ | Contained or on | '(1,1)'::point @ '((0,0),2)'::circle |
@@ | Center of | @@ '((0,0),10)'::circle |
~= | Same as | '((0,0),(1,1))'::polygon ~= '((1,1),(0,0))'::polygon |