CRect:new
The new method constructs a new instance of a CRect object. The CRect class includes 4 properties that describe the minimum and maximum x values and the minimum and maximum y values. You can treat this object as a classic rectangle or you can use it simply to hold 4 numbers Note that the object can also be created using new_rect.
R = CRect:new() Creates a default CRect object with properties initialized to the default values 0,0,0,0. R = CRect:new( CRect2 ) This is a copy constructor. It creates a new CRect object initialized to the properties of the CRect2 argument. R = CRect:new( xmin, xmax, ymin, ymax ) Creates a CRect object initialized to xmin, xmax, ymin, ymax. R = CRect:Set( xmin, xmax, ymin, ymax ) Creates a new CRect object with properties set to the numbers nXmin, nXmax, nYmin, and nYmax. The values may be positive or negative. If the rectangle will involve working with images or arrays, then the values of nXmin and nXmax should usually be 1. R = CRect:new( CImage ) Creates a new CRect object initialized to the column and row dimensions of a CImage. The rectangle will extend from 1 to CImage:Cols(), and 1 to CImage:Rows(). R = CRect:new( table ) Creates a new CRect object from the first 4 values in a 1-dimensional array, in particular, the values of table[1] through table[4]. These numbers are assigned in order to the rectangle properties xmin, xmax, ymin, and ymax. On failure, nil is returned. |
These different constructors are provided to greatly expand the versatility of the CRect class. Also, since the contructor returns the new CRect, the constructor is useful in an expression, like I:SetRegionVal( t, CRect:new(Point) ).
The following script illustrates using the 3 constructors. All produce the same result:
|
-- create CRect A and set values |
|
-- result: 100:300, 400:800 |
|
|
|
-- copy A to a new CRect B |
|
-- result: 100:300, 400:800 |
|
|
|
-- create a default CRect C |
|
|
|
-- result: 100:300, 400:800 |
Mira Pro x64 Script User's Guide, Copyright Ⓒ 2023 Mirametrics,
Inc. All Rights Reserved.