org.osm2world.core.target.common
Class PrimitiveTarget
Object
AbstractTarget
PrimitiveTarget
- All Implemented Interfaces:
- Target
- Direct Known Subclasses:
- JOGLTarget, PrimitiveBuffer
public abstract class PrimitiveTarget
- extends AbstractTarget
superclass for targets that are based on OpenGL primitives.
These targets will treat different primitives similarly:
They convert them all to a list of vertices
and represent the primitive type using an enum or flags.
Method Summary |
void |
drawPolygon(Material material,
List<? extends VectorXYZ> vs)
|
void |
drawPolygon(Material material,
VectorXYZ... vs)
|
protected abstract void |
drawPrimitive(Primitive.Type type,
Material material,
List<? extends VectorXYZ> vs,
VectorXYZ[] normals)
|
void |
drawTriangleFan(Material material,
List<? extends VectorXYZ> vs)
|
void |
drawTriangles(Material material,
Collection<? extends TriangleXYZ> triangles)
|
void |
drawTriangleStrip(Material material,
List<? extends VectorXYZ> vs)
|
void |
drawTriangleStrip(Material material,
VectorXYZ... vs)
|
void |
drawTrianglesWithNormals(Material material,
Collection<? extends TriangleXYZWithNormals> triangles)
|
Methods inherited from class Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PrimitiveTarget
public PrimitiveTarget()
drawPrimitive
protected abstract void drawPrimitive(Primitive.Type type,
Material material,
List<? extends VectorXYZ> vs,
VectorXYZ[] normals)
- Parameters:
vs
- vertices that form the primitivenormals
- normal vector for each vertex; same size as vs
drawTriangleStrip
public void drawTriangleStrip(Material material,
VectorXYZ... vs)
- Specified by:
drawTriangleStrip
in interface Target
- Overrides:
drawTriangleStrip
in class AbstractTarget
drawTriangleStrip
public void drawTriangleStrip(Material material,
List<? extends VectorXYZ> vs)
- Specified by:
drawTriangleStrip
in interface Target
- Overrides:
drawTriangleStrip
in class AbstractTarget
drawTriangleFan
public void drawTriangleFan(Material material,
List<? extends VectorXYZ> vs)
- Specified by:
drawTriangleFan
in interface Target
- Overrides:
drawTriangleFan
in class AbstractTarget
drawPolygon
public void drawPolygon(Material material,
VectorXYZ... vs)
- Specified by:
drawPolygon
in interface Target
- Overrides:
drawPolygon
in class AbstractTarget
drawPolygon
public void drawPolygon(Material material,
List<? extends VectorXYZ> vs)
drawTriangles
public void drawTriangles(Material material,
Collection<? extends TriangleXYZ> triangles)
drawTrianglesWithNormals
public void drawTrianglesWithNormals(Material material,
Collection<? extends TriangleXYZWithNormals> triangles)