Legacy Documentation: Version 2018.2 (Go to current version)
LanguageEnglish
  • C#

Assert.AreApproximatelyEqual

public static void AreApproximatelyEqual(float expected, float actual);
public static void AreApproximatelyEqual(float expected, float actual, string message);
public static void AreApproximatelyEqual(float expected, float actual, float tolerance);
public static void AreApproximatelyEqual(float expected, float actual, float tolerance, string message);

Parameters

toleranceTolerance of approximation.
expectedThe assumed Assert value.
actualThe exact Assert value.
messageThe string used to describe the Assert.

Description

Assert the values are approximately equal.

An absolute error check is used for approximate equality check (|a-b| < tolerance). Default tolerance is 0.00001f.

Note: Every time you call the method with tolerance specified, a new instance of FloatComparer is created. For performance reasons you might want to instance your own comparer and pass it to the AreApproximatelyEqual method. If the tolerance is not specifies, a default comparer is used and the issue does not occur.

using UnityEngine;
using UnityEngine.Assertions;

public class AssertionExampleClass : MonoBehaviour { void Update() { // Make sure the position of the GameObject is always in the center of the scene. // AreApproximatelyEqual should be used for comparing floating point variables. // Unless specified, default error tolerance will be used. Assert.AreApproximatelyEqual(0.0f, transform.position.x); Assert.AreApproximatelyEqual(0.0f, transform.position.y); Assert.AreApproximatelyEqual(0.0f, transform.position.z); } }
对文档有任何疑问,请移步至开发者社区提问,我们将尽快为您解答