Package ghidra.graph.viewer.edge

# 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 Summary

  Constructors
  Constructor
  Description
  `AbstractVisualEdge(V start, V end)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object obj)`
  `double`
  `getAlpha()`
  Get the alpha, which determines how much of the edge is visible/see through.
  `List<Point2D>`
  `getArticulationPoints()`
  Returns the points (in `GraphViewerUtils` View Space) of the articulation
  `double`
  `getEmphasis()`
  Returns the emphasis value of this edge.
  `V`
  `getEnd()`
  Get the end, or head, of the edge
  `V`
  `getStart()`
  Get the start, or tail, of the edge
  `int`
  `hashCode()`
  `boolean`
  `isInFocusedVertexPath()`
  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)
  `boolean`
  `isInHoveredVertexPath()`
  Returns true if this edge is part of an active path for a currently hovered vertex (this allows the edge to be differently rendered)
  `boolean`
  `isSelected()`
  Returns true if this edge is selected
  `void`
  `setAlpha(double alpha)`
  Set the alpha, which determines how much of the edge is visible/see through.
  `void`
  `setArticulationPoints(List<Point2D> points)`
  Sets the articulation points for the given edge
  `void`
  `setEmphasis(double emphasisLevel)`
  Sets the emphasis value for this edge.
  `void`
  `setInFocusedVertexPath(boolean inPath)`
  Sets this edge to be marked as in the active path of a currently focused/selected vertex
  `void`
  `setInHoveredVertexPath(boolean inPath)`
  Sets this edge to be marked as in the active path of a currently hovered vertex
  `void`
  `setSelected(boolean selected)`
  Sets this edge selected.
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface ghidra.graph.viewer.VisualEdge

  `cloneEdge`

- ## 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`