gzz.vob
Class Vob

gzz.vob.Vob ../../../pegboard/vob_bgvob--humppake/peg.gen.html#abstractbgvob abstractbgvob_small gzz.vob.VobScene gzz.vob.VobMap gzz.vob.VobCoorder gzz.vob.VobMatcher gzz.vob.Vob ../../../Gzz_Frontend_Vobs.gen.html#vobscene_overall vobscene_overall_small
java.lang.Object
  |
  +--gzz.vob.Vob
Direct Known Subclasses:
CellImageVob, GL.JavaObject, gzz.vob.linebreaking.HBox.VobHBox

public abstract class Vob
extends java.lang.Object

A two-dimensional renderable, interpolatable object. A Vob is simply an object able to render itself. Instead of just painting we create a temporary structure of Vobs (VobScene) in order to be able to paint all the data in the correct depth-order and to interpolate between views..

Vobs are just renderable things; they do not contain any information about identity. Identity is handled in VobCoorder, where each coordinate system can be given a key.

See Also:
VobScene, VobCoorder

Nested Class Summary
static class Vob.RenderInfo
          An interface which provides information about the current rendering context.
 
Field Summary
static boolean dbg
           
static java.lang.String rcsid
           
 
Constructor Summary
Vob()
           
 
Method Summary
 int addToListGL(GraphicsAPI.RenderingSurface win, int[] list, int curs, int coordsys1, int coordsys2)
           
 int addToListGL(int[] list, int curs, int coordsys1, int coordsys2)
           
 boolean intersect(int x, int y, Vob.RenderInfo info1, Vob.RenderInfo info2)
           
 int putGL(VobScene vs)
          For OpenGL: Add the current vob to the given display list, using the given coordinate systems.
 int putGL(VobScene vs, int cs1)
           
 int putGL(VobScene vs, int cs1, int cs2)
           
 int putGL(VobScene vs, int cs1, int cs2, int cs3)
           
abstract  void render(java.awt.Graphics g, boolean fast, Vob.RenderInfo info1, Vob.RenderInfo info2)
          Renders this vob at the given screen coordinates and in given size.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

rcsid

public static final java.lang.String rcsid
See Also:
Constant Field Values

dbg

public static boolean dbg
Constructor Detail

Vob

public Vob()
Method Detail

intersect

public boolean intersect(int x,
                         int y,
                         Vob.RenderInfo info1,
                         Vob.RenderInfo info2)

render

public abstract void render(java.awt.Graphics g,
                            boolean fast,
                            Vob.RenderInfo info1,
                            Vob.RenderInfo info2)
Renders this vob at the given screen coordinates and in given size.

Parameters:
g - The graphics context to draw into The color should already be set to the default foreground color, mixed by the caller.
fast - Whether to draw quickly (true) or beautifully (false)
info1 - General parameters and coordinate systems of cs1
info2 - General parameters and coordinate systems of cs2
See Also:
VobPlacer#put(Vob vob, int depth, int x, int y, int w, int h), Vob.RenderInfo

addToListGL

public final int addToListGL(int[] list,
                             int curs,
                             int coordsys1,
                             int coordsys2)

putGL

public int putGL(VobScene vs)
For OpenGL: Add the current vob to the given display list, using the given coordinate systems. There are two alternatives: for composite Vobs, this will call vs.put for the components, for "real" GL Vobs, this will return the GL index.


putGL

public int putGL(VobScene vs,
                 int cs1)

putGL

public int putGL(VobScene vs,
                 int cs1,
                 int cs2)

putGL

public int putGL(VobScene vs,
                 int cs1,
                 int cs2,
                 int cs3)

addToListGL

public final int addToListGL(GraphicsAPI.RenderingSurface win,
                             int[] list,
                             int curs,
                             int coordsys1,
                             int coordsys2)