Package | Description |
---|---|
pythagoras.d |
The Pythagoras geometry utility classes specialized on
double . |
Modifier and Type | Class and Description |
---|---|
class |
Vector3
A three element vector.
|
Modifier and Type | Field and Description |
---|---|
static IVector3 |
Vector3.MAX_VALUE
A vector containing the maximum doubleing point value for all components.
|
static IVector3 |
Vector3.MIN_VALUE
A vector containing the minimum doubleing point value for all components
(note: the components are -
Float.MAX_VALUE , not Float.MIN_VALUE ). |
static IVector3 |
Vector3.NORMAL_XYZ
A normalized version of UNIT_XYZ.
|
static IVector3 |
Vector3.UNIT_X
A unit vector in the X+ direction.
|
static IVector3 |
Vector3.UNIT_XYZ
A vector containing unity for all components.
|
static IVector3 |
Vector3.UNIT_Y
A unit vector in the Y+ direction.
|
static IVector3 |
Vector3.UNIT_Z
A unit vector in the Z+ direction.
|
static IVector3 |
Vector3.ZERO
The zero vector.
|
Modifier and Type | Method and Description |
---|---|
IVector3 |
IRay3.direction()
Returns a reference to the ray's unit direction vector.
|
IVector3 |
IBox.maximumExtent()
Returns a reference to the box's maximum extent.
|
IVector3 |
Box.maximumExtent() |
IVector3 |
IBox.minimumExtent()
Returns a reference to the box's minimum extent.
|
IVector3 |
Box.minimumExtent() |
IVector3 |
Plane.normal() |
IVector3 |
IPlane.normal()
Returns the plane normal.
|
IVector3 |
IRay3.origin()
Returns a reference to the ray's point of origin.
|
IVector3[] |
Frustum.vertices()
Returns a reference to the frustum's array of vertices.
|
Modifier and Type | Method and Description |
---|---|
Vector3 |
Vector3.add(IVector3 other) |
Vector3 |
IVector3.add(IVector3 other)
Adds a vector to this one.
|
Box |
IBox.add(IVector3 point)
Expands this box to include the specified point.
|
Box |
Box.add(IVector3 point) |
Box |
IBox.add(IVector3 point,
Box result)
Expands this box to include the specified point, placing the result in the object
provided.
|
Box |
Box.add(IVector3 point,
Box result) |
Vector3 |
Vector3.add(IVector3 other,
Vector3 result) |
Vector3 |
IVector3.add(IVector3 other,
Vector3 result)
Adds a vector to this one, storing the result in the object provided.
|
Vector3 |
Vector3.addLocal(IVector3 other)
Adds a vector in-place to this one.
|
Box |
Box.addLocal(IVector3 point)
Expands this box in-place to include the specified point.
|
Vector3 |
Vector3.addScaled(IVector3 other,
double v) |
Vector3 |
IVector3.addScaled(IVector3 other,
double v)
Adds a scaled vector to this one.
|
Vector3 |
Vector3.addScaled(IVector3 other,
double v,
Vector3 result) |
Vector3 |
IVector3.addScaled(IVector3 other,
double v,
Vector3 result)
Adds a scaled vector to this one and stores the result in the supplied vector.
|
Vector3 |
Vector3.addScaledLocal(IVector3 other,
double v)
Adds a scaled vector in-place to this one.
|
double |
Vector3.angle(IVector3 other) |
double |
IVector3.angle(IVector3 other)
Returns the angle between this vector and the specified other vector.
|
boolean |
IBox.contains(IVector3 point)
Determines whether this box contains the specified point.
|
boolean |
Box.contains(IVector3 point) |
Vector3 |
Vector3.cross(IVector3 other) |
Vector3 |
IVector3.cross(IVector3 other)
Computes the cross product of this and the specified other vector.
|
Vector3 |
Vector3.cross(IVector3 other,
Vector3 result) |
Vector3 |
IVector3.cross(IVector3 other,
Vector3 result)
Computes the cross product of this and the specified other vector, placing the result
in the object supplied.
|
Vector3 |
Vector3.crossLocal(IVector3 other)
Computes the cross product of this and the specified other vector, storing the result
in this vector.
|
double |
Vector3.distance(IVector3 other) |
double |
Plane.distance(IVector3 pt) |
double |
IVector3.distance(IVector3 other)
Returns the distance from this vector to the specified other vector.
|
double |
IPlane.distance(IVector3 pt)
Computes and returns the signed distance from the plane to the specified point.
|
double |
Vector3.distanceSquared(IVector3 other) |
double |
IVector3.distanceSquared(IVector3 other)
Returns the squared distance from this vector to the specified other.
|
double |
Vector3.dot(IVector3 other) |
double |
IVector3.dot(IVector3 other)
Computes and returns the dot product of this and the specified other vector.
|
Quaternion |
Quaternion.fromAngleAxis(double angle,
IVector3 axis)
Sets this quaternion to the rotation described by the given angle and normalized
axis.
|
Quaternion |
Quaternion.fromAxes(IVector3 nx,
IVector3 ny,
IVector3 nz)
Sets this quaternion to one that rotates onto the given unit axes.
|
Plane |
Plane.fromPointNormal(IVector3 pt,
IVector3 normal)
Sets this plane based on a point on the plane and the plane normal.
|
Box |
Box.fromPoints(IVector3... points)
Initializes this box with the extents of an array of points.
|
Plane |
Plane.fromPoints(IVector3 p1,
IVector3 p2,
IVector3 p3)
Sets this plane based on the three points provided.
|
Quaternion |
Quaternion.fromVectorFromNegativeZ(IVector3 to)
Sets this quaternion to the rotation of (0, 0, -1) onto the supplied normalized vector.
|
Quaternion |
Quaternion.fromVectors(IVector3 from,
IVector3 to)
Sets this quaternion to the rotation of the first normalized vector onto the second.
|
Quaternion |
Quaternion.integrate(IVector3 velocity,
double t) |
Quaternion |
IQuaternion.integrate(IVector3 velocity,
double t)
Integrates the provided angular velocity over the specified timestep.
|
Quaternion |
Quaternion.integrate(IVector3 velocity,
double t,
Quaternion result) |
Quaternion |
IQuaternion.integrate(IVector3 velocity,
double t,
Quaternion result)
Integrates the provided angular velocity over the specified timestep, storing the result in
the object provided.
|
Quaternion |
Quaternion.integrateLocal(IVector3 velocity,
double t)
Integrates in-place the provided angular velocity over the specified timestep.
|
Vector3 |
Vector3.lerp(IVector3 other,
double t) |
Vector3 |
IVector3.lerp(IVector3 other,
double t)
Linearly interpolates between this and the specified other vector by the supplied amount.
|
Vector3 |
Vector3.lerp(IVector3 other,
double t,
Vector3 result) |
Vector3 |
IVector3.lerp(IVector3 other,
double t,
Vector3 result)
Linearly interpolates between this and the supplied other vector by the supplied amount,
storing the result in the supplied object.
|
Vector3 |
Vector3.lerpLocal(IVector3 other,
double t)
Linearly interpolates between this and the specified other vector in-place by the supplied
amount.
|
double |
Vector3.manhattanDistance(IVector3 other) |
double |
IVector3.manhattanDistance(IVector3 other)
Returns the Manhattan distance between this vector and the specified other.
|
Vector3 |
Vector3.mult(IVector3 other) |
Vector3 |
IVector3.mult(IVector3 other)
Multiplies this vector by another.
|
Vector3 |
Vector3.mult(IVector3 other,
Vector3 result) |
Vector3 |
IVector3.mult(IVector3 other,
Vector3 result)
Multiplies this vector by another, storing the result in the object provided.
|
Vector3 |
Vector3.multLocal(IVector3 other)
Multiplies this vector in-place by another.
|
Vector3 |
Matrix4.projectPoint(IVector3 point) |
Vector3 |
IMatrix4.projectPoint(IVector3 point)
Projects the supplied point using this matrix.
|
Vector3 |
Matrix4.projectPoint(IVector3 point,
Vector3 result) |
Vector3 |
IMatrix4.projectPoint(IVector3 point,
Vector3 result)
Projects the supplied point using this matrix and places the result in the object supplied.
|
Vector3 |
Vector3.set(IVector3 other)
Copies the elements of another vector.
|
Plane |
Plane.set(IVector3 normal,
double constant)
Sets the parameters of the plane.
|
Box |
Box.set(IVector3 minExtent,
IVector3 maxExtent)
Sets the box parameters to the values contained in the supplied vectors.
|
Matrix4 |
Matrix4.setToFrustum(double left,
double right,
double bottom,
double top,
double near,
double far,
IVector3 nearFarNormal)
Sets this to a perspective projection matrix.
|
Matrix4 |
Matrix4.setToOrtho(double left,
double right,
double bottom,
double top,
double near,
double far,
IVector3 nearFarNormal)
Sets this to an orthographic projection matrix.
|
Frustum |
Frustum.setToProjection(double left,
double right,
double bottom,
double top,
double near,
double far,
IVector3 nearFarNormal,
boolean ortho,
boolean mirrored)
Sets this frustum to a perspective or orthographic projection with the specified parameters
determining its size and shape.
|
Matrix4 |
Matrix4.setToReflection(IVector3 normal)
Sets this to a reflection across a plane intersecting the origin with the supplied normal.
|
Matrix3 |
Matrix3.setToReflection(IVector3 normal)
Sets this to a reflection across a plane intersecting the origin with the supplied normal.
|
Matrix4 |
Matrix4.setToReflection(IVector3 normal,
double constant)
Sets this to a reflection across the specified plane.
|
Matrix4 |
Matrix4.setToRotation(double angle,
IVector3 axis)
Sets this to a rotation matrix.
|
Matrix3 |
Matrix3.setToRotation(double angle,
IVector3 axis)
Sets this to a rotation matrix.
|
Matrix4 |
Matrix4.setToRotation(IVector3 from,
IVector3 to)
Sets this to a rotation matrix that rotates one vector onto another.
|
Matrix3 |
Matrix3.setToRotation(IVector3 from,
IVector3 to)
Sets this to a rotation matrix that rotates one vector onto another.
|
Matrix4 |
Matrix4.setToScale(IVector3 scale)
Sets this to a scale matrix.
|
Matrix3 |
Matrix3.setToScale(IVector3 scale)
Sets this to a scale matrix.
|
Matrix4 |
Matrix4.setToSkew(IPlane plane,
IVector3 amount)
Sets this to a skew by the specified amount relative to the given plane.
|
Matrix4 |
Matrix4.setToSkew(IVector3 normal,
double constant,
IVector3 amount)
Sets this to a skew by the specified amount relative to the given plane.
|
Matrix4 |
Matrix4.setToTransform(IVector3 translation,
IQuaternion rotation)
Sets this to a matrix that first rotates, then translates.
|
Matrix4 |
Matrix4.setToTransform(IVector3 translation,
IQuaternion rotation,
double scale)
Sets this to a matrix that first scales, then rotates, then translates.
|
Matrix4 |
Matrix4.setToTransform(IVector3 translation,
IQuaternion rotation,
IVector3 scale)
Sets this to a matrix that first scales, then rotates, then translates.
|
Matrix4 |
Matrix4.setToTranslation(IVector3 translation)
Sets this to a translation matrix.
|
Matrix4 |
Matrix4.setTranslation(IVector3 translation)
Sets the translation component of this matrix.
|
Vector3 |
Vector3.subtract(IVector3 other) |
Vector3 |
IVector3.subtract(IVector3 other)
Subtracts a vector from this one.
|
Vector3 |
Vector3.subtract(IVector3 other,
Vector3 result) |
Vector3 |
IVector3.subtract(IVector3 other,
Vector3 result)
Subtracts a vector from this one and places the result in the supplied object.
|
Vector3 |
Vector3.subtractLocal(IVector3 other)
Subtracts a vector in-place from this one.
|
Vector3 |
Quaternion.transform(IVector3 vector) |
Vector3 |
Matrix3.transform(IVector3 vector) |
Vector3 |
IQuaternion.transform(IVector3 vector)
Transforms a vector by this quaternion.
|
Vector3 |
Quaternion.transform(IVector3 vector,
Vector3 result) |
Vector3 |
Matrix3.transform(IVector3 vector,
Vector3 result) |
Vector3 |
IQuaternion.transform(IVector3 vector,
Vector3 result)
Transforms a vector by this quaternion and places the result in the provided object.
|
Vector3 |
Quaternion.transformAndAdd(IVector3 vector,
IVector3 add,
Vector3 result) |
Vector3 |
IQuaternion.transformAndAdd(IVector3 vector,
IVector3 add,
Vector3 result)
Transforms a vector by this quaternion and adds another vector to it, placing the result
in the object provided.
|
Vector3 |
Matrix4.transformPoint(IVector3 point) |
Vector3 |
IMatrix4.transformPoint(IVector3 point)
Transforms a point by this matrix.
|
Vector3 |
Matrix4.transformPoint(IVector3 point,
Vector3 result) |
Vector3 |
IMatrix4.transformPoint(IVector3 point,
Vector3 result)
Transforms a point by this matrix and places the result in the object provided.
|
double |
Matrix4.transformPointZ(IVector3 point) |
double |
IMatrix4.transformPointZ(IVector3 point)
Transforms a point by this matrix and returns the resulting z coordinate.
|
Vector3 |
Quaternion.transformScaleAndAdd(IVector3 vector,
double scale,
IVector3 add,
Vector3 result) |
Vector3 |
IQuaternion.transformScaleAndAdd(IVector3 vector,
double scale,
IVector3 add,
Vector3 result)
Transforms a vector by this quaternion, applies a uniform scale, and adds another vector to
it, placing the result in the object provided.
|
Vector3 |
Matrix4.transformVector(IVector3 vector) |
Vector3 |
IMatrix4.transformVector(IVector3 vector)
Transforms a vector by this inner 3x3 part of this matrix.
|
Vector3 |
Matrix4.transformVector(IVector3 vector,
Vector3 result) |
Vector3 |
IMatrix4.transformVector(IVector3 vector,
Vector3 result)
Transforms a vector by the inner 3x3 part of this matrix and places the result in the object
provided.
|
double |
Quaternion.transformZ(IVector3 vector) |
double |
IQuaternion.transformZ(IVector3 vector)
Transforms a vector by this quaternion and returns the z coordinate of the result.
|
double |
Vector3.triple(IVector3 b,
IVector3 c) |
double |
IVector3.triple(IVector3 b,
IVector3 c)
Computes the triple product of this and the specified other vectors, which is equal to
this.dot(b.cross(c)) . |
Constructor and Description |
---|
Box(IVector3 minExtent,
IVector3 maxExtent)
Creates a box with the values contained in the supplied minimum and maximum extents.
|
Plane(IVector3 normal,
double constant)
Creates a plane from the specified normal and constant.
|
Vector3(IVector3 other)
Copy constructor.
|
Copyright © 2017. All rights reserved.