image_composition
library
Classes
-
Aabb2
-
Defines a 2-dimensional axis-aligned bounding box between a min and a
max position.
-
Aabb3
-
Defines a 3-dimensional axis-aligned bounding box between a min and a
max position.
-
Canvas
-
An interface for recording graphical operations.
-
Color
-
An immutable color value in ARGB format.
-
Frustum
-
Defines a frustum constructed out of six Planes.
-
Image
-
Opaque handle to raw decoded image data (pixels).
-
ImageComposition
-
The ImageComposition allows for composing multiple images onto a single
image.
-
IntersectionResult
-
Defines a result of an intersection test.
-
Matrix2
-
2D Matrix.
Values are stored in column major order.
-
Matrix3
-
3D Matrix.
Values are stored in column major order.
-
Matrix4
-
4D Matrix.
Values are stored in column major order.
-
Obb3
-
Defines a 3-dimensional oriented bounding box defined with a center,
halfExtents and axes.
-
Offset
-
An immutable 2D floating-point offset.
-
Path
-
A complex, one-dimensional subset of a plane.
-
Plane
-
-
Quad
-
Defines a quad by four points.
-
Quaternion
-
Defines a Quaternion (a four-dimensional vector) for efficient rotation
calculations.
-
Ray
-
Defines a Ray by an origin and a direction.
-
Rect
-
An immutable, 2D, axis-aligned, floating-point rectangle whose coordinates
are relative to a given origin.
-
SimplexNoise
-
-
Size
-
Holds a 2D floating-point size.
-
Sphere
-
Defines a sphere with a center and a radius.
-
Triangle
-
Defines a triangle by three points.
-
UniformsSetter
-
A helper class that allows you to set uniforms in a more convenient way.
-
Vector
-
Base class for vectors
-
Vector2
-
2D column vector.
-
Vector3
-
3D column vector.
-
Vector4
-
4D column vector.
Functions
-
absoluteError(dynamic calculated, dynamic correct)
→ double
-
Returns absolute error between
calculated and correct.
The type of calculated and correct must match and can
be any vector, matrix, or quaternion.
-
buildPlaneVectors(Vector3 planeNormal, Vector3 u, Vector3 v)
→ void
-
Sets
u and v to be two vectors orthogonal to each other and
planeNormal.
-
catmullRom(double edge0, double edge1, double edge2, double edge3, double amount)
→ double
-
Do a catmull rom spline interpolation with
edge0, edge1, edge2 and
edge3 by amount.
-
cross2(Vector2 x, Vector2 y)
→ double
-
2D cross product. vec2 x vec2.
-
cross2A(double x, Vector2 y, Vector2 out)
→ void
-
2D cross product. double x vec2.
-
cross2B(Vector2 x, double y, Vector2 out)
→ void
-
2D cross product. vec2 x double.
-
cross3(Vector3 x, Vector3 y, Vector3 out)
→ void
-
3D Cross product.
-
degrees(double radians)
→ double
-
Convert
radians to degrees.
-
dot2(Vector2 x, Vector2 y)
→ double
-
2D dot product.
-
dot3(Vector3 x, Vector3 y)
→ double
-
3D dot product.
-
makeFrustumMatrix(double left, double right, double bottom, double top, double near, double far)
→ Matrix4
-
Constructs a new OpenGL perspective projection matrix.
-
makeInfiniteMatrix(double fovYRadians, double aspectRatio, double zNear)
→ Matrix4
-
Constructs a new OpenGL infinite projection matrix.
-
makeOrthographicMatrix(double left, double right, double bottom, double top, double near, double far)
→ Matrix4
-
Constructs a new OpenGL orthographic projection matrix.
-
makePerspectiveMatrix(double fovYRadians, double aspectRatio, double zNear, double zFar)
→ Matrix4
-
Constructs a new OpenGL perspective projection matrix.
-
makePlaneProjection(Vector3 planeNormal, Vector3 planePoint)
→ Matrix4
-
Returns a transformation matrix that transforms points onto
the plane specified with
planeNormal and planePoint.
-
makePlaneReflection(Vector3 planeNormal, Vector3 planePoint)
→ Matrix4
-
Returns a transformation matrix that transforms points by reflecting
them through the plane specified with
planeNormal and planePoint.
-
makeViewMatrix(Vector3 cameraPosition, Vector3 cameraFocusPosition, Vector3 upDirection)
→ Matrix4
-
Constructs a new OpenGL view matrix.
-
mix(double min, double max, double a)
→ double
-
Interpolate between
min and max with the amount of a using a linear
interpolation. The computation is equivalent to the GLSL function mix.
-
pickRay(Matrix4 cameraMatrix, num viewportX, num viewportWidth, num viewportY, num viewportHeight, num pickX, num pickY, Vector3 rayNear, Vector3 rayFar)
→ bool
-
On success,
rayNear and rayFar are the points where
the screen space pickX, pickY intersect with the near and far
planes respectively.
-
radians(double degrees)
→ double
-
Convert
degrees to radians.
-
relativeError(dynamic calculated, dynamic correct)
→ double
-
Returns relative error between
calculated and correct.
The type of calculated and correct must match and can
be any vector, matrix, or quaternion.
-
setFrustumMatrix(Matrix4 perspectiveMatrix, double left, double right, double bottom, double top, double near, double far)
→ void
-
Constructs an OpenGL perspective projection matrix in
perspectiveMatrix.
-
setInfiniteMatrix(Matrix4 infiniteMatrix, double fovYRadians, double aspectRatio, double zNear)
→ void
-
Constructs an OpenGL infinite projection matrix in
infiniteMatrix.
fovYRadians specifies the field of view angle, in radians, in the y
direction.
aspectRatio specifies the aspect ratio that determines the field of view
in the x direction. The aspect ratio of x (width) to y (height).
zNear specifies the distance from the viewer to the near plane
(always positive).
-
setModelMatrix(Matrix4 modelMatrix, Vector3 forwardDirection, Vector3 upDirection, double tx, double ty, double tz)
→ void
-
Constructs an OpenGL model matrix in
modelMatrix.
Model transformation is the inverse of the view transformation.
Model transformation is also known as "camera" transformation.
Model matrix is commonly used to compute a object location/orientation into
the full model-view stack.
-
setOrthographicMatrix(Matrix4 orthographicMatrix, double left, double right, double bottom, double top, double near, double far)
→ void
-
Constructs an OpenGL orthographic projection matrix in
orthographicMatrix.
-
setPerspectiveMatrix(Matrix4 perspectiveMatrix, double fovYRadians, double aspectRatio, double zNear, double zFar)
→ void
-
Constructs an OpenGL perspective projection matrix in
perspectiveMatrix.
-
setRotationMatrix(Matrix4 rotationMatrix, Vector3 forwardDirection, Vector3 upDirection)
→ void
-
Constructs a rotation matrix in
rotationMatrix.
-
setViewMatrix(Matrix4 viewMatrix, Vector3 cameraPosition, Vector3 cameraFocusPosition, Vector3 upDirection)
→ void
-
Constructs an OpenGL view matrix in
viewMatrix.
View transformation is the inverse of the model transformation.
View matrix is commonly used to compute the camera location/orientation into
the full model-view stack.
-
smoothStep(double edge0, double edge1, double amount)
→ double
-
Do a smooth step (hermite interpolation) interpolation with
edge0 and
edge1 by amount. The computation is equivalent to the GLSL function
smoothstep.
-
unproject(Matrix4 cameraMatrix, num viewportX, num viewportWidth, num viewportY, num viewportHeight, num pickX, num pickY, num pickZ, Vector3 pickWorld)
→ bool
-
On success, Sets
pickWorld to be the world space position of
the screen space pickX, pickY, and pickZ.