Skip to content

Commit 0d4e88b

Browse files
committed
updated
1 parent b62e480 commit 0d4e88b

3 files changed

Lines changed: 63 additions & 20 deletions

File tree

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
cmake_minimum_required (VERSION 3.27)
2+
3+
project (sync2.client)
4+
5+
set (CMAKE_CXX_STANDARD 20)
6+
set (CMAKE_CXX_COMPILER g++)
7+
set (CMAKE_EXPORT_COMPILE_COMMANDS ON)
8+
9+
set (SOURCES
10+
sync2.client.cpp
11+
)
12+
13+
include_directories (
14+
/usr/local/include
15+
/opt/homebrew/include
16+
${CMAKE_CURRENT_SOURCE_DIR}
17+
)
18+
19+
link_directories (
20+
/usr/local/lib
21+
/opt/homebrew/lib
22+
)
23+
24+
add_executable ( sync2.client
25+
${SOURCES}
26+
)

graphics/cube.text/CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
cmake_minimum_required(VERSION 3.26)
1+
cmake_minimum_required(VERSION 3.27)
22

33
project(cube)
44

5-
set (CMAKE_CXX_STANDARD 23)
5+
set (CMAKE_CXX_STANDARD 20)
6+
set (CMAKE_CXX_COMPILER g++)
67
set (CMAKE_EXPORT_COMPILE_COMMANDS ON)
78

89
set (SOURCES

graphics/cube.text/cube.cpp

Lines changed: 34 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -21,22 +21,26 @@ float ooz;
2121
int xp, yp;
2222
int idx;
2323

24-
float calculateX(int i, int j, int k) {
24+
float calculateX(int i, int j, int k)
25+
{
2526
return j * sin(A) * sin(B) * cos(C) - k * cos(A) * sin(B) * cos(C) +
2627
j * cos(A) * sin(C) + k * sin(A) * sin(C) + i * cos(B) * cos(C);
2728
}
2829

29-
float calculateY(int i, int j, int k) {
30+
float calculateY(int i, int j, int k)
31+
{
3032
return j * cos(A) * cos(C) + k * sin(A) * cos(C) -
3133
j * sin(A) * sin(B) * sin(C) + k * cos(A) * sin(B) * sin(C) -
3234
i * cos(B) * sin(C);
3335
}
3436

35-
float calculateZ(int i, int j, int k) {
37+
float calculateZ(int i, int j, int k)
38+
{
3639
return k * cos(A) * cos(B) - j * sin(A) * cos(B) + i * sin(B);
3740
}
3841

39-
void calculateForSurface(float cubeX, float cubeY, float cubeZ, int ch) {
42+
void calculateForSurface(float cubeX, float cubeY, float cubeZ, int ch)
43+
{
4044
x = calculateX(cubeX, cubeY, cubeZ);
4145
y = calculateY(cubeX, cubeY, cubeZ);
4246
z = calculateZ(cubeX, cubeY, cubeZ) + distanceFromCam;
@@ -47,25 +51,30 @@ void calculateForSurface(float cubeX, float cubeY, float cubeZ, int ch) {
4751
yp = (int)(height / 2 + K1 * ooz * y);
4852

4953
idx = xp + yp * width;
50-
if (idx >= 0 && idx < width * height) {
51-
if (ooz > zBuffer[idx]) {
54+
if (idx >= 0 && idx < width * height)
55+
{
56+
if (ooz > zBuffer[idx])
57+
{
5258
zBuffer[idx] = ooz;
5359
buffer[idx] = ch;
5460
}
5561
}
5662
}
5763

58-
int main() {
64+
int main()
65+
{
5966
printf("\x1b[2J");
60-
while (1) {
67+
while (true)
68+
{
6169
memset(buffer, backgroundASCIICode, width * height);
6270
memset(zBuffer, 0, width * height * 4);
6371
cubeWidth = 20;
6472
horizontalOffset = -2 * cubeWidth;
6573
// first cube
66-
for (float cubeX = -cubeWidth; cubeX < cubeWidth; cubeX += incrementSpeed) {
67-
for (float cubeY = -cubeWidth; cubeY < cubeWidth;
68-
cubeY += incrementSpeed) {
74+
for (float cubeX = -cubeWidth; cubeX < cubeWidth; cubeX += incrementSpeed)
75+
{
76+
for (float cubeY = -cubeWidth; cubeY < cubeWidth; cubeY += incrementSpeed)
77+
{
6978
calculateForSurface(cubeX, cubeY, -cubeWidth, '@');
7079
calculateForSurface(cubeWidth, cubeY, cubeX, '$');
7180
calculateForSurface(-cubeWidth, cubeY, -cubeX, '~');
@@ -74,12 +83,14 @@ int main() {
7483
calculateForSurface(cubeX, cubeWidth, cubeY, '+');
7584
}
7685
}
86+
7787
cubeWidth = 10;
7888
horizontalOffset = 1 * cubeWidth;
7989
// second cube
80-
for (float cubeX = -cubeWidth; cubeX < cubeWidth; cubeX += incrementSpeed) {
81-
for (float cubeY = -cubeWidth; cubeY < cubeWidth;
82-
cubeY += incrementSpeed) {
90+
for (float cubeX = -cubeWidth; cubeX < cubeWidth; cubeX += incrementSpeed)
91+
{
92+
for (float cubeY = -cubeWidth; cubeY < cubeWidth; cubeY += incrementSpeed)
93+
{
8394
calculateForSurface(cubeX, cubeY, -cubeWidth, '@');
8495
calculateForSurface(cubeWidth, cubeY, cubeX, '$');
8596
calculateForSurface(-cubeWidth, cubeY, -cubeX, '~');
@@ -88,12 +99,14 @@ int main() {
8899
calculateForSurface(cubeX, cubeWidth, cubeY, '+');
89100
}
90101
}
102+
91103
cubeWidth = 5;
92104
horizontalOffset = 8 * cubeWidth;
93105
// third cube
94-
for (float cubeX = -cubeWidth; cubeX < cubeWidth; cubeX += incrementSpeed) {
95-
for (float cubeY = -cubeWidth; cubeY < cubeWidth;
96-
cubeY += incrementSpeed) {
106+
for (float cubeX = -cubeWidth; cubeX < cubeWidth; cubeX += incrementSpeed)
107+
{
108+
for (float cubeY = -cubeWidth; cubeY < cubeWidth; cubeY += incrementSpeed)
109+
{
97110
calculateForSurface(cubeX, cubeY, -cubeWidth, '@');
98111
calculateForSurface(cubeWidth, cubeY, cubeX, '$');
99112
calculateForSurface(-cubeWidth, cubeY, -cubeX, '~');
@@ -102,8 +115,10 @@ int main() {
102115
calculateForSurface(cubeX, cubeWidth, cubeY, '+');
103116
}
104117
}
118+
105119
printf("\x1b[H");
106-
for (int k = 0; k < width * height; k++) {
120+
for (int k = 0; k < width * height; k++)
121+
{
107122
putchar(k % width ? buffer[k] : 10);
108123
}
109124

@@ -112,5 +127,6 @@ int main() {
112127
C += 0.01;
113128
usleep(8000 * 2);
114129
}
130+
115131
return 0;
116132
}

0 commit comments

Comments
 (0)