File path: /jfreechart-1.0.10/src/org/jfree/chart/renderer/category/StackedBarRenderer3D.java | File path: /jfreechart-1.0.10/src/org/jfree/chart/renderer/category/StackedBarRenderer3D.java | |||
Method name: Shape[] createHorizontalBlock(double, double, double, double, boolean)
|
Method name: Shape[] createVerticalBlock(double, double, double, double, boolean)
|
|||
Number of AST nodes: 55 | Number of AST nodes: 55 | |||
1 | Shape[] result = new Shape[6];↵ | 1 | Shape[] result = new Shape[6];↵ | |
2 | Point2D p00 = new Point2D.Double(y0, x0);↵ | 2 | Point2D p00 = new Point2D.Double(x0, y0);↵ | |
3 | Point2D p01 = new Point2D.Double(y0, x0 + width);↵ | 3 | Point2D p01 = new Point2D.Double(x0 + width, y0);↵ | |
4 | Point2D p02 = new Point2D.Double(p01.getX() + getXOffset(),↵ | 4 | Point2D p02 = new Point2D.Double(p01.getX() + getXOffset(),↵ | |
5 | p01.getY() - getYOffset());↵ | 5 | p01.getY() - getYOffset());↵ | |
6 | Point2D p03 = new Point2D.Double(p00.getX() + getXOffset(),↵ | 6 | Point2D p03 = new Point2D.Double(p00.getX() + getXOffset(),↵ | |
7 | p00.getY() - getYOffset());↵ | 7 | p00.getY() - getYOffset());↵ | |
8 | Point2D p0 = new Point2D.Double(y1, x0);↵ | 8 | Point2D p0 = new Point2D.Double(x0, y1);↵ | |
9 | Point2D p1 = new Point2D.Double(y1, x0 + width);↵ | 9 | Point2D p1 = new Point2D.Double(x0 + width, y1);↵ | |
10 | Point2D p2 = new Point2D.Double(p1.getX() + getXOffset(),↵ | 10 | Point2D p2 = new Point2D.Double(p1.getX() + getXOffset(),↵ | |
11 | p1.getY() - getYOffset());↵ | 11 | p1.getY() - getYOffset());↵ | |
12 | Point2D p3 = new Point2D.Double(p0.getX() + getXOffset(),↵ | 12 | Point2D p3 = new Point2D.Double(p0.getX() + getXOffset(),↵ | |
13 | p0.getY() - getYOffset());↵ | 13 | p0.getY() - getYOffset());↵ | |
14 | GeneralPath bottom = new GeneralPath();↵ | 14 | GeneralPath right = new GeneralPath();↵ | |
15 | bottom.moveTo((float) p1.getX(), (float) p1.getY());↵ | 15 | right.moveTo((float) p1.getX(), (float) p1.getY());↵ | |
16 | bottom.lineTo((float) p01.getX(), (float) p01.getY());↵ | 16 | right.lineTo((float) p01.getX(), (float) p01.getY());↵ | |
17 | bottom.lineTo((float) p02.getX(), (float) p02.getY());↵ | 17 | right.lineTo((float) p02.getX(), (float) p02.getY());↵ | |
18 | bottom.lineTo((float) p2.getX(), (float) p2.getY());↵ | 18 | right.lineTo((float) p2.getX(), (float) p2.getY());↵ | |
19 | bottom.closePath();↵ | 19 | right.closePath();↵ | |
20 | GeneralPath top = new GeneralPath();↵ | 20 | GeneralPath left = new GeneralPath();↵ | |
21 | top.moveTo((float) p0.getX(), (float) p0.getY());↵ | 21 | left.moveTo((float) p0.getX(), (float) p0.getY());↵ | |
22 | top.lineTo((float) p00.getX(), (float) p00.getY());↵ | 22 | left.lineTo((float) p00.getX(), (float) p00.getY());↵ | |
23 | top.lineTo((float) p03.getX(), (float) p03.getY());↵ | 23 | left.lineTo((float) p03.getX(), (float) p03.getY());↵ | |
24 | top.lineTo((float) p3.getX(), (float) p3.getY());↵ | 24 | left.lineTo((float) p3.getX(), (float) p3.getY());↵ | |
25 | top.closePath();↵ | 25 | left.closePath();↵ | |
26 | GeneralPath back = new GeneralPath();↵ | 26 | GeneralPath back = new GeneralPath();↵ | |
27 | back.moveTo((float) p2.getX(), (float) p2.getY());↵ | 27 | back.moveTo((float) p2.getX(), (float) p2.getY());↵ | |
28 | back.lineTo((float) p02.getX(), (float) p02.getY());↵ | 28 | back.lineTo((float) p02.getX(), (float) p02.getY());↵ | |
29 | back.lineTo((float) p03.getX(), (float) p03.getY());↵ | 29 | back.lineTo((float) p03.getX(), (float) p03.getY());↵ | |
30 | back.lineTo((float) p3.getX(), (float) p3.getY());↵ | 30 | back.lineTo((float) p3.getX(), (float) p3.getY());↵ | |
31 | back.closePath();↵ | 31 | back.closePath();↵ | |
32 | GeneralPath front = new GeneralPath();↵ | 32 | GeneralPath front = new GeneralPath();↵ | |
33 | front.moveTo((float) p0.getX(), (float) p0.getY());↵ | 33 | front.moveTo((float) p0.getX(), (float) p0.getY());↵ | |
34 | front.lineTo((float) p1.getX(), (float) p1.getY());↵ | 34 | front.lineTo((float) p1.getX(), (float) p1.getY());↵ | |
35 | front.lineTo((float) p01.getX(), (float) p01.getY());↵ | 35 | front.lineTo((float) p01.getX(), (float) p01.getY());↵ | |
36 | front.lineTo((float) p00.getX(), (float) p00.getY());↵ | 36 | front.lineTo((float) p00.getX(), (float) p00.getY());↵ | |
37 | front.closePath();↵ | 37 | front.closePath();↵ | |
38 | GeneralPath left = new GeneralPath();↵ | 38 | GeneralPath top = new GeneralPath();↵ | |
39 | left.moveTo((float) p0.getX(), (float) p0.getY());↵ | 39 | top.moveTo((float) p0.getX(), (float) p0.getY());↵ | |
40 | left.lineTo((float) p1.getX(), (float) p1.getY());↵ | 40 | top.lineTo((float) p1.getX(), (float) p1.getY());↵ | |
41 | left.lineTo((float) p2.getX(), (float) p2.getY());↵ | 41 | top.lineTo((float) p2.getX(), (float) p2.getY());↵ | |
42 | left.lineTo((float) p3.getX(), (float) p3.getY());↵ | 42 | top.lineTo((float) p3.getX(), (float) p3.getY());↵ | |
43 | left.closePath();↵ | 43 | top.closePath();↵ | |
44 | GeneralPath right = new GeneralPath();↵ | 44 | GeneralPath bottom = new GeneralPath();↵ | |
45 | right.moveTo((float) p00.getX(), (float) p00.getY());↵ | 45 | bottom.moveTo((float) p00.getX(), (float) p00.getY());↵ | |
46 | right.lineTo((float) p01.getX(), (float) p01.getY());↵ | 46 | bottom.lineTo((float) p01.getX(), (float) p01.getY());↵ | |
47 | right.lineTo((float) p02.getX(), (float) p02.getY());↵ | 47 | bottom.lineTo((float) p02.getX(), (float) p02.getY());↵ | |
48 | right.lineTo((float) p03.getX(), (float) p03.getY());↵ | 48 | bottom.lineTo((float) p03.getX(), (float) p03.getY());↵ | |
49 | right.closePath();↵ | 49 | bottom.closePath();↵ | |
50 | result[0] = bottom;↵ | 50 | result[0] = bottom;↵ | |
51 | result[1] = back;↵ | 51 | result[1] = back;↵ | |
52 | if (inverted) {↵ | 52 | ↵ | |
53 | ↵ | 53 | result[2] = left;↵ | |
54 | result[2] = right;↵ | 54 | result[3] = right;↵ | |
55 | result[3] = left;↵ | 55 | result[4] = top;↵ | |
56 | }↵ | 56 | ↵ | |
57 | else {↵ | |||
58 | result[2] = left;↵ | 57 | result[5] = front;↵ | |
58 | if (inverted) {↵ | |||
59 | result[3] = right;↵ | 59 | result[0] = top;↵ | |
60 | }↵ | 60 | ↵ | |
61 | result[4] = top;↵ | 61 | result[4] = bottom;↵ | |
62 | result[5] = front;↵ | 62 | }↵ | |
63 | return result; | 63 |
| |
See real code fragment | See real code fragment |
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 0 |
Number of non-refactorable cases | 1 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.1 |
Clones location | Clones are declared in the same class |
Number of node comparisons | 933 |
Number of mapped statements | 50 |
Number of unmapped statements in the first code fragment | 5 |
Number of unmapped statements in the second code fragment | 5 |
Time elapsed for statement mapping (ms) | 484.6 |
Clone type | Type 3 |
ID | Statement | ID | Statement | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Shape[] result = new Shape[6]; | 1 | Shape[] result = new Shape[6]; | ||||||||||||||
2 | Point2D p00 = new Point2D.Double(y0, x0); |
| 2 | Point2D p00 = new Point2D.Double(x0, y0); | |||||||||||||
3 | Point2D p01 = new Point2D.Double(y0, x0 + width); |
| 3 | Point2D p01 = new Point2D.Double(x0 + width, y0); | |||||||||||||
4 | Point2D p02 = new Point2D.Double(p01.getX() + getXOffset(), p01.getY() - getYOffset()); | 4 | Point2D p02 = new Point2D.Double(p01.getX() + getXOffset(), p01.getY() - getYOffset()); | ||||||||||||||
5 | Point2D p03 = new Point2D.Double(p00.getX() + getXOffset(), p00.getY() - getYOffset()); | 5 | Point2D p03 = new Point2D.Double(p00.getX() + getXOffset(), p00.getY() - getYOffset()); | ||||||||||||||
6 | Point2D p0 = new Point2D.Double(y1, x0); |
| 6 | Point2D p0 = new Point2D.Double(x0, y1); | |||||||||||||
7 | Point2D p1 = new Point2D.Double(y1, x0 + width); |
| 7 | Point2D p1 = new Point2D.Double(x0 + width, y1); | |||||||||||||
8 | Point2D p2 = new Point2D.Double(p1.getX() + getXOffset(), p1.getY() - getYOffset()); | 8 | Point2D p2 = new Point2D.Double(p1.getX() + getXOffset(), p1.getY() - getYOffset()); | ||||||||||||||
9 | Point2D p3 = new Point2D.Double(p0.getX() + getXOffset(), p0.getY() - getYOffset()); | 9 | Point2D p3 = new Point2D.Double(p0.getX() + getXOffset(), p0.getY() - getYOffset()); | ||||||||||||||
10 | GeneralPath bottom = new GeneralPath(); |
| 10 | GeneralPath right = new GeneralPath(); | |||||||||||||
11 | bottom.moveTo((float)p1.getX(), (float)p1.getY()); |
| 11 | right.moveTo((float)p1.getX(), (float)p1.getY()); | |||||||||||||
12 | bottom.lineTo((float)p01.getX(), (float)p01.getY()); |
| 12 | right.lineTo((float)p01.getX(), (float)p01.getY()); | |||||||||||||
13 | bottom.lineTo((float)p02.getX(), (float)p02.getY()); |
| 13 | right.lineTo((float)p02.getX(), (float)p02.getY()); | |||||||||||||
14 | bottom.lineTo((float)p2.getX(), (float)p2.getY()); |
| 14 | right.lineTo((float)p2.getX(), (float)p2.getY()); | |||||||||||||
15 | bottom.closePath(); |
| 15 | right.closePath(); | |||||||||||||
16 | GeneralPath top = new GeneralPath(); |
| 16 | GeneralPath left = new GeneralPath(); | |||||||||||||
17 | top.moveTo((float)p0.getX(), (float)p0.getY()); |
| 17 | left.moveTo((float)p0.getX(), (float)p0.getY()); | |||||||||||||
18 | top.lineTo((float)p00.getX(), (float)p00.getY()); |
| 18 | left.lineTo((float)p00.getX(), (float)p00.getY()); | |||||||||||||
19 | top.lineTo((float)p03.getX(), (float)p03.getY()); |
| 19 | left.lineTo((float)p03.getX(), (float)p03.getY()); | |||||||||||||
20 | top.lineTo((float)p3.getX(), (float)p3.getY()); |
| 20 | left.lineTo((float)p3.getX(), (float)p3.getY()); | |||||||||||||
21 | top.closePath(); |
| 21 | left.closePath(); | |||||||||||||
22 | GeneralPath back = new GeneralPath(); | 22 | GeneralPath back = new GeneralPath(); | ||||||||||||||
23 | back.moveTo((float)p2.getX(), (float)p2.getY()); | 23 | back.moveTo((float)p2.getX(), (float)p2.getY()); | ||||||||||||||
24 | back.lineTo((float)p02.getX(), (float)p02.getY()); | 24 | back.lineTo((float)p02.getX(), (float)p02.getY()); | ||||||||||||||
25 | back.lineTo((float)p03.getX(), (float)p03.getY()); | 25 | back.lineTo((float)p03.getX(), (float)p03.getY()); | ||||||||||||||
26 | back.lineTo((float)p3.getX(), (float)p3.getY()); | 26 | back.lineTo((float)p3.getX(), (float)p3.getY()); | ||||||||||||||
27 | back.closePath(); | 27 | back.closePath(); | ||||||||||||||
28 | GeneralPath front = new GeneralPath(); | 28 | GeneralPath front = new GeneralPath(); | ||||||||||||||
29 | front.moveTo((float)p0.getX(), (float)p0.getY()); | 29 | front.moveTo((float)p0.getX(), (float)p0.getY()); | ||||||||||||||
30 | front.lineTo((float)p1.getX(), (float)p1.getY()); | 30 | front.lineTo((float)p1.getX(), (float)p1.getY()); | ||||||||||||||
31 | front.lineTo((float)p01.getX(), (float)p01.getY()); | 31 | front.lineTo((float)p01.getX(), (float)p01.getY()); | ||||||||||||||
32 | front.lineTo((float)p00.getX(), (float)p00.getY()); | 32 | front.lineTo((float)p00.getX(), (float)p00.getY()); | ||||||||||||||
33 | front.closePath(); | 33 | front.closePath(); | ||||||||||||||
34 | GeneralPath left = new GeneralPath(); |
| 34 | GeneralPath top = new GeneralPath(); | |||||||||||||
35 | left.moveTo((float)p0.getX(), (float)p0.getY()); |
| 35 | top.moveTo((float)p0.getX(), (float)p0.getY()); | |||||||||||||
36 | left.lineTo((float)p1.getX(), (float)p1.getY()); |
| 36 | top.lineTo((float)p1.getX(), (float)p1.getY()); | |||||||||||||
37 | left.lineTo((float)p2.getX(), (float)p2.getY()); |
| 37 | top.lineTo((float)p2.getX(), (float)p2.getY()); | |||||||||||||
38 | left.lineTo((float)p3.getX(), (float)p3.getY()); |
| 38 | top.lineTo((float)p3.getX(), (float)p3.getY()); | |||||||||||||
39 | left.closePath(); |
| 39 | top.closePath(); | |||||||||||||
40 | GeneralPath right = new GeneralPath(); |
| 40 | GeneralPath bottom = new GeneralPath(); | |||||||||||||
41 | right.moveTo((float)p00.getX(), (float)p00.getY()); |
| 41 | bottom.moveTo((float)p00.getX(), (float)p00.getY()); | |||||||||||||
42 | right.lineTo((float)p01.getX(), (float)p01.getY()); |
| 42 | bottom.lineTo((float)p01.getX(), (float)p01.getY()); | |||||||||||||
43 | right.lineTo((float)p02.getX(), (float)p02.getY()); |
| 43 | bottom.lineTo((float)p02.getX(), (float)p02.getY()); | |||||||||||||
44 | right.lineTo((float)p03.getX(), (float)p03.getY()); |
| 44 | bottom.lineTo((float)p03.getX(), (float)p03.getY()); | |||||||||||||
45 | right.closePath(); |
| 45 | bottom.closePath(); | |||||||||||||
46 | result[0] = bottom; | 46 | result[0] = bottom; | ||||||||||||||
47 | result[1] = back; | 47 | result[1] = back; | ||||||||||||||
|
| 48 | result[2] = left; | ||||||||||||||
48 | if (inverted) | | |||||||||||||||
49 | result[2] = right; |
| | ||||||||||||||
50 | result[3] = left; |
| | ||||||||||||||
else | | ||||||||||||||||
51 | result[2] = left; |
| | ||||||||||||||
52 | result[3] = right; |
| | ||||||||||||||
|
| 49 | result[3] = right; | ||||||||||||||
53 | result[4] = top; | 50 | result[4] = top; | ||||||||||||||
54 | result[5] = front; | 51 | result[5] = front; | ||||||||||||||
| 52 | if (inverted) | |||||||||||||||
|
| 53 | result[0] = top; | ||||||||||||||
|
| 54 | result[4] = bottom; | ||||||||||||||
55 | return result; | 55 | return result; |
Row | Violation |
---|---|
1 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
2 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
3 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
4 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
5 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
6 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
7 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
8 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
9 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
10 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
11 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
12 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
13 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
14 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
15 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
16 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
17 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
18 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
19 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
20 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
21 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
22 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
23 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
24 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
25 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
26 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
27 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
28 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
29 | Expression left cannot be parameterized, because it has dependencies to/from statements that will be extracted |
30 | Expression top cannot be parameterized, because it has dependencies to/from statements that will be extracted |
31 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
32 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
33 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
34 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
35 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
36 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
37 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
38 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
39 | Expression right cannot be parameterized, because it has dependencies to/from statements that will be extracted |
40 | Expression bottom cannot be parameterized, because it has dependencies to/from statements that will be extracted |
41 | Unmatched statement result[2]=left; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
42 | Unmatched statement result[2]=right; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
43 | Unmatched statement result[3]=left; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
44 | Unmatched statement result[2]=left; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
45 | Unmatched statement result[3]=right; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
46 | Unmatched statement result[3]=right; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
47 | Unmatched statement result[0]=top; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
48 | Unmatched statement result[4]=bottom; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
49 | Clone fragment #1 returns variables , while Clone fragment #2 returns variables top, result, bottom |