private Point2D findHoverPointInGraphSpace(TestEdge e) {

		//
		// Get the edge shape.  Then, walk from start to end, incrementally, looking for a 
		// point that hovers the edge.
		//
		Shape edgeShape = GraphViewerUtils.getEdgeShapeInGraphSpace(viewer, e);

		float[] coords = new float[6];
		GeneralPath path = new GeneralPath(edgeShape);
		PathIterator iterator = path.getPathIterator(null);

		iterator.currentSegment(coords);
		float startX = coords[0];
		float startY = coords[1];

		iterator.next();
		iterator.currentSegment(coords);
		float endX = coords[0];
		float endY = coords[1];

		Point2D sp = new Point2D.Float(startX, startY);

		Point vsp = GraphViewerUtils.translatePointFromGraphSpaceToViewSpace(sp, viewer);
		clickViewer(vsp.x, vsp.y);

		Point2D ep = new Point2D.Float(endX, endY);

		Point vep = GraphViewerUtils.translatePointFromGraphSpaceToViewSpace(ep, viewer);
		clickViewer(vep.x, vep.y);

		float offset = .1f;
		for (int i = 1; i < 10; i++) {

			// move towards the endpoint until we are not occluded by the vertex
			float dx = endX - startX;
			float dy = endY - startY;
			float testX = startX + (dx * (offset * i));
			float testY = startY + (dy * (offset * i));

			Point2D testPoint = new Point2D.Float(testX, testY);

			Point viewPoint =
				GraphViewerUtils.translatePointFromGraphSpaceToViewSpace(testPoint, viewer);
			clickViewer(viewPoint.x, viewPoint.y);

			// give the area some size to make the intersection a bit easier
			int size = 2;
			Rectangle2D pickArea = new Rectangle2D.Double(testPoint.getX() - size / 2,
				testPoint.getY() - size / 2, size, size);

			if (edgeShape.intersects(pickArea)) {
				if (!intersectsAnyVertex(pickArea)) {
					// found a point that hits the edge and not the vertex
					return testPoint;
				}
			}
		}

		fail("Unable to find a point on the edge to hover");
		return null; // unreachable
	}
Finds a point which intersects the given edge and does not intersect any vertex.

@param e the edge
@return the point
Ghidra/Framework/Graph/src/test.slow/java/ghidra/graph/viewer/GraphViewerTest.java