/
ofApp.cpp
77 lines (53 loc) · 1.69 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
77
#include "ofApp.h"
//--------------------------------------------------------------
void ofApp::setup() {
ofSetFrameRate(60);
ofBackground(39);
ofSetWindowTitle("Insta");
ofNoFill();
ofSetLineWidth(1.5);
ofEnableBlendMode(ofBlendMode::OF_BLENDMODE_ADD);
ofSetColor(239);
}
//--------------------------------------------------------------
void ofApp::update() {
}
//--------------------------------------------------------------
void ofApp::draw() {
ofTranslate(ofGetWidth() / 2, ofGetHeight() / 2);
int len_span = 60;
int line_count_max = 50;
for (int len = 60; len < 360; len += len_span) {
for (int line_count = 0; line_count < line_count_max; line_count++) {
//ofColor line_color;
//line_color.setHsb(ofMap(line_count, 0, line_count_max, 0, 239), 255, 255);
//ofSetColor(line_color);
int deg = ofNoise(line_count * 0.05,len * 0.005, ofGetFrameNum() * 0.002) * 720;
ofPoint start = this->make_rect_point(len, deg);
ofPoint end = this->make_rect_point(len + len_span, deg);
ofDrawLine(start, end);
}
}
}
//--------------------------------------------------------------
ofPoint ofApp::make_rect_point(float len, int deg) {
int param = (deg + 45) / 90;
ofPoint point;
switch (param % 4) {
case 0:
return ofPoint(len, ofMap((deg + 45) % 90, 0, 89, -len, len));
case 1:
return ofPoint(ofMap((deg + 45) % 90, 0, 89, len, -len), len);
case 2:
return ofPoint(-len, ofMap((deg + 45) % 90, 0, 89, len, -len));
case 3:
return ofPoint(ofMap((deg + 45) % 90, 0, 89, -len, len), -len);
default:
return ofPoint(0, 0);
}
}
//--------------------------------------------------------------
int main() {
ofSetupOpenGL(720, 720, OF_WINDOW);
ofRunApp(new ofApp());
}