Options
All
  • Public
  • Public/Protected
  • All
Menu

Class RoomDivisionLineTool

Hierarchy

Index

Constructors

Properties

_areas: {} = {}

Type declaration

  • [key: string]: V2d[]
_crossLocator: DivisionLocator
_divisionData?: DivisionData

划线相关信息

_divisionDataCalculator?: DivisionDataCalculator
_frameLineMt: LineMaterial
_holes: V2d[][] = []

外轮廓内部可能洞,例如窗户

_needSave: boolean = false
_ouline: V2d[] = []

待分割区域的外轮廓

_root?: Object3D<Event>
_selectPolygon?: V2d[]
_selectedArea?: SelectedArea

debug purpose, replace it with MA GE's UI design!

_selectedLineMt: LineMaterial
arrowStart: Vector3 = ...
cross: Mesh<BufferGeometry, Material | Material[]>
crossStart: Vector3 = ...
currLine: LineSegments2
currentRegion: undefined | Region
divisionArrowGeo: PlaneGeometry
divisionArrowMt: MeshBasicMaterial
divisionGroup: Group
divisionLinesMesh: LineSegments2
divisionSnappers: DivisionSnapper[] = ...
dragSide: Side = ...
editor: default
minLength: number = 0.24
prevPoint?: DivisionPoint
snappers: Snapper[] = ...

Accessors

  • Returns readonly DivisionLine[]

  • Returns readonly DivisionPoint[]

  • Returns YWDocument

  • get frameLineColor(): number
  • Returns number

  • get isSuspended(): boolean
  • Returns boolean

  • get name(): string
  • Returns string

  • get selectColor(): number
  • Returns number

Methods

  • clearStatus(): void
  • createCross(): Mesh<PlaneGeometry, MeshBasicMaterial>
  • createCurrLine(): LineSegments2
  • createDivisionArrow(line: LineSegments2): undefined | Mesh<PlaneGeometry, MeshBasicMaterial>
  • createDivisionArrowMt(): MeshBasicMaterial
  • createLinesMesh(): LineSegments2
  • deleteArea(): void
  • deleteLine(lId: string): void
  • deletePoint(pId: string): void
  • dispose(): any
  • doResume(): void
  • doSuspend(): void
  • drag(event: Event): void
  • Parameters

    • event: Event

    Returns void

  • dragEnd(event: Event): void
  • dragStart(event: Event): void
  • getAdaptPos(line: V2d[]): Vector2[]
  • 前提: line[0]和line[1]的中点在region内部 求直线line与region的两个交点

    Parameters

    Returns Vector2[]

  • getRelatedLinesObj(): undefined | LineSegments2[]
  • getStatus(): { crossPos: Vector3; crossVisible: boolean; prevPoint: undefined | DivisionPoint }
  • intersects(mouse: Vector2, ndc: Vector2): Intersection<Object3D<Event>>[]
  • Parameters

    • mouse: Vector2
    • ndc: Vector2

    Returns Intersection<Object3D<Event>>[]

  • lightRelatedLine(): void
  • loadData(): any
  • onAreaClick(): void
  • onDivisionDrag(obj: Mesh<BufferGeometry, Material | Material[]>): void
  • Parameters

    • obj: Mesh<BufferGeometry, Material | Material[]>

    Returns void

  • onDivisionDragEnd(obj: Mesh<BufferGeometry, Material | Material[]>): void
  • onDivisionDragStart(obj: Mesh<BufferGeometry, Material | Material[]>): void
  • resume(): void
  • save(): void
  • Returns void

  • setRegion(regionId: string): void
  • Parameters

    • regionId: string

    Returns void

  • suspend(): void
  • updateCrossScale(zoom: number): void
  • updateCurrLine(startPos: Vector3, endPos: Vector3): void
  • updateDivisionArea(): void
  • updateLinesMesh(): void
  • zoomChanged(event: Event): any

Generated using TypeDoc