projectsafe
Compute vector projection of a onto b. If result is not finite, then return the default value instead.
Read time 4 minutesLast updated 7 days ago
Definition
- Type: Method
- Namespace: Unity.Mathematics
- Assembly: UnityEngine.MathematicsModule
projectsafe(float2, float2, float2)
Compute vector projection of a onto b. If result is not finite, then return the default value instead.
public static float2 projectsafe(float2 a, float2 ontoB, float2 defaultValue = default)
Parameters
Returns
Type | Description |
|---|---|
| float2 | Vector projection of a onto b or the default value. |
Remarks
This function performs extra checks to see if the result of projecting a onto b is finite. If you know that your inputs will generate a finite result or you don't care if the result is finite, then you can call _project instead which is faster than this function.
projectsafe(float3, float3, float3)
Compute vector projection of a onto b. If result is not finite, then return the default value instead.
public static float3 projectsafe(float3 a, float3 ontoB, float3 defaultValue = default)
Parameters
Returns
Type | Description |
|---|---|
| float3 | Vector projection of a onto b or the default value. |
Remarks
This function performs extra checks to see if the result of projecting a onto b is finite. If you know that your inputs will generate a finite result or you don't care if the result is finite, then you can call _project instead which is faster than this function.
projectsafe(float4, float4, float4)
Compute vector projection of a onto b. If result is not finite, then return the default value instead.
public static float4 projectsafe(float4 a, float4 ontoB, float4 defaultValue = default)
Parameters
Returns
Type | Description |
|---|---|
| float4 | Vector projection of a onto b or the default value. |
Remarks
This function performs extra checks to see if the result of projecting a onto b is finite. If you know that your inputs will generate a finite result or you don't care if the result is finite, then you can call _project instead which is faster than this function.
projectsafe(double2, double2, double2)
Compute vector projection of a onto b. If result is not finite, then return the default value instead.
public static double2 projectsafe(double2 a, double2 ontoB, double2 defaultValue = default)
Parameters
Returns
Type | Description |
|---|---|
| double2 | Vector projection of a onto b or the default value. |
Remarks
This function performs extra checks to see if the result of projecting a onto b is finite. If you know that your inputs will generate a finite result or you don't care if the result is finite, then you can call _project instead which is faster than this function.
projectsafe(double3, double3, double3)
Compute vector projection of a onto b. If result is not finite, then return the default value instead.
public static double3 projectsafe(double3 a, double3 ontoB, double3 defaultValue = default)
Parameters
Returns
Type | Description |
|---|---|
| double3 | Vector projection of a onto b or the default value. |
Remarks
This function performs extra checks to see if the result of projecting a onto b is finite. If you know that your inputs will generate a finite result or you don't care if the result is finite, then you can call _project instead which is faster than this function.
projectsafe(double4, double4, double4)
Compute vector projection of a onto b. If result is not finite, then return the default value instead.
public static double4 projectsafe(double4 a, double4 ontoB, double4 defaultValue = default)
Parameters
Returns
Type | Description |
|---|---|
| double4 | Vector projection of a onto b or the default value. |
Remarks
This function performs extra checks to see if the result of projecting a onto b is finite. If you know that your inputs will generate a finite result or you don't care if the result is finite, then you can call _project instead which is faster than this function.