|
|||
Скачать Rotate 2.0 - Rotate Two-Dimensional Objects
02.06.1989 Rational for Revision: This is the second release of the Rotataion Unit. The first version, while functionally correct, contained a massive optimization flaw. This flaw caused unnecessary repetative calls to the SINE COSINE func- tions, which in themseleves are very processor intensive. Release two of the Unit, Rotate02, is at least 12 fold faster than its predcessor. Purpose: This UNIT is to provide procedures to rotate two-dimensional objects. The UNIT provides a TYPE definition called 'COORD_VALS'. This type is a one-dimensional array of integers used to pass coordinate values to the ROTATE2D procedure. There is a 101 element array for the X-values and a 101 element array for the Y-values. Therefore objects may contain up to 100 coordinates ( this may be modified larger or smaller ). The number of coordinates that define an object is held in element zero of the X-value array. For instance, given the definition of the X-val array as X_Coords : COORD_VALS; the number of coordinates that define this object is held in X_Coords[0]. The angle of rotation can be any value in the limits of the INTEGER data type. A positive angle yields counter-clockwise rotation, a negative angle yields clockwise rotation. Because of the Aspect Ratio of video monitors, objects will distort when it is rotated. It is up to the USER to handle these discrepencies. Perhaps future releases will provide services to handle this and other problems releating to the distortion of objects when rotated. ======================== DISCALIMER ========================== These routines are provided to the Public Domain, AS IS. EUROPA Software nor any of it's employees shall be held liable for any incidental or consequential damage attributed to the ability or inability to use this product. ================================================================== | |||
© 2009–2024 Russian Pascal Developer Network.
Техническая площадка: ISBIZ Хостинг |