Options
All
  • Public
  • Public/Protected
  • All
Menu
summary

線分の領域管理

Hierarchy

  • QAreaManager
    • LineAreaManager

Index

Constructors

Properties

_tree_root: any

Methods

  • _intersect(x_area_min: number, x_area_max: number, y_area_min: number, y_area_max: number, xP: number, yP: number, xQ: number, yQ: number): boolean
  • 矩形と線分の交差判定

    矩形領域と線分が交差するかどうかを返す。 矩形領域には x 座標が x_area_max の点と、y 座標が y_area_max の点は含まれないものとする。

    事前条件:

    • x_area_min < x_area_max
    • y_area_min < y_area_max

    Parameters

    • x_area_min: number

      矩形領域の最小 x 座標

    • x_area_max: number

      矩形領域の最大 x 座標

    • y_area_min: number

      矩形領域の最小 y 座標

    • y_area_max: number

      矩形領域の最大 y 座標

    • xP: number

      線分端点 P の x 座標

    • yP: number

      線分端点 P の y 座標

    • xQ: number

      線分端点 Q の x 座標

    • yQ: number

      線分端点 Q の y 座標

    Returns boolean

    交差するとき true, それ以外のとき false

  • _nhorz_intersect(x_area_min: number, x_area_max: number, y_area_min: number, y_area_max: number, xP: number, yP: number, xQ: number, yQ: number): boolean
  • 矩形と非水平線分の交差判定

    矩形領域と線分が交差するかどうかを返す。 矩形領域には x 座標が x_area_max の点と、y 座標が y_area_max の点は含まれないものとする。

    事前条件:

    • x_area_min < x_area_max
    • y_area_min < y_area_max
    • yP != yQ

    注意: |yP - yQ| が小さいと精度が悪くなる。

    Parameters

    • x_area_min: number

      矩形領域の最小 x 座標

    • x_area_max: number

      矩形領域の最大 x 座標

    • y_area_min: number

      矩形領域の最小 y 座標

    • y_area_max: number

      矩形領域の最大 y 座標

    • xP: number

      線分端点 P の x 座標

    • yP: number

      線分端点 P の y 座標

    • xQ: number

      線分端点 Q の x 座標

    • yQ: number

      線分端点 Q の y 座標

    Returns boolean

    交差するとき true, それ以外のとき false

  • createAreaContent(min_x: number, min_y: number, msize: number, parent_content: [number, number, number, number, number, number][]): EMPTY | [number, number, number, number, number, number][]
  • Parameters

    • min_x: number
    • min_y: number
    • msize: number
    • parent_content: [number, number, number, number, number, number][]

    Returns EMPTY | [number, number, number, number, number, number][]

  • getAreaContent(area: any): any
  • summary

    内容データを取得

    Parameters

    • area: any

      対象領域

    Returns any

    area に対応する内容データ | AreaStatus.EMPTY | AreaStatus.FULL

  • getAreaStatus(area: any): any
  • summary

    領域状態を取得

    desc

    area が示す領域の状態を取得する。

    Parameters

    • area: any

      確認する領域

    Returns any

    領域の状態

  • getInitialContent(): [number, number, number, number, number, number][]
  • notifyForUpdateContent(): void
  • summary

    内容データが更新されたこと通知

    desc

    内容データが更新されときに FlakePrimitiveProducer の実装者がこのメソッドを呼び出す。

    Returns void