deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official

org.deegree.rendering.r3d.opengl.rendering.model.manager
Class RenderableManager<T extends PositionableModel>

java.lang.Object
  extended by org.deegree.rendering.r3d.opengl.rendering.model.manager.RenderableManager<T>
Type Parameters:
T - type of this manager
All Implemented Interfaces:
Iterable<T>, Collection<T>
Direct Known Subclasses:
BuildingRenderer, TreeRenderer

public class RenderableManager<T extends PositionableModel>
extends Object
implements Collection<T>

The RenderableManager is a collection based on a quadtree which can hold PositionableModel objects and cull them according to a given ViewParams view frustum.

Version:
$Revision: 22082 $, $Date: 2010-01-21 13:27:43 +0100 (Do, 21 Jan 2010) $
Author:
Rutger Bezema, last edited by: $Author: rbezema $

Constructor Summary
RenderableManager(Envelope validDomain)
           
RenderableManager(Envelope validDomain, int numberOfObjectsInLeaf, double maxPixelError)
           
 
Method Summary
 boolean add(T renderable)
           
 boolean addAll(Collection<? extends T> c)
           
 void clear()
           
 boolean contains(Object o)
           
 boolean containsAll(Collection<?> c)
           
 void createDotFile(String filename)
          Create a graphviz dot representation of this manager.
 double getMaxPixelError()
           
 int getNumberOfObjectsInLeaf()
           
 List<T> getObjects()
           
 List<T> getObjects(Envelope env)
           
 Set<T> getObjects(ViewParams viewParams)
           
 Envelope getValidDomain()
           
 boolean isEmpty()
           
 Iterator<T> iterator()
           
 boolean remove(Object o)
           
 boolean removeAll(Collection<?> c)
           
 boolean retainAll(Collection<?> c)
           
 void setValidDomain(Envelope newDomain)
          (Re) set the valid domain of this renderer.
 int size()
           
 Object[] toArray()
           
<T> T[]
toArray(T[] a)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Collection
equals, hashCode
 

Constructor Detail

RenderableManager

public RenderableManager(Envelope validDomain,
                         int numberOfObjectsInLeaf,
                         double maxPixelError)
Parameters:
validDomain -
numberOfObjectsInLeaf -
maxPixelError -

RenderableManager

public RenderableManager(Envelope validDomain)
Parameters:
validDomain - of this Renderable Manager
Method Detail

add

public boolean add(T renderable)
Specified by:
add in interface Collection<T extends PositionableModel>

remove

public boolean remove(Object o)
Specified by:
remove in interface Collection<T extends PositionableModel>

getObjects

public List<T> getObjects(Envelope env)
Parameters:
env -
Returns:
the list of objects this manager manages.

getObjects

public Set<T> getObjects(ViewParams viewParams)
Parameters:
viewParams -
Returns:
the list of objects this manager manages.

getObjects

public List<T> getObjects()
Returns:
All objects this manager manages

iterator

public Iterator<T> iterator()
Specified by:
iterator in interface Iterable<T extends PositionableModel>
Specified by:
iterator in interface Collection<T extends PositionableModel>

size

public int size()
Specified by:
size in interface Collection<T extends PositionableModel>

addAll

public boolean addAll(Collection<? extends T> c)
Specified by:
addAll in interface Collection<T extends PositionableModel>

clear

public void clear()
Specified by:
clear in interface Collection<T extends PositionableModel>

contains

public boolean contains(Object o)
Specified by:
contains in interface Collection<T extends PositionableModel>

containsAll

public boolean containsAll(Collection<?> c)
Specified by:
containsAll in interface Collection<T extends PositionableModel>

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Collection<T extends PositionableModel>

removeAll

public boolean removeAll(Collection<?> c)
Specified by:
removeAll in interface Collection<T extends PositionableModel>

retainAll

public boolean retainAll(Collection<?> c)
Specified by:
retainAll in interface Collection<T extends PositionableModel>

toArray

public Object[] toArray()
Specified by:
toArray in interface Collection<T extends PositionableModel>

toArray

public <T> T[] toArray(T[] a)
Specified by:
toArray in interface Collection<T extends PositionableModel>

getNumberOfObjectsInLeaf

public final int getNumberOfObjectsInLeaf()
Returns:
the number of objects a leaf will contain.

getValidDomain

public final Envelope getValidDomain()
Returns:
the domain of this manager

setValidDomain

public void setValidDomain(Envelope newDomain)
(Re) set the valid domain of this renderer. Be careful, this will create a new quad tree.

Parameters:
newDomain - of this manager

createDotFile

public void createDotFile(String filename)
                   throws IOException
Create a graphviz dot representation of this manager.

Parameters:
filename - to be written to
Throws:
IOException - if the file could not be written to.

getMaxPixelError

public double getMaxPixelError()
Returns:
the used max pixel error.

deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official

an open source project founded by lat/lon, Bonn, Germany.
For more information visit: http://www.deegree.org

]]>