Logo Euclid

Box Type

A struct of 9 floats representing an immutable 3D box with any rotation in 3D space. Described by z, y and z of the Origin and x, y and z for each of the three Edge vectors. Similar to PPlane, however the three vectors are not unitized. This implementation guarantees the box to be always valid. That means the Min X, Y and Z axes cannot be flipped individually. However the length of one of these axes might still be zero.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Record fields

Record Field Description

OriginX

Full Usage: OriginX

Field type: float

The X coordinate of the Origin Corner of the Box.

Field type: float

OriginY

Full Usage: OriginY

Field type: float

The Y coordinate of the Origin Corner of the Box.

Field type: float

OriginZ

Full Usage: OriginZ

Field type: float

The Z coordinate of the Origin Corner of the Box.

Field type: float

XaxisX

Full Usage: XaxisX

Field type: float

The X component of the edge vector representing the X-axis of the Box.

Field type: float

XaxisY

Full Usage: XaxisY

Field type: float

The Y component of the edge vector representing the X-axis of the Box.

Field type: float

XaxisZ

Full Usage: XaxisZ

Field type: float

The Z component of the edge vector representing the X-axis of the Box.

Field type: float

YaxisX

Full Usage: YaxisX

Field type: float

The X component of the edge vector representing the Y-axis of the Box.

Field type: float

YaxisY

Full Usage: YaxisY

Field type: float

The Y component of the edge vector representing the Y-axis of the Box.

Field type: float

YaxisZ

Full Usage: YaxisZ

Field type: float

The Z component of the edge vector representing the Y-axis of the Box.

Field type: float

ZaxisX

Full Usage: ZaxisX

Field type: float

The X component of the edge vector representing the Z-axis of the Box.

Field type: float

ZaxisY

Full Usage: ZaxisY

Field type: float

The Y component of the edge vector representing the Z-axis of the Box.

Field type: float

ZaxisZ

Full Usage: ZaxisZ

Field type: float

The Z component of the edge vector representing the Z-axis of the Box.

Field type: float

Instance members

Instance member Description

this.AreaOfBiggestFace

Full Usage: this.AreaOfBiggestFace

Returns: float

Returns the Area of the biggest face of the box. This is the biggest of the three faces X*Y, X*Z and Y*Z.

Returns: float

this.AreaOfSmallestFace

Full Usage: this.AreaOfSmallestFace

Returns: float

Returns the Area of the smallest face of the box. This is the smallest of the three faces X*Y, X*Z and Y*Z.

Returns: float

this.AsFSharpCode

Full Usage: this.AsFSharpCode

Returns: string

Format box into an F# code string that can be used to recreate the box.

Returns: string

this.AsString

Full Usage: this.AsString

Returns: string

Format box into string with nice floating point number formatting of X, Y and Z size only. But without type name as in v.ToString()

Returns: string

this.BackFace

Full Usage: this.BackFace

Returns: Rect3D

Returns the back face of the box in counter-clockwise order, looking from front. Returns Origin at point 3, X-axis to point 2, Y-axis to point 7. The normal of the Rect3D points into the Box.

            local      (back)
            Z-axis     (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- (right)
            |   |           |   |
    (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                    (bottom)
                    (front)

Returns: Rect3D

this.BottomFace

Full Usage: this.BottomFace

Returns: Rect3D

Returns the bottom face of the box in counter-clockwise order, looking from above. Returns Origin at point 0, X-axis to point 1, Y-axis to point 3. The normal of the Rect3D points into the Box.

            local      (back)
            Z-axis     (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- (right)
            |   |           |   |
    (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                    (bottom)
                    (front)

Returns: Rect3D

this.Center

Full Usage: this.Center

Returns: Pnt
Modifiers: inline

The center of the Box.

Returns: Pnt

this.Contains

Full Usage: this.Contains

Parameters:
Returns: bool

Check for point containment in the Box. By doing six dot products with the box axes to test its six faces. A point exactly on the edge of the box is considered inside.

p : Pnt
Returns: bool

this.ContainsXYZ

Full Usage: this.ContainsXYZ

Parameters:
    x : float
    y : float
    z : float

Returns: bool

Check for point containment in the Box. By doing six dot products with the box axes to test its six faces. A point exactly on the edge of the box is considered inside.

x : float
y : float
z : float
Returns: bool

this.CountZeroSides

Full Usage: this.CountZeroSides

Returns: int
Modifiers: inline

Counts the amount of sides that are smaller than the zeroLength tolerance. This is 0, 1, 2 or 3.

Returns: int

this.Diagonal

Full Usage: this.Diagonal

Returns: Vec
Modifiers: inline

The diagonal vector of the Box.

Returns: Vec

this.Edge01

Full Usage: this.Edge01

Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 0 to 1.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge03

Full Usage: this.Edge03

Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 0 to 3.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge04

Full Usage: this.Edge04

Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 0 to 4.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge12

Full Usage: this.Edge12

Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 1 to 2.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge15

Full Usage: this.Edge15

Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 1 to 5.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge26

Full Usage: this.Edge26

Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 2 to 6.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge32

Full Usage: this.Edge32

Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 3 to 2.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge37

Full Usage: this.Edge37

Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 3 to 7.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge45

Full Usage: this.Edge45

Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 4 to 5.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge47

Full Usage: this.Edge47

Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 4 to 7.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge56

Full Usage: this.Edge56

Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 5 to 6.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edge76

Full Usage: this.Edge76

Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 7 to 6.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

Returns: Line3D

this.Edges

Full Usage: this.Edges

Returns: Line3D[]

Returns the 12 edges of this box as an array of 12 Lines. Pairs in this order: 0-1, 1-2, 3-2, 0-3, 0-4, 1-5, 2-6, 3-7, 4-5, 5-6, 7-6, 4-7

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Line3D[]

this.EvaluateAt

Full Usage: this.EvaluateAt

Parameters:
    xParameter : float
    yParameter : float
    zParameter : float

Returns: Pnt
Modifiers: inline
 Evaluate an X, Y and Z parameter of the box.
  0.0, 0.0, 0.0 returns the Origin.
  1.0, 1.0, 1.0 returns the FarCorner.
xParameter : float
yParameter : float
zParameter : float
Returns: Pnt

this.Faces

Full Usage: this.Faces

Returns: Rect3D[]

Returns the six faces of the box. The normals of the Rect3Ds are oriented with the X-axis, Y-axis, or Z-axis. The order of the Rect3D is: BottomFace, FrontFace, RightFace, BackFace, LeftFace, TopFace.

            local      3 (back)
            Z-axis     5 (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- 2 (right)
            |   |           |   |
  4 (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                   0 (bottom)
                   1 (front)

Returns: Rect3D[]

this.FarCorner

Full Usage: this.FarCorner

Returns: Pnt
Modifiers: inline

The corner diagonally opposite of corner from Origin.

Returns: Pnt

this.FrontFace

Full Usage: this.FrontFace

Returns: Rect3D

Returns the front face of the box in counter-clockwise order, looking from front. Returns Origin at point 0, X-axis to point 1, Y-axis to point 4. The normal of the Rect3D points away from the Box.

            local      (back)
            Z-axis     (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- (right)
            |   |           |   |
    (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                    (bottom)
                    (front)

Returns: Rect3D

this.GetEdge

Full Usage: this.GetEdge

Parameters:
    edgeIndex : int

Returns: Line3D

Returns the edge of the box at the specified index. The order of the edges is: 0-1, 1-2, 3-2, 0-3, 0-4, 1-5, 2-6, 3-7, 4-5, 5-6, 7-6, 4-7

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

edgeIndex : int
Returns: Line3D

this.GetFace

Full Usage: this.GetFace

Parameters:
    faceIndex : int - The index of the face to retrieve. Valid range is 0 to 5.

Returns: Rect3D The Rect3D representing the specified face of the Box.

Returns the face of the box at the specified index. The order of the faces is: BottomFace, FrontFace, RightFace, BackFace, LeftFace, TopFace.

            local      3 (back)
            Z-axis     5 (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- 2 (right)
            |   |           |   |
  4 (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                   0 (bottom)
                   1 (front)

faceIndex : int

The index of the face to retrieve. Valid range is 0 to 5.

Returns: Rect3D

The Rect3D representing the specified face of the Box.

this.GetPoint

Full Usage: this.GetPoint

Parameters:
    pointIndex : int

Returns: Pnt

Returns the point of the box at the specified index. The order of the points is: Pt0, Pt1, Pt2, Pt3, Pt4, Pt5, Pt6, Pt7.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

pointIndex : int
Returns: Pnt

this.HasVolume

Full Usage: this.HasVolume

Returns: bool
Modifiers: inline

Tests if none of the X, Y, and Z axes is smaller than the zeroLength tolerance. Same as .IsValid

Returns: bool

this.IntersectRay

Full Usage: this.IntersectRay

Parameters:
    ray : Line3D - The ray (Line3D) to intersect with the box.

Returns: (float * float) voption ValueNone if there is no intersection; otherwise, ValueSome(tEntry, tExit).

Intersects an infinite ray (Line3D extended infinitely in both directions) with this Box. Uses the slab intersection method in the box's local coordinate system. Returns ValueNone if the ray does not intersect the box or if the ray direction is too short. Returns ValueSome with entry and exit parameters on the ray if it intersects. A parameter of 0.0 corresponds to the ray's From point, 1.0 to its To point.

ray : Line3D

The ray (Line3D) to intersect with the box.

Returns: (float * float) voption

ValueNone if there is no intersection; otherwise, ValueSome(tEntry, tExit).

this.IsFlat

Full Usage: this.IsFlat

Returns: bool
Modifiers: inline

Tests if one of the X, Y, and Z axes is smaller than the zeroLength tolerance.

Returns: bool

this.IsLine

Full Usage: this.IsLine

Returns: bool
Modifiers: inline

Tests if two of the X, Y, and Z axes are smaller than the zeroLength tolerance.

Returns: bool

this.IsPoint

Full Usage: this.IsPoint

Returns: bool
Modifiers: inline

Tests if all sides are smaller than the zeroLength tolerance. Same as b.IsZero.

Returns: bool

this.IsValid

Full Usage: this.IsValid

Returns: bool
Modifiers: inline

Tests if none of the X, Y, and Z axes are smaller than the zeroLength tolerance. Same as .HasVolume

Returns: bool

this.IsZero

Full Usage: this.IsZero

Returns: bool
Modifiers: inline

Tests if all sides are smaller than the zeroLength tolerance. Same as b.IsPoint.

Returns: bool

this.LeftFace

Full Usage: this.LeftFace

Returns: Rect3D

Returns the left face of the box in counter-clockwise order, looking from right. Returns Origin at point 0, X-axis to point 3, Y-axis to point 4. The normal of the Rect3D points into the Box.

            local      (back)
            Z-axis     (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- (right)
            |   |           |   |
    (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                    (bottom)
                    (front)

Returns: Rect3D

this.LongestEdge

Full Usage: this.LongestEdge

Returns: float
Modifiers: inline

Returns the longest edge of the Box.

Returns: float

this.LongestEdgeSq

Full Usage: this.LongestEdgeSq

Returns: float
Modifiers: inline

Returns the square length of longest edge of the Box.

Returns: float

this.Move

Full Usage: this.Move

Parameters:
Returns: Box
Modifiers: inline

Returns a 3D box moved by a vector. Same as Box.translate.

v : Vec
Returns: Box

this.MoveX

Full Usage: this.MoveX

Parameters:
    distance : float

Returns: Box
Modifiers: inline

Returns a 3D box moved by a given distance in X direction.

distance : float
Returns: Box

this.MoveY

Full Usage: this.MoveY

Parameters:
    distance : float

Returns: Box
Modifiers: inline

Returns a 3D box moved by a given distance in Y direction.

distance : float
Returns: Box

this.MoveZ

Full Usage: this.MoveZ

Parameters:
    distance : float

Returns: Box
Modifiers: inline

Returns a 3D box moved by a given distance in Z direction.

distance : float
Returns: Box

this.Origin

Full Usage: this.Origin

Returns: Pnt

Creates a 3D Point from b.OriginX, b.OriginY and b.OriginZ

Returns: Pnt

this.Plane

Full Usage: this.Plane

Returns: PPlane
Modifiers: inline

Gets the Plane that this box is based on.

Returns: PPlane

this.Points

Full Usage: this.Points

Returns: Pnt[]

Returns the bottom corners of the box in counter-clockwise order, starting at Origin. Then the top corners starting above Origin. Returns an array of 8 Points.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt[]

this.Pt0

Full Usage: this.Pt0

Returns: Pnt
Modifiers: inline

Returns point 0 of the box, same box.Origin.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.Pt1

Full Usage: this.Pt1

Returns: Pnt
Modifiers: inline

Returns point 1 of the box.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.Pt2

Full Usage: this.Pt2

Returns: Pnt
Modifiers: inline

Returns point 2 of the box.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.Pt3

Full Usage: this.Pt3

Returns: Pnt
Modifiers: inline

Returns point 3 of the box.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.Pt4

Full Usage: this.Pt4

Returns: Pnt
Modifiers: inline

Returns point 4 of the box.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.Pt5

Full Usage: this.Pt5

Returns: Pnt
Modifiers: inline

Returns point 5 of the box.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.Pt6

Full Usage: this.Pt6

Returns: Pnt
Modifiers: inline

Returns point 6 of the box.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.Pt7

Full Usage: this.Pt7

Returns: Pnt
Modifiers: inline

Returns point 7 of the box.

   local        local
   Z-axis       Y-axis
   ^           /
   |   7      /        6
   |   +---------------+
   |  /|    /         /|
   | / |   /         / |
 4 |/  |  /       5 /  |
   +---------------+   |
   |   |/          |   |
   |   +-----------|---+
   |  / 3          |  / 2
   | /             | /
   |/              |/     local
   +---------------+----> X-axis
   0               1

Returns: Pnt

this.RightFace

Full Usage: this.RightFace

Returns: Rect3D

Returns the right face of the box in counter-clockwise order, looking from right. Returns Origin at point 1, X-axis to point 2, Y-axis to point 5. The normal of the Rect3D points away from the Box.

            local      (back)
            Z-axis     (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- (right)
            |   |           |   |
    (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                    (bottom)
                    (front)

Returns: Rect3D

this.Rotate

Full Usage: this.Rotate

Parameters:
Returns: Box
Modifiers: inline

Multiplies (or applies) a Quaternion to a 3D box. The box is rotated around the World Origin.

q : Quaternion
Returns: Box

this.RotateWithCenter

Full Usage: this.RotateWithCenter

Parameters:
Returns: Box
Modifiers: inline

Multiplies (or applies) a Quaternion to a 3D box around a given center point.

cen : Pnt
q : Quaternion
Returns: Box

this.Scale

Full Usage: this.Scale

Parameters:
    factor : float

Returns: Box
Modifiers: inline

Scales the box by a given factor. Scale center is World Origin 0,0

factor : float
Returns: Box

this.ScaleOn

Full Usage: this.ScaleOn

Parameters:
    cen : Pnt
    factor : float

Returns: Box
Modifiers: inline

Scales the box by a given factor on a given center point

cen : Pnt
factor : float
Returns: Box

this.ShortestEdge

Full Usage: this.ShortestEdge

Returns: float
Modifiers: inline

Returns the shortest edge of the Box.

Returns: float

this.ShortestEdgeSq

Full Usage: this.ShortestEdgeSq

Returns: float
Modifiers: inline

Returns the square length of shortest edge of the Box.

Returns: float

this.SizeX

Full Usage: this.SizeX

Returns: float
Modifiers: inline

The size in X direction.

Returns: float

this.SizeXSq

Full Usage: this.SizeXSq

Returns: float
Modifiers: inline

The size in X direction squared.

Returns: float

this.SizeY

Full Usage: this.SizeY

Returns: float
Modifiers: inline

The size in Y direction.

Returns: float

this.SizeYSq

Full Usage: this.SizeYSq

Returns: float
Modifiers: inline

The size in Y direction squared.

Returns: float

this.SizeZ

Full Usage: this.SizeZ

Returns: float
Modifiers: inline

The size in Z direction.

Returns: float

this.SizeZSq

Full Usage: this.SizeZSq

Returns: float
Modifiers: inline

The size in Z direction squared.

Returns: float

this.TopFace

Full Usage: this.TopFace

Returns: Rect3D

Returns the top face of the box in counter-clockwise order, looking from above. Returns Origin at point 4, X-axis to point 5, Y-axis to point 7. The normal of the Rect3D points away from the Box.

            local      (back)
            Z-axis     (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- (right)
            |   |           |   |
    (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                    (bottom)
                    (front)

Returns: Rect3D

this.TransformRigid

Full Usage: this.TransformRigid

Parameters:
Returns: Box
Modifiers: inline

Multiplies (or applies) a RigidMatrix to a 3D box. The returned box is guaranteed to have still orthogonal vectors.

m : RigidMatrix
Returns: Box

this.Volume

Full Usage: this.Volume

Returns: float
Modifiers: inline

Calculates the volume of the Box.

Returns: float

this.Xaxis

Full Usage: this.Xaxis

Returns: Vec

Creates a 3D Vector from b.XaxisX, b.XaxisY and b.XaxisZ

Returns: Vec

this.XaxisUnit

Full Usage: this.XaxisUnit

Returns: UnitVec
Modifiers: inline

Creates a unitized version of the local X-axis.

Returns: UnitVec

this.Yaxis

Full Usage: this.Yaxis

Returns: Vec

Creates a 3D Vector from b.YaxisX, b.YaxisY and b.YaxisZ

Returns: Vec

this.YaxisUnit

Full Usage: this.YaxisUnit

Returns: UnitVec
Modifiers: inline

Creates a unitized version of the local Y-axis.

Returns: UnitVec

this.Zaxis

Full Usage: this.Zaxis

Returns: Vec

Creates a 3D Vector from b.ZaxisX, b.ZaxisY and b.ZaxisZ

Returns: Vec

this.ZaxisUnit

Full Usage: this.ZaxisUnit

Returns: UnitVec
Modifiers: inline

Creates a unitized version of the local Z-axis.

Returns: UnitVec

Static members

Static member Description

Box.areaOfBiggestFace b

Full Usage: Box.areaOfBiggestFace b

Parameters:
Returns: float
Modifiers: inline

Returns the area of the biggest face of the box.

b : Box
Returns: float

Box.areaOfSmallestFace b

Full Usage: Box.areaOfSmallestFace b

Parameters:
Returns: float
Modifiers: inline

Returns the area of the smallest face of the box.

b : Box
Returns: float

Box.asFSharpCode b

Full Usage: Box.asFSharpCode b

Parameters:
Returns: string
Modifiers: inline

Format box into an F# code string that can be used to recreate it.

b : Box
Returns: string

Box.asString b

Full Usage: Box.asString b

Parameters:
Returns: string
Modifiers: inline

Format box into string with nice floating point number formatting of X, Y and Z size only.

b : Box
Returns: string

Box.backFace b

Full Usage: Box.backFace b

Parameters:
Returns: Rect3D
Modifiers: inline

Returns the back face of the box.

b : Box
Returns: Rect3D

Box.bottomFace b

Full Usage: Box.bottomFace b

Parameters:
Returns: Rect3D
Modifiers: inline

Returns the bottom face of the box.

b : Box
Returns: Rect3D

Box.center b

Full Usage: Box.center b

Parameters:
Returns: Pnt
Modifiers: inline

The center of the box.

b : Box
Returns: Pnt

Box.contains p b

Full Usage: Box.contains p b

Parameters:
Returns: bool
Modifiers: inline

Check for point containment in the Box. By doing six dot products with the box axes to test its six faces. A point exactly on the edge of the box is considered inside.

p : Pnt
b : Box
Returns: bool

Box.containsXYZ x y z b

Full Usage: Box.containsXYZ x y z b

Parameters:
    x : float
    y : float
    z : float
    b : Box

Returns: bool
Modifiers: inline

Check for point containment in the Box. By doing six dot products with the box axes to test its six faces. A point exactly on the edge of the box is considered inside.

x : float
y : float
z : float
b : Box
Returns: bool

Box.countZeroSides b

Full Usage: Box.countZeroSides b

Parameters:
Returns: int
Modifiers: inline

Counts the amount of sides that are smaller than the zeroLength tolerance.

b : Box
Returns: int

Box.createFromBounds (minX, minY, minZ, maxX, maxY, maxZ)

Full Usage: Box.createFromBounds (minX, minY, minZ, maxX, maxY, maxZ)

Parameters:
    minX : float
    minY : float
    minZ : float
    maxX : float
    maxY : float
    maxZ : float

Returns: Box
Modifiers: inline

Creates a 3D box from the bounds (minX, minY, minZ) and (maxX, maxY, maxZ).

minX : float
minY : float
minZ : float
maxX : float
maxY : float
maxZ : float
Returns: Box

Box.createFromDirsAndPoints dirX dirY pts

Full Usage: Box.createFromDirsAndPoints dirX dirY pts

Parameters:
Returns: Box

Finds the oriented bounding box in 3D of a set of points. The orientation of the X-axis is defined by the dirX vector. The orientation of the Y-axis is defined by the dirY vector.

dirX : Vec
dirY : Vec
pts : IList<Pnt>
Returns: Box

Box.createFromPlane x y z pl

Full Usage: Box.createFromPlane x y z pl

Parameters:
    x : float
    y : float
    z : float
    pl : PPlane

Returns: Box
Modifiers: inline

Creates a 3D box from PPlane and x, y and Z size.

x : float
y : float
z : float
pl : PPlane
Returns: Box

Box.createFromPlaneAndPoints pl pts

Full Usage: Box.createFromPlaneAndPoints pl pts

Parameters:
Returns: Box

Finds the oriented bounding box in 3D of a set of points. The orientation of the X-axis is defined by the dirX vector. The orientation of the Y-axis is defined by the dirY vector.

pl : PPlane
pts : IList<Pnt>
Returns: Box

Box.createFromRect2D zLow zHigh r

Full Usage: Box.createFromRect2D zLow zHigh r

Parameters:
    zLow : float
    zHigh : float
    r : Rect2D

Returns: Box

Creates a 3D box from a 2D rectangle and Z lower and upper position.

zLow : float
zHigh : float
r : Rect2D
Returns: Box

Box.createFromRect3D zLow zHigh r

Full Usage: Box.createFromRect3D zLow zHigh r

Parameters:
    zLow : float
    zHigh : float
    r : Rect3D

Returns: Box
Modifiers: inline

Creates a 3D box from a 3D rectangle and a Z lower and upper offset. Both zLow and zHigh offsets are applied along the normal of the rectangle in the same direction from the Origin.

zLow : float
zHigh : float
r : Rect3D
Returns: Box

Box.createUnchecked (originX, originY, originZ, xAxisX, xAxisY, xAxisZ, yAxisX, yAxisY, yAxisZ, zAxisX, zAxisY, zAxisZ)

Full Usage: Box.createUnchecked (originX, originY, originZ, xAxisX, xAxisY, xAxisZ, yAxisX, yAxisY, yAxisZ, zAxisX, zAxisY, zAxisZ)

Parameters:
    originX : float
    originY : float
    originZ : float
    xAxisX : float
    xAxisY : float
    xAxisZ : float
    yAxisX : float
    yAxisY : float
    yAxisZ : float
    zAxisX : float
    zAxisY : float
    zAxisZ : float

Returns: Box
Modifiers: inline

Create a box from origin coordinates and X-, Y-, and Z-axis vector components. It does NOT verify the orientation of vectors.

originX : float
originY : float
originZ : float
xAxisX : float
xAxisY : float
xAxisZ : float
yAxisX : float
yAxisY : float
yAxisZ : float
zAxisX : float
zAxisY : float
zAxisZ : float
Returns: Box

Box.createUncheckedVec (origin, xAxis, yAxis, zAxis)

Full Usage: Box.createUncheckedVec (origin, xAxis, yAxis, zAxis)

Parameters:
Returns: Box
Modifiers: inline

Unsafe constructor that creates a box from origin point and three axis vectors. It does NOT verify the orientation of vectors.

origin : Pnt
xAxis : Vec
yAxis : Vec
zAxis : Vec
Returns: Box

Box.diagonal b

Full Usage: Box.diagonal b

Parameters:
Returns: Vec
Modifiers: inline

The diagonal vector of the box.

b : Box
Returns: Vec

Box.edge01 b

Full Usage: Box.edge01 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 0 to 1.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge03 b

Full Usage: Box.edge03 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 0 to 3.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge04 b

Full Usage: Box.edge04 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 0 to 4.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge12 b

Full Usage: Box.edge12 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 1 to 2.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge15 b

Full Usage: Box.edge15 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 1 to 5.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge26 b

Full Usage: Box.edge26 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 2 to 6.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge32 b

Full Usage: Box.edge32 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 3 to 2.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge37 b

Full Usage: Box.edge37 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Z-aligned edge from point 3 to 7.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge45 b

Full Usage: Box.edge45 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 4 to 5.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge47 b

Full Usage: Box.edge47 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 4 to 7.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge56 b

Full Usage: Box.edge56 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the Y-aligned edge from point 5 to 6.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edge76 b

Full Usage: Box.edge76 b

Parameters:
Returns: Line3D
Modifiers: inline

Returns the X-aligned edge from point 7 to 6.

   7------6
  /|     /|
 4------5 |
 | |    | |
 | 3----|-2
 |/     |/
 0------1

b : Box
Returns: Line3D

Box.edges b

Full Usage: Box.edges b

Parameters:
Returns: Line3D[]
Modifiers: inline

Returns all 12 edges of the box.

b : Box
Returns: Line3D[]

Box.equals tol a b

Full Usage: Box.equals tol a b

Parameters:
Returns: bool

Checks if two 3D-boxes are equal within tolerance. Does not recognize congruent boxes with different rotation as equal. Use a tolerance of 0.0 to check for an exact match.

tol : float
a : Box
b : Box
Returns: bool

Box.evaluateAt xParameter yParameter zParameter b

Full Usage: Box.evaluateAt xParameter yParameter zParameter b

Parameters:
    xParameter : float
    yParameter : float
    zParameter : float
    b : Box

Returns: Pnt
Modifiers: inline

Evaluate an X, Y and Z parameter of the box.

xParameter : float
yParameter : float
zParameter : float
b : Box
Returns: Pnt

Box.expand dist b

Full Usage: Box.expand dist b

Parameters:
    dist : float
    b : Box

Returns: Box

Returns box expanded by distance on all six sides. Does check for underflow if distance is negative and raises EuclidException.

dist : float
b : Box
Returns: Box

Box.expandRel factor b

Full Usage: Box.expandRel factor b

Parameters:
    factor : float
    b : Box

Returns: Box

Returns the 3D box expanded by a relative factor on all six sides. Values between 0.0 and 1.0 shrink the box. Values larger than 1.0 expand the box. Does check for underflow if factor is negative and raises EuclidException.

factor : float
b : Box
Returns: Box

Box.expandRelXYZ factorX factorY factorZ b

Full Usage: Box.expandRelXYZ factorX factorY factorZ b

Parameters:
    factorX : float
    factorY : float
    factorZ : float
    b : Box

Returns: Box

Returns the 3D box expanded by a relative factor on all six sides, separately for X, Y, Z. Values between 0.0 and 1.0 shrink the box. Values larger than 1.0 expand the box. Does check for underflow if any factor is negative and raises EuclidException.

factorX : float
factorY : float
factorZ : float
b : Box
Returns: Box

Box.expandXYZ distX distY distZ b

Full Usage: Box.expandXYZ distX distY distZ b

Parameters:
    distX : float
    distY : float
    distZ : float
    b : Box

Returns: Box

Returns box expanded by respective distances on all six sides. Does check for overflow if distance is negative and fails. distX, distY and distZ are for X-, Y-, and Z-axis respectively.

distX : float
distY : float
distZ : float
b : Box
Returns: Box

Box.faces b

Full Usage: Box.faces b

Parameters:
Returns: Rect3D[]
Modifiers: inline

Returns the six faces of the box in documented order.

b : Box
Returns: Rect3D[]

Box.farCorner b

Full Usage: Box.farCorner b

Parameters:
Returns: Pnt
Modifiers: inline

The corner diagonally opposite of corner from Origin.

b : Box
Returns: Pnt

Box.frontFace b

Full Usage: Box.frontFace b

Parameters:
Returns: Rect3D
Modifiers: inline

Returns the front face of the box.

b : Box
Returns: Rect3D

Box.getEdge edgeIndex b

Full Usage: Box.getEdge edgeIndex b

Parameters:
    edgeIndex : int
    b : Box

Returns: Line3D
Modifiers: inline

Returns the edge of the box at the specified index.

edgeIndex : int
b : Box
Returns: Line3D

Box.getFace faceIndex b

Full Usage: Box.getFace faceIndex b

Parameters:
    faceIndex : int
    b : Box

Returns: Rect3D
Modifiers: inline

Returns the face of the box at the specified index. The order of the faces is: BottomFace, FrontFace, RightFace, BackFace, LeftFace, TopFace.

            local      3 (back)
            Z-axis     5 (top)
            ^          |
            |   7      |        6
            |   +---------------+
            |  /|      |       /|
            | / |             / |
          4 |/  |          5 /  |
            +---------------+  -|-- 2 (right)
            |   |           |   |
  4 (left)--|-  +-----------|---+
            |  / 3          |  / 2
            | /             | /
            |/      |       |/     local
            +---------------+----> X-axis
            0       |       1
                    |
                   0 (bottom)
                   1 (front)

faceIndex : int
b : Box
Returns: Rect3D

Box.getPoint pointIndex b

Full Usage: Box.getPoint pointIndex b

Parameters:
    pointIndex : int
    b : Box

Returns: Pnt
Modifiers: inline

Returns the point of the box at the specified index.

pointIndex : int
b : Box
Returns: Pnt

Box.hasVolume b

Full Usage: Box.hasVolume b

Parameters:
Returns: bool
Modifiers: inline

Tests if none of the X, Y, and Z axes is smaller than the zeroLength tolerance.

b : Box
Returns: bool

Box.intersectRay ray box

Full Usage: Box.intersectRay ray box

Parameters:
    ray : Line3D - The ray (Line3D) to intersect with the box.
    box : Box - The box to intersect with.

Returns: (float * float) voption ValueNone if there is no intersection; otherwise, ValueSome(tEntry, tExit).
Modifiers: inline

Intersects an infinite ray (Line3D extended infinitely in both directions) with the Box. Uses the slab intersection method in the box's local coordinate system. Returns ValueNone if the ray does not intersect the box or if the ray direction is too short. Returns ValueSome with entry and exit parameters on the ray if it intersects. A parameter of 0.0 corresponds to the ray's From point, 1.0 to its To point.

ray : Line3D

The ray (Line3D) to intersect with the box.

box : Box

The box to intersect with.

Returns: (float * float) voption

ValueNone if there is no intersection; otherwise, ValueSome(tEntry, tExit).

Box.isFlat b

Full Usage: Box.isFlat b

Parameters:
Returns: bool
Modifiers: inline

Tests if one of the X, Y, and Z axes is smaller than the zeroLength tolerance.

b : Box
Returns: bool

Box.isLine b

Full Usage: Box.isLine b

Parameters:
Returns: bool
Modifiers: inline

Tests if two of the X, Y, and Z axes are smaller than the zeroLength tolerance.

b : Box
Returns: bool

Box.isPoint b

Full Usage: Box.isPoint b

Parameters:
Returns: bool
Modifiers: inline

Tests if all sides are smaller than the zeroLength tolerance. Same as Box.isZero.

b : Box
Returns: bool

Box.isValid b

Full Usage: Box.isValid b

Parameters:
Returns: bool
Modifiers: inline

Tests if none of the X, Y, and Z axes are smaller than the zeroLength tolerance.

b : Box
Returns: bool

Box.isZero b

Full Usage: Box.isZero b

Parameters:
Returns: bool
Modifiers: inline

Tests if all sides are smaller than the zeroLength tolerance. Same as Box.isPoint.

b : Box
Returns: bool

Box.leftFace b

Full Usage: Box.leftFace b

Parameters:
Returns: Rect3D
Modifiers: inline

Returns the left face of the box.

b : Box
Returns: Rect3D

Box.longestEdge b

Full Usage: Box.longestEdge b

Parameters:
Returns: float
Modifiers: inline

Returns the longest edge of the box.

b : Box
Returns: float

Box.longestEdgeSq b

Full Usage: Box.longestEdgeSq b

Parameters:
Returns: float
Modifiers: inline

Returns the square length of longest edge of the box.

b : Box
Returns: float

Box.move v b

Full Usage: Box.move v b

Parameters:
Returns: Box
Modifiers: inline

Creates a 3D box moved by a vector. Same as Box.translate.

v : Vec
b : Box
Returns: Box

Box.moveX distance b

Full Usage: Box.moveX distance b

Parameters:
    distance : float
    b : Box

Returns: Box
Modifiers: inline

Returns the 3D box moved by a given distance in X direction.

distance : float
b : Box
Returns: Box

Box.moveY distance b

Full Usage: Box.moveY distance b

Parameters:
    distance : float
    b : Box

Returns: Box
Modifiers: inline

Returns the 3D box moved by a given distance in Y direction.

distance : float
b : Box
Returns: Box

Box.moveZ distance b

Full Usage: Box.moveZ distance b

Parameters:
    distance : float
    b : Box

Returns: Box
Modifiers: inline

Returns the 3D box moved by a given distance in Z direction.

distance : float
b : Box
Returns: Box

Box.notEquals tol a b

Full Usage: Box.notEquals tol a b

Parameters:
Returns: bool

Check if two 3D-boxes are not equal within a given tolerance. Use a tolerance of 0.0 to check if the two 3D-boxes are not exactly equal.

tol : float
a : Box
b : Box
Returns: bool

Box.origin b

Full Usage: Box.origin b

Parameters:
Returns: Pnt
Modifiers: inline

Creates a 3D Point from b.OriginX, b.OriginY and b.OriginZ

b : Box
Returns: Pnt

Box.plane b

Full Usage: Box.plane b

Parameters:
Returns: PPlane
Modifiers: inline

Gets the plane that this box is based on.

b : Box
Returns: PPlane

Box.points b

Full Usage: Box.points b

Parameters:
Returns: Pnt[]
Modifiers: inline

Returns the corners of the box in the documented order.

b : Box
Returns: Pnt[]

Box.pt0 b

Full Usage: Box.pt0 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 0 of the box, same as Origin.

b : Box
Returns: Pnt

Box.pt1 b

Full Usage: Box.pt1 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 1 of the box.

b : Box
Returns: Pnt

Box.pt2 b

Full Usage: Box.pt2 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 2 of the box.

b : Box
Returns: Pnt

Box.pt3 b

Full Usage: Box.pt3 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 3 of the box.

b : Box
Returns: Pnt

Box.pt4 b

Full Usage: Box.pt4 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 4 of the box.

b : Box
Returns: Pnt

Box.pt5 b

Full Usage: Box.pt5 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 5 of the box.

b : Box
Returns: Pnt

Box.pt6 b

Full Usage: Box.pt6 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 6 of the box.

b : Box
Returns: Pnt

Box.pt7 b

Full Usage: Box.pt7 b

Parameters:
Returns: Pnt
Modifiers: inline

Returns point 7 of the box.

b : Box
Returns: Pnt

Box.rightFace b

Full Usage: Box.rightFace b

Parameters:
Returns: Rect3D
Modifiers: inline

Returns the right face of the box.

b : Box
Returns: Rect3D

Box.rotate q b

Full Usage: Box.rotate q b

Parameters:
Returns: Box
Modifiers: inline

Multiplies (or applies) a Quaternion to a 3D box. The box IsRotated around the World Origin.

q : Quaternion
b : Box
Returns: Box

Box.rotateWithCenter cen q b

Full Usage: Box.rotateWithCenter cen q b

Parameters:
Returns: Box
Modifiers: inline

Multiplies (or applies) a Quaternion to a 3D box around a given center point.

cen : Pnt
q : Quaternion
b : Box
Returns: Box

Box.scale factor b

Full Usage: Box.scale factor b

Parameters:
    factor : float
    b : Box

Returns: Box
Modifiers: inline

Scales the 3D box by a given factor. Scale center is World Origin 0,0,0

factor : float
b : Box
Returns: Box

Box.scaleOn cen factor b

Full Usage: Box.scaleOn cen factor b

Parameters:
    cen : Pnt
    factor : float
    b : Box

Returns: Box
Modifiers: inline

Scales the box by a given factor around a given center point.

cen : Pnt
factor : float
b : Box
Returns: Box

Box.shortestEdge b

Full Usage: Box.shortestEdge b

Parameters:
Returns: float
Modifiers: inline

Returns the shortest edge of the box.

b : Box
Returns: float

Box.shortestEdgeSq b

Full Usage: Box.shortestEdgeSq b

Parameters:
Returns: float
Modifiers: inline

Returns the square length of shortest edge of the box.

b : Box
Returns: float

Box.sizeX b

Full Usage: Box.sizeX b

Parameters:
Returns: float
Modifiers: inline

The size in X direction.

b : Box
Returns: float

Box.sizeXSq b

Full Usage: Box.sizeXSq b

Parameters:
Returns: float
Modifiers: inline

The size in X direction squared.

b : Box
Returns: float

Box.sizeY b

Full Usage: Box.sizeY b

Parameters:
Returns: float
Modifiers: inline

The size in Y direction.

b : Box
Returns: float

Box.sizeYSq b

Full Usage: Box.sizeYSq b

Parameters:
Returns: float
Modifiers: inline

The size in Y direction squared.

b : Box
Returns: float

Box.sizeZ b

Full Usage: Box.sizeZ b

Parameters:
Returns: float
Modifiers: inline

The size in Z direction.

b : Box
Returns: float

Box.sizeZSq b

Full Usage: Box.sizeZSq b

Parameters:
Returns: float
Modifiers: inline

The size in Z direction squared.

b : Box
Returns: float

Box.topFace b

Full Usage: Box.topFace b

Parameters:
Returns: Rect3D
Modifiers: inline

Returns the top face of the box.

b : Box
Returns: Rect3D

Box.transformRigid m b

Full Usage: Box.transformRigid m b

Parameters:
Returns: Box
Modifiers: inline

Transforms the box by the given RigidMatrix. The returned box is guaranteed to have still orthogonal vectors.

m : RigidMatrix
b : Box
Returns: Box

Box.translate v b

Full Usage: Box.translate v b

Parameters:
Returns: Box
Modifiers: inline

Move a 3D box by a vector. Same as Box.move.

v : Vec
b : Box
Returns: Box

Box.translateLocalX distX b

Full Usage: Box.translateLocalX distX b

Parameters:
    distX : float
    b : Box

Returns: Box

Creates a 3D box translated along the local X-axis of the Box.

distX : float
b : Box
Returns: Box

Box.translateLocalY distY b

Full Usage: Box.translateLocalY distY b

Parameters:
    distY : float
    b : Box

Returns: Box

Creates a 3D box translated along the local Y-axis of the Box.

distY : float
b : Box
Returns: Box

Box.translateLocalZ distZ b

Full Usage: Box.translateLocalZ distZ b

Parameters:
    distZ : float
    b : Box

Returns: Box

Creates a 3D box translated along the local Z-axis of the Box.

distZ : float
b : Box
Returns: Box

Box.volume b

Full Usage: Box.volume b

Parameters:
Returns: float
Modifiers: inline

Calculates the volume of the box.

b : Box
Returns: float

Box.xAxis b

Full Usage: Box.xAxis b

Parameters:
Returns: Vec
Modifiers: inline

Creates a 3D Vector from b.XaxisX, b.XaxisY and b.XaxisZ

b : Box
Returns: Vec

Box.xAxisUnit b

Full Usage: Box.xAxisUnit b

Parameters:
Returns: UnitVec
Modifiers: inline

Creates a unitized version of the local X-axis.

b : Box
Returns: UnitVec

Box.yAxis b

Full Usage: Box.yAxis b

Parameters:
Returns: Vec
Modifiers: inline

Creates a 3D Vector from b.YaxisX, b.YaxisY and b.YaxisZ

b : Box
Returns: Vec

Box.yAxisUnit b

Full Usage: Box.yAxisUnit b

Parameters:
Returns: UnitVec
Modifiers: inline

Creates a unitized version of the local Y-axis.

b : Box
Returns: UnitVec

Box.zAxis b

Full Usage: Box.zAxis b

Parameters:
Returns: Vec
Modifiers: inline

Creates a 3D Vector from b.ZaxisX, b.ZaxisY and b.ZaxisZ

b : Box
Returns: Vec

Box.zAxisUnit b

Full Usage: Box.zAxisUnit b

Parameters:
Returns: UnitVec
Modifiers: inline

Creates a unitized version of the local Z-axis.

b : Box
Returns: UnitVec

Type something to start searching.