Graphic Rendering System
1.0
A Java-based graphic rendering system implementing various design patterns
Loading...
Searching...
No Matches
JsonExportVisitor.java
Go to the documentation of this file.
1
package
com.example.graphics.visitor;
2
3
import
com.example.graphics.model.Circle;
4
import
com.example.graphics.model.Line;
5
import
com.example.graphics.model.Rectangle;
6
import
com.example.graphics.model.Triangle;
7
import
org.json.JSONArray;
8
import
org.json.JSONObject;
9
14
public
class
JsonExportVisitor
implements
ShapeVisitor
{
15
private
JSONArray
shapes
;
16
20
public
JsonExportVisitor
() {
21
shapes
=
new
JSONArray();
22
}
23
24
@Override
25
public
void
visit
(
Circle
circle) {
26
JSONObject circleJson =
new
JSONObject();
27
circleJson.put(
"type"
,
"circle"
);
28
circleJson.put(
"x"
, circle.
getX
());
29
circleJson.put(
"y"
, circle.
getY
());
30
circleJson.put(
"radius"
, circle.
getRadius
());
31
shapes
.put(circleJson);
32
}
33
34
@Override
35
public
void
visit
(
Rectangle
rectangle) {
36
JSONObject rectJson =
new
JSONObject();
37
rectJson.put(
"type"
,
"rectangle"
);
38
rectJson.put(
"x"
, rectangle.
getX
());
39
rectJson.put(
"y"
, rectangle.
getY
());
40
rectJson.put(
"width"
, rectangle.
getWidth
());
41
rectJson.put(
"height"
, rectangle.
getHeight
());
42
shapes
.put(rectJson);
43
}
44
45
@Override
46
public
void
visit
(
Line
line) {
47
JSONObject lineJson =
new
JSONObject();
48
lineJson.put(
"type"
,
"line"
);
49
lineJson.put(
"x1"
, line.
getX1
());
50
lineJson.put(
"y1"
, line.
getY1
());
51
lineJson.put(
"x2"
, line.
getX2
());
52
lineJson.put(
"y2"
, line.
getY2
());
53
shapes
.put(lineJson);
54
}
55
56
@Override
57
public
void
visit
(
Triangle
triangle) {
58
JSONObject triangleJson =
new
JSONObject();
59
triangleJson.put(
"type"
,
"triangle"
);
60
triangleJson.put(
"x1"
, triangle.
getX1
());
61
triangleJson.put(
"y1"
, triangle.
getY1
());
62
triangleJson.put(
"x2"
, triangle.
getX2
());
63
triangleJson.put(
"y2"
, triangle.
getY2
());
64
triangleJson.put(
"x3"
, triangle.
getX3
());
65
triangleJson.put(
"y3"
, triangle.
getY3
());
66
shapes
.put(triangleJson);
67
}
68
73
public
String
getJsonOutput
() {
74
JSONObject result =
new
JSONObject();
75
result.put(
"shapes"
,
shapes
);
76
return
result.toString(2);
// Pretty print with 2-space indentation
77
}
78
82
public
void
clear
() {
83
shapes
=
new
JSONArray();
84
}
85
}
com.example.graphics.model.Circle
Definition
Circle.java:8
com.example.graphics.model.Circle.getY
int getY()
Definition
Circle.java:31
com.example.graphics.model.Circle.getX
int getX()
Definition
Circle.java:26
com.example.graphics.model.Circle.getRadius
int getRadius()
Definition
Circle.java:45
com.example.graphics.model.Line
Definition
Line.java:8
com.example.graphics.model.Line.getX1
int getX1()
Definition
Line.java:54
com.example.graphics.model.Line.getY2
int getY2()
Definition
Line.java:78
com.example.graphics.model.Line.getX2
int getX2()
Definition
Line.java:70
com.example.graphics.model.Line.getY1
int getY1()
Definition
Line.java:62
com.example.graphics.model.Rectangle
Definition
Rectangle.java:8
com.example.graphics.model.Rectangle.getY
int getY()
Definition
Rectangle.java:34
com.example.graphics.model.Rectangle.getWidth
int getWidth()
Definition
Rectangle.java:48
com.example.graphics.model.Rectangle.getX
int getX()
Definition
Rectangle.java:29
com.example.graphics.model.Rectangle.getHeight
int getHeight()
Definition
Rectangle.java:64
com.example.graphics.model.Triangle
Definition
Triangle.java:8
com.example.graphics.model.Triangle.getX1
int getX1()
Definition
Triangle.java:68
com.example.graphics.model.Triangle.getY2
int getY2()
Definition
Triangle.java:92
com.example.graphics.model.Triangle.getX2
int getX2()
Definition
Triangle.java:84
com.example.graphics.model.Triangle.getX3
int getX3()
Definition
Triangle.java:100
com.example.graphics.model.Triangle.getY3
int getY3()
Definition
Triangle.java:108
com.example.graphics.model.Triangle.getY1
int getY1()
Definition
Triangle.java:76
com.example.graphics.visitor.JsonExportVisitor.getJsonOutput
String getJsonOutput()
Definition
JsonExportVisitor.java:73
com.example.graphics.visitor.JsonExportVisitor.visit
void visit(Circle circle)
Definition
JsonExportVisitor.java:25
com.example.graphics.visitor.JsonExportVisitor.JsonExportVisitor
JsonExportVisitor()
Definition
JsonExportVisitor.java:20
com.example.graphics.visitor.JsonExportVisitor.visit
void visit(Triangle triangle)
Definition
JsonExportVisitor.java:57
com.example.graphics.visitor.JsonExportVisitor.visit
void visit(Line line)
Definition
JsonExportVisitor.java:46
com.example.graphics.visitor.JsonExportVisitor.visit
void visit(Rectangle rectangle)
Definition
JsonExportVisitor.java:35
com.example.graphics.visitor.JsonExportVisitor.shapes
JSONArray shapes
Definition
JsonExportVisitor.java:15
com.example.graphics.visitor.JsonExportVisitor.clear
void clear()
Definition
JsonExportVisitor.java:82
com.example.graphics.visitor.ShapeVisitor
Definition
ShapeVisitor.java:13
src
main
java
com
example
graphics
visitor
JsonExportVisitor.java
Generated on
for Graphic Rendering System by
1.14.0