void Radar::update_aframe() { polar_point pp = polar_aframe_points[change_index]; float phi_change = ofRandom(2)-1; pp.phi += phi_change; pp.phi = clamp(pp.phi, PI/3, PI); polar_aframe_points.at(change_index) = pp; ofPoint p = polar_to_cartesian(pp.r, pp.theta, pp.phi); aframe_points.at(change_index) = p; compute_bezier_from_aframe(); compute_lines_from_bezier(); }
void Radar::init_aframe() { // Initialize aframe (both polar/normal points) for (int i = 0; i < point_count; i++) { float theta = i * thetaStep; float phi = ofRandom(PI); phi = clamp(phi, PI/3, 2*PI/3); polar_point pp = polar_point(); pp.r = 200; pp.theta = theta; pp.phi = phi; polar_aframe_points.push_back(pp); aframe_points.push_back(polar_to_cartesian(pp.r, pp.theta, pp.phi)); } }
// ------------------------------------------------------------------ process -- void SPECTACLE2_BASE::process(const float *buf, const int) { DPRINT("SPECTACLE2_BASE::process\n"); const bool reading_input = (currentFrame() < _input_end_frame); if (reading_input) { DPRINT1("taking input...currentFrame()=%d\n", currentFrame()); prepare_input(buf); _fft->r2c(); cartesian_to_polar(); } modify_analysis(reading_input); polar_to_cartesian(); _fft->c2r(); prepare_output(); }