/*---------------------------------------------------------------------------------------------
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
* See LICENSE.md in the project root for license terms and full copyright notice.
*--------------------------------------------------------------------------------------------*/
/** @packageDocumentation
 * @module CartesianGeometry
 */
import { Geometry } from "../Geometry";
/** @public */
export var XAndY;
(function (XAndY) {
    /**
     * Return true if two XAndYs have equal x,y parts within a specified tolerance.
     * @param a The first XAndY to compare
     * @param b The second XAndY to compare
     * @param tol tolerance for comparison. If undefined, [[Geometry.smallMetricDistance]] is used.
     * @returns true if the difference in each coordinate of `a` and `b` is smaller than `tol`.
     */
    function almostEqual(a, b, tol) {
        return Geometry.isSameCoordinate(a.x, b.x, tol) && Geometry.isSameCoordinate(a.y, b.y, tol);
    }
    XAndY.almostEqual = almostEqual;
})(XAndY || (XAndY = {}));
/** @public */
export var XYAndZ;
(function (XYAndZ) {
    /**
     * Return true if two XYAndZs have equal x,y,z parts within a specified tolerance.
     * @param a The first XYAndZ to compare
     * @param b The second XYAndZ to compare
     * @param tol tolerance for comparison. If undefined, [[Geometry.smallMetricDistance]] is used.
     * @returns true if the difference in each coordinate of `a` and `b` is smaller than `tol`.
     */
    function almostEqual(a, b, tol) {
        return Geometry.isSameCoordinate(a.x, b.x, tol)
            && Geometry.isSameCoordinate(a.y, b.y, tol)
            && Geometry.isSameCoordinate(a.z, b.z, tol);
    }
    XYAndZ.almostEqual = almostEqual;
})(XYAndZ || (XYAndZ = {}));
//# sourceMappingURL=XYZProps.js.map