docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class Vector3EqualityComparer

    Use this class to compare two Vector3 objects for equality with NUnit constraints. Call Vector3EqualityComparer.Instance comparer to perform a comparison with the default calculation error value 0.0001f. To specify a different error value, use the one argument constructor to instantiate a new comparer.

    Inheritance
    object
    Vector3EqualityComparer
    Implements
    IEqualityComparer<Vector3>
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEngine.TestTools.Utils
    Assembly: UnityEngine.TestRunner.dll
    Syntax
    public class Vector3EqualityComparer : IEqualityComparer<Vector3>

    Constructors

    Vector3EqualityComparer(float)

    A comparer instance with the default calculation error value equal to 0.0001f.

    Declaration
    public Vector3EqualityComparer(float allowedError)
    Parameters
    Type Name Description
    float allowedError

    This value identifies the calculation error allowed.

    Properties

    Instance

    A comparer instance with the default calculation error value equal to 0.0001f.

    Declaration
    public static Vector3EqualityComparer Instance { get; }
    Property Value
    Type Description
    Vector3EqualityComparer

    Methods

    Equals(Vector3, Vector3)

    Compares the actual and expected Vector3 objects for equality using AreFloatsEqual(float, float, float) to compare the x, y, and z attributes of Vector3.

    Declaration
    public bool Equals(Vector3 expected, Vector3 actual)
    Parameters
    Type Name Description
    Vector3 expected

    The expected Vector3 used for comparison

    Vector3 actual

    The actual Vector3 to test

    Returns
    Type Description
    bool

    True if the vectors are equals, false otherwise.

    Examples

    The following example shows how to verify if two Vector3 are equals

    [TestFixture]
    public class Vector3Test
    {
        [Test]
        public void VerifyThat_TwoVector3ObjectsAreEqual()
        {
        //Custom error 10e-6f
        var actual = new Vector3(10e-8f, 10e-8f, 10e-8f);
        var expected = new Vector3(0f, 0f, 0f);
        var comparer = new Vector3EqualityComparer(10e-6f);
    
    
        Assert.That(actual, Is.EqualTo(expected).Using(comparer));
    
        //Default error 0.0001f
        actual = new Vector3(0.01f, 0.01f, 0f);
        expected = new Vector3(0.01f, 0.01f, 0f);
    
        Assert.That(actual, Is.EqualTo(expected).Using(Vector3EqualityComparer.Instance));
        }
    }

    GetHashCode(Vector3)

    Serves as the default hash function.

    Declaration
    public int GetHashCode(Vector3 vec3)
    Parameters
    Type Name Description
    Vector3 vec3

    A not null Vector3

    Returns
    Type Description
    int

    Returns 0

    Implements

    IEqualityComparer<T>
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)