API reference - Class DBoxNotation used in Ruby API documentation Description: A box class
This object represents a box (a rectangular shape). The definition of the attributes is: p1 is the lower left point, p2 the upper right one. If a box is constructed from two points (or four coordinates), the coordinates are sorted accordingly. A box can be empty. An empty box represents no area (not even a point). Empty boxes behave neutral with respect to most operations. Empty boxes return true on empty?. A box can be a point or a single line. In this case, the area is zero but the box still can overlap other boxes for example and it is not empty. See The Database API for more details about the database objects. Public constructors
Public methods
Public static methods and constants
Deprecated methods (protected, public, static, non-static and constructors)
Detailed description[const] bool !=(const DBox box)Description: Inequality Return true, if this box and the given box are not equal [const] DBox &(const DBox box)Description: Intersection of boxes
The intersection of two boxes is the largest box common to both boxes. The intersection may be empty if both boxes to not touch. If the boxes do not overlap but touch the result may be a single line or point with an area of zero. Overwrites this box with the result. [const] DBox *(const DBox box)Description: Convolve boxes
The * operator convolves the firstbox with the one given as the second argument. The box resulting from "convolution" is the outer boundary of the union set formed by placing the second box at every point of the first. In other words, the returned box of (p1,p2)*(q1,q2) is (p1+q1,p2+q2). [const] DBox *(double scale_factor)Description: Scale box
The * operator scales the box with the given factor and returns the result. This method has been introduced in version 0.22. [const] DBox +(const DPoint point)Description: Join box with a point
The + operator joins a point with the box. The resulting box will enclose both the original box and the point. [const] DBox +(const DBox box)Description: Joining of boxes
The + operator joins the first box with the one given as the second argument. Joining constructs a box that encloses both boxes given. Empty boxes are neutral: they do not change another box when joining. Overwrites this box with the result. [const] bool <(const DBox box)Description: Less operator Return true, if this box is 'less' with respect to first and second point (in this order) [const] bool ==(const DBox box)Description: Equality Return true, if this box and the given box are equal [const] double areaDescription: Compute the box area Returns the box area or 0 if the box is empty [const] void assign(const DBox other)Description: Assign the contents of another object to self This method assigns the contents of another object to self. This is a deep copy that does not only copy the reference but the actual content. [const] double bottomDescription: The bottom coordinate of the box void bottom=(double c)Description: Set the bottom coordinate of the box [const] DPoint centerDescription: The center of the box [const] bool contains?(double x,double y)Description: Returns true if the box contains the given point
Tests whether a point (x, y) is inside the box. It also returns true if the point is exactly on the box contour. [const] bool contains?(const DPoint point)Description: Returns true if the box contains the given point
Tests whether a point is inside the box. It also returns true if the point is exactly on the box contour. void createDescription: Ensures the C++ object is created Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created. void destroyDescription: Explicitly destroy the object Explicitly destroy the object on C++ side if it was owned by the Ruby interpreter. Subsequent access to this object will throw an exception. If the object is not owned by Ruby, this method will do nothing. [const] bool destroyed?Description: Returns a value indicating whether the object was already destroyed This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself. [const] DBox dupDescription: Creates a copy of self [const] bool empty?Description: Empty predicate An empty box may be created with the default constructor for example. Such a box is neutral when combining it with other boxes and renders empty boxes if used in box intersections and false in geometrical relationship tests. DBox enlarge(double dx,double dy)Description: Enlarges the box by a certain amount.
This is a convenience method which takes two values instead of a Point object. This method has been introduced in version 0.23. DBox enlarge(const DPoint enlargement)Description: Enlarges the box by a certain amount.
Enlarges the box by x and y value specified in the vector passed. Positive values with grow the box, negative ones will shrink the box. The result may be an empty box if the box disappears. The amount specifies the grow or shrink per edge. The width and height will change by twice the amount. Does not check for coordinate overflows. [const] DBox enlarged(double dx,double dy)Description: Enlarges the box by a certain amount.
This is a convenience method which takes two values instead of a Point object. This method has been introduced in version 0.23. [const] DBox enlarged(const DPoint enlargement)Description: Enlarges the box by a certain amount.
Enlarges the box by x and y value specified in the vector passed. Positive values with grow the box, negative ones will shrink the box. The result may be an empty box if the box disappears. The amount specifies the grow or shrink per edge. The width and height will change by twice the amount. Does not modify this box. Does not check for coordinate overflows. [static] DBox from_ibox(const Box int_box)Description: Construct a floating-point coordinate box from an integer coordinate box Create a floating-point coordinate box from an integer coordinate box [static] new DBox from_s(string s)Description: Creates an object from a string Creates the object from a string representation (as returned by to_s) This method has been added in version 0.23. [const] double heightDescription: The height of the box [const] bool inside?(const DBox box)Description: Test if this box is inside the argument box Returns true, if this box is inside the given box, i.e. the box intersection renders this box [const] bool is_const_object?Description: Returns a value indicating whether the reference is a const reference This method returns true, if self is a const reference. In that case, only const methods may be called on self. [const] bool is_point?Description: Return true, if the box is a single point [const] double leftDescription: The left coordinate of the box void left=(double c)Description: Set the left coordinate of the box DBox move(double dx,double dy)Description: Moves the box by a certain distance
This is a convenience method which takes two values instead of a Point object. This method has been introduced in version 0.23. DBox move(const DPoint distance)Description: Moves the box by a certain distance
Moves the box by a given offset and returns the moved box. Does not check for coordinate overflows. [const] DBox moved(double dx,double dy)Description: Moves the box by a certain distance
This is a convenience method which takes two values instead of a Point object. This method has been introduced in version 0.23. [const] DBox moved(const DPoint distance)Description: Returns the box moved by a certain distance
Moves the box by a given offset and returns the moved box. Does not modify this box. Does not check for coordinate overflows. [static] new DBox newDescription: Default constructor: creates an empty (invalid) box [static] new DBox new(double left,double bottom,double right,double top)Description: Constructor with four coordinates Four coordinates are given to create a new box. If the coordinates are not provided in the correct order (i.e. right < left), these are swapped. [static] new DBox new(const DPoint lower_left,const DPoint upper_right)Description: Constructor with two points Two points are given to create a new box. If the coordinates are not provided in the correct order (i.e. right < left), these are swapped. [static] new DBox new_lbrt(double left,double bottom,double right,double top)Description: Constructor with four coordinates This method is deprecated. Use method 'new' instead [static] new DBox new_pp(const DPoint lower_left,const DPoint upper_right)Description: Constructor with two points This method is deprecated. Use method 'new' instead [const] bool overlaps?(const DBox box)Description: Test if this box overlaps the argument box Returns true, if the intersection box of this box with the argument box exists and has a non-vanishing area [const] DPoint p1Description: The lower left point of the box void p1=(const DPoint p)Description: Set the lower left point of the box [const] DPoint p2Description: The upper right point of the box void p2=(const DPoint p)Description: Set the upper right point of the box [const] double perimeterDescription: Returns the perimeter of the box This method is equivalent to 2*(width+height). For empty boxes, this method returns 0. This method has been introduced in version 0.23. [const] double rightDescription: The right coordinate of the box void right=(double c)Description: Set the right coordinate of the box [const] string to_sDescription: Convert to a string [const] double topDescription: The top coordinate of the box void top=(double c)Description: Set the top coordinate of the box [const] bool touches?(const DBox box)Description: Test if this box touches the argument box Returns true, if this box has at least one point common with the argument box [const] DBox transformed(const DTrans t)Description: Transform the box with the given simple transformation
[const] DBox transformed(const DCplxTrans t)Description: Transform the box with the given complex transformation
[const] DBox transformed_cplx(const DCplxTrans t)Description: Transform the box with the given complex transformation
This method is deprecated. Use method 'transformed' instead [const] double widthDescription: The width of the box |