Table of Contents

Namespace HelixToolkit.Maths

Classes

BoundingBoxHelper
BoundingSphereExtensions
Collision

Contains static methods to help in determining intersections, containment, etc.

Color4Helper

Ref https://referencesource.microsoft.com/#System.Drawing/commonui/System/Drawing/ColorConverter.cs

MathSettings
MathUtil
Matrix3x2Helper

Direct2D Matrix3x2. Supports implicit cast from Matrix4x4.

MatrixHelper

Represents a 4x4 mathematical matrix.

PlaneHelper

Represents a plane in three dimensional space.

QuaternionHelper

Represents a four dimensional mathematical quaternion.

RandomUtils

Random functions on commun types.

RectangleHelper
Vector2Helper

Represents a two dimensional mathematical vector.

Vector3Helper

Represents a three dimensional mathematical vector.

Vector4Helper

Represents a four dimensional mathematical vector.

VectorComparisonExtensions
VectorExtensions

Structs

AngleSingle

Represents a unit independent angle using a single-precision floating-point internal representation.

Bool32Bit

Represents a bool value with size of 32 bits (4 bytes).

Bool4

Represents a four dimensional mathematical vector of bool (32 bits per bool value).

BoundingBox

Represents an axis-aligned bounding box in three dimensional space.

BoundingFrustum

Defines a frustum which can be used in frustum culling, zoom to Extents (zoom to fit) operations, (matrix, frustum, camera) interchange, and many kind of intersection testing.

BoundingSphere

Represents a bounding sphere in three dimensional space.

Color

Represents a 32-bit color (4 bytes) in the form of RGBA (in byte order: R, G, B, A).

Color3

Represents a color in the form of rgb.

Color4

Represents a color in the form of rgba.

ColorBGRA

Represents a 32-bit color (4 bytes) in the form of BGRA (in byte order: B, G, B, A).

FrustumCameraParams

Frustum camera parameters.

Half

A half precision (16 bit) floating point value.

Half2

Defines a two component vector, using half precision floating point coordinates.

Half3

Defines a three component vector, using half precision floating point coordinates.

Half4

Defines a four component vector, using half precision floating point coordinates.

Int3

Represents a three dimensional mathematical int vector.

Int4

Represents a four dimensional mathematical vector.

Matrix3x3

Represents a 3x3 Matrix ( contains only Scale and Rotation ).

OrientedBoundingBox

OrientedBoundingBox (OBB) is a rectangular block, much like an AABB (BoundingBox) but with an arbitrary orientation.

Ray

Represents a three dimensional line based on a point in space and a direction.

Rectangle

Define a Rectangle. This structure is slightly different from System.Drawing.Rectangle as it is internally storing Left,Top,Right,Bottom instead of Left,Top,Width,Height.

RectangleF

Define a RectangleF. This structure is slightly different from System.Drawing.RectangleF as it is internally storing Left,Top,Right,Bottom instead of Left,Top,Width,Height.

Viewport

Defines the viewport dimensions.

ViewportF

Defines the viewport dimensions using float coordinates for (X,Y,Width,Height).

Enums

AngleType

Describes the type of angle.

ContainmentType

Describes how one bounding volume contains another.

PlaneIntersectionType

Describes the result of an intersection with a plane in three dimensions.