Programmer Guide/Command Reference/EVAL/pgiline: Difference between revisions
From STX Wiki
< Programmer Guide | Command Reference | EVAL
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 4: | Line 4: | ||
:<code>pgiline(<var>X</var>, <var>IX</var>, <var>PX1<sub>scalar</sub></var>, <var>PY1<sub>scalar</sub></var>), <var>PX2<sub>scalar</sub></var>, <var>PY2<sub>scalar</sub></var>)</code> | :<code>pgiline(<var>X</var>, <var>IX</var>, <var>PX1<sub>scalar</sub></var>, <var>PY1<sub>scalar</sub></var>), <var>PX2<sub>scalar</sub></var>, <var>PY2<sub>scalar</sub></var>)</code> | ||
:;<var>X</var>:a [[../#polygons|closed point-list]] or a [[../#polygons|polygon-stream]] defining one or more polygons. | :;<var>X</var>:a [[../#polygons|closed point-list]] or a [[../#polygons|polygon-stream]] defining one or more polygons. | ||
:;<var>IX</var>:The index of the polygon of ''X'' to be tested; 0 | :;<var>IX</var>:The index of the polygon of ''X'' to be tested; 0 ≤ <var>IX</var> < <code>[[../pgget|pgget]](''X'')</code> | ||
:;<var>PX1, PY1, PX2, PY2</var>: The points <''PX1'',''PY1''> and <''PX2'',''PY2''> defining the line to be tested. | :;<var>PX1, PY1, PX2, PY2</var>: The points <''PX1'',''PY1''> and <''PX2'',''PY2''> defining the line to be tested. | ||
;Result: The result ''r'' is a Nx3 matrix. Each row of the matrix contains the coordinates of a point of the line and its state. | ;Result: The result ''r'' is a Nx3 matrix. Each row of the matrix contains the coordinates of a point of the line and its state. |
Latest revision as of 19:11, 21 April 2011
Find all intersections of a line, defined by two points, with a polygon.
- Usage
pgiline(X, IX, PX1scalar, PY1scalar), PX2scalar, PY2scalar)
- X
- a closed point-list or a polygon-stream defining one or more polygons.
- IX
- The index of the polygon of X to be tested; 0 ≤ IX <
pgget(X)
- PX1, PY1, PX2, PY2
- The points <PX1,PY1> and <PX2,PY2> defining the line to be tested.
- Result
- The result r is a Nx3 matrix. Each row of the matrix contains the coordinates of a point of the line and its state.
i r[i,0], r[i,1] r[i,2] 0 start point of the line 0 if the start point is outside XIX
1 if the start point is inside XIX1 .. N-2 intersection point 0 if the line leaves XIX
1 if the line enters XIXN-1 end point of the line 0 if the end point is outside XIX
1 if the end point is inside XIX