![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /proc/self/root/usr/share/doc/gnustep-base-doc/Base/Reference/ |
Upload File : |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>NSAffineTransform.m</title> </head> <body> <font face="serif"> <a href="Base.html">Up</a> <br /> <h1><a name="title$NSAffineTransform">NSAffineTransform.m</a></h1> <h3>Authors</h3> <dl> <dt>Ovidiu Predescu (<a href="mailto:ovidiu@net-community.com"><code>ovidiu@net-community.com</code></a>)</dt> <dd> </dd> <dt>Richard Frith-Macdonald (<a href="mailto:richard@brainstorm.co.uk"><code>richard@brainstorm.co.uk</code></a>)</dt> <dd> </dd> </dl> <blockquote> This class provides a way to perform affine transforms. It provides a matrix for transforming from one coordinate system to another. </blockquote> <p><b>Copyright:</b> (C) 1996,1999 Free Software Foundation, Inc.</p> <div> </div> <h1><a name="001000000000"> Software documentation for the NSAffineTransform class </a></h1> <h2><a name="class$NSAffineTransform">NSAffineTransform</a> : <a rel="gsdoc" href="NSObject.html#class$NSObject">NSObject</a></h2> <blockquote class="declared"> <dl> <dt><b>Declared in:</b></dt> <dd>Foundation/NSAffineTransform.h</dd> </dl> </blockquote> <blockquote> <dl> <dt><b>Conforms to:</b></dt> <dd><a rel="gsdoc" href="NSObject.html#protocol$(NSCopying)">NSCopying</a></dd> <dd><a rel="gsdoc" href="NSObject.html#protocol$(NSCoding)">NSCoding</a></dd> </dl> </blockquote> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> <em>Description forthcoming.</em> </div> <b>Method summary</b> <ul> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform+transform">+transform</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-appendTransform$">-appendTransform:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-initWithTransform$">-initWithTransform:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-invert">-invert</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-prependTransform$">-prependTransform:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-rotateByDegrees$">-rotateByDegrees:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-rotateByRadians$">-rotateByRadians:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-scaleBy$">-scaleBy:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-scaleXBy$yBy$">-scaleXBy:yBy:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-setTransformStruct$">-setTransformStruct:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-transformPoint$">-transformPoint:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-transformSize$">-transformSize:</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-transformStruct">-transformStruct</a></li> <li><a rel="gsdoc" href="NSAffineTransform.html#method$NSAffineTransform-translateXBy$yBy$">-translateXBy:yBy:</a></li> </ul> <hr width="50%" align="left" /> <div class="method"> <h3><a name="method$NSAffineTransform+transform">transform </a></h3> + (<a rel="gsdoc" href="#class$NSAffineTransform">NSAffineTransform</a>*) <b>transform</b>;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Return an autoreleased instance of this class. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-appendTransform$">appendTransform: </a></h3> - (void) <b>appendTransform:</b> (<a rel="gsdoc" href="#class$NSAffineTransform">NSAffineTransform</a>*)aTransform;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Appends the transform matrix to the receiver. This is done by performing a matrix multiplication of the receiver with <var>aTransform</var> so that <var>aTransform</var> is the first transform applied to the user coordinate. The new matrix then replaces the receiver's matrix. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-initWithTransform$">initWithTransform: </a></h3> - (id) <b>initWithTransform:</b> (<a rel="gsdoc" href="#class$NSAffineTransform">NSAffineTransform</a>*)aTransform;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Initialize the receiever's instance with the instance represented by <var>aTransform</var>. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-invert">invert </a></h3> - (void) <b>invert</b>;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Calculates the inverse of the receiver's matrix and replaces the receiever's matrix with it. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-prependTransform$">prependTransform: </a></h3> - (void) <b>prependTransform:</b> (<a rel="gsdoc" href="#class$NSAffineTransform">NSAffineTransform</a>*)aTransform;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Prepends the transform matrix to the receiver. This is done by performing a matrix multiplication of the receiver with <var>aTransform</var> so that <var>aTransform</var> is the last transform applied to the user coordinate. The new matrix then replaces the receiver's matrix. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-rotateByDegrees$">rotateByDegrees: </a></h3> - (void) <b>rotateByDegrees:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$CGFloat">CGFloat</a>)angle;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Applies the rotation specified by <var>angle</var> in degrees. Points transformed with the transformation matrix of the receiver are rotated counter-clockwise by the number of degrees specified by <var>angle</var>. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-rotateByRadians$">rotateByRadians: </a></h3> - (void) <b>rotateByRadians:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$CGFloat">CGFloat</a>)angleRad;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Applies the rotation specified by angle in radians. Points transformed with the transformation matrix of the receiver are rotated counter-clockwise by the number of radians specified by angle. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-scaleBy$">scaleBy: </a></h3> - (void) <b>scaleBy:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$CGFloat">CGFloat</a>)scale;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Scales the transformation matrix of the reciever by the factor specified by <var>scale</var>. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-scaleXBy$yBy$">scaleXBy: yBy: </a></h3> - (void) <b>scaleXBy:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$CGFloat">CGFloat</a>)scaleX<b> yBy:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$CGFloat">CGFloat</a>)scaleY;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Scales the X axis of the receiver's transformation matrix by <var>scaleX</var> and the Y axis of the transformation matrix by <var>scaleY</var>. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-setTransformStruct$">setTransformStruct: </a></h3> - (void) <b>setTransformStruct:</b> (NSAffineTransformStruct)val;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> </p> <p> Sets the structure which represents the matrix of the reciever. The struct is of the form: </p> <p> </p> <p> {m11, m12, m21, m22, tX, tY} </p> <p> </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-transformPoint$">transformPoint: </a></h3> - (<a rel="gsdoc" href="TypesAndConstants.html#type$NSPoint">NSPoint</a>) <b>transformPoint:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$NSPoint">NSPoint</a>)aPoint;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Transforms a single point based on the transformation matrix. Returns the resulting point. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-transformSize$">transformSize: </a></h3> - (<a rel="gsdoc" href="TypesAndConstants.html#type$NSSize">NSSize</a>) <b>transformSize:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$NSSize">NSSize</a>)aSize;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Transforms the NSSize represented by <var>aSize</var> using the reciever's transformation matrix. Returns the resulting NSSize. <br /> NB. A transform can result in negative size components ... so calling code should check for and deal with that situation. </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-transformStruct">transformStruct </a></h3> - (NSAffineTransformStruct) <b>transformStruct</b>;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> </p> <p> Returns the <code>NSAffineTransformStruct</code> structure which represents the matrix of the reciever. The struct is of the form: </p> <p> </p> <p> {m11, m12, m21, m22, tX, tY} </p> <p> </div> <hr width="25%" align="left" /> </div> <div class="method"> <h3><a name="method$NSAffineTransform-translateXBy$yBy$">translateXBy: yBy: </a></h3> - (void) <b>translateXBy:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$CGFloat">CGFloat</a>)tranX<b> yBy:</b> (<a rel="gsdoc" href="TypesAndConstants.html#type$CGFloat">CGFloat</a>)tranY;<br /> <div class="availability"> <b>Availability:</b> OpenStep</div> <br /> <div class="desc"> Applies the translation specified by <var>tranX</var> and <var>tranY</var> to the receiver's matrix. Points transformed by the reciever's matrix after this operation will be shifted in position based on the specified translation. </div> <hr width="25%" align="left" /> </div> <br /> <a href="Base.html">Up</a> </font> </body> </html>