com.jzy3d.surfedit.surface.simple
Class SimpleInteractiveSurface

java.lang.Object
  extended by org.jzy3d.plot3d.primitives.AbstractDrawable
      extended by org.jzy3d.plot3d.primitives.AbstractWireframeable
          extended by com.jzy3d.surfedit.surface.simple.SimpleInteractiveSurface
All Implemented Interfaces:
IInteractiveSurface, org.jzy3d.colors.IMultiColorable, org.jzy3d.plot3d.primitives.IGLRenderer, org.jzy3d.plot3d.primitives.ISortableDraw, org.jzy3d.plot3d.primitives.selectable.Selectable

public class SimpleInteractiveSurface
extends org.jzy3d.plot3d.primitives.AbstractWireframeable
implements IInteractiveSurface


Field Summary
protected  float alpha
           
protected  CellIndex cellIndex
           
protected  org.jzy3d.maths.Grid grid
           
protected  ICellHighlightColorTransform highlightColorTransform
           
protected  Highlighter highlighter
           
protected  org.jzy3d.maths.PolygonArray[][] lastCellProjection
           
protected  org.jzy3d.maths.Coord3d[][] lastNodeProjection
           
protected  org.jzy3d.colors.ColorMapper mapper
           
protected  int nI
           
protected  int nJ
           
protected  org.jzy3d.colors.Color pointColor
           
protected  boolean pointDisplayed
           
protected  float pointSize
           
protected  Map<org.jzy3d.maths.PolygonArray,org.jzy3d.maths.Pair<Integer,Integer>> quadMap
           
protected  BarycentreOrderingStrategy strategy
           
 
Fields inherited from class org.jzy3d.plot3d.primitives.AbstractWireframeable
facestatus, wfcolor, wfstatus, wfwidth
 
Fields inherited from class org.jzy3d.plot3d.primitives.AbstractDrawable
bbox, boundingBoxColor, boundingBoxDisplayed, displayed, hasListeners, legend, legendDisplayed, listeners, transform, transformBefore
 
Constructor Summary
SimpleInteractiveSurface(org.jzy3d.maths.Grid grid)
           
 
Method Summary
 void applyGeometryTransform(org.jzy3d.plot3d.transform.Transform transform)
           
protected  Map<org.jzy3d.maths.PolygonArray,org.jzy3d.maths.Pair<Integer,Integer>> buildQuadMap(CellIndex index)
          Allows retrieving a reference to the input point (i,j) to which each quad is attached.
protected  void call(javax.media.opengl.GL2 gl, org.jzy3d.colors.Color c)
           
protected  void call(javax.media.opengl.GL2 gl, org.jzy3d.colors.Color c, float alpha)
           
 void draw(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu, org.jzy3d.plot3d.rendering.view.Camera cam)
           
protected  void drawInputMesh(javax.media.opengl.GL2 gl, javax.media.opengl.glu.GLU glu, org.jzy3d.plot3d.rendering.view.Camera cam, org.jzy3d.colors.Color color, float width)
           
protected  void drawInputPoints(javax.media.opengl.GL2 gl, javax.media.opengl.glu.GLU glu, org.jzy3d.plot3d.rendering.view.Camera cam, org.jzy3d.colors.Color color, float size)
           
protected  void drawQuad(javax.media.opengl.GL2 gl, javax.media.opengl.glu.GLU glu, org.jzy3d.plot3d.rendering.view.Camera cam, org.jzy3d.maths.PolygonArray polygon)
          Draw up to 4 quads around each input point.
protected  void drawQuads(javax.media.opengl.GL2 gl, javax.media.opengl.glu.GLU glu, org.jzy3d.plot3d.rendering.view.Camera cam)
          Draw all quads.
 float getAlpha()
           
 org.jzy3d.maths.PolygonArray[][] getCellAnchors()
           
 CellIndex getCellIndex()
           
 org.jzy3d.colors.ColorMapper getColorMapper()
           
 org.jzy3d.maths.Grid getGrid()
           
 ICellHighlightColorTransform getHighlightColorTransform()
           
 Highlighter getHighlighter()
           
 org.jzy3d.maths.Polygon2d getHull2d()
           
 org.jzy3d.maths.PolygonArray[][] getLastCellProjection()
           
 org.jzy3d.maths.Coord3d[][] getLastNodeProjection()
           
 List<org.jzy3d.maths.Coord3d> getLastProjection()
           
 int getNI()
           
 int getNJ()
           
 org.jzy3d.maths.Coord3d[][] getNodeAnchors()
           
 org.jzy3d.colors.Color getPointColor()
           
 float getPointSize()
           
 Map<org.jzy3d.maths.PolygonArray,org.jzy3d.maths.Pair<Integer,Integer>> getQuadMap()
           
 float getZ(int i, int j)
           
 void incrementZ(int i, int j, float offset)
          rebuild should be called to have the surface tesselation updated.
 boolean isPointDisplayed()
           
 void project(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu, org.jzy3d.plot3d.rendering.view.Camera cam)
           
 void rebuild()
           
protected  void rebuildDrawables()
           
 void resetLastCellProjection()
           
 void resetLastNodeProjection()
           
 void setAlpha(float alpha)
           
 void setColorMapper(org.jzy3d.colors.ColorMapper mapper)
           
 void setData(org.jzy3d.maths.Grid grid)
           
 void setHighlightColorTransform(ICellHighlightColorTransform highlightColorTransform)
           
 void setPointColor(org.jzy3d.colors.Color pointColor)
           
 void setPointDisplayed(boolean pointDisplayed)
           
 void setPointWidth(float pointSize)
           
 void setZ(int i, int j, float z)
          rebuild should be called to have the surface tesselation updated.
 void updateBounds()
           
 
Methods inherited from class org.jzy3d.plot3d.primitives.AbstractWireframeable
getFaceDisplayed, getWireframeColor, getWireframeDisplayed, getWireframeWidth, setFaceDisplayed, setWireframeColor, setWireframeDisplayed, setWireframeWidth
 
Methods inherited from class org.jzy3d.plot3d.primitives.AbstractDrawable
addDrawableListener, call, call, callWithAlphaFactor, dispose, doDrawBounds, doTransform, fireDrawableChanged, fireDrawableChanged, getBarycentre, getBoundingBoxColor, getBounds, getDistance, getLegend, getLongestDistance, getShortestDistance, getTransform, getTransformBefore, hasLegend, isBoundingBoxDisplayed, isDisplayed, isLegendDisplayed, negative, removeDrawableListener, setBoundingBoxColor, setBoundingBoxDisplayed, setDisplayed, setLegend, setLegendDisplayed, setTransform, setTransformBefore, toString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.jzy3d.surfedit.surface.IInteractiveSurface
getFaceDisplayed, getWireframeColor, getWireframeDisplayed, getWireframeWidth, setFaceDisplayed, setWireframeColor, setWireframeDisplayed, setWireframeWidth
 

Field Detail

nI

protected int nI

nJ

protected int nJ

grid

protected org.jzy3d.maths.Grid grid

cellIndex

protected CellIndex cellIndex

highlighter

protected Highlighter highlighter

strategy

protected BarycentreOrderingStrategy strategy

mapper

protected org.jzy3d.colors.ColorMapper mapper

highlightColorTransform

protected ICellHighlightColorTransform highlightColorTransform

alpha

protected float alpha

pointColor

protected org.jzy3d.colors.Color pointColor

pointSize

protected float pointSize

pointDisplayed

protected boolean pointDisplayed

quadMap

protected Map<org.jzy3d.maths.PolygonArray,org.jzy3d.maths.Pair<Integer,Integer>> quadMap

lastNodeProjection

protected org.jzy3d.maths.Coord3d[][] lastNodeProjection

lastCellProjection

protected org.jzy3d.maths.PolygonArray[][] lastCellProjection
Constructor Detail

SimpleInteractiveSurface

public SimpleInteractiveSurface(org.jzy3d.maths.Grid grid)
Method Detail

updateBounds

public void updateBounds()
Specified by:
updateBounds in class org.jzy3d.plot3d.primitives.AbstractDrawable

applyGeometryTransform

public void applyGeometryTransform(org.jzy3d.plot3d.transform.Transform transform)
Specified by:
applyGeometryTransform in class org.jzy3d.plot3d.primitives.AbstractDrawable

setData

public void setData(org.jzy3d.maths.Grid grid)
Specified by:
setData in interface IInteractiveSurface

getZ

public float getZ(int i,
                  int j)
Specified by:
getZ in interface IInteractiveSurface

incrementZ

public void incrementZ(int i,
                       int j,
                       float offset)
rebuild should be called to have the surface tesselation updated.

Specified by:
incrementZ in interface IInteractiveSurface

setZ

public void setZ(int i,
                 int j,
                 float z)
rebuild should be called to have the surface tesselation updated.

Specified by:
setZ in interface IInteractiveSurface

rebuild

public void rebuild()
Specified by:
rebuild in interface IInteractiveSurface

rebuildDrawables

protected void rebuildDrawables()

project

public void project(javax.media.opengl.GL gl,
                    javax.media.opengl.glu.GLU glu,
                    org.jzy3d.plot3d.rendering.view.Camera cam)
Specified by:
project in interface org.jzy3d.plot3d.primitives.selectable.Selectable

getLastNodeProjection

public org.jzy3d.maths.Coord3d[][] getLastNodeProjection()
Specified by:
getLastNodeProjection in interface IInteractiveSurface

getLastCellProjection

public org.jzy3d.maths.PolygonArray[][] getLastCellProjection()
Specified by:
getLastCellProjection in interface IInteractiveSurface

resetLastCellProjection

public void resetLastCellProjection()
Specified by:
resetLastCellProjection in interface IInteractiveSurface

resetLastNodeProjection

public void resetLastNodeProjection()
Specified by:
resetLastNodeProjection in interface IInteractiveSurface

getHighlighter

public Highlighter getHighlighter()
Specified by:
getHighlighter in interface IInteractiveSurface

getColorMapper

public org.jzy3d.colors.ColorMapper getColorMapper()
Specified by:
getColorMapper in interface org.jzy3d.colors.IMultiColorable

setColorMapper

public void setColorMapper(org.jzy3d.colors.ColorMapper mapper)
Specified by:
setColorMapper in interface org.jzy3d.colors.IMultiColorable

getHighlightColorTransform

public ICellHighlightColorTransform getHighlightColorTransform()
Specified by:
getHighlightColorTransform in interface IInteractiveSurface

setHighlightColorTransform

public void setHighlightColorTransform(ICellHighlightColorTransform highlightColorTransform)
Specified by:
setHighlightColorTransform in interface IInteractiveSurface

getPointColor

public org.jzy3d.colors.Color getPointColor()
Specified by:
getPointColor in interface IInteractiveSurface

setPointColor

public void setPointColor(org.jzy3d.colors.Color pointColor)
Specified by:
setPointColor in interface IInteractiveSurface

getPointSize

public float getPointSize()
Specified by:
getPointSize in interface IInteractiveSurface

setPointWidth

public void setPointWidth(float pointSize)
Specified by:
setPointWidth in interface IInteractiveSurface

isPointDisplayed

public boolean isPointDisplayed()
Specified by:
isPointDisplayed in interface IInteractiveSurface

setPointDisplayed

public void setPointDisplayed(boolean pointDisplayed)
Specified by:
setPointDisplayed in interface IInteractiveSurface

getAlpha

public float getAlpha()
Specified by:
getAlpha in interface IInteractiveSurface

setAlpha

public void setAlpha(float alpha)
Specified by:
setAlpha in interface IInteractiveSurface

getCellAnchors

public org.jzy3d.maths.PolygonArray[][] getCellAnchors()
Specified by:
getCellAnchors in interface IInteractiveSurface

getNodeAnchors

public org.jzy3d.maths.Coord3d[][] getNodeAnchors()
Specified by:
getNodeAnchors in interface IInteractiveSurface

getGrid

public org.jzy3d.maths.Grid getGrid()
Specified by:
getGrid in interface IInteractiveSurface

getCellIndex

public CellIndex getCellIndex()
Specified by:
getCellIndex in interface IInteractiveSurface

getNI

public int getNI()
Specified by:
getNI in interface IInteractiveSurface

getNJ

public int getNJ()
Specified by:
getNJ in interface IInteractiveSurface

getQuadMap

public Map<org.jzy3d.maths.PolygonArray,org.jzy3d.maths.Pair<Integer,Integer>> getQuadMap()

draw

public void draw(javax.media.opengl.GL gl,
                 javax.media.opengl.glu.GLU glu,
                 org.jzy3d.plot3d.rendering.view.Camera cam)
Specified by:
draw in interface org.jzy3d.plot3d.primitives.IGLRenderer
Specified by:
draw in class org.jzy3d.plot3d.primitives.AbstractDrawable

drawInputPoints

protected void drawInputPoints(javax.media.opengl.GL2 gl,
                               javax.media.opengl.glu.GLU glu,
                               org.jzy3d.plot3d.rendering.view.Camera cam,
                               org.jzy3d.colors.Color color,
                               float size)

drawInputMesh

protected void drawInputMesh(javax.media.opengl.GL2 gl,
                             javax.media.opengl.glu.GLU glu,
                             org.jzy3d.plot3d.rendering.view.Camera cam,
                             org.jzy3d.colors.Color color,
                             float width)

drawQuads

protected void drawQuads(javax.media.opengl.GL2 gl,
                         javax.media.opengl.glu.GLU glu,
                         org.jzy3d.plot3d.rendering.view.Camera cam)
Draw all quads.


drawQuad

protected void drawQuad(javax.media.opengl.GL2 gl,
                        javax.media.opengl.glu.GLU glu,
                        org.jzy3d.plot3d.rendering.view.Camera cam,
                        org.jzy3d.maths.PolygonArray polygon)
Draw up to 4 quads around each input point. Color is inverted if the the cell is highlighted.


call

protected void call(javax.media.opengl.GL2 gl,
                    org.jzy3d.colors.Color c)

call

protected void call(javax.media.opengl.GL2 gl,
                    org.jzy3d.colors.Color c,
                    float alpha)

buildQuadMap

protected Map<org.jzy3d.maths.PolygonArray,org.jzy3d.maths.Pair<Integer,Integer>> buildQuadMap(CellIndex index)
Allows retrieving a reference to the input point (i,j) to which each quad is attached.


getHull2d

public org.jzy3d.maths.Polygon2d getHull2d()
Specified by:
getHull2d in interface org.jzy3d.plot3d.primitives.selectable.Selectable

getLastProjection

public List<org.jzy3d.maths.Coord3d> getLastProjection()
Specified by:
getLastProjection in interface org.jzy3d.plot3d.primitives.selectable.Selectable


Copyright © 2014. All rights reserved.