modeller
Class DrawPanel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by modeller.DrawPanel
All Implemented Interfaces:
java.awt.event.ComponentListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class DrawPanel
extends javax.swing.JPanel
implements java.awt.event.MouseListener, java.awt.event.ComponentListener, java.awt.event.MouseMotionListener

Class for the drawingdesktop in front-, side- and topview of the 3d-object

Author:
bettray
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  boolean fetchButtonclicked
           
private  boolean fetchButtonReleased
           
private  HotSpot hotSpot
           
private  int hotSpotsSet
           
private  ModellerStack modellerStack
           
private  java.awt.Color panelBackground
           
private  double panelClipHeight
           
private  double panelClipWidth
           
private  double panelClipX
           
private  double panelClipY
           
private  int panelID
           
private  int pressedButton
           
private  Raster raster
           
private  double scale
           
private  javax.swing.JScrollPane scrollPane
           
private  StatusPanel statusPanel
           
private  CadObject swapFemObject
           
private  double swapScale
           
private  java.awt.Shape swapShape
           
private  double translateX
           
private  double translateY
           
private  double translateZ
           
private  ViewPopup viewPopup
           
private  int x1
           
private  int x2
           
private  int y1
           
private  int y2
           
private  int z1
           
private  int z2
           
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
DrawPanel(StatusPanel statusPanel, ModellerStack modellerStack, int panelID)
           
 
Method Summary
 void componentHidden(java.awt.event.ComponentEvent e)
           
 void componentMoved(java.awt.event.ComponentEvent e)
           
 void componentResized(java.awt.event.ComponentEvent e)
           
 void componentShown(java.awt.event.ComponentEvent e)
           
 java.awt.Color getPanelBackground()
           
 double getScale()
          Getting the current scaling-factor
 javax.swing.JScrollPane getScrollPane()
           
 StatusPanel getStatusPanel()
           
 double getTranslateX()
           
 double getTranslateY()
           
 double getTranslateZ()
           
 ViewPopup getViewPopup()
           
 boolean isFetchButtonReleased()
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
private  void moveObject()
          Moving a the selected CAD-Object in x-y-z direction
 void paint(java.awt.Graphics g)
           
private  void paintingObject(java.awt.Graphics2D g2, CadObject swapCadObject, int selectedObjectIndex)
          Paints the FemObject, that is selected
 void refreshDimension()
          Refreshing the dimensions of the drawPanel, for fitting the ScrollPane
private  void refreshOtherDrawpanels()
          Repainting the other 2 drawPanels
private  void selectObject()
           
 void setFetchButtonReleased(boolean fetchButtonReleased)
           
 void setPanelBackground(java.awt.Color panelBackground)
           
 void setPanelClipHeight(double panelClipHeight)
           
 void setPanelClipWidth(double panelClipWidth)
           
 void setScale(double scale)
          Setting the new scaling-factor and controlling the min & max value of it
 void setScrollPane(javax.swing.JScrollPane scrollPane)
           
 void setTranslateX(double translateX)
           
 void setTranslateY(double translateY)
           
 void setTranslateZ(double translateZ)
           
 void setViewPopup(ViewPopup viewPopup)
           
private  void storeCadObject()
          Storing the just builded FemOject-instance
private  void stretchObject(java.awt.Graphics2D g2d)
           
private  void translation(java.awt.Graphics2D g2)
          Setting up the translation
private  void updateInfoPanel()
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

panelID

private int panelID

pressedButton

private int pressedButton

x1

private int x1

y1

private int y1

z1

private int z1

x2

private int x2

y2

private int y2

z2

private int z2

panelClipX

private double panelClipX

panelClipY

private double panelClipY

panelClipWidth

private double panelClipWidth

panelClipHeight

private double panelClipHeight

hotSpotsSet

private int hotSpotsSet

scale

private double scale

swapScale

private double swapScale

translateX

private double translateX

translateY

private double translateY

translateZ

private double translateZ

fetchButtonReleased

private boolean fetchButtonReleased

fetchButtonclicked

private boolean fetchButtonclicked

panelBackground

private java.awt.Color panelBackground

swapShape

private java.awt.Shape swapShape

viewPopup

private ViewPopup viewPopup

modellerStack

private ModellerStack modellerStack

statusPanel

private StatusPanel statusPanel

raster

private Raster raster

scrollPane

private javax.swing.JScrollPane scrollPane

swapFemObject

private CadObject swapFemObject

hotSpot

private HotSpot hotSpot
Constructor Detail

DrawPanel

public DrawPanel(StatusPanel statusPanel,
                 ModellerStack modellerStack,
                 int panelID)
Parameters:
statusPanel -
modellerStack -
panelID -
Method Detail

paint

public void paint(java.awt.Graphics g)
Overrides:
paint in class javax.swing.JComponent

translation

private void translation(java.awt.Graphics2D g2)
Setting up the translation

Parameters:
g2 -

paintingObject

private void paintingObject(java.awt.Graphics2D g2,
                            CadObject swapCadObject,
                            int selectedObjectIndex)
Paints the FemObject, that is selected

Parameters:
g2 -

moveObject

private void moveObject()
Moving a the selected CAD-Object in x-y-z direction


stretchObject

private void stretchObject(java.awt.Graphics2D g2d)

selectObject

private void selectObject()

refreshDimension

public void refreshDimension()
Refreshing the dimensions of the drawPanel, for fitting the ScrollPane

Parameters:
factor -

refreshOtherDrawpanels

private void refreshOtherDrawpanels()
Repainting the other 2 drawPanels


storeCadObject

private void storeCadObject()
Storing the just builded FemOject-instance


getScale

public double getScale()
Getting the current scaling-factor

Returns:

setScale

public void setScale(double scale)
Setting the new scaling-factor and controlling the min & max value of it

Parameters:
scale -

updateInfoPanel

private void updateInfoPanel()

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

componentHidden

public void componentHidden(java.awt.event.ComponentEvent e)
Specified by:
componentHidden in interface java.awt.event.ComponentListener

componentMoved

public void componentMoved(java.awt.event.ComponentEvent e)
Specified by:
componentMoved in interface java.awt.event.ComponentListener

componentResized

public void componentResized(java.awt.event.ComponentEvent e)
Specified by:
componentResized in interface java.awt.event.ComponentListener

componentShown

public void componentShown(java.awt.event.ComponentEvent e)
Specified by:
componentShown in interface java.awt.event.ComponentListener

getViewPopup

public ViewPopup getViewPopup()

setViewPopup

public void setViewPopup(ViewPopup viewPopup)

getStatusPanel

public StatusPanel getStatusPanel()

isFetchButtonReleased

public boolean isFetchButtonReleased()

setFetchButtonReleased

public void setFetchButtonReleased(boolean fetchButtonReleased)

setScrollPane

public void setScrollPane(javax.swing.JScrollPane scrollPane)

getScrollPane

public javax.swing.JScrollPane getScrollPane()

getPanelBackground

public java.awt.Color getPanelBackground()

setPanelBackground

public void setPanelBackground(java.awt.Color panelBackground)

getTranslateX

public double getTranslateX()

setTranslateX

public void setTranslateX(double translateX)

getTranslateY

public double getTranslateY()

setTranslateY

public void setTranslateY(double translateY)

getTranslateZ

public double getTranslateZ()

setTranslateZ

public void setTranslateZ(double translateZ)

setPanelClipHeight

public void setPanelClipHeight(double panelClipHeight)

setPanelClipWidth

public void setPanelClipWidth(double panelClipWidth)