POLYGON returns properties of an area enclosed by a polygon in two dimensions relative to lines, axes and points:

Syntax

  1. POLYGON(Pno%, Ndim%[=2], "ColLab$_1", "ColLab$_2", X0, Y0, XN, YN, Mode%)
  2. POLYGON(0, Npoints%, X_11, Y_12, X_21, Y_22,.., X_n1, Y_n2, X0, Y0, XN, YN, Mode%)
  3. POLYGON(@ObjFn(..), Ndim%[=2], @ObjColPar_1, @ObjColPar_2, X0, Y0, XN, YN, Mode%)
  4. POLYGON(Telitab$, Ndim%[=2], "ColLab$_1", "ColLab$_2", X0, Y0, XN, YN, Mode%)

Arguments

Remarks

POLYGON can be used in the following ways:

1.   Properties of an area enclosed by a polygon in two dimensions

For Mode%1 to 15 the function POLYGON returns a property of the polygon.

In these cases the points (X0, Y0) and (XN, YN) are not used. These points are no part of the polygon point set and X0, Y0, XN, YN should all be 0, to make sure that they will not influence the result.

2.   Properties of a line section within a polygon in two dimensions

For Mode%16 to 24 the function POLYGON returns properties of a line section within a polygon in two dimensions.

In these cases the point (X0, Y0) is the starting point and (XN, YN) is the end point of the line. This line is not a part of the polygon and the property is calculated only for the section(s) inside the polygon.

3.   Determine whether a point is located inside or outside a polygon in two dimensions

For Mode%25 to 27 the function POLYGON returns "1" when point (X0, Y0) is inside the polygon and "0" when it is outside the polygon .

In these cases the point (XN, YN) is not used. XN, YN should both be 0, to make sure that they will not influence the result.

Examples

Example 1: Syntax 1 (telitab in dataslot), Properties of the area 

The relation

POLYGON(1, 2, "XC", "YC", 0, 0, 0, 0, Mode)

contains the following Telitab set in the Data slot: 

|POLYGON1| 

2 "XC" "YC" 
"1" 0 0 
"2" 1 0 
"3" 1 1 
"4" 0 1|

The polygon is a square with corner points (0,0), (1,0), (1,1) and (0,1), this gives for example the following properties:

Example 2: Syntax 1 (telitab in dataslot), Properties of a line section

The function:

POLYGON(1, 2, "XC", "YC", X0, Y0, XN, YN, Mode)

with the TeLiTab of the previous example in the dataset gives the possibility to calculate properties of a line section within the polygon. Lets take a look at a line between the points (0,0) and (2,2):

X0 = 0
Y0 = 0 
XN = 2
YN = 2

Only the section between the points (0,0) and (1,1) is within the polygon, this gives for example the following properties:

Example 3: Syntax 1 (telitab in dataslot), Information on wheter a point  is located inside or outside the polygon 

The function:

POLYGON(1, 2, "XC", "YC", X0, Y0, 0, 0, Mode)

with the TeLiTab of the first example in the dataset gives the possibility to determine whether a point is located inside or outside a polygon. Lets take a look at the point (-0.5 , 0.5):

X0 = -0.5
Y0 = 0.5

This results in the following properties:

Example 4: Syntax 2 (direct definition)


In direct definition, the points of the polygon are stated in the relation itself:

POLYGON(0, Npoints%, X_11, Y_12, X_21, Y_22,.., X_n1, Y_n2, X0, Y0, XN, YN, Mode%)

The minimum number of (X,Y) data points Npoints% in the list is 3 in which case the polygon is a triangle.

The syntax

POLYGON(0, 4, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, Mode)

is the same polygon as in the previous examples and e.g. for Mode = 1, the area of the polygon is returned: 1.00 


 

Quick links: Functions overview | Attribute overview | Constants overview | Dimensions overview