Code Monkey home page Code Monkey logo

polymaze's People

Contributors

kobejohn avatar livibetter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

polymaze's Issues

Point and Click UI Demo

A demo proving it is possible to interact with the grid + background image in real time.

For example, as the mouse moves, it changes the properties of the areas/edges, clicking changes the alpha value, etc.

Some kind of simple app making use of the system

Tentative idea for the app - a whole image is turned into a maze (not sections) but only the current "region" you are in (for example, a letter if it's text) is visible. So the giant maze is effectively partitioned into interconnected mazes where you can never see the whole thing at one time. Maybe you can drop bread crumbs to track your way (ala Labyrinth).

More Flexible Grid Creation and Drawing

It should be possible to transparently remove the PIL image generation system (it's kind of clunky and generates inflexible huge images) with vector drawing, flexible output and more beautiful output of cairo using cairocffi.

Combine the grid with the original image

This is the key step that is doesn't make sense with the polymaze-focused implementation. All original image information has been lost by the time a grid reaches the polymaze module. Since the amount of implementation required to support this is non-trivial and it should be reusable, I judged it's worth moving it while implementing it into the core polygrid system.

Make an option for SVG output

This is a request from a user. Thanks for the suggestion!

Originally I wanted the output to be SVG but didn't have time or knowledge to do it when I made this. It's the ideal format for people who know what they are doing.

PNG is still the best output for the average user since it retains clean lines and has excellent compression due to the regular nature of the maze.

Make all edges visible with color + alpha in a new basic grid visualizer class

This first step is probably the biggest so I'm making it very simple. The current system already has visualization for the grid, but it is done in the polymaze module rather than in the core (polygrid). This is not good because polygrid is fundamentally a visual system so any other types of visualization would be mostly duplicate code violating DRY (don't repeat yourself).

The first step is to move the basic visualization into a new visualizer class that enhances the base PolyGrid class.

The target is eventually to allow polymaze to behave exactly as it does now but also enable interactive image overlays which are impossible with the current polymaze-focused implementation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.