123456789_123456789_123456789_123456789_123456789_

Class: Geom::Bounds2d

Relationships
Inherits: Object

Overview

The bounds2d class represents an axis aligned bounding box represented by two Point2d objects, upper left and lower right positions. The units utilized in the creation and modification Bounds2d are inches.

Version:

  • LayOut 2018

Class Method Summary

Instance Method Summary

Constructor Details

.new(other_bounds) ⇒ Bounds2d .new(upper_left, lower_right) ⇒ Bounds2d .new(x, y, width, height) ⇒ Bounds2d .new(point_array) ⇒ Bounds2d .new(float_array) ⇒ Bounds2d

The #initialize method creates a new Bounds2d.

Examples:

bounds = Geom::Bounds2d.new(0.0, 0.0, 1.0, 1.0)

Overloads:

  • .new(other_bounds) ⇒ Bounds2d

    Parameters:

    • other_bounds (Bounds2d)
  • .new(upper_left, lower_right) ⇒ Bounds2d

    Parameters:

  • .new(x, y, width, height) ⇒ Bounds2d

    Parameters:

    • x (Float)
    • y (Float)
    • width (Float)
    • height (Float)
  • .new(point_array) ⇒ Bounds2d

    Parameters:

  • .new(float_array) ⇒ Bounds2d

    Parameters:

    • float_array (Array(Float, Float, Float, Float))

      An array of four floats (x, y, width, height)

Version:

  • LayOut 2018

Instance Method Details

#==(other) ⇒ Boolean

The #== method checks to see if the two Bounds2ds are equal. This checks whether the point values are the same

Examples:

entity.bounds == entity.untransformed_bounds

Parameters:

  • other (Bounds2d)

Version:

  • LayOut 2018

#heightGeom::Point2d

The #height method returns the height of the Bounds2d.

Examples:

bounds = Geom::Bounds2d.new(0.0, 0.0, 1.0, 1.0)
height = bounds.height

Version:

  • LayOut 2018

#lower_rightGeom::Point2d

The #lower_right method returns the Point2d of the lower right corner of the Bounds2d.

Examples:

bounds = Geom::Bounds2d.new(0.0, 0.0, 1.0, 1.0)
l_r = bounds.lower_right

Version:

  • LayOut 2018

#set!(other_bounds) ⇒ Bounds2d #set!(upper_left, lower_right) ⇒ Bounds2d #set!(x, y, width, height) ⇒ Bounds2d #set!(point_array) ⇒ Bounds2d #set!(float_array) ⇒ Bounds2d

The #set! method sets the Bounds2d to match another one. The argument is anything that can be converted into a Bounds2d.

Examples:

bounds = Geom::Bounds2d.new(3.0, 3.0, 5.0, 5.0)
bounds.set!(Geom::Point2d.new(0.0, 0.0), Geom::Point2d.new(2.0, 2.0))

Overloads:

  • #set!(other_bounds) ⇒ Bounds2d

    Parameters:

    • other_bounds (Bounds2d)
  • #set!(upper_left, lower_right) ⇒ Bounds2d

    Parameters:

  • #set!(x, y, width, height) ⇒ Bounds2d

    Parameters:

    • x (Float)
    • y (Float)
    • width (Float)
    • height (Float)
  • #set!(point_array) ⇒ Bounds2d

    Parameters:

  • #set!(float_array) ⇒ Bounds2d

    Parameters:

    • float_array (Array(Float, Float, Float, Float))

      An array of four floats (x, y, width, height)

Version:

  • LayOut 2018

#to_aArray(Geom::Point2d, Geom::Point2d)

The #to_a method returns an array which contains the Point2d that define the Bounds2d.

Examples:

bounds = Geom::Bounds2d.new
bounds.to_a.each { |point| p point.to_s }

Version:

  • LayOut 2018

#upper_leftGeom::Point2d

The #upper_left method returns the Point2d of the upper left corner of the Bounds2d.

Examples:

bounds = Geom::Bounds2d.new(0.0, 0.0, 1.0, 1.0)
u_l = bounds.upper_left

Version:

  • LayOut 2018

#widthGeom::Point2d

The #width method returns the width of the Bounds2d.

Examples:

bounds = Geom::Bounds2d.new(0.0, 0.0, 1.0, 1.0)
width = bounds.width

Version:

  • LayOut 2018