Options
All
  • Public
  • Public/Protected
  • All
Menu

Class MxDbEntity Abstract

Hierarchy

Index

Constructors

Properties

addEvent: (<Key>(event: Key, callback: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)) => void) = ...

Type declaration

    • <Key>(event: Key, callback: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)): void
    • 订阅

      Type Parameters

      Parameters

      • event: Key

        事件名称

      • callback: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)

        事件回调

      Returns void

      void

callEvent: (<Key>(event: number | Key, ...data: Parameters<(MxDbEntityEventsType & RendererEventsType)[Key]>) => void) = ...

Type declaration

children: MxDbEntity[] = []

它的子节点集合

color: UnstableColor = 0xffffff

颜色值

dDashArray: number = 0
dDashRatio: number = 0
dLineWidth: number = 0
events: {}

Type declaration

layer: string = ''
lineWidthByPixels: boolean = true
opacity: number = 1

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

parent: null | MxDbEntity = null

它的父节点

removeEvent: (<Key>(event: Key, callback?: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)) => void) = ...

Type declaration

    • <Key>(event: Key, callback?: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)): void
    • 销毁事件

      Type Parameters

      Parameters

      • event: Key

        事件名称

      • Optional callback: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)

        事件方法

      Returns void

      void

renderOrder: number = 30

显示顺序

sGuid: string = ''
use_smallcoord_display: boolean = false
userData: {} = {}

用户自定义数据.

Type declaration

  • [key: string]: any
visible: boolean = true

该对象是否可见

cmd: string

该类注册的cmd命令名称

draw: Function

该类注册的cmd命令绘制函数

isRegister: boolean = false

该类是否已注册

Methods

  • bottom(): void
  • clone(type?: number): any
  • 复制克隆对象。

    Parameters

    • Optional type: number

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

    Returns any

    MxDbEntity

  • create(options?: {}): any
  • 新创建一个自定义对象 (默认调用该对象的构造函数来创建新的对象)

    Parameters

    • Optional options: {}

      Returns any

      MxDbEntity

    • 自定义对象数据输入,必须要实现该函数

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

      Parameters

      Returns boolean

      boolean

    • dwgInHelp<T>(obj: any, aryProp: T, hooks?: { getCacheVal?: any; getVal?: any }): boolean
    • 自定义对象数据输入,辅助函数.

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

      Type Parameters

      • T extends (string | { default: any; key: string })[]

      Parameters

      • obj: any

        数据对象

      • aryProp: T

        属性名称列表

      • Optional hooks: { getCacheVal?: any; getVal?: any }
        • getCacheVal?:function
          • getCacheVal(v: any): any
          • 归档数据构子函数 return null | undefined 默认深拷贝 ; return Value 返回数据

            Parameters

            • v: any

            Returns any

        • getVal?:function
          • getVal(v: any): any
          • 交互数据输入钩子函数 return null | undefined 默认深拷贝 ; return Value 返回数据

            Parameters

            • v: any

            Returns any

      Returns boolean

      boolean

    • 自定义对象数据输出,必须要实现该函数

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

      Parameters

      Returns object

      object

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

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

      Parameters

      • obj: any
      • aryProp: (string | { default: any; key: string })[]

      Returns any

      object

    • erase(): boolean
    • 删除对象

      Returns boolean

      boolean

    • fromJsonString(str: string): boolean
    • 从一个josn字符串加载数据.

      Parameters

      • str: string

      Returns boolean

      void

    • getClosestPointTo(pt: Vector3, iOperationType?: number): null | Vector3
    • 对一个点到这个对象的最近点 。 iOperationType == 0正常操作求值最近点. iOperationType == 1点选择操作求值最近点.

      Parameters

      • pt: Vector3
      • iOperationType: number = 0

      Returns null | Vector3

      void

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

      Returns any

      number

    • getGeomExtents(): null | Box3
    • 返回对象最小外包.

      Returns null | Box3

      void

    • getGetLength(): number
    • 返回曲线长度

      Returns number

      number

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

      Returns Vector3[]

      Array<THREE.Vector3>

    • getImp(): any
    • Returns any

    • getLayer(): string
    • 得到图层

      Returns string

      boolean

    • getLineWidth(): number
    • 得到线宽

      Returns number

      number

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

      Returns boolean

      number

    • getNodeByProperty<V>(name: string, value: V): undefined | MxDbEntity
    • 根据属性名称找到对应的Node节点

      example
      new Node().getNodeByProperty("id", "23548")
      

      Type Parameters

      • V = any

      Parameters

      • name: string

        属性名称

      • value: V

        属性值

      Returns undefined | MxDbEntity

    • getNodesByProperty<V>(name: string, value: V): MxDbEntity[]
    • 根据属性名称找到对应的Node节点

      example
      new Node().getNodeByProperty("id", "23548")
      

      Type Parameters

      • V = any

      Parameters

      • name: string

        属性名称

      • value: V

        属性值

      Returns MxDbEntity[]

    • getRenderOrder(): number
    • getTypeName(): string
    • Returns string

    • guid(): string
    • 返回唯一标识guid

      Returns string

      string

    • initGuid(guid: string): void
    • Parameters

      • guid: string

      Returns void

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

      Returns boolean

      number

    • isUseSmallcoordDisplay(): boolean
    • Returns boolean

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

      Parameters

      • index: number
      • offset: Vector3

      Returns boolean

      boolean

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

      Returns number

      number

    • off<Key>(event: Key, callback?: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)): void
    • 销毁事件

      Type Parameters

      Parameters

      • event: Key

        事件名称

      • Optional callback: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)

        事件方法

      Returns void

    • on<Key>(event: Key, callback: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)): void
    • 订阅

      Type Parameters

      Parameters

      • event: Key

        事件名称

      • callback: (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void) | (() => void)

        事件回调

      Returns void

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

      Parameters

      • obj: any

        dwgIn抽象方法的回调数据

      Returns void

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

      Parameters

      • obj: any

        dwgOut抽象方法的回调数据

      Returns void

    • onEndGripEidt(): void
    • 对象结束开始编辑

      Returns void

      string

    • onStartGripEidt(): any
    • 对象开始开始编辑

      Returns any

      string

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

      Returns boolean

      boolean

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

      Returns void

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

      Parameters

      • dDashArray: number
      • dDashRatio: number

      Returns MxDbEntity

      number

    • 设置实线虚线总段数 = 1 / dashArray

      Parameters

      • dDashArray: number

      Returns MxDbEntity

      number

    • 设置虚线 +实线的长度. dDashRatio确定虚线,与实线的比率.

      Parameters

      • dashLen: number

      Returns MxDbEntity

      number

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

      Parameters

      • isDashLine: boolean

      Returns MxDbEntity

      number

    • 设置虚线,与实线的比率

      Parameters

      • dDashRatio: number

      Returns MxDbEntity

      number

    • setGuid(val: string): string
    • 修改唯一标识guid

      Parameters

      • val: string

      Returns string

      string

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

      Parameters

      • layer: string

      Returns void

      boolean

    • 设置线宽

      Parameters

      • dLineWidth: number

      Returns MxDbEntity

      number

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

      Parameters

      • isPixels: boolean

      Returns MxDbEntity

      number

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

      Parameters

      • Optional isImmediate: boolean

      Returns boolean

      boolean

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

      Parameters

      • renderOrder: number

        显示顺序

      Returns void

    • setUseSmallcoordDisplay(use_smallcoord_display: boolean): void
    • Parameters

      • use_smallcoord_display: boolean

      Returns void

    • 把一个对象变成一个json字体串.

      Parameters

      Returns string

      void

    • toSmallcoord2(mxobj: MxDrawObject, x: number, y: number, z?: number): Vector3
    • Parameters

      Returns Vector3

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

      Parameters

      • _mat: Matrix4

        THREE.Matrix4 变化矩阵

      Returns void

      void

    • traverse(callback: ((node: MxDbEntity) => void)): void
    • 遍历它的所有子节点包括孙子节点,直到它包含的节点全部遍历完成并都执行传入的方法

      Parameters

      Returns void

    • traverseParent<V>(callback: ((node: V) => boolean | void)): void
    • 让它的父节点依次冒泡执行传入的方法的方法

      Type Parameters

      Parameters

      • callback: ((node: V) => boolean | void)

        回调函数,第一个参数是父节点, callback的返回值为false 将停止继续传递

          • (node: V): boolean | void
          • Parameters

            • node: V

            Returns boolean | void

      Returns void

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

      Parameters

      Returns void

      void

    • register(): void
    • 注册该类的cmd命令和初始化 (引入该类时自动注册 当该类的isRegister为ture时表示已经注册)

      Returns void

    • use<T>(callback?: ((obj: T) => any), data?: any): Promise<T>
    • 使用该类的cmd命令 执行默认的绘制功能

      Type Parameters

      Parameters

      • Optional callback: ((obj: T) => any)
          • (obj: T): any
          • Parameters

            • obj: T

            Returns any

      • Optional data: any

      Returns Promise<T>