## SIQuaternion.EpsilonEquals

### Description

Tests the equality between this quaternion and the quaternion q with a tolerance of epsilon.

### C# Syntax

    Int32 SIQuaternion.EpsilonEquals( SIQuaternion in_pQuat, Double in_dEpsilon );

### Scripting Syntax

    oBoolean = SIQuaternion.EpsilonEquals( epsilon );

### Return Value

Boolean True if this quaternion equals the quaternion q; otherwise False.

### Parameters

Parameter | Type | Description
--- | --- | ---
epsilon | SIQuaternion | tolerance
Possible Values: | Description:
[0, +INF[ | Validity domain

### Examples

#### JScript Example

    /*

    	This example demonstrates how to test whether the values of two

    	quaternions are within 0.002 of each other using the EpsilonEquals method

    */

    var q1 = XSIMath.CreateQuaternion(1.0, 1.0, 2.0, 3.0);

    var q2 = XSIMath.CreateQuaternion(1.0, 1.001, 2.0, 3.0);

    var q3 = XSIMath.CreateQuaternion(1.0, 1.003, 2.0, 3.0);

    // Equal by less than 0.002

    ValidateEpsilonEquals(q1, q2);

    // Not equal by less than 0.002

    ValidateEpsilonEquals(q1, q3);

    function ValidateEpsilonEquals (in_q1 , in_q2)

    {

    	if ( in_q1.EpsilonEquals(in_q2, 0.002) ) {

    		Application.LogMessage ("in_q1 is equal to in_q2 by less than 0.002");

    	} else {

    		Application.LogMessage ("in_q1 is not equal to in_q2 by less than 0.002");

    	}

    }

    // Expected results:

    // INFO : in_q1 is equal to in_q2 by less than 0.002

    // INFO : in_q1 is not equal to in_q2 by less than 0.002

### See Also

SIQuaternion.Equals SIVector3 SIMatrix3 SIMatrix4 SIRotation SITransformation SIQuaternion