Class AbstractVisualEdge<V extends VisualVertex>

java.lang.Object
ghidra.graph.viewer.edge.AbstractVisualEdge<V>
Type Parameters:
V - the vertex type
All Implemented Interfaces:
GEdge<V>, VisualEdge<V>

public abstract class AbstractVisualEdge<V extends VisualVertex> extends Object implements VisualEdge<V>
An implementation of VisualEdge that implements the base interface so subclasses do not have to.
  • Constructor Details

    • AbstractVisualEdge

      public AbstractVisualEdge(V start, V end)
  • Method Details

    • getStart

      public V getStart()
      Description copied from interface: GEdge
      Get the start, or tail, of the edge

      In the edge x -> y, x is the start

      Specified by:
      getStart in interface GEdge<V extends VisualVertex>
      Returns:
      the start
    • getEnd

      public V getEnd()
      Description copied from interface: GEdge
      Get the end, or head, of the edge

      In the edge x -> y, y is the end

      Specified by:
      getEnd in interface GEdge<V extends VisualVertex>
      Returns:
      the end
    • setSelected

      public void setSelected(boolean selected)
      Description copied from interface: VisualEdge
      Sets this edge selected. This is usually in response to the user selecting the edge.
      Specified by:
      setSelected in interface VisualEdge<V extends VisualVertex>
      Parameters:
      selected - true to select this edge; false to de-select this vertex
    • isSelected

      public boolean isSelected()
      Description copied from interface: VisualEdge
      Returns true if this edge is selected
      Specified by:
      isSelected in interface VisualEdge<V extends VisualVertex>
      Returns:
      true if this edge is selected
    • isInHoveredVertexPath

      public boolean isInHoveredVertexPath()
      Description copied from interface: VisualEdge
      Returns true if this edge is part of an active path for a currently hovered vertex (this allows the edge to be differently rendered)
      Specified by:
      isInHoveredVertexPath in interface VisualEdge<V extends VisualVertex>
      Returns:
      true if this edge is part of the active path
    • isInFocusedVertexPath

      public boolean isInFocusedVertexPath()
      Description copied from interface: VisualEdge
      Returns true if this edge is part of an active path for a currently focused/selected vertex (this allows the edge to be differently rendered)
      Specified by:
      isInFocusedVertexPath in interface VisualEdge<V extends VisualVertex>
      Returns:
      true if this edge is part of the active path
    • setInHoveredVertexPath

      public void setInHoveredVertexPath(boolean inPath)
      Description copied from interface: VisualEdge
      Sets this edge to be marked as in the active path of a currently hovered vertex
      Specified by:
      setInHoveredVertexPath in interface VisualEdge<V extends VisualVertex>
      Parameters:
      inPath - true to be marked as in the active path; false to be marked as not in the active path
    • setInFocusedVertexPath

      public void setInFocusedVertexPath(boolean inPath)
      Description copied from interface: VisualEdge
      Sets this edge to be marked as in the active path of a currently focused/selected vertex
      Specified by:
      setInFocusedVertexPath in interface VisualEdge<V extends VisualVertex>
      Parameters:
      inPath - true to be marked as in the active path; false to be marked as not in the active path
    • getArticulationPoints

      public List<Point2D> getArticulationPoints()
      Description copied from interface: VisualEdge
      Returns the points (in GraphViewerUtils View Space) of the articulation

      What are articulations?

      Specified by:
      getArticulationPoints in interface VisualEdge<V extends VisualVertex>
      Returns:
      the points (in View Space space) of the articulation.
    • setArticulationPoints

      public void setArticulationPoints(List<Point2D> points)
      Description copied from interface: VisualEdge
      Sets the articulation points for the given edge

      What are articulations?

      Specified by:
      setArticulationPoints in interface VisualEdge<V extends VisualVertex>
      Parameters:
      points - the points
    • setEmphasis

      public void setEmphasis(double emphasisLevel)
      Description copied from interface: VisualEdge
      Sets the emphasis value for this edge. A value of 0 indicates no emphasis.
      Specified by:
      setEmphasis in interface VisualEdge<V extends VisualVertex>
      Parameters:
      emphasisLevel - the emphasis
    • getEmphasis

      public double getEmphasis()
      Description copied from interface: VisualEdge
      Returns the emphasis value of this edge. 0 if not emphasized.
      Specified by:
      getEmphasis in interface VisualEdge<V extends VisualVertex>
      Returns:
      the emphasis value of this edge.
    • setAlpha

      public void setAlpha(double alpha)
      Description copied from interface: VisualEdge
      Set the alpha, which determines how much of the edge is visible/see through. 0 is completely transparent. This attribute allows transitional for animations.
      Specified by:
      setAlpha in interface VisualEdge<V extends VisualVertex>
      Parameters:
      alpha - the alpha value
    • getAlpha

      public double getAlpha()
      Description copied from interface: VisualEdge
      Get the alpha, which determines how much of the edge is visible/see through. 0 is completely transparent. This attribute allows transitional for animations.
      Specified by:
      getAlpha in interface VisualEdge<V extends VisualVertex>
      Returns:
      the alpha value
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object