deadpixel.keystone
Class Keystone

java.lang.Object
  extended by deadpixel.keystone.Keystone

public class Keystone
extends Object

This class manages the creation and calibration of keystoned surfaces. To move and warp surfaces, place the Keystone object in calibrate mode. It catches mouse events and allows you to drag surfaces and control points with the mouse. The Keystone object also provides load/save functionality, once you've calibrated the layout to your liking. Version: 0.31


Field Summary
 String VERSION
           
 
Constructor Summary
Keystone(PApplet parent)
           
 
Method Summary
 void clearSurfaces()
           
 CornerPinSurface createCornerPinSurface(int w, int h, int res)
          Creates and registers a new corner pin keystone surface.
 CornerPinSurface getSurface(int i)
           
 int getSurfaceCount()
           
 boolean isCalibrating()
           
 void load()
          Loads a saved layout from "keystone.xml"
 void load(String filename)
          Loads a saved layout from a given XML file
 void mouseEvent(MouseEvent e)
           
 void save()
          Saves the current layout into "keystone.xml"
 void save(String filename)
          Saves the layout to an XML file.
 void startCalibration()
          Starts the calibration mode.
 void stopCalibration()
          Stops the calibration mode
 void toggleCalibration()
          Toggles the calibration mode
 String version()
          Returns the version of the library.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VERSION

public final String VERSION
See Also:
Constant Field Values
Constructor Detail

Keystone

public Keystone(PApplet parent)
Parameters:
parent - applet
Method Detail

createCornerPinSurface

public CornerPinSurface createCornerPinSurface(int w,
                                               int h,
                                               int res)
Creates and registers a new corner pin keystone surface.

Parameters:
w - width
h - height
res - resolution (number of tiles per axis)
Returns:

startCalibration

public void startCalibration()
Starts the calibration mode. Mouse events will be intercepted to drag surfaces and move control points around.


stopCalibration

public void stopCalibration()
Stops the calibration mode


toggleCalibration

public void toggleCalibration()
Toggles the calibration mode


isCalibrating

public boolean isCalibrating()

version

public String version()
Returns the version of the library.

Returns:
String

save

public void save(String filename)
Saves the layout to an XML file.


save

public void save()
Saves the current layout into "keystone.xml"


load

public void load(String filename)
Loads a saved layout from a given XML file


load

public void load()
Loads a saved layout from "keystone.xml"


mouseEvent

public void mouseEvent(MouseEvent e)

getSurface

public CornerPinSurface getSurface(int i)

getSurfaceCount

public int getSurfaceCount()

clearSurfaces

public void clearSurfaces()


Processing library keystone by David Bouchard. (C) 2013