Class SurfacePaint_WM

  • All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

    public class SurfacePaint_WM
    extends JInterfaceBase
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JDialog

        javax.swing.JDialog.AccessibleJDialog
      • Nested classes/interfaces inherited from class java.awt.Dialog

        java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
      • Nested classes/interfaces inherited from class java.awt.Window

        java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
      • 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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private boolean m_bEnabled
      Enables painting
      private JPanelSurface_WM m_kPanel
      Surface panel.
      private int mBrushSize
      current paint brush size
      private javax.swing.JTextField mBrushSizeText
      Paint brush size text field
      private javax.swing.ButtonGroup mButtonGroup
      Button group for paint functions:
      private javax.swing.JColorChooser mColorChooser
      Color Chooser dialog.
      private javax.swing.JButton mColorPaintButton
      Color selection button
      private javax.swing.JToggleButton mDropperButton
      Paint dropper button
      private javax.swing.JButton mEraseAllButton
      Erase all button
      private javax.swing.JToggleButton mEraserButton
      Eraser paint button
      private float mOpacity
      Current paint opacity
      private javax.swing.JButton mOpacityPaintButton
      Opacity paint button
      private javax.swing.JToggleButton mPaintBrushButton
      Paint brush button
      private javax.swing.JToggleButton mPaintCanButton
      Paint can button
      private WildMagic.LibFoundation.Mathematics.ColorRGBA mPaintColor
      Current paint color
      private JDialogPaintGrow mPaintGrowDialog
      Paint Grow Dialog.
      private javax.swing.JToolBar mPaintToolBar
      Paint user-interface ToolBar
      private static long serialVersionUID
      Use serialVersionUID for interoperability.
      static int TEXTURE
      Paint into the 3D texture map:
      static int VERTEX
      Paint the TriMesh vertex color:
      • Fields inherited from class javax.swing.JDialog

        accessibleContext, rootPane, rootPaneCheckingEnabled
      • Fields inherited from class java.awt.Dialog

        DEFAULT_MODALITY_TYPE
      • 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
      • Fields inherited from interface javax.swing.WindowConstants

        DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void actionPerformed​(java.awt.event.ActionEvent event)
      actionPerformed, listens for interface events.
      void dispose()
      Deletes all member variables, clean memory.
      void enableSurfacePaint​(boolean flag)
      Enables/disables the Surface per-vertex paint user-interface
      void enableSurfacePaintCan​(boolean flag)
      Enables/disables the Paint Can user-interface
      boolean getEnabled()
      Returns true if the user has enabled the paint brush.
      ModelImage getPaintImage()
      Returns the ModelImage to paint into.
      javax.swing.JToolBar getToolBar()
      Return paint tool-bar.
      private void init()
      Initialize user-interface
      void regionGrow​(ModelImage kImage, WildMagic.LibFoundation.Mathematics.Vector3f kSeedPoint, WildMagic.LibFoundation.Mathematics.ColorRGBA kSeedColor)
      Grows a region based on a starting point supplied.
      void setDropperColor​(WildMagic.LibFoundation.Mathematics.ColorRGBA kDropperColor, WildMagic.LibFoundation.Mathematics.Vector3f kPickPoint)
      Sets the dropper color.
      void setEnabled​(boolean flag)
      Enables/disables the user-interface
      void setOpacity​(float opacity)
      Sets the opacity of the paint.
      • Methods inherited from class javax.swing.JDialog

        addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
      • Methods inherited from class java.awt.Dialog

        addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setResizable, setShape, setTitle, setUndecorated, setVisible, show, toBack
      • Methods inherited from class java.awt.Window

        addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFront
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • TEXTURE

        public static final int TEXTURE
        Paint into the 3D texture map:
        See Also:
        Constant Field Values
      • serialVersionUID

        private static final long serialVersionUID
        Use serialVersionUID for interoperability.
        See Also:
        Constant Field Values
      • m_bEnabled

        private boolean m_bEnabled
        Enables painting
      • mPaintToolBar

        private javax.swing.JToolBar mPaintToolBar
        Paint user-interface ToolBar
      • mButtonGroup

        private javax.swing.ButtonGroup mButtonGroup
        Button group for paint functions:
      • mPaintBrushButton

        private javax.swing.JToggleButton mPaintBrushButton
        Paint brush button
      • mDropperButton

        private javax.swing.JToggleButton mDropperButton
        Paint dropper button
      • mPaintCanButton

        private javax.swing.JToggleButton mPaintCanButton
        Paint can button
      • mEraserButton

        private javax.swing.JToggleButton mEraserButton
        Eraser paint button
      • mEraseAllButton

        private javax.swing.JButton mEraseAllButton
        Erase all button
      • mBrushSizeText

        private javax.swing.JTextField mBrushSizeText
        Paint brush size text field
      • mBrushSize

        private int mBrushSize
        current paint brush size
      • mColorPaintButton

        private javax.swing.JButton mColorPaintButton
        Color selection button
      • mPaintColor

        private WildMagic.LibFoundation.Mathematics.ColorRGBA mPaintColor
        Current paint color
      • mOpacityPaintButton

        private javax.swing.JButton mOpacityPaintButton
        Opacity paint button
      • mOpacity

        private float mOpacity
        Current paint opacity
      • mColorChooser

        private javax.swing.JColorChooser mColorChooser
        Color Chooser dialog.
      • mPaintGrowDialog

        private JDialogPaintGrow mPaintGrowDialog
        Paint Grow Dialog.
    • Method Detail

      • actionPerformed

        public void actionPerformed​(java.awt.event.ActionEvent event)
        actionPerformed, listens for interface events.
        Parameters:
        event - ActionEvent generated by the interface.
      • dispose

        public void dispose()
        Deletes all member variables, clean memory.
        Overrides:
        dispose in class java.awt.Window
      • enableSurfacePaint

        public void enableSurfacePaint​(boolean flag)
        Enables/disables the Surface per-vertex paint user-interface
        Parameters:
        flag - when true per-vertex paint is enabled, when false the per-vertex paint is disabled is disabled.
      • enableSurfacePaintCan

        public void enableSurfacePaintCan​(boolean flag)
        Enables/disables the Paint Can user-interface
        Parameters:
        flag - when true Paint Can is enabled, when false the Paint Can is disabled.
      • getEnabled

        public boolean getEnabled()
        Returns true if the user has enabled the paint brush.
        Returns:
        the enabled/disabled status of the paint brush.
      • getPaintImage

        public ModelImage getPaintImage()
        Returns the ModelImage to paint into.
        Returns:
        paint/texture ModelImage
      • getToolBar

        public javax.swing.JToolBar getToolBar()
        Return paint tool-bar.
        Returns:
        paint tool-bar.
      • regionGrow

        public void regionGrow​(ModelImage kImage,
                               WildMagic.LibFoundation.Mathematics.Vector3f kSeedPoint,
                               WildMagic.LibFoundation.Mathematics.ColorRGBA kSeedColor)
        Grows a region based on a starting point supplied. A voxel is added to the the paintMask mask if its intensity is between the the bounds which are also supplied.
        Parameters:
        kImage - the image to grow the region in
        kSeedPoint - the starting point in the image
        kSeedColor - seed color.
      • setDropperColor

        public void setDropperColor​(WildMagic.LibFoundation.Mathematics.ColorRGBA kDropperColor,
                                    WildMagic.LibFoundation.Mathematics.Vector3f kPickPoint)
        Sets the dropper color. Initializes the region grow.
        Parameters:
        kDropperColor - dropper color.
        kPickPoint - picked point on the surface.
      • setEnabled

        public void setEnabled​(boolean flag)
        Enables/disables the user-interface
        Overrides:
        setEnabled in class java.awt.Component
        Parameters:
        flag - when true the user-interface is enabled, when false the user-interface is disabled.
      • setOpacity

        public void setOpacity​(float opacity)
        Sets the opacity of the paint.
        Overrides:
        setOpacity in class java.awt.Dialog
        Parameters:
        opacity - paint opacity.
      • init

        private void init()
        Initialize user-interface