liko
    Preparing search index...

    Class Point

    二维坐标点类 提供完整的二维平面坐标点操作功能,包括位置设置、距离计算、角度计算等

    // 创建坐标点
    const point = new Point(10, 20);

    // 计算两点距离
    const distance = point.distance({ x: 0, y: 0 });

    // 链式操作
    point.set(5, 5).add(10, 10).normalize();

    // 使用临时对象减少内存分配
    const temp = Point.TEMP.set(x, y);
    Index

    Constructors

    • 创建一个新的坐标点实例

      Parameters

      • x: number = 0

        x 轴坐标值,默认为 0

      • y: number = 0

        y 轴坐标值,默认为 0

      Returns Point

    Properties

    x: number = 0

    x 轴坐标值

    y: number = 0

    y 轴坐标值

    TEMP: Point = ...

    全局临时对象,用于复用以减少对象创建开销 注意:此对象会被全局共享,使用后应立即处理结果,不要长期持有引用

    Methods

    • 将坐标点按指定增量进行偏移

      Parameters

      • dx: number

        x 轴偏移量

      • dy: number

        y 轴偏移量

      Returns this

      当前实例,支持链式调用

    • 创建当前坐标点的副本

      Returns Point

      新的坐标点实例,与当前实例具有相同的坐标值

    • 从指定坐标点复制坐标值到当前实例

      Parameters

      • point: IPoint

        源坐标点

      Returns this

      当前实例,支持链式调用

    • 计算当前点到目标点的欧几里得距离

      Parameters

      • point: IPoint

        目标点坐标

      Returns number

      两点间的直线距离,始终为非负数

    • 比较当前坐标点与给定坐标点是否相同 使用严格相等比较,不进行浮点数误差处理

      Parameters

      • point: IPoint

        待比较的坐标点

      Returns boolean

      两点是否完全重合

    • 将当前点作为向量进行归一化处理 归一化后向量长度为 1,方向保持不变 注意:零向量 (0,0) 归一化后仍为零向量

      Returns this

      当前实例,支持链式调用

    • 计算当前点到目标点的夹角 角度从正 x 轴开始计算,逆时针为正方向

      Parameters

      • point: IPoint

        目标点坐标

      Returns number

      两点间的夹角,范围为 [-π, π] 弧度

    • 重置坐标点为原点 (0, 0)

      Returns void

    • 设置坐标点的位置

      Parameters

      • x: number = 0

        x 轴坐标值,默认为 0

      • y: number = x

        y 轴坐标值,默认等于 x 的值

      Returns this

      当前实例,支持链式调用