Нет описания

olivier.massot 91035aebb2 add backward compat for 'inf' 8 лет назад
pypog 91035aebb2 add backward compat for 'inf' 8 лет назад
tests 6c2cc84bbb correct .travis.yml 8 лет назад
tools e17512b102 grid viewer: add an error handler 8 лет назад
.gitignore 6c2cc84bbb correct .travis.yml 8 лет назад
.travis.yml 6c2cc84bbb correct .travis.yml 8 лет назад
LICENSE.txt b0e1b6646d initial commit 9 лет назад
README.md 7d14bf48ae update readme.md 8 лет назад
nose2.cfg f658b305b4 refactoring ok, tests ok for grids and geometries 8 лет назад
requirements.txt 413c8c7ffc performance tests 8 лет назад

README.md

pypog - Python Play on Grid

Generates an hexagonal or square grid and implement it in your game!

pypog is under GNU License

Build Status Coverage Status

Pypog is currently on developpement, do not hesitate to involve!

pypog gives you access to many tools to play with grids:

  • Square or hexagonal grids
  • Geometrical functions: lines, zones, rectangles, cones
  • Each of them come in 2D or 3D version
  • Pencils: freehand, line, zone, rectangles, zone, boundaries
  • Pathfinding (based on A* algorythm)
  • 3D space occupation

Examples of use

grid = HexGrid(50,50)
print(grid.line(3,3,30,30))

>> [(3, 3), (4, 4), (4, 5), (5, 5), (6, 6), (6, 7), (7, 7), (8, 8), (9, 8), (9, 9), (10, 10)]

grid = HexGrid(50,50)
print(grid.zone(3,3,2))

>> [(3, 2), (1, 3), (5, 4), (4, 5), (1, 4), (2, 3), (4, 2), (2, 5), (5, 3), (1, 2), (3, 5), (3, 3), (4, 4), (3, 1), (4, 3), (2, 2), (3, 4), (2, 4), (5, 2)]

grid = HexGrid(50,50)
print(grid.rect(3,3,6,6))

>> [(3, 3), (3, 4), (3, 5), (3, 6), (4, 3), (4, 4), (4, 5), (4, 6), (5, 3), (5, 4), (5, 5), (5, 6), (6, 3), (6, 4), (6, 5), (6, 6)]

grid = HexGrid(50,50)
print(grid.hollow_rect(3,3,6,6))

>> [(3, 3), (3, 4), (3, 5), (3, 6), (4, 3), (4, 6), (5, 3), (5, 6), (6, 3), (6, 4), (6, 5), (6, 6)]

Override pypog classes

Override pypog Grid or Cell classes to build your own game.

Credits:

Many thanks to: