Skip to content

Commit b3b1ff1

Browse files
committed
UML edge working
1 parent 0b420ba commit b3b1ff1

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

EdgeUML.java

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import java.awt.Graphics2D;
2+
import java.awt.geom.Line2D;
23
import java.awt.geom.Point2D;
34

45

@@ -9,6 +10,39 @@ public class EdgeUML extends AbstractEdge {
910
@Override
1011
public void draw(Graphics2D g2) {
1112
// TODO Auto-generated method stub
13+
14+
Line2D l = getConnectionPoints();
15+
Point2D p1 = l.getP1();
16+
Point2D p2 = l.getP2();
17+
Double xDist = p1.getX() - p2.getX();
18+
Double yDist = p1.getY() - p2.getY();
19+
Double s2x, s2y, f2x, f2y;
20+
21+
Point2D temp;
22+
23+
if ( Math.abs(xDist) < Math.abs(yDist) )
24+
{
25+
s2x = p1.getX() - xDist/2;
26+
s2y = p1.getY();
27+
f2x = p1.getX() - xDist/2;
28+
f2y = p2.getY();
29+
}else{
30+
s2x = p1.getX();
31+
s2y = p2.getY() + yDist/2;
32+
f2x = p2.getX();
33+
f2y = p2.getY() + yDist/2;
34+
}
35+
36+
37+
g2.draw( new Line2D.Double(
38+
p1.getX(), p1.getY(),
39+
s2x, s2y) );
40+
g2.draw( new Line2D.Double(
41+
s2x, s2y,
42+
f2x, f2y) );
43+
g2.draw( new Line2D.Double(
44+
f2x, f2y, p2.getX(), p2.getY()
45+
) );
1246

1347
}
1448

0 commit comments

Comments
 (0)