-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDirection.h
More file actions
32 lines (32 loc) · 933 Bytes
/
Direction.h
File metadata and controls
32 lines (32 loc) · 933 Bytes
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
#ifndef direction_header
#define direction_header
#include <math.h>
#include"Point.h"
class Direction {
public:
float getDirX();
float getDirY();
float getDirZ();
float getVecX();
float getVecY();
float getVecZ();
float getTheta();
float getPhi();
float getLength();
void change_angle(float theta, float phi);
void rotate(float theta, float phi);
void change_length(float delta);
void normalize(float x, float y, float z);
Direction();
Direction(float startTheta, float startPhi);
Direction(Point a, Point b);
Direction(float deltaX, float deltaY, float deltaZ);
protected:
void recomputeOrientation();
void recomputeAngle();
float dirX, dirY, dirZ;
float length;
float angleTheta, anglePhi;
};
Direction operator*(Direction a, Direction b);
#endif