Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / java / awt / geom / RectangularShape.js
1 Clazz.declarePackage ("java.awt.geom");
2 Clazz.load (["java.awt.Shape"], "java.awt.geom.RectangularShape", ["java.lang.InternalError", "java.awt.geom.FlatteningPathIterator"], function () {
3 c$ = Clazz.declareType (java.awt.geom, "RectangularShape", null, [java.awt.Shape, Cloneable]);
4 Clazz.makeConstructor (c$, 
5 function () {
6 });
7 Clazz.defineMethod (c$, "getMinX", 
8 function () {
9 return this.getX ();
10 });
11 Clazz.defineMethod (c$, "getMinY", 
12 function () {
13 return this.getY ();
14 });
15 Clazz.defineMethod (c$, "getMaxX", 
16 function () {
17 return this.getX () + this.getWidth ();
18 });
19 Clazz.defineMethod (c$, "getMaxY", 
20 function () {
21 return this.getY () + this.getHeight ();
22 });
23 Clazz.defineMethod (c$, "getCenterX", 
24 function () {
25 return this.getX () + this.getWidth () / 2.0;
26 });
27 Clazz.defineMethod (c$, "getCenterY", 
28 function () {
29 return this.getY () + this.getHeight () / 2.0;
30 });
31 Clazz.defineMethod (c$, "getFrame", 
32 function () {
33 return  new java.awt.geom.Rectangle2D.Double (this.getX (), this.getY (), this.getWidth (), this.getHeight ());
34 });
35 Clazz.defineMethod (c$, "setFrame", 
36 function (loc, size) {
37 this.setFrame (loc.getX (), loc.getY (), size.getWidth (), size.getHeight ());
38 }, "java.awt.geom.Point2D,java.awt.geom.Dimension2D");
39 Clazz.defineMethod (c$, "setFrame", 
40 function (r) {
41 this.setFrame (r.getX (), r.getY (), r.getWidth (), r.getHeight ());
42 }, "java.awt.geom.Rectangle2D");
43 Clazz.defineMethod (c$, "setFrameFromDiagonal", 
44 function (x1, y1, x2, y2) {
45 if (x2 < x1) {
46 var t = x1;
47 x1 = x2;
48 x2 = t;
49 }if (y2 < y1) {
50 var t = y1;
51 y1 = y2;
52 y2 = t;
53 }this.setFrame (x1, y1, x2 - x1, y2 - y1);
54 }, "~N,~N,~N,~N");
55 Clazz.defineMethod (c$, "setFrameFromDiagonal", 
56 function (p1, p2) {
57 this.setFrameFromDiagonal (p1.getX (), p1.getY (), p2.getX (), p2.getY ());
58 }, "java.awt.geom.Point2D,java.awt.geom.Point2D");
59 Clazz.defineMethod (c$, "setFrameFromCenter", 
60 function (centerX, centerY, cornerX, cornerY) {
61 var halfW = Math.abs (cornerX - centerX);
62 var halfH = Math.abs (cornerY - centerY);
63 this.setFrame (centerX - halfW, centerY - halfH, halfW * 2.0, halfH * 2.0);
64 }, "~N,~N,~N,~N");
65 Clazz.defineMethod (c$, "setFrameFromCenter", 
66 function (center, corner) {
67 this.setFrameFromCenter (center.getX (), center.getY (), corner.getX (), corner.getY ());
68 }, "java.awt.geom.Point2D,java.awt.geom.Point2D");
69 Clazz.defineMethod (c$, "contains", 
70 function (p) {
71 return this.contains (p.getX (), p.getY ());
72 }, "java.awt.geom.Point2D");
73 Clazz.overrideMethod (c$, "intersects", 
74 function (r) {
75 return this.intersects (r.getX (), r.getY (), r.getWidth (), r.getHeight ());
76 }, "java.awt.geom.Rectangle2D");
77 Clazz.defineMethod (c$, "contains", 
78 function (r) {
79 return this.contains (r.getX (), r.getY (), r.getWidth (), r.getHeight ());
80 }, "java.awt.geom.Rectangle2D");
81 Clazz.overrideMethod (c$, "getBounds", 
82 function () {
83 var width = this.getWidth ();
84 var height = this.getHeight ();
85 if (width < 0 || height < 0) {
86 return  new java.awt.Rectangle ();
87 }var x = this.getX ();
88 var y = this.getY ();
89 var x1 = Math.floor (x);
90 var y1 = Math.floor (y);
91 var x2 = Math.ceil (x + width);
92 var y2 = Math.ceil (y + height);
93 return  new java.awt.Rectangle (Clazz.doubleToInt (x1), Clazz.doubleToInt (y1), Clazz.doubleToInt (x2 - x1), Clazz.doubleToInt (y2 - y1));
94 });
95 Clazz.overrideMethod (c$, "getPathIterator", 
96 function (at, flatness) {
97 return  new java.awt.geom.FlatteningPathIterator (this.getPathIterator (at), flatness);
98 }, "java.awt.geom.AffineTransform,~N");
99 Clazz.defineMethod (c$, "clone", 
100 function () {
101 try {
102 return Clazz.superCall (this, java.awt.geom.RectangularShape, "clone", []);
103 } catch (e) {
104 if (Clazz.exceptionOf (e, CloneNotSupportedException)) {
105 throw  new InternalError ();
106 } else {
107 throw e;
108 }
109 }
110 });
111 });