-
Notifications
You must be signed in to change notification settings - Fork 16
/
GeometryProcessing.h
39 lines (28 loc) · 1.09 KB
/
GeometryProcessing.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
////////////////////////////////////////////////////////////////////////////////////
// Copyright © Charalambos "Charis" Poullis, [email protected] //
// This work can only be used under an exclusive license of the author. //
////////////////////////////////////////////////////////////////////////////////////
#ifndef __GEOMETRY_PROCESSING_H__
#define __GEOMETRY_PROCESSING_H__
/** Geometry Processing
* This class defines a set of functions to process geometry.
*
*/
#include <float.h>
#include "opencv.hpp"
#include "Image.h"
#include "Color.h"
#include <Eigen/Eigen>
using namespace Eigen;
#include "Utilities.h"
#include "GeometricObject.h"
class GeometryProcessing {
public:
///Performs triangulation using an XYZ map
static GeometricObject *triangulate(Image *xyz_map, Image *_normal_map=0x00);
///Computes the normal at a point given an XYZ map
static Vector3f computeLocalNormal(Image *map, Vector2i const &index, bool z_up=false);
///Computes the normal map per point given an XYZ map
static Image *computeNormalMap(Image *map, bool z_up=false);
};
#endif