Giter Site home page Giter Site logo

poincare-kaleidoscope's Introduction

Poincare' Kaleidoscope
Copyright (c) 2012 Blake Courter  (bcourter <a> mac <-> com)
Alpha 0.03
WARNING: This is barely-tested software. Using it could destroy the planet, for all we know.

Usage: Poincare.exe [Path to image directory]
Requires .NET Framework 4 or Mono 2.10.5

Drag inside the horizon to translate.
Drag outside the horizon to rotate.
To achieve a limit rotation, match the translation and rotation so a point on the horizon is fixed.

Keyboard commands:
	F: Fullscreen. Currently experiences different behavior across platforms.
	Escape: Quit.
	p/P: Increase/Decrease vertices per polygon.
	q/Q: Increase/Decrease polygons per vertex.
	R: Reset the origin and stop all movement. Also resets framerate optimization.
	n/N: Advance to next/previous image.
	Z: Randomize p, q, and the image.
	I: Invert color of odd-parity regions.
	L: Make limit rotation.

Note: p and q are equavalent to Schläfli symbol{p,q}, where (p - 2)(q - 2) > 4 for hyperbolic tessellations.

References:
The incredibly readable Visual Complex Analysis by Tristan Needham: http://www.amazon.com/Visual-Complex-Analysis-Tristan-Needham/dp/0198534469
Great paper on the basics of tiling the disc and a hi fidelity lookup technique: http://poincare.sourceforge.net/
Original inspiration. I used it so much I copied his shortcuts: http://www.plunk.org/~hatch/HyperbolicApplet/
Inverting generalized circle-lines: http://www.cefns.nau.edu/~schulz/moe.pdf

poincare-kaleidoscope's People

Contributors

bcourter avatar

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.