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

From STX Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 2: Line 2:
Shift, scale and/or rotate a polygon.
Shift, scale and/or rotate a polygon.
;Usage:
;Usage:
:<code>pgtrans(<var>X</var>, <var>IX</var> {, <var>DX</var>, <var>DY</var>), <var>KX</var>, <var>KY</var>, <var>A</var>})</code>
:<code>pgtrans(<var>X</var>, <var>IX</var> {, <var>DX</var>, <var>DY</var>, <var>KX</var>, <var>KY</var>, <var>A</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> < <code>[[../pgget|pgget]](''X'')</code>
:;<var>IX</var>:The index of the polygon of ''X'' to be tested; 0 <= <var>IX</var> < <code>[[../pgget|pgget]](''X'')</code>

Revision as of 10:19, 20 April 2011

Shift, scale and/or rotate a polygon.

Usage
pgtrans(X, IX {, DX, DY, KX, KY, A})
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)
DX, DY
shift values for x and y (default=0, no shift)
  • shift the center point <xc,yc> of XIX
<x[i] , y[i]> -> <x[i]+DX , y[i]+DY>
KX, KY
scaling factors; both factors must be greater than zero (default=1, no scaling)
  • scale the distances of corners of XIX to the center point
<x[i] , y[i]> -> <(x[i]-xc)*KX+xc , (y[i]-yc)*KY'+yc>
A
rotation angle in degree (default=0, no rotation); a scaling factors (default=1)
  • rotate the polygon around the center point
Result
The result r is a polygon-stream containing the transformed XIX.
See also
pginit, pgget, pgitest, pgiline, pgxgrid, pgsplit, pghull

<function list>

Navigation menu

Personal tools