-
Notifications
You must be signed in to change notification settings - Fork 0
/
Coordinate.h
38 lines (36 loc) · 1.09 KB
/
Coordinate.h
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
#pragma once
#include <iostream>
#include <string>
#include <vector>
#include <math.h>
#include <iomanip>
#include <sstream>
#define _USE_MATH_DEFINES
using namespace std;
class Coordinate {
private:
float x, y;// 1 is 10 km
public:
Coordinate();
Coordinate(float x, float y);
Coordinate(const Coordinate &rhs);
~Coordinate();
Coordinate operator+(const Coordinate &rhs)const;
Coordinate operator-(const Coordinate &rhs)const;
Coordinate operator*(const float i)const;
Coordinate& operator=(const Coordinate &rhs);
friend bool operator==(const Coordinate &lhs, const Coordinate &rhs);
float GetX()const;
float GetY()const;
void SetX(const float temp);
void SetY(const float temp);
void Print()const;
bool static check_correct_float_string(string str);
float static DistanceCoordinate(const Coordinate v1, const Coordinate v2);
float static slopeFormula(Coordinate a, Coordinate b);
float static cal_Degree(float i);
float static getDegree(Coordinate a, Coordinate b);
Coordinate(string data_x,string data_y);
string to_string()const;
};
Coordinate operator*(const float i, const Coordinate& v);