0
我用QuadCurve2D我的節點添加方向上的曲線的中間
QuadCurve2D curve = new QuadCurve2D.Double(start.getX(), start.getY(), c1, c2, end.getX(), end.getY());
我用下面的代碼到一個方向添加到曲線,其中是Graphics2D
對象
g2d.draw(curve);
Polygon arrowHead = new Polygon();
arrowHead.addPoint(0, 5);
arrowHead.addPoint(-5, -5);
arrowHead.addPoint(5, -5);
AffineTransform at = new AffineTransform();
at.setToIdentity();
double angle = Math.atan2(curve.getY2() - curve.getY1(), curve.getX2() - curve.getX1());
at.translate(curve.getX2(), curve.getY2());
at.rotate((angle - Math.PI/2d));
g2d.setTransform(at);
g2d.fill(arrowHead);
我想顯示曲線中間的方向而不是最後,我試過改變.translate()
參數,但它出現在奇怪的地方。有什麼建議麼?