diff options
Diffstat (limited to 'src/jogl/classes/com/jogamp/graph/geom/Vertex.java')
-rw-r--r-- | src/jogl/classes/com/jogamp/graph/geom/Vertex.java | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/src/jogl/classes/com/jogamp/graph/geom/Vertex.java b/src/jogl/classes/com/jogamp/graph/geom/Vertex.java index 859add943..3080f32cc 100644 --- a/src/jogl/classes/com/jogamp/graph/geom/Vertex.java +++ b/src/jogl/classes/com/jogamp/graph/geom/Vertex.java @@ -30,22 +30,21 @@ package com.jogamp.graph.geom; /** * A Vertex with custom memory layout using custom factory. */ -public interface Vertex extends Comparable<Vertex>, Cloneable { +public interface Vertex extends Cloneable { public static interface Factory <T extends Vertex> { T create(); - T create(float x, float y); + T create(float x, float y, float z, boolean onCurve); - T create(float x, float y, float z); - - T create(float[] coordsBuffer, int offset, int length); + T create(float[] coordsBuffer, int offset, int length, boolean onCurve); } - void setCoord(float x, float y); - void setCoord(float x, float y, float z); + /** + * @see System#arraycopy(Object, int, Object, int, int) for thrown IndexOutOfBoundsException + */ void setCoord(float[] coordsBuffer, int offset, int length); float[] getCoord(); @@ -70,11 +69,23 @@ public interface Vertex extends Comparable<Vertex>, Cloneable { void setId(int id); - int compareTo(Vertex p); - float[] getTexCoord(); void setTexCoord(float s, float t); + /** + * @see System#arraycopy(Object, int, Object, int, int) for thrown IndexOutOfBoundsException + */ + void setTexCoord(float[] texCoordsBuffer, int offset, int length); + + /** + * @param obj the Object to compare this Vertex with + * @return true if {@code obj} is a Vertex and not null, on-curve flag is equal and has same vertex- and tex-coords. + */ + boolean equals(Object obj); + + /** + * @return deep clone of this Vertex + */ Vertex clone(); } |