-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathSinusoid.cpp
More file actions
62 lines (54 loc) · 1.03 KB
/
Sinusoid.cpp
File metadata and controls
62 lines (54 loc) · 1.03 KB
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
/*
Authors: Andrew Yoder, Thomas Stryjski, Zachary O'Brien
Email: aby7159@rit.edu, tgs9181@rit.edu, zjo5244@rit.edu
Date: 12/1/18
Class: EEEE-346-01
Assignment: Project 3
Purpose:Describes functions declared in Sinusoid.h
*/
#include <iostream>
#include <cmath>
#include "Sinusoid.h"
//constructors
Sinusoid::Sinusoid() {
amplitude = 1;
period = 1;
phase = 0;
offset = 0;
}
Sinusoid::Sinusoid(double a, double b, double c, double d) {
amplitude = a;
period = b;
phase = c;
offset = d;
}
//getters
double Sinusoid::get_amp(){
return amplitude;
}
double Sinusoid::get_per(){
return period;
}
double Sinusoid::get_phase(){
return phase;
}
double Sinusoid::get_off() {
return offset;
}
//setters
void Sinusoid::set_amp(double a, double b) {
amplitude = 0.5*(a - b);
}
void Sinusoid::set_per(double c) {
period = c;
}
void Sinusoid::set_phase(double d){
phase=d;
}
void Sinusoid::set_off(double o) {
offset = o;
}
//actual sine function
double Sinusoid::func(double t){
return (amplitude*sin(period*t+phase) + offset);
}