com.vistech.jai.render
Class CompositeCanvasJAI

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--com.vistech.jai.render.JAIImageCanvas
                          |
                          +--com.vistech.jai.render.RenderedImageCanvas
                                |
                                +--com.vistech.jai.render.ImageManipulatorCanvas
                                      |
                                      +--com.vistech.jai.render.CompositeCanvasJAI
All Implemented Interfaces:
DrawingCanvas, ImageDisplay, ImageManipulator, java.awt.image.ImageObserver, java.awt.MenuContainer, ScrollController, java.io.Serializable

public class CompositeCanvasJAI
extends ImageManipulatorCanvas
implements DrawingCanvas

A canvas class that allows drawing graphics over images.

Version:
1.0 18 Apr 2000
Author:
Lawrence Rodrigues
See Also:
Serialized Form

Inner classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Inner classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent
 
Field Summary
protected  java.awt.Graphics2D destGc
           
protected  java.awt.image.BufferedImage destImage
           
protected  boolean drawOn
           
protected  java.awt.Graphics2D offScrGc
           
protected  java.awt.image.BufferedImage offScrImage
           
 
Fields inherited from class com.vistech.jai.render.ImageManipulatorCanvas
awtImage, diffFactor, displayMode, flipMode, imageType, interpMode, magCenterX, magCenterY, magFactor, magOn, panOffset, rotateOn, rotationAngle, rotationCenterX, rotationCenterY, shearFactor, shearOn, shearX, shearY
 
Fields inherited from class com.vistech.jai.render.RenderedImageCanvas
colorModel, displayImage, imageHeight, imageWidth, maxTileCordX, maxTileCordY, maxTileIndexX, maxTileIndexY, minTileCordX, minTileCordY, minTileIndexX, minTileIndexY, origImage, sampleModel, tc, tileGridXOffset, tileGridYOffset, tileHeight, tileWidth, viewerHeight, viewerWidth
 
Fields inherited from class com.vistech.jai.render.JAIImageCanvas
atx, height, image, imageDrawn, MAX_HEIGHT, MAX_WIDTH, panX, panY, scrollAnchor, scrollOn, vpPos, width
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface com.vistech.imageviewer.ImageDisplay
TYPE_AWT_IMAGE, TYPE_BUFFERED_IMAGE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
CompositeCanvasJAI()
           
 
Method Summary
 void createOffScreenImage()
           
 void eraseShapes()
           
 java.awt.Graphics2D getDisplayedImageGC()
          Use this method to check out the graphics context.
 boolean getDrawOn()
           
 void paintComponent(java.awt.Graphics gc)
          Paints the tiles that are visible.
 void paintImage(javax.media.jai.PlanarImage image)
           
 void reset()
          Resets the canvas
 void setDrawOn(boolean onOrOff)
           
 void setImage(javax.media.jai.PlanarImage image)
          Sets the image.
 
Methods inherited from class com.vistech.jai.render.ImageManipulatorCanvas
applyTransform, applyTransform, createTiledImage, draw, getAWTImage, getBufferedImage, getDisplayedImage, getDisplayMode, getFlipMode, getImage, getImageSize, getImageType, getInterpolationType, getInvert, getMagFactor, getOffScreenImage, getRotationAngle, getShearFactor, getShearFactorX, getShearFactorY, invert, paintImage, paintImage, resetManipulation, setAWTImage, setBufferedImage, setClip, setDisplayImage, setDisplayMode, setFlipMode, setImageType, setInterpolationType, setInvert, setMagFactor, setOffScreenImage, setRotationAngle, setShearFactor
 
Methods inherited from class com.vistech.jai.render.RenderedImageCanvas
fireTilePropertyChange, getDisplayImage, getImageHeight, getImageWidth, getMaxTileIndexX, getMaxTileIndexY, getTileHeight, getTileInfo, getTileWidth, makeTiledImage, setTileHeight, setTileWidth
 
Methods inherited from class com.vistech.jai.render.JAIImageCanvas
getPanOffset, getScrollOn, getTransform, getViewportPosition, isImageDrawn, pan, scroll, setPanOffset, setScrollOn, setTransform, setViewportPosition, startScroll, stopScroll
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getUIClassID, getVerifyInputWhenFocusTarget, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, hide, isDoubleBuffered, isFocusCycleRoot, isFocusTraversable, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processFocusEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getLayout, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setLayout, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, imageUpdate, inside, isDisplayable, isEnabled, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.vistech.imageviewer.DrawingCanvas
addMouseListener, addMouseMotionListener, getTransform, removeMouseListener, removeMouseMotionListener, repaint, setTransform
 
Methods inherited from interface com.vistech.imageviewer.ImageManipulator
getPanOffset, getTransform, setPanOffset, setTransform
 
Methods inherited from interface com.vistech.imageviewer.ImageDisplay
addMouseListener, addMouseMotionListener, addPropertyChangeListener, addVetoableChangeListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removeVetoableChangeListener, setCursor
 

Field Detail

offScrImage

protected java.awt.image.BufferedImage offScrImage

offScrGc

protected java.awt.Graphics2D offScrGc

destImage

protected java.awt.image.BufferedImage destImage

destGc

protected java.awt.Graphics2D destGc

drawOn

protected boolean drawOn
Constructor Detail

CompositeCanvasJAI

public CompositeCanvasJAI()
Method Detail

getDisplayedImageGC

public java.awt.Graphics2D getDisplayedImageGC()
Description copied from interface: DrawingCanvas
Use this method to check out the graphics context.
Specified by:
getDisplayedImageGC in interface DrawingCanvas
Following copied from interface: com.vistech.imageviewer.DrawingCanvas
Returns:
the graphics context on which the image drawn. Graphics objects are drawn on this context.

setImage

public void setImage(javax.media.jai.PlanarImage image)
Description copied from class: RenderedImageCanvas
Sets the image.
Overrides:
setImage in class RenderedImageCanvas
Following copied from class: com.vistech.jai.render.RenderedImageCanvas
Parameters:
img - the planar image.

paintImage

public void paintImage(javax.media.jai.PlanarImage image)

getDrawOn

public boolean getDrawOn()

setDrawOn

public void setDrawOn(boolean onOrOff)

createOffScreenImage

public void createOffScreenImage()

paintComponent

public void paintComponent(java.awt.Graphics gc)
Description copied from class: RenderedImageCanvas
Paints the tiles that are visible. This method first computes only the tiles that are visible. Each of the tiles is converted into a BufferedImage object, which is then drawn over the components graphics context.
Overrides:
paintComponent in class ImageManipulatorCanvas
Following copied from class: com.vistech.jai.render.RenderedImageCanvas
Parameters:
gc - the graphics context.

eraseShapes

public void eraseShapes()
Specified by:
eraseShapes in interface DrawingCanvas

reset

public void reset()
Description copied from interface: DrawingCanvas
Resets the canvas
Specified by:
reset in interface DrawingCanvas
Overrides:
reset in class JAIImageCanvas