public final class SynapseNode extends ScreenElement
DEFAULT_PAINT, DEFAULT_STROKE, DEFAULT_STROKE_PAINT
FILL_STRATEGY_ASPECT_COVER, FILL_STRATEGY_ASPECT_FIT, FILL_STRATEGY_EXACT_FIT, PROPERTY_BOUNDS, PROPERTY_CHILDREN, PROPERTY_CHILDREN_PICKABLE, PROPERTY_CLIENT_PROPERTIES, PROPERTY_CODE_BOUNDS, PROPERTY_CODE_CHILDREN, PROPERTY_CODE_CHILDREN_PICKABLE, PROPERTY_CODE_CLIENT_PROPERTIES, PROPERTY_CODE_FULL_BOUNDS, PROPERTY_CODE_PAINT, PROPERTY_CODE_PARENT, PROPERTY_CODE_PICKABLE, PROPERTY_CODE_TRANSFORM, PROPERTY_CODE_TRANSPARENCY, PROPERTY_CODE_VISIBLE, PROPERTY_FULL_BOUNDS, PROPERTY_PAINT, PROPERTY_PARENT, PROPERTY_PICKABLE, PROPERTY_TRANSFORM, PROPERTY_TRANSPARENCY, PROPERTY_VISIBLE, SCENE_GRAPH_DELEGATE
Constructor and Description |
---|
SynapseNode(NetworkPanel net,
NeuronNode source,
NeuronNode target,
Synapse synapse)
Create a new synapse node connecting a source and target neuron.
|
Modifier and Type | Method and Description |
---|---|
java.awt.geom.Point2D |
calcCenter(java.awt.geom.Point2D src,
java.awt.geom.Point2D tar)
Calculates the position of the synapse circle based on the positions of
the source and target NeuronNodes.
|
protected javax.swing.JPopupMenu |
getContextMenu()
Return a context menu specific to this screen element.
|
static java.awt.Color |
getExcitatoryColor() |
static java.awt.Color |
getInhibitoryColor() |
java.awt.geom.Line2D.Double |
getLine() |
static java.awt.Color |
getLineColor() |
static int |
getMaxDiameter() |
static int |
getMinDiameter() |
protected javax.swing.JDialog |
getPropertyDialog()
Return a property dialog for this screen element.
|
NeuronNode |
getSource() |
Synapse |
getSynapse() |
NeuronNode |
getTarget() |
protected java.lang.String |
getToolTipText()
Return a
String to use as tool tip text for this screen
element. |
static java.awt.Color |
getZeroWeightColor() |
boolean |
hasContextMenu()
Return
true if this screen element has a context menu. |
protected boolean |
hasPropertyDialog()
Return
true if this screen element has a property dialog. |
protected boolean |
hasToolTipText()
Return
true if this screen element has tool tip text. |
boolean |
isDraggable()
Return
true if this screen element is draggable. |
boolean |
isSelectable()
Return
true if this screen element is selectable. |
void |
resetColors()
Reset colors when default colors have been changed in
NetworkPreferences . |
static void |
setExcitatoryColor(java.awt.Color excitatoryColor) |
static void |
setInhibitoryColor(java.awt.Color inhibitoryColor) |
static void |
setLineColor(java.awt.Color lineColor) |
static void |
setMaxDiameter(int maxDiameter) |
static void |
setMinDiameter(int minDiameter) |
void |
setSource(NeuronNode source) |
void |
setSynapse(Synapse synapse) |
void |
setTarget(NeuronNode target) |
static void |
setZeroWeightColor(java.awt.Color zeroWeightColor) |
boolean |
showSelectionHandle()
Return
true if this screen element should show a selection
handle. |
java.lang.String |
toString()
Returns String representation of this NeuronNode.
|
void |
updateColor()
Calculates the color for a weight, based on its current strength.
|
void |
updateDiameter()
Update the diameter of the drawn weight based on the logical weight's
strength.
|
void |
updatePosition()
Update position of synapse.
|
getNetworkPanel, isGrouped, setGrouped, setNetworkPanel, singleClickEvent
append, append, closePath, createArc, createArc, createCubicCurve, createCubicCurve, createEllipse, createEllipse, createLine, createLine, createQuadCurve, createQuadCurve, createRectangle, createRectangle, createRoundRectangle, createRoundRectangle, curveTo, getPath, getPathReference, getShape, lineTo, moveTo, quadTo, reset, transform
getBoundsWithStroke, getStroke, getStrokePaint, internalUpdateBounds, intersects, paint, setStroke, setStrokePaint, updateBoundsFromShape
addActivity, addAttribute, addChild, addChild, addChildren, addInputEventListener, addPropertyChangeListener, addPropertyChangeListener, animateToBounds, animateToColor, animateToPositionScaleRotation, animateToRelativePosition, animateToTransform, animateToTransparency, animateTransformToBounds, centerBoundsOnPoint, centerFullBoundsOnPoint, clone, computeFullBounds, endResizeBounds, findIntersectingNodes, fireChildPropertyChange, firePropertyChange, fullIntersects, fullPaint, fullPick, getAllNodes, getAllNodes, getAttribute, getAttribute, getBooleanAttribute, getBounds, getBoundsChanged, getBoundsReference, getBoundsVolatile, getChild, getChildBoundsInvalid, getChildBoundsVolatile, getChildPaintInvalid, getChildrenCount, getChildrenIterator, getChildrenPickable, getChildrenReference, getClientProperties, getClientPropertyKeysEnumeration, getDoubleAttribute, getFullBounds, getFullBoundsInvalid, getFullBoundsReference, getGlobalBounds, getGlobalFullBounds, getGlobalRotation, getGlobalScale, getGlobalToLocalTransform, getGlobalTranslation, getHeight, getInputEventListeners, getIntegerAttribute, getInverseTransform, getListenerList, getLocalToGlobalTransform, getName, getOccluded, getOffset, getPaint, getPaintInvalid, getParent, getPickable, getPropertyChangeParentMask, getRoot, getRotation, getScale, getTransform, getTransformReference, getTransparency, getUnionOfChildrenBounds, getVisible, getWidth, getX, getXOffset, getY, getYOffset, globalToLocal, globalToLocal, globalToLocal, indexOfChild, invalidateFullBounds, invalidateLayout, invalidatePaint, isAncestorOf, isDescendentOf, isDescendentOfRoot, isOpaque, layoutChildren, lerp, localToGlobal, localToGlobal, localToGlobal, localToParent, localToParent, localToParent, lower, lower, lowerBelow, lowerToBottom, lowerToBottom, offset, paintAfterChildren, parentBoundsChanged, parentToLocal, parentToLocal, parentToLocal, pick, pickAfterChildren, print, print, raise, raise, raiseAbove, raiseToTop, raiseToTop, removeAllChildren, removeChild, removeChild, removeChildren, removeFromParent, removeInputEventListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaintFrom, reparent, replaceWith, resetBounds, rotate, rotateAboutPoint, rotateAboutPoint, rotateInPlace, scale, scaleAboutPoint, scaleAboutPoint, setBounds, setBounds, setBoundsChanged, setChildBoundsInvalid, setChildBoundsVolatile, setChildPaintInvalid, setChildrenPickable, setFullBoundsInvalid, setGlobalRotation, setGlobalScale, setGlobalTranslation, setHeight, setName, setOccluded, setOffset, setOffset, setPaint, setPaintInvalid, setParent, setPickable, setPropertyChangeParentMask, setRotation, setScale, setTransform, setTransparency, setVisible, setWidth, setX, setY, signalBoundsChanged, startResizeBounds, toImage, toImage, toImage, toImage, transformBy, translate, validateFullBounds, validateFullPaint
public SynapseNode(NetworkPanel net, NeuronNode source, NeuronNode target, Synapse synapse)
net
- Reference to NetworkPanelsource
- source neuronnodetarget
- target neuronmodesynapse
- the model synapse this PNode representspublic void updatePosition()
public void updateColor()
public void updateDiameter()
public java.awt.geom.Point2D calcCenter(java.awt.geom.Point2D src, java.awt.geom.Point2D tar)
src
- Source NeuronNodetar
- Target NeuronNodepublic boolean isSelectable()
ScreenElement
true
if this screen element is selectable.
Being selectable requires that this screen element is pickable as far as
the Piccolo API is concerned, so if this method returns true
, be sure that this class also returns true
for its
getPickable()
method.
isSelectable
in class ScreenElement
ScreenElement
public boolean showSelectionHandle()
ScreenElement
true
if this screen element should show a selection
handle.
Showing a selection handle requires that this screen element is pickable
as far as the Piccolo API is concerned, so if this method returns
true
, be sure that this class also returns true
for its getPickable()
method.
Showing a selection handle also requires that this screen element is
selectable, so if this method returns true
, be sure that
this class also returns true
for its
isSelectable()
method.
showSelectionHandle
in class ScreenElement
ScreenElement
public boolean isDraggable()
ScreenElement
true
if this screen element is draggable.
Being draggable requires that this screen element is pickable as far as
the Piccolo API is concerned, so if this method returns true
, be sure that this class also returns true
for its
getPickable()
method.
Being draggable also requires that this screen element is selectable, so
if this method returns true
, be sure that this class also
returns true
for its isSelectable()
method.
isDraggable
in class ScreenElement
ScreenElement
protected boolean hasToolTipText()
ScreenElement
true
if this screen element has tool tip text. If
this screen element does not have tool tip text, a tool tip event handler
will not be registered.hasToolTipText
in class ScreenElement
ScreenElement
protected java.lang.String getToolTipText()
ScreenElement
String
to use as tool tip text for this screen
element. Return null
if this screen element does not have
tool tip text or to temporarily prevent the tool tip from displaying.getToolTipText
in class ScreenElement
String
to use as tool tip text for this screen
elementScreenElement
public boolean hasContextMenu()
ScreenElement
true
if this screen element has a context menu. If
this screen element does not have a context menu, a context menu event
handler will not be registered.hasContextMenu
in class ScreenElement
ScreenElement
protected javax.swing.JPopupMenu getContextMenu()
ScreenElement
null
if this screen element does not have a context menu.getContextMenu
in class ScreenElement
ScreenElement
protected boolean hasPropertyDialog()
ScreenElement
true
if this screen element has a property dialog. If
this screen element does not have a property dialog, a property dialog
event handler will not be registered.hasPropertyDialog
in class ScreenElement
ScreenElement
protected javax.swing.JDialog getPropertyDialog()
ScreenElement
null
if this screen element does not have a property dialog.getPropertyDialog
in class ScreenElement
ScreenElement
public java.lang.String toString()
toString
in class java.lang.Object
public Synapse getSynapse()
public void setSynapse(Synapse synapse)
synapse
- The synapse to set.public NeuronNode getSource()
public NeuronNode getTarget()
public void setSource(NeuronNode source)
source
- The source to set.public void setTarget(NeuronNode target)
target
- The target to set.public void resetColors()
ScreenElement
NetworkPreferences
.resetColors
in class ScreenElement
ScreenElement
public java.awt.geom.Line2D.Double getLine()
public static java.awt.Color getExcitatoryColor()
public static void setExcitatoryColor(java.awt.Color excitatoryColor)
excitatoryColor
- the excitatoryColor to setpublic static java.awt.Color getInhibitoryColor()
public static void setInhibitoryColor(java.awt.Color inhibitoryColor)
inhibitoryColor
- the inhibitoryColor to setpublic static java.awt.Color getZeroWeightColor()
public static void setZeroWeightColor(java.awt.Color zeroWeightColor)
zeroWeightColor
- the zeroWeightColor to setpublic static int getMaxDiameter()
public static void setMaxDiameter(int maxDiameter)
maxDiameter
- the maxDiameter to setpublic static int getMinDiameter()
public static void setMinDiameter(int minDiameter)
minDiameter
- the minDiameter to setpublic static java.awt.Color getLineColor()
public static void setLineColor(java.awt.Color lineColor)
lineColor
- the lineColor to set