/
ofApp.cpp
76 lines (55 loc) · 1.55 KB
/
ofApp.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include "ofApp.h"
//--------------------------------------------------------------
void ofApp::setup() {
ofSetFrameRate(60);
ofSetWindowTitle("openFrameworks");
ofBackground(239);
ofSetColor(39);
ofSetLineWidth(3);
ofEnableDepthTest();
}
//--------------------------------------------------------------
void ofApp::update() {
ofSeedRandom(39);
}
//--------------------------------------------------------------
void ofApp::draw() {
this->cam.begin();
ofRotateX(-90);
auto size = 50;
int param_start = ofGetFrameNum() * 0.5;
for (int z = -180; z <= 180; z += 60) {
param_start += 5;
for (int param = param_start; param < param_start + 25; param += 5) {
auto location = glm::vec3(this->make_point(380, param), z);
ofFill();
ofSetColor(239);
ofDrawBox(location, size - 2);
ofNoFill();
ofSetColor(39);
ofDrawBox(location, size);
}
}
this->cam.end();
}
//--------------------------------------------------------------
glm::vec2 ofApp::make_point(int len, int param) {
param = param % 100;
if (param < 25) {
return glm::vec2(ofMap(param, 0, 25, -len * 0.5, len * 0.5), -len * 0.5);
}
else if (param < 50) {
return glm::vec2(len * 0.5, ofMap(param, 25, 50, -len * 0.5, len * 0.5));
}
else if (param < 75) {
return glm::vec2(ofMap(param, 50, 75, len * 0.5, -len * 0.5), len * 0.5);
}
else {
return glm::vec2(-len * 0.5, ofMap(param, 75, 100, len * 0.5, -len * 0.5));
}
}
//--------------------------------------------------------------
int main() {
ofSetupOpenGL(720, 720, OF_WINDOW);
ofRunApp(new ofApp());
}