|
| Array2 () |
| Empty array, with empty box.
|
|
| Array2 (const Box2 &, int, int) |
| Create the array structure. More...
|
|
| Array2 (const Box2 &, int) |
| Create the array structure. More...
|
|
Array2 | DownSample (int) const |
| Downsample the array. More...
|
|
Array2 | UpSample (int) const |
| Upsample the array. More...
|
|
| ~Array2 () |
| Empty.
|
|
int | VertexSize () const |
| Return the size of the vertex array.
|
|
int | GetSizeX () const |
| Get the vertex size of the array for x axis.
|
|
int | GetSizeY () const |
| Get the vertex size of the array for y axis.
|
|
int | VertexBorderSize () const |
| Return the size of the vertex array.
|
|
int | CellSize () const |
| Return the size of the cell array.
|
|
int | CellSizeX () const |
| Get the cell size of the array for x axis.
|
|
int | CellSizeY () const |
| Get the cell size of the array for y axis.
|
|
QSize | GetQtSize () const |
| Return the Qt size of the vertex array.
|
|
Box2 | Cell (int) const |
| Return the geometry of the cell. More...
|
|
Box2 | Cell (int, int) const |
| Return the geometry of the cell. More...
|
|
void | HalfCell (int, int, bool, Triangle2 &, Triangle2 &) const |
| Return the geometry of the cell. More...
|
|
Vector2 | CellCenter (int, int) const |
| Return the center of the cell. More...
|
|
void | Scale (const Vector2 &) |
| Scales the array structure. More...
|
|
void | Scale (const double &) |
| Scales the array structure. More...
|
|
Box2 | GetBox () const |
| Get the box of the array.
|
|
Box2 | UnitCell () const |
| Return the geometry of a generic cell. More...
|
|
Vector2 | CellDiagonal () const |
| Return the cell diagonal vector.
|
|
double | CellArea () const |
| Return the area of a cell. More...
|
|
Vector2 | ArrayVertex (int, int) const |
| Compute the coordinates of a point on the grid. More...
|
|
Vector2 | ArrayVertex (const QPoint &) const |
| Compute the coordinates of a point on the grid. More...
|
|
QVector< Vector2 > | ArrayVertexes (const QVector< QPoint > &) const |
| Compute the coordinates of a set of points on the grid. More...
|
|
Vector2 | Size () const |
| Return the size of the array.
|
|
QRect | AreaInteger () const |
| Return the range of integer values for the domain.
|
|
QImage | ImageGrid (const Box2 &, const double &) const |
| Create a texture with a regular grid. More...
|
|
void | Draw (QGraphicsScene &, const QPen &=QPen(), const QBrush &=QBrush()) const |
| Draw the cells of the grid. More...
|
|
void | Subdivide () |
| Change the resolution. More...
|
|
bool | IsEmpty () const |
| Detect if the array is empty, i.e., any dimension equal to zero.
|
|
QPoint | VertexBorder (int) const |
| Compute the k-th point on the boundary of the domain. More...
|
|
int | VertexBorderIndex (int, int) const |
| Compute the index of a point on the boundary of the domain. More...
|
|
void | VertexInteger (const Vector2 &, int &, int &) const |
| Compute the coordinates of a vertex inside a cell. More...
|
|
QPoint | VertexInteger (const Vector2 &) const |
| Compute the coordinates of a vertex inside a cell. More...
|
|
QPoint | VertexInteger (const Vector2 &, double &, double &) const |
| Compute the point on the grid given an input point. More...
|
|
QRect | VertexIntegerArea (const Box2 &) const |
| Compute the integer coordinates of the vertices embedding a box. More...
|
|
QRect | VertexIntegerArea (const Circle2 &) const |
| Compute the integer coordinates of the vertices embedding a circle. More...
|
|
QRect | VertexIntegerArea (const QRect &) const |
| Compute the integer coordinates span of the vertices embedding a rectangle. More...
|
|
void | CellInteger (const Vector2 &, int &, int &) const |
| Compute the coordinates of a vertex inside a cell. More...
|
|
void | CellInteger (const Vector2 &, int &, int &, double &, double &) const |
| Compute the point on the grid given an input point. More...
|
|
QPoint | CellInteger (const Vector2 &) const |
| Compute the coordinates of a vertex inside a cell. More...
|
|
QPoint | CellInteger (const Vector2 &, double &, double &) const |
| Compute the point on the grid given an input point. More...
|
|
QRect | CellIntegerArea (const Box2 &) const |
| Compute the integer coordinates of the cells of the array embedding an input box. More...
|
|
QRect | CellIntegerArea (const Circle2 &) const |
| Compute the integer coordinates of the cells of the array embedding an input circle. More...
|
|
void | Translate (const Vector2 &) |
| Translate the array. More...
|
|
Vector2 | Center () const |
| Return the center of the array.
|
|
constexpr bool | InsideVertexIndex (int, int) const |
| Check if the indexes are within range. More...
|
|
constexpr bool | OutsideVertexIndex (int, int) const |
| Check if the indexes are outside or on the border. More...
|
|
constexpr bool | InsideVertexIndex (const QPoint &) const |
| Check if the indexes are within range. More...
|
|
constexpr bool | InsideVertexIndex (int, int, int) const |
| Check if the indexes are within k-range. More...
|
|
bool | Inside (const Vector2 &) const |
| Check if a point is in the rectangular domain. More...
|
|
constexpr bool | BorderVertexIndex (int, int) const |
| Check if the indexes are on the border. More...
|
|
constexpr bool | BorderVertexIndex (const QPoint &) const |
| Check if the indexes are on the border. More...
|
|
constexpr int | VertexIndex (int, int) const |
| Compute the index of a given cell. More...
|
|
constexpr int | VertexIndex (const QPoint &) const |
| Compute the index of a given cell. More...
|
|
QPoint | Next (const QPoint &, int) const |
| Compute the point next to another one. More...
|
|
QImage | CreateEmptyImage () const |
| Create an image with the same size as the array. More...
|
|
QString | Statistics () const |
| Get statistics.
|
|
void | ClampVertexIndex (int &, int &) const |
| Clamp vertex indexes to the size of the array. More...
|
|
|
constexpr void | InverseVertexIndex (int, int &, int &) const |
| Compute the coordinates of a given cell. More...
|
|
constexpr QPoint | InverseVertexIndex (int) const |
| Compute the coordinates of a given cell. More...
|
|
constexpr int | CellIndex (int, int) const |
| Compute the index of a given cell. More...
|
|
constexpr int | CellIndex (const QPoint &) const |
| Compute the index of a given cell. More...
|
|
constexpr bool | InsideCellIndex (int, int) const |
| Check if the indexes are within range. More...
|
|
constexpr bool | InsideCellIndex (const QPoint &) const |
| Check if the indexes are within range. More...
|
|
void | InverseCellIndex (int, int &, int &) const |
| Compute the coordinates of a given cell. More...
|
|
| Box2 () |
| Empty.
|
|
| Box2 (const double &) |
| Create a square box centered at the origin and of given half side length. More...
|
|
| Box2 (const double &, const double &) |
| Create a box centered at the origin and of given dimensions. More...
|
|
| Box2 (const Vector2 &) |
| Create a box from a single vertex. More...
|
|
| Box2 (const Vector2 &, const Vector2 &) |
| Create a box. More...
|
|
| Box2 (const Vector2 &, const double &) |
| Creates a box. More...
|
|
| Box2 (const Box &) |
| Create a box in the plane given a box. More...
|
|
| Box2 (const Box2 &, const Box2 &) |
| Create a box embedding two boxes. More...
|
|
| Box2 (const Box2 &, const Matrix2 &) |
| Creates an axis aligned bounding box from a box and a transformation matrix. More...
|
|
| Box2 (const Box2 &, const Frame2 &) |
| Creates an axis aligned bounding box from a box and a frame. More...
|
|
| Box2 (const QVector< Vector2 > &) |
| Compute the bounding box of a set of points. More...
|
|
| Box2 (const QSize &) |
| Create a box from a Qt size. More...
|
|
Vector2 & | operator[] (int) |
| Returns either end vertex of the box.
|
|
Vector2 | operator[] (int) const |
| Overloaded.
|
|
Vector2 | Size () const |
| Compute the size (width and height) of a box.
|
|
double | Width () const |
| Compute the width of a box. More...
|
|
double | Height () const |
| Compute the height of a box. More...
|
|
Vector2 | Diagonal () const |
| Returns the diagonal of the box.
|
|
double | Radius () const |
| Returns the radius of the box, i.e. the length of the half diagonal of the box.
|
|
double | Area () const |
| Compute the surface area of a box.
|
|
double | Perimeter () const |
| Compute the perimeter of the box.
|
|
Vector2 | Center () const |
| Returns the center of the box.
|
|
Vector2 | Vertex (int) const |
| Returns the k-th vertex of the box. More...
|
|
Vector2 | Vertex (int, int, int, int) const |
| Compute the coordinates of a grid aligned point. More...
|
|
Box2 | Sub (int) const |
| Computes the sub-box in the n-th quadrant. More...
|
|
double | R (const Vector2 &) const |
| Compute the squared distance between the box and a point. More...
|
|
double | Signed (const Vector2 &) const |
| Computes the signed distance between the box and a point. More...
|
|
double | R (const Box2 &) const |
| Compute the squared Euclidean distance between two boxes. More...
|
|
void | Translate (const Vector2 &) |
| Translates a box. More...
|
|
void | Scale (const Vector2 &) |
| Scales a box. More...
|
|
void | Scale (const double &) |
| Scales a box. More...
|
|
Box2 | Translated (const Vector2 &) const |
| Translated box. More...
|
|
Box2 | Scaled (const double &) const |
| Scales a box and return the scaled box. More...
|
|
Box2 | Scaled (const Vector2 &) const |
| Scales a box and return the scaled box. More...
|
|
Box2 | Scaled (const QSize &) const |
| Scales a box according to a Qt size. More...
|
|
Box2 | ScaledTo (const double &) const |
| Scale the box so that the largest side should equal the argument value. More...
|
|
Box2 | Rotated (const double &) const |
| Compute the box embedding the rotated box. More...
|
|
Box2 | Rotated (const Matrix2 &) const |
| Compute the box embedding the rotated box. More...
|
|
Box2 | Centered () const |
| Compute the box translated to origin. More...
|
|
void | SetCubic () |
| Creates the tightest embedding cube from an arbitrarilly shaped box. More...
|
|
void | SetInscribedCubic () |
| Creates the biggest cube inscribed in the box. More...
|
|
Box2 | Cube () const |
| Return the tightest embedding cube from an arbitrarilly shaped box. More...
|
|
void | Extend (const double &) |
| Extend the limits of the box by a given distance. More...
|
|
void | Extend (const Vector2 &) |
| Extend the limits of the box given a point. More...
|
|
Box2 | Extended (const double &) const |
| Extend the limits of the box by a given distance. More...
|
|
void | SetParallelepipedic (int, int &, int &) |
| Inflates a box so that its dimensions should be a fraction of its maximum side length. More...
|
|
void | SetParallelepipedic (const double &, int &, int &) |
| Creates a parallelepipedic box whose dimensions are integer multiples of a given input reference size. More...
|
|
bool | Inside (const Vector2 &) const |
| Test if a point is inside the box. More...
|
|
bool | Inside (const Vector2 &, const double &) const |
| Test if a point lies withing a given range of the box. More...
|
|
bool | Intersect (const Box2 &) const |
| Check if the box intersects another box. More...
|
|
double | OverlapArea (const Box2 &) const |
| Computes the overlapping area of two boxes. More...
|
|
Box2 | Intersection (const Box2 &) const |
| Computes the intersection between two boxes. More...
|
|
Box | ToBox (const double &, const double &) const |
| Convert a planar Box2 to a Box. More...
|
|
int | Quadrant (const Vector2 &) const |
| Computes quadrant index of a vertex with respect to the box center. More...
|
|
bool | Intersect (const Ray2 &, double &, double &) const |
| Computes the intersection between a box and a ray. More...
|
|
bool | Intersect (const Ray2 &) const |
| Computes the intersection between a box and a ray. More...
|
|
bool | Intersect (const Line2 &, double &, double &) const |
| Computes the intersection between a box and a line. More...
|
|
bool | Intersect (const Segment2 &, double &, double &) const |
| Compute the intersection between a box and a segment. More...
|
|
bool | Intersect (const Line2 &) const |
| Check the intersection between a box and a line. More...
|
|
bool | Intersect (const Segment2 &) const |
| Check the intersection between a box and a segment. More...
|
|
void | Draw (QGraphicsScene &, const QPen &=QPen(), const QBrush &=QBrush()) const |
| Draw a rectangle. More...
|
|
Vector2 | RandomInside (Random &=Random::R239) const |
| Generate a random vector inside the box. More...
|
|
Vector2 | RandomOn (Random &=Random::R239) const |
| Generate a random vector on the perimeter of the box. More...
|
|
QRectF | GetQtRect () const |
| Create the Qt rectangle.
|
|
QRect | TileRange (const Box2 &) const |
| Compute the range of index for tiling the argument box so that it covers the box. More...
|
|
Box2 | Tile (int, int) const |
| Return the tiled the box using integer coordinates. More...
|
|
Box2 | Tile (const QRect &) const |
| Return the tiled the box using integer coordinates. More...
|
|
QVector< Vector2 > | Poisson (const double &, int, Random &=Random::R239) const |
| Compute a Poisson disc distribution inside a box. More...
|
|
|
static const QPoint | next [8] = { QPoint(1, 0), QPoint(1, 1), QPoint(0, 1), QPoint(-1, 1), QPoint(-1, 0), QPoint(-1, -1), QPoint(0, -1), QPoint(1, -1) } |
| Array of points in the 1-ring neighborhood.
|
|
static const double | length [8] = { 1.0, sqrt(2.0), 1.0, sqrt(2.0), 1.0, sqrt(2.0), 1.0, sqrt(2.0) } |
| Length to the i-th neighbor.
|
|
static const double | inverselength [8] = { 1.0, 1.0 / sqrt(2.0), 1.0, 1.0 / sqrt(2.0), 1.0, 1.0 / sqrt(2.0), 1.0, 1.0 / sqrt(2.0) } |
| Inverse length.
|
|
static const double | epsilon = 1.0e-5 |
| Epsilon value used to check intersections and some round off errors.
|
|
static const Box2 | Infinity |
| Huge bounding box, which should enclose any other.
|
|
static const Box2 | Null |
| Null box, equivalent to. More...
|
|
static const Box2 | Unit |
| Unit box, defined as. More...
|
|
A base two-dimensional array structure.
An array is a two-dimensional rectangle virtually decomposed into cells.