Class CanvasNewtSWT

java.lang.Object
org.eclipse.swt.widgets.Widget
org.eclipse.swt.widgets.Control
org.eclipse.swt.widgets.Scrollable
org.eclipse.swt.widgets.Composite
org.jzy3d.chart.factories.CanvasNewtSWT
All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable, ICanvas, INativeCanvas, IScreenCanvas

public class CanvasNewtSWT extends org.eclipse.swt.widgets.Composite implements IScreenCanvas, INativeCanvas
A Newt canvas wrapped in an AWT Newt is supposed to be faster than any other canvas, either for AWT or Swing. If a non AWT panel where required, follow the guidelines given in IScreenCanvas documentation.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected IAnimator
     
    protected com.jogamp.newt.swt.NewtCanvasSWT
     
     
     
    protected Renderer3d
     
    protected View
     
    protected com.jogamp.newt.opengl.GLWindow
     

    Fields inherited from class org.eclipse.swt.widgets.Composite

    embeddedHandle

    Fields inherited from class org.eclipse.swt.widgets.Widget

    handle
  • Constructor Summary

    Constructors
    Constructor
    Description
    CanvasNewtSWT(IChartFactory factory, org.jzy3d.plot3d.rendering.scene.Scene scene, Quality quality, com.jogamp.opengl.GLCapabilitiesImmutable glci)
     
    CanvasNewtSWT(IChartFactory factory, org.jzy3d.plot3d.rendering.scene.Scene scene, Quality quality, com.jogamp.opengl.GLCapabilitiesImmutable glci, boolean traceGL, boolean debugGL)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
     
    void
    addKeyListener(com.jogamp.newt.event.KeyListener l)
     
    void
     
    void
    addMouseListener(com.jogamp.newt.event.MouseListener l)
     
    void
     
    protected void
    firePixelScaleChanged(double pixelScaleX, double pixelScaleY)
     
    void
     
     
    com.jogamp.newt.swt.NewtCanvasSWT
     
     
     
    org.jzy3d.maths.Dimension
     
    com.jogamp.opengl.GLAutoDrawable
     
    double
     
    org.jzy3d.maths.Coord2d
    Pixel scale is used to model the pixel ratio thay may be introduced by HiDPI or Retina displays.
    org.jzy3d.maths.Coord2d
     
    double
     
    double
     
     
    int
    Provide the actual renderer height for the open gl camera settings, which is obtained after a resize event.
    int
    Provide the actual renderer width for the open gl camera settings, which is obtained after a resize event.
    Provide a reference to the View that renders into this canvas.
    com.jogamp.newt.opengl.GLWindow
     
    boolean
     
    void
     
    void
     
    void
    removeKeyListener(com.jogamp.newt.event.KeyListener l)
     
    void
     
    void
    removeMouseListener(com.jogamp.newt.event.MouseListener l)
     
    com.jogamp.opengl.util.texture.TextureData
     
    void
     
    void
    setPixelScale(float[] scale)
     
    protected void
     

    Methods inherited from class org.eclipse.swt.widgets.Composite

    changed, checkSubclass, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList

    Methods inherited from class org.eclipse.swt.widgets.Scrollable

    computeTrim, getClientArea, getHorizontalBar, getScrollbarsMode, getVerticalBar

    Methods inherited from class org.eclipse.swt.widgets.Control

    addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isAutoScalable, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update

    Methods inherited from class org.eclipse.swt.widgets.Widget

    addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData, toString

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface ICanvas

    dispose, setPixelScale
  • Field Details

    • view

      protected View view
    • renderer

      protected Renderer3d renderer
    • animator

      protected IAnimator animator
    • window

      protected com.jogamp.newt.opengl.GLWindow window
    • canvas

      protected com.jogamp.newt.swt.NewtCanvasSWT canvas
    • canvasListeners

      protected List<ICanvasListener> canvasListeners
    • exec

      protected ScheduledExecutorService exec
  • Constructor Details

    • CanvasNewtSWT

      public CanvasNewtSWT(IChartFactory factory, org.jzy3d.plot3d.rendering.scene.Scene scene, Quality quality, com.jogamp.opengl.GLCapabilitiesImmutable glci)
    • CanvasNewtSWT

      public CanvasNewtSWT(IChartFactory factory, org.jzy3d.plot3d.rendering.scene.Scene scene, Quality quality, com.jogamp.opengl.GLCapabilitiesImmutable glci, boolean traceGL, boolean debugGL)
  • Method Details

    • watchPixelScale

      protected void watchPixelScale()
    • getLastRenderingTimeMs

      public double getLastRenderingTimeMs()
      Specified by:
      getLastRenderingTimeMs in interface ICanvas
    • getAnimation

      public IAnimator getAnimation()
      Specified by:
      getAnimation in interface IScreenCanvas
    • setPixelScale

      public void setPixelScale(float[] scale)
      Specified by:
      setPixelScale in interface ICanvas
    • getPixelScale

      public org.jzy3d.maths.Coord2d getPixelScale()
      Pixel scale is used to model the pixel ratio thay may be introduced by HiDPI or Retina displays.
      Specified by:
      getPixelScale in interface ICanvas
    • getPixelScaleJVM

      public org.jzy3d.maths.Coord2d getPixelScaleJVM()
      Specified by:
      getPixelScaleJVM in interface ICanvas
    • getPixelScaleX

      public double getPixelScaleX()
    • getPixelScaleY

      public double getPixelScaleY()
    • getWindow

      public com.jogamp.newt.opengl.GLWindow getWindow()
    • getCanvas

      public com.jogamp.newt.swt.NewtCanvasSWT getCanvas()
    • getDrawable

      public com.jogamp.opengl.GLAutoDrawable getDrawable()
      Specified by:
      getDrawable in interface INativeCanvas
    • display

      public void display()
      Specified by:
      display in interface IScreenCanvas
    • forceRepaint

      public void forceRepaint()
      Specified by:
      forceRepaint in interface ICanvas
    • screenshot

      public com.jogamp.opengl.util.texture.TextureData screenshot()
      Specified by:
      screenshot in interface ICanvas
      Specified by:
      screenshot in interface INativeCanvas
    • screenshot

      public void screenshot(File file) throws IOException
      Specified by:
      screenshot in interface ICanvas
      Throws:
      IOException
    • getDebugInfo

      public String getDebugInfo()
      Specified by:
      getDebugInfo in interface ICanvas
    • getRendererWidth

      public int getRendererWidth()
      Provide the actual renderer width for the open gl camera settings, which is obtained after a resize event.
      Specified by:
      getRendererWidth in interface ICanvas
    • getRendererHeight

      public int getRendererHeight()
      Provide the actual renderer height for the open gl camera settings, which is obtained after a resize event.
      Specified by:
      getRendererHeight in interface ICanvas
    • getDimension

      public org.jzy3d.maths.Dimension getDimension()
      Specified by:
      getDimension in interface ICanvas
    • getRenderer

      public Renderer3d getRenderer()
      Specified by:
      getRenderer in interface INativeCanvas
    • getView

      public View getView()
      Provide a reference to the View that renders into this canvas.
      Specified by:
      getView in interface ICanvas
    • addKeyListener

      public void addKeyListener(com.jogamp.newt.event.KeyListener l)
    • addMouseListener

      public void addMouseListener(com.jogamp.newt.event.MouseListener l)
    • removeMouseListener

      public void removeMouseListener(com.jogamp.newt.event.MouseListener l)
    • removeKeyListener

      public void removeKeyListener(com.jogamp.newt.event.KeyListener l)
    • addMouseController

      public void addMouseController(Object o)
      Specified by:
      addMouseController in interface ICanvas
    • addKeyController

      public void addKeyController(Object o)
      Specified by:
      addKeyController in interface ICanvas
    • removeMouseController

      public void removeMouseController(Object o)
      Specified by:
      removeMouseController in interface ICanvas
    • removeKeyController

      public void removeKeyController(Object o)
      Specified by:
      removeKeyController in interface ICanvas
    • addCanvasListener

      public void addCanvasListener(ICanvasListener listener)
      Specified by:
      addCanvasListener in interface ICanvas
    • removeCanvasListener

      public void removeCanvasListener(ICanvasListener listener)
      Specified by:
      removeCanvasListener in interface ICanvas
    • getCanvasListeners

      public List<ICanvasListener> getCanvasListeners()
      Specified by:
      getCanvasListeners in interface ICanvas
    • firePixelScaleChanged

      protected void firePixelScaleChanged(double pixelScaleX, double pixelScaleY)
    • isNative

      public boolean isNative()
      Specified by:
      isNative in interface ICanvas