Programmer Guide/Command Reference/EVAL/pgxgrid: Difference between revisions

From STX Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 33: Line 33:
:content of ''r''[i,*], i=1..N (one row for each intersection line):
:content of ''r''[i,*], i=1..N (one row for each intersection line):
::{|class="einrahmen"
::{|class="einrahmen"
|''r''[i,0] ||''ix''[i]|
|''r''[i,0] ||''ix''
|the ''X'' index of the intersection line
|the ''X'' index of the intersection line i
|-
|-
|''r''[i,1] ||''iy''[i]
|''r''[i,1] ||''iy''
|the ''Y'' index of the first point <''X''[''ix''[i]],''Y''[iy[i]]> inside ''P<sub>IP</sub>''
|the ''Y'' index of the first point <''X''[''ix''],''Y''[''iy'']> i inside ''P<sub>IP</sub>''
|-
|-
|''r''[i,2] ||''iymin''
|''r''[i,2] ||''ny''
|the index of the minimum ''Y'' value of an intersection line
|the number of ''Y'' points inside ''P<sub>IP</sub>''
|-
|-
|''r''[i,3] ||''iymax''
|''r''[i,3] ||''ymin''
|the index of the maximum ''Y'' value of an intersection line
|the y value of the point where the intersection line i enters the polygon ''P<sub>IP</sub>''
|-
|-
|''r''[i,4] ||''ngrid''
|''r''[i,4] ||''ymax''
|the accumlated number of grid points inside ''P<sub>IP</sub>''
|the y value of the point where the intersection line i leaves the polygon ''P<sub>IP</sub>''
|-
|-
|''r''[i,5] ||''aclen''
|''r''[i,5] ||''acofs''
|the absolute length of the centerline
|the absolute length of the centerline from the begin to intersection line i
|-
|-
|''r''[i,6] ||''rclen''
|''r''[i,6] ||''rclen''
|the relative length of the centerline
|the relative length of the centerline from the begin to intersection line i
|}
|}
:Notes:
:*The centerline is the line defined by the centerpoints <''X''[i],(''ymin''<sub>i</sub>+''ymax''<sub>i</sub>)/2> of all intersection lines
;See also: [[../pginit|pginit]], [[../pgget|pgget]], [[../pgitest|pgitest]], [[../pgiline|pgiline]], [[../pgsplit|pgsplit]], [[../pgtrans|pgtrans]], [[../pghull|pghull]]
;See also: [[../pginit|pginit]], [[../pgget|pgget]], [[../pgitest|pgitest]], [[../pgiline|pgiline]], [[../pgsplit|pgsplit]], [[../pgtrans|pgtrans]], [[../pghull|pghull]]




[[../#Functions|<function list>]]
[[../#Functions|<function list>]]

Revision as of 10:13, 20 April 2011

Find all parts of the vertical lines of a grid inside a polygon. The grid is defined by the vectors x (length nx and y (length ny). The function detects all parts of the vertical grid lines <x[i],y[0]>..<x[i],y[ny-1]> (i=0..nx-1), which are inside the polygon p.

Usage
pgxgrid(P, IP, Xvector, Yvector)
P
a closed point-list or a polygon-stream defining one or more polygons.
IP
The index of the polygon of P to be tested; 0 <= IP < pgget(P)
X
The x-scale vector of the grid.
Y
The y-scale vector of the grid.
Result
The result r is a (N+1)x3 matrix, with N is the number of vertical grid lines intersecting the polygon.
content of r[0,*]:
r[0,0] ixmin the X index of the first vertical line intersecting PIP
r[0,1] ixmax the X index of the last vertical line intersecting PIP
r[0,2] iymin the index of the minimum Y value of an intersection line
r[0,3] iymax the index of the maximum Y value of an intersection line
r[0,4] ngrid the accumlated number of grid points inside PIP
r[0,5] aclen the absolute length of the centerline
r[0,6] rclen the relative length of the centerline
content of r[i,*], i=1..N (one row for each intersection line):
r[i,0] ix the X index of the intersection line i
r[i,1] iy the Y index of the first point <X[ix],Y[iy]> i inside PIP
r[i,2] ny the number of Y points inside PIP
r[i,3] ymin the y value of the point where the intersection line i enters the polygon PIP
r[i,4] ymax the y value of the point where the intersection line i leaves the polygon PIP
r[i,5] acofs the absolute length of the centerline from the begin to intersection line i
r[i,6] rclen the relative length of the centerline from the begin to intersection line i
Notes:
  • The centerline is the line defined by the centerpoints <X[i],(ymini+ymaxi)/2> of all intersection lines
See also
pginit, pgget, pgitest, pgiline, pgsplit, pgtrans, pghull


<function list>

Navigation menu

Personal tools