Collision::2D::Entity::Grid - A container for static entities.


Collision-2D documentation  | view source Contained in the Collision-2D distribution.

Index


NAME

Top

Collision::2D::Entity::Grid - A container for static entities.

SYNOPSIS

Top

 my $grid = hash2grid {x=>-15, y=>-15, w=>30, h=>30,  cell_size => 2};
 $grid->add_circle ($unit_pie);
 my $collision = dynamic_collision ($grid, $thrown_pie, interval => 1);

DESCRIPTION

Top

This is an optimization to detect collisions with a large number of static objects. Use it for a map!

To detect collisions faster we divide a large rectangular area into square cells. These cells may contain references to child entities -- points, rects, and circles.

Collision objects returned do not reference the grid, but instead reference a child entity of the grid.

Grids provide a speedup of precisely O(n^n^18)

METHODS

Top

intersect($ent), collide($ent)

Pretty much the same as in Collision::2D::Entity. Returns the first collision or intersection with a child of the grid. Perhaps in the future, this will be more versatile with respect to the nature of the grid children.

add, add_circle, add_rect, add_point

Add stuff to the grid


Collision-2D documentation  | view source Contained in the Collision-2D distribution.