org.jzy3d.plot3d.rendering.view
Class AWTView

java.lang.Object
  extended by org.jzy3d.plot3d.rendering.view.View
      extended by org.jzy3d.chart.ChartView
          extended by org.jzy3d.plot3d.rendering.view.AWTView

public class AWTView
extends ChartView


Field Summary
protected  BufferedImage bgImg
           
protected  Color bgOverlay
           
protected  AWTImageViewport bgViewport
           
protected  List<Renderer2d> renderers
           
protected  List<ITooltipRenderer> tooltips
           
 
Fields inherited from class org.jzy3d.chart.ChartView
layout
 
Fields inherited from class org.jzy3d.plot3d.rendering.view.View
annotations, axe, axeBoxDisplayed, bgColor, boundmode, cam, cameraMode, canvas, center, chart, current, DEFAULT_VIEW, dimensionDirty, DISPLAY_AXE_WHOLE_BOUNDS, factorViewPointDistance, glu, initBounds, MAINTAIN_ALL_OBJECTS_IN_VIEW, overlay, PI_div2, quality, scaling, scene, slave, squared, STRETCH_RATIO, viewbounds, viewDirty, viewLifecycleListeners, viewmode, viewOnTopListeners, viewpoint, viewPointChangedListeners, wasOnTopAtLastRendering
 
Constructor Summary
AWTView(IChartComponentFactory factory, Scene scene, ICanvas canvas, Quality quality)
           
 
Method Summary
 void addRenderer2d(Renderer2d renderer)
           
 void addTooltip(ITooltipRenderer tooltip)
           
 void addTooltips(List<ITooltipRenderer> tooltip)
           
 void clearTooltips()
           
protected  void correctCameraPositionForIncludingTextLabels(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu, ViewportConfiguration viewport)
           
 void dispose()
           
 BufferedImage getBackgroundImage()
           
 List<ITooltipRenderer> getTooltips()
           
protected  boolean hasOverlayStuffs()
           
 void removeRenderer2d(Renderer2d renderer)
           
 void renderAxeBox(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu)
           
 void renderBackground(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu, float left, float right)
           
 void renderBackground(javax.media.opengl.GL gl, javax.media.opengl.glu.GLU glu, ViewportConfiguration viewport)
           
 void renderOverlay(javax.media.opengl.GL gl, ViewportConfiguration viewport)
          Renders all provided Tooltips and Renderer2ds on top of the scene.
 void setBackgroundImage(BufferedImage i)
          Set a buffered image, or null to desactivate background image
 void setTooltip(ITooltipRenderer tooltip)
           
 void setTooltips(List<ITooltipRenderer> tooltip)
           
 
Methods inherited from class org.jzy3d.chart.ChartView
getLayout, render, setLayout
 
Methods inherited from class org.jzy3d.plot3d.rendering.view.View
addViewLifecycleChangedListener, addViewOnTopEventListener, addViewPointChangedListener, clear, clearColorAndDepth, computeScaling, computeSceneScaling, current, fireViewLifecycleHasInit, fireViewLifecycleWillRender, fireViewOnTopEvent, fireViewPointChangedEvent, getAnnotations, getAxe, getBackgroundColor, getBounds, getBoundsMode, getCamera, getCameraMode, getCanvas, getCanvasAsGLAutoDrawable, getCenter, getChart, getCurrentContext, getCurrentGL, getInitBounds, getLastViewScaling, getScale, getScene, getSceneViewportRectangle, getSquared, getViewMode, getViewPoint, init, initLights, initQuality, initResources, isAxeBoxDisplayed, isSlave, lookToBox, project, projectMouse, removeViewLifecycleChangedListener, removeViewOnTopEventListener, removeViewPointChangedListener, renderAnnotations, renderOverlay, renderScene, renderScene, renderScene, renderSceneGraph, renderSceneGraph, rotate, rotate, setAxe, setAxeBoxDisplayed, setBackgroundColor, setBoundManual, setBoundMode, setCameraMode, setChart, setInitBounds, setMaximized, setScale, setScale, setSlave, setSquared, setViewPoint, setViewPoint, setViewPositionMode, shift, shift, shoot, squarify, updateBounds, updateBoundsForceUpdate, updateCamera, updateCamera, updateQuality, zoom, zoom, zoomX, zoomX, zoomY, zoomY, zoomZ, zoomZ
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tooltips

protected List<ITooltipRenderer> tooltips

renderers

protected List<Renderer2d> renderers

bgOverlay

protected Color bgOverlay

bgViewport

protected AWTImageViewport bgViewport

bgImg

protected BufferedImage bgImg
Constructor Detail

AWTView

public AWTView(IChartComponentFactory factory,
               Scene scene,
               ICanvas canvas,
               Quality quality)
Method Detail

dispose

public void dispose()
Overrides:
dispose in class View

renderAxeBox

public void renderAxeBox(javax.media.opengl.GL gl,
                         javax.media.opengl.glu.GLU glu)
Overrides:
renderAxeBox in class View

correctCameraPositionForIncludingTextLabels

protected void correctCameraPositionForIncludingTextLabels(javax.media.opengl.GL gl,
                                                           javax.media.opengl.glu.GLU glu,
                                                           ViewportConfiguration viewport)
Overrides:
correctCameraPositionForIncludingTextLabels in class View

renderOverlay

public void renderOverlay(javax.media.opengl.GL gl,
                          ViewportConfiguration viewport)
Renders all provided Tooltips and Renderer2ds on top of the scene. Due to the behaviour of the Overlay implementation, Java2d geometries must be drawn relative to the Chart's IScreenCanvas, BUT will then be stretched to fit in the Camera's viewport. This bug is very important to consider, since the Camera's viewport may not occupy the full IScreenCanvas. Indeed, when View is not maximized (like the default behaviour), the viewport remains square and centered in the canvas, meaning the Overlay won't cover the full canvas area. In other words, the following piece of code draws a border around the View, and not around the complete chart canvas, although queried to occupy chart canvas dimensions: g2d.drawRect(1, 1, chart.getCanvas().getRendererWidth()-2, chart.getCanvas().getRendererHeight()-2); renderOverlay() must be called while the OpenGL2 context for the drawable is current, and after the OpenGL2 scene has been rendered.

Overrides:
renderOverlay in class View

renderBackground

public void renderBackground(javax.media.opengl.GL gl,
                             javax.media.opengl.glu.GLU glu,
                             float left,
                             float right)
Overrides:
renderBackground in class View

renderBackground

public void renderBackground(javax.media.opengl.GL gl,
                             javax.media.opengl.glu.GLU glu,
                             ViewportConfiguration viewport)
Overrides:
renderBackground in class View

setBackgroundImage

public void setBackgroundImage(BufferedImage i)
Set a buffered image, or null to desactivate background image


getBackgroundImage

public BufferedImage getBackgroundImage()

clearTooltips

public void clearTooltips()

setTooltip

public void setTooltip(ITooltipRenderer tooltip)

addTooltip

public void addTooltip(ITooltipRenderer tooltip)

setTooltips

public void setTooltips(List<ITooltipRenderer> tooltip)

addTooltips

public void addTooltips(List<ITooltipRenderer> tooltip)

getTooltips

public List<ITooltipRenderer> getTooltips()

addRenderer2d

public void addRenderer2d(Renderer2d renderer)

removeRenderer2d

public void removeRenderer2d(Renderer2d renderer)

hasOverlayStuffs

protected boolean hasOverlayStuffs()


Copyright © 2013. All rights reserved.