hitTest method
Implementation
@override
bool hitTest(DiagramPoint worldPoint, {double tolerance = 5}) {
if (bundleBadges.any((badge) => badge.bounds.contains(worldPoint))) {
return true;
}
if (labelAt(worldPoint) != null) return true;
if (startArrowhead?.hitTest(worldPoint, tolerance: tolerance) ?? false) {
return true;
}
if (endArrowhead?.hitTest(worldPoint, tolerance: tolerance) ?? false) {
return true;
}
for (var index = 1; index < bodyPoints.length; index += 1) {
if (segmentDistance(
worldPoint,
bodyPoints[index - 1],
bodyPoints[index],
) <=
tolerance) {
return true;
}
}
return false;
}