Options
All
  • Public
  • Public/Protected
  • All
Menu

Class MxDbEntity

MxDbEntity 用于构建一个自定义对象的抽象类(该类无法实例化 请通过继承的方式对其抽象方法进行实现)

description

MxDbEntity 属于 abstract class(抽象类) 主要用途是通过继承这个类实现一个用于动态绘制的图形对象 继承实现这个类必须实现的抽象方法:(方法名称前有'Abstract'标签就是必须实现的方法)

example
import THREE from "three"
import { McGiWorldDraw, MxDbEntity } from "mxdraw"
class MxLineEntity extends MxDbEntity {
constructor() {
super(); // 在派生类的构造函数中必须调用 super()
}
private pt1: THREE.Vector3 = new THREE.Vector3();
private pt2: THREE.Vector3 = new THREE.Vector3();
worldDraw(pWorldDraw: McGiWorldDraw) {
pWorldDraw.drawLine(this.pt1,this.pt2);
}
...
}

Hierarchy

Index

Constructors

constructor

Properties

color

color: string | number | Color = 0xffffff

颜色值

opacity

opacity: number = 1

设置透明度 0 ~ 1,1表示完全不透明,0表示全透明.

renderOrder

renderOrder: number = 30

显示顺序

userData

userData: {} = {}

用户自定义数据.

Type declaration

  • [key: string]: any

visible

visible: boolean = true

该矩形对象是否可见

Methods

clone

  • 复制克隆对象。

    Parameters

    • Optional type: number

      {@link MxType.MxCloneType} 传入参数区分是正常拷贝还是动态拷贝

    Returns MxDbEntity

    MxDbEntity

create

  • 新创建一个自定义对象 (默认调用该对象的构造函数来创建新的对象)

    Returns MxDbEntity

    MxDbEntity

Abstract dwgIn

  • dwgIn(obj: any): boolean
  • 自定义对象数据输入,必须要实现该函数

    example
     class MxLine extends MxDbEntity {
    dwgIn(obj) {
    // 必须调用 同步自定义数据对象输入
    this.onDwgIn(obj)
    }
    }

    Parameters

    • obj: any

    Returns boolean

    boolean

Protected dwgInHelp

  • dwgInHelp(obj: any, aryProp: string[]): boolean
  • 自定义对象数据输入,辅助函数.

    example
     class MxLine extends MxDbEntity {
    dwgIn(obj) {
    // 必须调用 同步自定义数据对象输入
    this.dwgInHelp(obj,["xxx"])
    }
    }

    Parameters

    • obj: any
    • aryProp: string[]

    Returns boolean

    boolean

Abstract dwgOut

  • dwgOut(obj: any): object
  • 自定义对象数据输出,必须要实现该函数

    example
     class MxLine extends MxDbEntity {
    dwgOut(obj) {
    // 必须调用 同步自定义数据对象输出
    this.onDwgOut(obj)
    }
    }

    Parameters

    • obj: any

    Returns object

    object

Protected dwgOutHelp

  • dwgOutHelp(obj: any, aryProp: string[]): any
  • 自定义对象数据输出 辅助函数.

    example
     class MxLine extends MxDbEntity {
    dwgOut(obj) {
    // 必须调用 同步自定义数据对象输出
    this.dwgOutHelp(obj,["xxx"])
    }
    }

    Parameters

    • obj: any
    • aryProp: string[]

    Returns any

    object

erase

  • erase(): boolean
  • 删除对象

    Returns boolean

    boolean

getColor

  • getColor(): string | number | Color
  • 得到颜色

    Returns string | number | Color

    boolean

getDash

  • getDash(): any
  • 得到虚线数据

    Returns any

    number

Abstract getGripPoints

  • getGripPoints(): Vector3[]
  • 返回自定义对象的夹点.

    Returns Vector3[]

    Array<THREE.Vector3>

getLayer

  • getLayer(): string
  • 得到图层

    Returns string

    boolean

getLineWidth

  • getLineWidth(): number
  • 得到线宽

    Returns number

    number

getLineWidthByPixels

  • getLineWidthByPixels(): boolean
  • 线宽是否随像素

    Returns boolean

    number

getMxObject

getRenderOrder

  • getRenderOrder(): number
  • 得到显示顺序

    Returns number

    number

Abstract getTypeName

  • getTypeName(): string
  • Returns string

isDashLineDisplay

  • isDashLineDisplay(): boolean
  • 是否虚线显示

    Returns boolean

    number

Abstract moveGripPointsAt

  • moveGripPointsAt(index: number, offset: Vector3): boolean
  • 移动自定义对象的夹点.

    Parameters

    • index: number
    • offset: Vector3

    Returns boolean

    boolean

objectId

  • objectId(): number
  • 得到对象的id.

    Returns number

    number

Protected onDwgIn

  • onDwgIn(obj: any): void
  • 自定义对象内部数据输入同步(重写实现dwgIn抽象方法时 必须在实现中调用 this.onDwgIn(obj))

    Parameters

    • obj: any

      dwgIn抽象方法的回调数据

    Returns void

Protected onDwgOut

  • onDwgOut(obj: any): void
  • 自定义对象内部数据输出同步(重写实现dwgIn抽象方法 必须在实现中调用 this.onDwgIn(obj)

    Parameters

    • obj: any

      dwgOut抽象方法的回调数据

    Returns void

Protected onViewChange

  • onViewChange(): boolean
  • 视区显示比较发生成变化,继承类可以向应该事件,更新显示大小。

    Returns boolean

    boolean

rxInit

  • rxInit(): void
  • 初始自定义对象的类型信息.(如果需要实现该图形对象的保存数据和恢复数据的功能, 需要在项目中初始化一次该图形对象的类)

    Returns void

setColor

  • setColor(color: string | number | Color): void
  • 设置颜色

    Parameters

    • color: string | number | Color

      颜色值

    Returns void

    boolean

setDash

  • setDash(dDashArray: number, dDashRatio: number): void
  • 设置虚线数据

    Parameters

    • dDashArray: number
    • dDashRatio: number

    Returns void

    number

setDashLineDisplay

  • setDashLineDisplay(isDashLine: boolean): void
  • 设置虚线显示。并初始化一个默认值。

    Parameters

    • isDashLine: boolean

    Returns void

    number

setLayer

  • setLayer(layer: string): void
  • 设置图层

    Parameters

    • layer: string

    Returns void

    boolean

setLineWidth

  • setLineWidth(dLineWidth: number): void
  • 设置线宽

    Parameters

    • dLineWidth: number

    Returns void

    number

setLineWidthByPixels

  • setLineWidthByPixels(isPixels: boolean): void
  • 设置线宽是否随像素

    Parameters

    • isPixels: boolean

    Returns void

    number

setNeedUpdateDisplay

  • setNeedUpdateDisplay(isImmediate?: boolean): boolean
  • 更新显示

    Parameters

    • Optional isImmediate: boolean

    Returns boolean

    boolean

setRenderOrder

  • setRenderOrder(renderOrder: number): void
  • 设置显示顺序 (通过显示顺序控制图层)

    Parameters

    • renderOrder: number

      显示顺序

    Returns void

transformBy

  • transformBy(mat: Matrix4): void
  • 自定义实体的矩阵 坐标变换 (需要重写该方法实现如果通过矩阵对自定义实体进行操作 默认不会进行任何操作)

    Parameters

    • mat: Matrix4

      THREE.Matrix4 变化矩阵

    Returns void

    void

Abstract worldDraw

  • 自定义对象的绘制函数。在方法中定义如何绘制图形

    Parameters

    Returns void

    void