Без опису

olivier.massot e1b3cb3997 add profiling module 8 роки тому
gridviewer c73095fd4a gridviewer now provides a very basic console to run geometry functions 8 роки тому
pypog 43f95724af refactoring 2 8 роки тому
tests e1b3cb3997 add profiling module 8 роки тому
.gitignore 4613e9554b add python 3.6 to .travis.yml 8 роки тому
.travis.yml 4613e9554b add python 3.6 to .travis.yml 8 роки тому
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: