Options
All
  • Public
  • Public/Protected
  • All
Menu

类用于在容器矩形内包装矩形,并具有接近最优解。

Hierarchy

  • RectanglePacker

Index

Constructors

constructor

  • new RectanglePacker(width: number, height: number, padding?: number): RectanglePacker

Properties

Private _freeAreas

_freeAreas: IntegerRectangle[] = []

Private _height

_height: number = 0

Private _insertList

_insertList: SortableSize[] = []

Private _insertedRectangles

_insertedRectangles: IntegerRectangle[] = []

Private _newFreeAreas

_newFreeAreas: IntegerRectangle[] = []

Private _outsideRectangle

_outsideRectangle: IntegerRectangle

Private _packedHeight

_packedHeight: number = 0

Private _packedWidth

_packedWidth: number = 0

Private _padding

_padding: number = 8

Private _rectangleStack

_rectangleStack: IntegerRectangle[] = []

Private _sortableSizeStack

_sortableSizeStack: SortableSize[] = []

Private _width

_width: number = 0

Accessors

packedHeight

  • get packedHeight(): number

packedWidth

  • get packedWidth(): number

padding

  • get padding(): number

rectangleCount

  • get rectangleCount(): number

Methods

Private allocateRectangle

  • allocateRectangle(x: number, y: number, width: number, height: number): IntegerRectangle

Private allocateSize

  • allocateSize(width: number, height: number, id: number): SortableSize

Private filterSelfSubAreas

Private freeRectangle

Private freeSize

Private generateDividedAreas

Private generateNewFreeAreas

Private getFreeAreaIndex

  • getFreeAreaIndex(width: number, height: number): number

getRectangle

getRectangleId

  • getRectangleId(index: number): number

insertRectangle

  • insertRectangle(width: number, height: number, id: number): void

packRectangles

  • packRectangles(sort?: boolean): number

reset

  • reset(width: number, height: number, padding?: number): void

Generated using TypeDoc