Class PathBasedVisionShape
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- com.inductiveautomation.vision.api.client.components.model.AbstractVisionComponent
-
- com.inductiveautomation.vision.api.client.components.shapes.AbstractVisionShape
-
- com.inductiveautomation.vision.api.client.components.shapes.PathBasedVisionShape
-
- All Implemented Interfaces:
DynamicPropertyProvider,LocaleListener,MutableDynamicPropertyProvider,StyleProvider,Bounds2DComponent,ComponentLifecycle,QualityMonitor,VisionComponent,Paintable,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable
public class PathBasedVisionShape extends AbstractVisionShape implements Paintable
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.inductiveautomation.vision.api.client.components.shapes.AbstractVisionShape
angle, lastSize, origBounds, rect, relPos, rotationAnchor, SCALE_STROKE_HINT, tempTransform
-
Fields inherited from class com.inductiveautomation.vision.api.client.components.model.AbstractVisionComponent
antialias, context, cursorCode
-
Fields inherited from class javax.swing.JComponent
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
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.ComponentLifecycle
COMPONENT_RUNNING
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface com.inductiveautomation.ignition.client.model.LocaleListener
LOCAL_CHANGE_EVENT
-
Fields inherited from interface com.inductiveautomation.vision.api.client.binding.MutableDynamicPropertyProvider
RESERVED_SET_KEY
-
Fields inherited from interface com.inductiveautomation.vision.api.client.components.model.VisionComponent
COMPONENT_LOCKED, COMPONENT_PERMISSIONS, COMPONENT_SECURITY, COMPONENT_TRANSLATIONS
-
-
Constructor Summary
Constructors Constructor Description PathBasedVisionShape(ShapeDelegate delegate)PathBasedVisionShape(ShapeDelegate delegate, double angle)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidalterDelegate(ShapeDelegate delegate, double angle)voidalterDelegate(java.awt.geom.GeneralPath newShape)voidconvertToPath()java.awt.geom.AreagetArea()Return the area that this shape will paint in.java.awt.geom.Point2DgetCenterpoint()ShapeDelegategetDelegate()java.awt.PaintgetFillPaint()java.awt.ShapegetShape()Returns the current shape, with rotation appliedjava.awt.geom.Rectangle2DgetShapeBounds(java.awt.geom.Rectangle2D rv)java.awt.PaintgetStrokePaint()floatgetStrokeSize()Used to outset the repaint region so that widely stroked shapes get repainted correctly.java.awt.StrokegetStrokeStyle()booleanisRotated()voidmirrorHorizontal()voidmirrorVertical()voidpaintShape(java.awt.Graphics2D g)Draw the shape to the given graphics object.protected voidrotateImpl(double angle, java.awt.geom.Point2D anchor)Actual implementation of rotation logic from sub-class.voidsetBoundingRect(java.awt.geom.Rectangle2D newRect)Manipulate the underlying shape/transform so that the shape fits within the new bounding rectangle.voidsetDelegate(ShapeDelegate delegate)Deprecated.voidsetFillPaint(java.awt.Paint fill)voidsetStrokePaint(java.awt.Paint stroke)voidsetStrokeStyle(java.awt.Stroke stroke)voidupdate()protected voidupdateRelBounds(double x, double y, double w, double h)-
Methods inherited from class com.inductiveautomation.vision.api.client.components.shapes.AbstractVisionShape
_setAngle, ceil, clearTempTransmform, contains, firePositionChange, floor, getAngleDegrees, getAngleRadians, getBoundingRect, getBoundingRect, getOriginalBounds, getRelHeight, getRelWidth, getRelX, getRelY, getRotationAnchor, getTempTransform, paintComponent, repaint, rotate, rotate, round, setAngleDegrees, setAngleRadians, setBorder, setOriginalBounds, setRelHeight, setRelWidth, setRelX, setRelY, setRotationAnchor, setTempTransform, toString
-
Methods inherited from class com.inductiveautomation.vision.api.client.components.model.AbstractVisionComponent
getAppContext, getCursorCode, getDataQuality, getDynamicProps, getProperties, getPropertyValue, getQuality, getStyles, getToolTipText, isAntialias, isPropertyDefined, localeChanged, onShutdown, onStartup, paintChildren, setAntialias, setCursorCode, setDataQuality, setDynamicProps, setName, setPropertyValue, setQuality, setStyles, setToolTipText, setVisible, shutdownComponent, startupComponent, updateQuality
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, 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, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintImmediately, paintImmediately, paramString, 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, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update, updateUI
-
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, 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, getAccessibleContext, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Constructor Detail
-
PathBasedVisionShape
public PathBasedVisionShape(ShapeDelegate delegate)
-
PathBasedVisionShape
public PathBasedVisionShape(ShapeDelegate delegate, double angle)
-
-
Method Detail
-
mirrorHorizontal
public void mirrorHorizontal()
-
mirrorVertical
public void mirrorVertical()
-
setFillPaint
public void setFillPaint(java.awt.Paint fill)
- Specified by:
setFillPaintin interfacePaintable
-
getFillPaint
public java.awt.Paint getFillPaint()
- Specified by:
getFillPaintin interfacePaintable
-
setStrokePaint
public void setStrokePaint(java.awt.Paint stroke)
- Specified by:
setStrokePaintin interfacePaintable
-
getStrokePaint
public java.awt.Paint getStrokePaint()
- Specified by:
getStrokePaintin interfacePaintable
-
setStrokeStyle
public void setStrokeStyle(java.awt.Stroke stroke)
- Specified by:
setStrokeStylein interfacePaintable
-
getStrokeStyle
public java.awt.Stroke getStrokeStyle()
- Specified by:
getStrokeStylein interfacePaintable
-
getStrokeSize
public float getStrokeSize()
Description copied from class:AbstractVisionShapeUsed to outset the repaint region so that widely stroked shapes get repainted correctly.- Specified by:
getStrokeSizein classAbstractVisionShape
-
updateRelBounds
protected void updateRelBounds(double x, double y, double w, double h)- Overrides:
updateRelBoundsin classAbstractVisionShape
-
update
public void update()
-
getDelegate
public ShapeDelegate getDelegate()
-
setDelegate
@Deprecated public void setDelegate(ShapeDelegate delegate)
Deprecated.Not called directly, but here for bean property detection.
-
setBoundingRect
public void setBoundingRect(java.awt.geom.Rectangle2D newRect)
Description copied from class:AbstractVisionShapeManipulate the underlying shape/transform so that the shape fits within the new bounding rectangle.- Specified by:
setBoundingRectin interfaceBounds2DComponent- Specified by:
setBoundingRectin classAbstractVisionShape
-
convertToPath
public void convertToPath()
-
alterDelegate
public void alterDelegate(ShapeDelegate delegate, double angle)
-
alterDelegate
public void alterDelegate(java.awt.geom.GeneralPath newShape)
-
rotateImpl
protected void rotateImpl(double angle, java.awt.geom.Point2D anchor)Description copied from class:AbstractVisionShapeActual implementation of rotation logic from sub-class.- Specified by:
rotateImplin classAbstractVisionShape
-
isRotated
public boolean isRotated()
-
getCenterpoint
public java.awt.geom.Point2D getCenterpoint()
- Specified by:
getCenterpointin classAbstractVisionShape
-
getShapeBounds
public java.awt.geom.Rectangle2D getShapeBounds(java.awt.geom.Rectangle2D rv)
- Specified by:
getShapeBoundsin classAbstractVisionShape
-
paintShape
public void paintShape(java.awt.Graphics2D g)
Description copied from class:AbstractVisionShapeDraw the shape to the given graphics object.- Specified by:
paintShapein classAbstractVisionShape
-
getArea
public java.awt.geom.Area getArea()
Description copied from class:AbstractVisionShapeReturn the area that this shape will paint in. The area should be enclosed within the bounding rectangle, but may cover less area than the entire bounding rectangle. Used for mouse hit-testing.- Specified by:
getAreain classAbstractVisionShape
-
getShape
public java.awt.Shape getShape()
Returns the current shape, with rotation applied
-
-