Options
All
  • Public
  • Public/Protected
  • All
Menu

多边形

Hierarchy

Index

Constructors

constructor

  • 从点构造一个多边形 多边形应该以顺时针方式指定 不能重复第一个/最后一个点,它们以0 0为中心

    Parameters

    • points: Vector2[]
    • Optional isBox: boolean

    Returns Polygon

Properties

_areEdgeNormalsDirty

_areEdgeNormalsDirty: boolean = true

_edgeNormals

_edgeNormals: Vector2[]

_originalPoints

_originalPoints: Vector2[]

多边形的原始数据

_polygonCenter

_polygonCenter: Vector2

bounds

bounds: Rectangle

缓存的形状边界 内部字段

center

center: Vector2

这不是中心。这个值不一定是物体的中心。对撞机更准确。 应用任何转换旋转的localOffset 内部字段

isBox

isBox: boolean

用于优化未旋转box碰撞

isUnrotated

isUnrotated: boolean = true

points

points: Vector2[]

组成多边形的点 保持顺时针与凸边形

position

position: Vector2

有一个单独的位置字段可以让我们改变形状的位置来进行碰撞检查,而不是改变entity.position。 触发碰撞器/边界/散列更新的位置。 内部字段

Accessors

edgeNormals

Methods

buildEdgeNormals

  • buildEdgeNormals(): void

collidesWithLine

collidesWithShape

containsPoint

  • containsPoint(point: Vector2): boolean

overlaps

  • overlaps(other: Shape): any

pointCollidesWithShape

recalculateBounds

  • recalculateBounds(collider: Collider): void

recalculateCenterAndEdgeNormals

  • recalculateCenterAndEdgeNormals(): void

setPoints

  • setPoints(points: Vector2[]): void

Static buildSymmetricalPolygon

  • buildSymmetricalPolygon(vertCount: number, radius: number): any[]
  • 建立一个对称的多边形(六边形,八角形,n角形)并返回点

    Parameters

    • vertCount: number
    • radius: number

    Returns any[]

Static findPolygonCenter

Static getClosestPointOnPolygonToPoint

  • 迭代多边形的所有边,并得到任意边上离点最近的点。 通过最近点的平方距离和它所在的边的法线返回。 点应该在多边形的空间中(点-多边形.位置)

    Parameters

    Returns Vector2

Static getFarthestPointInDirection

Static recenterPolygonVerts

  • recenterPolygonVerts(points: Vector2[]): void

Static rotatePolygonVerts

  • rotatePolygonVerts(radians: number, originalPoints: Vector2[], rotatedPoints: Vector2[]): void

Generated using TypeDoc