Skip to content

Commit 3f1a792

Browse files
committed
format
1 parent 73ff394 commit 3f1a792

4 files changed

Lines changed: 476 additions & 482 deletions

File tree

mesh/src/main/java/mesh/creator/creative/CubicLatticeCreator.java

Lines changed: 108 additions & 110 deletions
Original file line numberDiff line numberDiff line change
@@ -14,114 +14,112 @@
1414

1515
public class CubicLatticeCreator implements IMeshCreator {
1616

17-
private int segmentsX;
18-
19-
private int segmentsY;
20-
21-
private int segmentsZ;
22-
23-
private int subdivisions;
24-
25-
private Mesh3D mesh;
26-
27-
public CubicLatticeCreator() {
28-
segmentsX = 3;
29-
segmentsY = 3;
30-
segmentsZ = 3;
31-
subdivisions = 1;
32-
}
33-
34-
@Override
35-
public Mesh3D create() {
36-
initializeMesh();
37-
createSegments();
38-
removeDoubleFaces();
39-
removeDoubleVertices();
40-
centerAtOrigin();
41-
solidify();
42-
subdivide();
43-
return mesh;
44-
}
45-
46-
private Mesh3D createSegment() {
47-
Mesh3D mesh = new CubeCreator().create();
48-
ExtrudeModifier modifier = new ExtrudeModifier();
49-
modifier.setScale(1.0f);
50-
modifier.setAmount(0.5f);
51-
modifier.setRemoveFaces(true);
52-
modifier.modify(mesh);
53-
return mesh;
54-
}
55-
56-
private void createSegments() {
57-
for (int z = 0; z < segmentsZ; z++)
58-
for (int y = 0; y < segmentsY; y++)
59-
for (int x = 0; x < segmentsX; x++)
60-
createSegmentAt(x, y, z);
61-
}
62-
63-
private void createSegmentAt(int x, int y, int z) {
64-
Mesh3D segment = createSegment();
65-
new TranslateModifier(x * 3, y * 3, z * 3).modify(segment);
66-
this.mesh.append(segment);
67-
}
68-
69-
private void removeDoubleFaces() {
70-
FaceSelection selection = new FaceSelection(mesh);
71-
selection.selectDoubles();
72-
mesh.removeFaces(selection.getFaces());
73-
}
74-
75-
private void removeDoubleVertices() {
76-
new RemoveDoubleVerticesModifier().modify(mesh);
77-
}
78-
79-
private void initializeMesh() {
80-
mesh = new Mesh3D();
81-
}
82-
83-
private void centerAtOrigin() {
84-
new CenterAtModifier(Vector3f.ZERO).modify(mesh);
85-
}
86-
87-
private void subdivide() {
88-
new CatmullClarkModifier(subdivisions).modify(mesh);
89-
}
90-
91-
private void solidify() {
92-
new SolidifyModifier(0.3f).modify(mesh);
93-
}
94-
95-
public int getSegmentsX() {
96-
return segmentsX;
97-
}
98-
99-
public void setSegmentsX(int segmentsX) {
100-
this.segmentsX = segmentsX;
101-
}
102-
103-
public int getSegmentsY() {
104-
return segmentsY;
105-
}
106-
107-
public void setSegmentsY(int segmentsY) {
108-
this.segmentsY = segmentsY;
109-
}
110-
111-
public int getSegmentsZ() {
112-
return segmentsZ;
113-
}
114-
115-
public void setSegmentsZ(int segmentsZ) {
116-
this.segmentsZ = segmentsZ;
117-
}
118-
119-
public int getSubdivisions() {
120-
return subdivisions;
121-
}
122-
123-
public void setSubdivisions(int subdivisions) {
124-
this.subdivisions = subdivisions;
125-
}
126-
17+
private int segmentsX;
18+
19+
private int segmentsY;
20+
21+
private int segmentsZ;
22+
23+
private int subdivisions;
24+
25+
private Mesh3D mesh;
26+
27+
public CubicLatticeCreator() {
28+
segmentsX = 3;
29+
segmentsY = 3;
30+
segmentsZ = 3;
31+
subdivisions = 1;
32+
}
33+
34+
@Override
35+
public Mesh3D create() {
36+
initializeMesh();
37+
createSegments();
38+
removeDoubleFaces();
39+
removeDoubleVertices();
40+
centerAtOrigin();
41+
solidify();
42+
subdivide();
43+
return mesh;
44+
}
45+
46+
private Mesh3D createSegment() {
47+
Mesh3D mesh = new CubeCreator().create();
48+
ExtrudeModifier modifier = new ExtrudeModifier();
49+
modifier.setScale(1.0f);
50+
modifier.setAmount(0.5f);
51+
modifier.setRemoveFaces(true);
52+
modifier.modify(mesh);
53+
return mesh;
54+
}
55+
56+
private void createSegments() {
57+
for (int z = 0; z < segmentsZ; z++)
58+
for (int y = 0; y < segmentsY; y++)
59+
for (int x = 0; x < segmentsX; x++) createSegmentAt(x, y, z);
60+
}
61+
62+
private void createSegmentAt(int x, int y, int z) {
63+
Mesh3D segment = createSegment();
64+
new TranslateModifier(x * 3, y * 3, z * 3).modify(segment);
65+
this.mesh.append(segment);
66+
}
67+
68+
private void removeDoubleFaces() {
69+
FaceSelection selection = new FaceSelection(mesh);
70+
selection.selectDoubles();
71+
mesh.removeFaces(selection.getFaces());
72+
}
73+
74+
private void removeDoubleVertices() {
75+
new RemoveDoubleVerticesModifier().modify(mesh);
76+
}
77+
78+
private void initializeMesh() {
79+
mesh = new Mesh3D();
80+
}
81+
82+
private void centerAtOrigin() {
83+
new CenterAtModifier(Vector3f.ZERO).modify(mesh);
84+
}
85+
86+
private void subdivide() {
87+
new CatmullClarkModifier(subdivisions).modify(mesh);
88+
}
89+
90+
private void solidify() {
91+
new SolidifyModifier(0.3f).modify(mesh);
92+
}
93+
94+
public int getSegmentsX() {
95+
return segmentsX;
96+
}
97+
98+
public void setSegmentsX(int segmentsX) {
99+
this.segmentsX = segmentsX;
100+
}
101+
102+
public int getSegmentsY() {
103+
return segmentsY;
104+
}
105+
106+
public void setSegmentsY(int segmentsY) {
107+
this.segmentsY = segmentsY;
108+
}
109+
110+
public int getSegmentsZ() {
111+
return segmentsZ;
112+
}
113+
114+
public void setSegmentsZ(int segmentsZ) {
115+
this.segmentsZ = segmentsZ;
116+
}
117+
118+
public int getSubdivisions() {
119+
return subdivisions;
120+
}
121+
122+
public void setSubdivisions(int subdivisions) {
123+
this.subdivisions = subdivisions;
124+
}
127125
}

0 commit comments

Comments
 (0)