|
@@ -0,0 +1,25 @@
|
|
|
+package View;
|
|
|
+
|
|
|
+import java.awt.Point;
|
|
|
+import java.awt.Polygon;
|
|
|
+import java.awt.Shape;
|
|
|
+import java.awt.geom.AffineTransform;
|
|
|
+
|
|
|
+public class RenderHelper {
|
|
|
+
|
|
|
+ public static Shape createArrowShape(Point fromPt, Point toPt) {
|
|
|
+ Polygon arrowPolygon = new Polygon();
|
|
|
+ arrowPolygon.addPoint(-3,6);
|
|
|
+ arrowPolygon.addPoint(3,0);
|
|
|
+ arrowPolygon.addPoint(-3,-6);
|
|
|
+ arrowPolygon.addPoint(-3,6);
|
|
|
+
|
|
|
+ double rotate = Math.atan2( ( toPt.y - fromPt.y ) , ( toPt.x - fromPt.x ) );
|
|
|
+
|
|
|
+ AffineTransform transform = new AffineTransform();
|
|
|
+ transform.translate(toPt.x, toPt.y);
|
|
|
+ transform.rotate(rotate);
|
|
|
+
|
|
|
+ return transform.createTransformedShape(arrowPolygon);
|
|
|
+ }
|
|
|
+}
|