|
|||||||||
| Home >> All >> com >> xerox >> VTM >> [ glyphs overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
com.xerox.VTM.glyphs
Class VShape

java.lang.Objectcom.xerox.VTM.glyphs.Glyph
com.xerox.VTM.glyphs.VShape
- All Implemented Interfaces:
- java.lang.Cloneable
- Direct Known Subclasses:
- VShapeST
- public class VShape
- extends Glyph
- implements java.lang.Cloneable
- extends Glyph
Custom shape implementing Jean-Yves Vion-Dury's model - defined by its N vertices (every vertex is between 0 (distance from shape's center=0) and 1.0 (distance from shape's center equals bounding circle radius)) - angle between each vertices is 2*Pi/N - can be reoriented
| Field Summary | |
(package private) ProjShape[] |
pc
array of projected coordinates - index of camera in virtual space is equal to index of projected coords in this array |
(package private) float[] |
vertices
list of vertex distance to the shape's center in the 0-1.0 range (relative to bounding circle) --vertices are layed out counter clockwise, with the first vertex placed at the same Y coord as the shape's center (provided orient=0) |
(package private) long |
vs
height=width in virtual space |
(package private) int[] |
xcoords
|
(package private) int[] |
ycoords
|
| Fields inherited from class com.xerox.VTM.glyphs.Glyph |
bColor, borderColor, cGlyph, coef, color, dashedContour, DEFAULT_STROKE_WIDTH, dependants, filled, font, fontSize, fontSizePolicy, HSV, HSVb, ID, mouseInsideColor, orient, owner, paintBorder, selected, selectedColor, sensit, size, stickedGlyphs, stickedTo, stroke, strokeWidth, text, textHeight, textPos, textWidth, type, visible, vsm, vx, vy, vz |
| Constructor Summary | |
VShape(float[] v)
|
|
VShape(long x,
long y,
float z,
long s,
float[] v,
java.awt.Color c,
float or)
|
|
| Method Summary | |
void |
addCamera(int verifIndex)
used internally to create new projected coordinates to use with the new camera |
java.lang.Object |
clone()
returns a clone of this object (only basic information is cloned for now: shape, orientation, position, size) |
(package private) void |
computeSize()
compute size (bounding circle radius) |
boolean |
coordInside(int x,
int y,
int camIndex)
detects whether the given point is inside this glyph or not |
void |
draw(java.awt.Graphics2D g,
int vW,
int vH,
int i,
java.awt.Stroke stdS,
java.awt.geom.AffineTransform stdT)
draw glyph |
boolean |
fillsView(long w,
long h,
int camIndex)
used to find out if glyph completely fills the view (in which case it is not necessary to repaint objects at a lower altitude) |
double |
getArea()
returns a given VShape's area |
com.xerox.VTM.engine.LongPoint |
getCentroid()
return the coordinates of this VShape's centroid in virtual space |
float |
getOrient()
get orientation |
java.awt.geom.Point2D.Double |
getPreciseCentroid()
return the double precision coordinates of this VShape's centroid |
float |
getSize()
get size (bounding circle radius) |
float[] |
getVertices()
list of vertex distance to the shape's center in the 0-1.0 range (relative to bounding circle) --vertices are layed out counter clockwise, with the first vertex placed at the same Y coord as the shape's center (provided orient=0) |
java.lang.String |
getVerticesAsText()
returns a comma-separated string representation of the vertex distance to the shape's center |
void |
initCams(int nbCam)
called when glyph is created in order to create the initial set of projected coordinates wrt the number of cameras in the space |
int |
mouseInOut(int x,
int y,
int camIndex)
returns 1 if mouse has entered the glyph, -1 if it has exited the glyph, 0 if nothing has changed (meaning it was already inside or outside it) |
void |
orientTo(float angle)
set orientation (absolute) |
void |
project(com.xerox.VTM.engine.Camera c,
com.xerox.VTM.engine.ViewPanel v)
project shape in camera coord sys prior to actual painting |
void |
removeCamera(int index)
if a camera is removed from the virtual space, we should delete the corresponding projected coordinates, but do not modify the array it self because we do not want to change other cameras' index - just point to null |
void |
resetMouseIn(int i)
reset prevMouseIn for projected coordinates nb i |
void |
reSize(float factor)
multiply bounding circle radius by factor |
void |
sizeTo(float radius)
set absolute size by setting bounding circle radius |
(package private) void |
textDraw(java.awt.Graphics2D g,
int i)
draw text associated with this glyph |
| Methods inherited from class com.xerox.VTM.glyphs.Glyph |
addDependant, addHSVbColor, addHSVColor, drawMe, getCGlyph, getColor, getColorb, getDependants, getFillStatus, getFont, getHSVbColor, getHSVColor, getID, getLocation, getOwner, getPaintBorderStatus, getStickedGlyphs, getStroke, getStrokeWidth, getText, getType, isSelected, isSensitive, isVisible, move, moveTo, propagateMove, removeDependant, select, setBorderColor, setCGlyph, setColor, setDashed, setFill, setFontSizePolicy, setHSVbColor, setHSVColor, setID, setMouseInsideColor, setOwner, setPaintBorder, setSelectedColor, setSensitivity, setSpecialFont, setStroke, setStrokeWidth, setText, setTextPos, setType, setVisible, setVSM, stick, toString, unstick, usesSpecialFont |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
vs
long vs
- height=width in virtual space
pc
ProjShape[] pc
- array of projected coordinates - index of camera in virtual space is equal to index of projected coords in this array
vertices
float[] vertices
- list of vertex distance to the shape's center in the 0-1.0 range (relative to bounding circle) --vertices are layed out counter clockwise, with the first vertex placed at the same Y coord as the shape's center (provided orient=0)
xcoords
int[] xcoords
ycoords
int[] ycoords
| Constructor Detail |
VShape
public VShape(float[] v)
VShape
public VShape(long x,
long y,
float z,
long s,
float[] v,
java.awt.Color c,
float or)
| Method Detail |
initCams
public void initCams(int nbCam)
- called when glyph is created in order to create the initial set of projected coordinates wrt the number of cameras in the space
addCamera
public void addCamera(int verifIndex)
- used internally to create new projected coordinates to use with the new camera
removeCamera
public void removeCamera(int index)
- if a camera is removed from the virtual space, we should delete the corresponding projected coordinates, but do not modify the array it self because we do not want to change other cameras' index - just point to null
- Specified by:
removeCamerain classGlyph
resetMouseIn
public void resetMouseIn(int i)
- reset prevMouseIn for projected coordinates nb i
- Specified by:
resetMouseInin classGlyph
getOrient
public float getOrient()
orientTo
public void orientTo(float angle)
getSize
public float getSize()
computeSize
void computeSize()
- compute size (bounding circle radius)
sizeTo
public void sizeTo(float radius)
reSize
public void reSize(float factor)
fillsView
public boolean fillsView(long w,
long h,
int camIndex)
- used to find out if glyph completely fills the view (in which case it is not necessary to repaint objects at a lower altitude)
coordInside
public boolean coordInside(int x,
int y,
int camIndex)
- detects whether the given point is inside this glyph or not
- Specified by:
coordInsidein classGlyph
mouseInOut
public int mouseInOut(int x,
int y,
int camIndex)
- returns 1 if mouse has entered the glyph, -1 if it has exited the glyph, 0 if nothing has changed (meaning it was already inside or outside it)
- Specified by:
mouseInOutin classGlyph
getVertices
public float[] getVertices()
- list of vertex distance to the shape's center in the 0-1.0 range (relative to bounding circle) --vertices are layed out counter clockwise, with the first vertex placed at the same Y coord as the shape's center (provided orient=0)
getVerticesAsText
public java.lang.String getVerticesAsText()
- returns a comma-separated string representation of the vertex distance to the shape's center
project
public void project(com.xerox.VTM.engine.Camera c, com.xerox.VTM.engine.ViewPanel v)
textDraw
void textDraw(java.awt.Graphics2D g, int i)
- draw text associated with this glyph
draw
public void draw(java.awt.Graphics2D g, int vW, int vH, int i, java.awt.Stroke stdS, java.awt.geom.AffineTransform stdT)
getArea
public double getArea()
- returns a given VShape's area
getPreciseCentroid
public java.awt.geom.Point2D.Double getPreciseCentroid()
- return the double precision coordinates of this VShape's centroid
getCentroid
public com.xerox.VTM.engine.LongPoint getCentroid()
- return the coordinates of this VShape's centroid in virtual space
clone
public java.lang.Object clone()
- returns a clone of this object (only basic information is cloned for now: shape, orientation, position, size)
|
|||||||||
| Home >> All >> com >> xerox >> VTM >> [ glyphs overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
JAVADOC