暫無描述

olinox 53a8db5f69 correct tests 8 年之前
pypog 53a8db5f69 correct tests 8 年之前
tests 53a8db5f69 correct tests 8 年之前
tools 852d95eb22 optimize the 'path' function and add it to the Pathfinder class 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: