Home Reference Source
import {CollisionChecker} from 'penvas/src/helper/collision-checker.js'
public class | source

CollisionChecker

Extends:

Collection → CollisionChecker

Static Method Summary

Static Public Methods
public static

Check collision between circle and another circle

public static

Check collision between circle and rectangle

public static

Check collision between rectangle and rectangle

public static

hasCollisions(model: Model, models: Array<Model> | Model): boolean

Check if there are any collisions between model and array of models

Method Summary

Public Methods
public

add(model: Model, platforms: Array<Model> | Model, event: Callable)

public

check(dt: number)

public

remove(callback: Callable): boolean

Inherited Summary

From class Collection
public

items: *[]

public

clear()

public

filter(callback: *): *

public

find(callback: *): *

public

forEach(callback: *): *

public

push(item: *): *

public

remove(callback: *): boolean

public

sort(callback: *): *

Static Public Methods

public static hasCollisionBetweenCircleAndCircle(circleA: Object, circleB: Object): boolean source

Check collision between circle and another circle

Params:

NameTypeAttributeDescription
circleA Object
circleA.x number
circleA.y number
circleA.radius number
circleB Object
circleB.x number
circleB.y number
circleB.radius number

Return:

boolean

public static hasCollisionBetweenCircleAndRectangle(circle: Object, rectangle: Object): boolean source

Check collision between circle and rectangle

Params:

NameTypeAttributeDescription
circle Object
circle.x number
circle.y number
circle.radius number
rectangle Object
rectangle.x number
rectangle.y number
rectangle.width number
rectangle.height number

Return:

boolean

public static hasCollisionBetweenRectangleAndRectangle(rectangleA: Object, rectangleB: Object): boolean source

Check collision between rectangle and rectangle

Params:

NameTypeAttributeDescription
rectangleA Object
rectangleA.x number
rectangleA.y number
rectangleA.width number
rectangleA.height number
rectangleB Object
rectangleB.x number
rectangleB.y number
rectangleB.width number
rectangleB.height number

Return:

boolean

public static hasCollisions(model: Model, models: Array<Model> | Model): boolean source

Check if there are any collisions between model and array of models

Params:

NameTypeAttributeDescription
model Model
models Array<Model> | Model

Return:

boolean

Public Methods

public add(model: Model, platforms: Array<Model> | Model, event: Callable) source

Params:

NameTypeAttributeDescription
model Model
platforms Array<Model> | Model
event Callable
  • optional
  • default: function()

public check(dt: number) source

Params:

NameTypeAttributeDescription
dt number

public remove(callback: Callable): boolean source

Override:

Collection#remove

Params:

NameTypeAttributeDescription
callback Callable

Return:

boolean