Method orthonormal_basis
orthonormal_basis(float3, out float3, out float3)
Generate an orthonormal basis given a single unit length normal vector.
Declaration
public static void orthonormal_basis(float3 normal, out float3 basis1, out float3 basis2)
Parameters
Type | Name | Description |
---|---|---|
float3 | normal | Unit length normal vector. |
float3 | basis1 | Output unit length vector, orthogonal to normal vector. |
float3 | basis2 | Output unit length vector, orthogonal to normal vector and basis1. |
Remarks
This implementation is from "Building an Orthonormal Basis, Revisited" https://graphics.pixar.com/library/OrthonormalB/paper.pdf
orthonormal_basis(double3, out double3, out double3)
Generate an orthonormal basis given a single unit length normal vector.
Declaration
public static void orthonormal_basis(double3 normal, out double3 basis1, out double3 basis2)
Parameters
Type | Name | Description |
---|---|---|
double3 | normal | Unit length normal vector. |
double3 | basis1 | Output unit length vector, orthogonal to normal vector. |
double3 | basis2 | Output unit length vector, orthogonal to normal vector and basis1. |
Remarks
This implementation is from "Building an Orthonormal Basis, Revisited" https://graphics.pixar.com/library/OrthonormalB/paper.pdf