-
Notifications
You must be signed in to change notification settings - Fork 3
/
Vectornt.h
73 lines (62 loc) · 1.71 KB
/
Vectornt.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
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
/*********************************************************************************
*Copyright(C) 2013-2016 Qingan Yan (yanqinganssg (at) gmail.com or yanqingan (at) whu.edu.cn)
*Author: Qingan Yan
*Version: v15.2
*Date: Sep-10-2015
*Description: This program is used to display point clouds from .out and .ply file format,
which is the output of Bundler.
*Notice: This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation.
*For more information, please view my homepage at https://yanqingan.github.io
**********************************************************************************/
#ifndef VECTORNT_H
#define VECTORNT_H
//class Vectornt
//{
//public:
// Vectornt();
//};
class Vector2f
{
public:
Vector2f(){}
Vector2f(float x, float y);
~Vector2f(){}
void operator =(const Vector2f ve);
Vector2f operator +(const Vector2f ve);
Vector2f operator -(const Vector2f ve);
float x;
float y;
};
class Vector3f
{
public:
Vector3f(){}
Vector3f(float x, float y, float z);
~Vector3f(){}
void operator =(const Vector3f ve);
Vector3f operator +(const Vector3f ve);
Vector3f operator -(const Vector3f ve);
Vector3f CrossProduct(const Vector3f ve);
float DotProduct(const Vector3f ve);
void Normalize();
float Norm_2();
float x;
float y;
float z;
};
class Vector3i
{
public:
Vector3i(){}
Vector3i(int x, int y, int z);
~Vector3i(){}
void operator =(const Vector3i ve);
Vector3i operator +(const Vector3i ve);
Vector3i operator -(const Vector3i ve);
int x;
int y;
int z;
};
#endif // VECTORNT_H