WebCAD-Lib-TS API 文档 - v1.0.0
    Preparing search index...

    Class ObservablePoint2D

    可观察二维点类

    继承自 Point2D 的功能,增加了属性变更通知机制。 当点的坐标发生变化时,会自动触发回调函数。 主要用于实体属性的响应式更新。

    const point = new ObservablePoint2D(0, 0, () => {
    console.log('点坐标已更新');
    });
    point.x = 100; // 触发回调
    Index

    Constructors

    • 构造函数

      Parameters

      • x: number = 0

        初始X坐标

      • y: number = 0

        初始Y坐标

      • onUpdate: () => void = null

        坐标变更时的回调函数

      • Optionalz: number

        初始Z坐标(可选)

      Returns ObservablePoint2D

    Accessors

    • get x(): number

      Returns number

    • set x(val: number): void

      Parameters

      • val: number

      Returns void

    • get y(): number

      Returns number

    • set y(val: number): void

      Parameters

      • val: number

      Returns void

    • get z(): number

      Returns number

    • set z(val: number): void

      Parameters

      • val: number

      Returns void

    Methods

    • 同时设置X、Y和Z,只触发一次更新

      Parameters

      • x: number
      • y: number
      • Optionalz: number

      Returns ObservablePoint2D

    • 从另一个点(Point2D 或 ObservablePoint2D) 复制数据 用于 entity.startPoint = otherPoint 的场景

      Parameters

      • p: { x: number; y: number; z?: number }

      Returns ObservablePoint2D

    • 克隆 策略:通常克隆是为了计算,不需要监听,所以返回轻量级的普通 Point2D 如果你需要返回 ObservablePoint2D,可以修改这里

      Returns ObservablePoint2D

    • Returns [number, number] | [number, number, number]

    • Parameters

      • offsetVector: { x: number; y: number }

      Returns ObservablePoint2D

    • Parameters

      • fromPosition: { x: number; y: number }
      • toPosition: { x: number; y: number }

      Returns ObservablePoint2D

    • Parameters

      • offsetVector: { x: number; y: number }

      Returns ObservablePoint2D

    • 旋转点 直接复用外部提供的 rotatePointAroundCenter 函数

      Parameters

      • rotationAngle: number
      • centerPoint: Point2D = ...

      Returns ObservablePoint2D

    • 缩放点 直接复用外部提供的 scalePointAlongVector 函数

      Parameters

      • scaleFactor: number
      • centerPoint: Point2D = ...

      Returns ObservablePoint2D