Represents a 3D area (a 3D "cube")
Definition Area3D.h:29
Displacement getStartY() const
Returns the topmost Y position of the 3D area.
Definition Area3D.cpp:130
bool isValid() const
Returns true if all of the positions of the 3D area are valid (i.e.
Definition Area3D.cpp:489
Area3D & operator=(const Area3D &areaToCopy)
Assigns areaToCopy to this.
Definition Area3D.cpp:546
void setHeight(const Distance &height)
Changes the height of the 3D area.
Definition Area3D.cpp:324
void setStartY(const Displacement &startY)
Sets the topmost Y position.
Definition Area3D.cpp:254
void setZDimension(const Displacement &startZ, const Distance &depth)
Sets the Z dimension of the 3D area.
Definition Area3D.cpp:448
void setEndY(const Displacement &endY)
Sets the bottommost Y position.
Definition Area3D.cpp:359
Displacement getEndX() const
Returns the rightmost X position of the 3D area.
Definition Area3D.cpp:196
void setEndZ(const Displacement &endZ)
Sets the backmost Z position.
Definition Area3D.cpp:371
void setWidth(const Distance &width)
Changes the width of the 3D area.
Definition Area3D.cpp:313
Distance getWidth() const
Returns the width (in the X dimension) of the 3D area.
Definition Area3D.cpp:160
virtual ~Area3D()
The destructor frees allocated memory.
Definition Area3D.cpp:105
void setYDimension(const Displacement &startY, const Distance &height)
Sets the Y dimension of the 3D area.
Definition Area3D.cpp:434
bool operator!=(const Area3D &otherArea) const
Compares two areas with the != operator.
Definition Area3D.cpp:535
Area3D intersect(const Area3D &otherArea) const
Returns the intersection of this 3D area with another 3D area.
Definition Area3D.cpp:462
void moveEndY(const Displacement &endY)
Moves the bottommost Y position of the 3D area.
Definition Area3D.cpp:395
virtual void setArea(const Displacement &startX, const Displacement &startY, const Displacement &startZ, const Displacement &endX, const Displacement &endY, const Displacement &endZ)
Sets the area.
Definition Area3D.cpp:593
Distance getDepth() const
Returns the depth (in the Z dimension) of the 3D area.
Definition Area3D.cpp:184
void moveStartX(const Displacement &startX)
Moves the leftmost X position of the 3D area.
Definition Area3D.cpp:278
void setDepth(const Distance &depth)
Changes the depth of the 3D area.
Definition Area3D.cpp:335
void moveStartZ(const Displacement &startZ)
Moves the frontmost Z position of the 3D area.
Definition Area3D.cpp:302
void moveEndZ(const Displacement &endZ)
Moves the backmost Z position of the 3D area.
Definition Area3D.cpp:407
void moveEndX(const Displacement &endX)
Moves the rightmost X position of the 3D area.
Definition Area3D.cpp:383
Displacement getStartZ() const
Returns the frontmost Z position of the 3D area.
Definition Area3D.cpp:145
void moveStartY(const Displacement &startY)
Moves the topmost Y position of the 3D area.
Definition Area3D.cpp:290
bool operator==(const Area3D &otherArea) const
Compares two areas with the == operator.
Definition Area3D.cpp:517
void setStartX(const Displacement &startX)
Sets the leftmost X position.
Definition Area3D.cpp:242
Distance getHeight() const
Returns the height (in the Y dimension) of the 3D area.
Definition Area3D.cpp:172
void setXDimension(const Displacement &startX, const Distance &width)
Sets the X dimension of the 3D area.
Definition Area3D.cpp:420
void setStartZ(const Displacement &startZ)
Sets the frontmost Z position.
Definition Area3D.cpp:266
Displacement getEndZ() const
Returns the backmost Z position of the 3D area.
Definition Area3D.cpp:226
Displacement getEndY() const
Returns the bottommost Y position of the 3D area.
Definition Area3D.cpp:211
Displacement getStartX() const
Returns the leftmost X position of the 3D area.
Definition Area3D.cpp:115
void setEndX(const Displacement &endX)
Sets the rightmost X position.
Definition Area3D.cpp:347
Area3D()
The empty constructor creates an invalid 3D area.
Definition Area3D.cpp:24
Displacement is a signed length, usually in meters.
Definition Displacement.h:31
Distance measurement, usually in meters.
Definition Distance.h:34
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16