بدون توضیح

olinox 43f95724af refactoring 2 8 سال پیش
gridviewer 17dae6af8a refactoring 8 سال پیش
pypog 43f95724af refactoring 2 8 سال پیش
tests 43f95724af refactoring 2 8 سال پیش
.travis.yml 6a1ba38440 various corrections to geometry ; increase test coverage 9 سال پیش
LICENSE.txt b0e1b6646d initial commit 9 سال پیش
README.md 3ff4c10019 update readme 9 سال پیش

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: