Pteros  2.0
Molecular modeling library for human beings!
utilities.h
1 /*
2  *
3  * This source code is part of
4  * ******************
5  * *** Pteros ***
6  * ******************
7  * molecular modeling library
8  *
9  * Copyright (c) 2009-2013, Semen Yesylevskyy
10  *
11  * This program is free software; you can redistribute it and/or
12  * modify it under the terms of Artistic License:
13  *
14  * Please note, that Artistic License is slightly more restrictive
15  * then GPL license in terms of distributing the modified versions
16  * of this software (they should be approved first).
17  * Read http://www.opensource.org/licenses/artistic-license-2.0.php
18  * for details. Such license fits scientific software better then
19  * GPL because it prevents the distribution of bugged derivatives.
20  *
21 */
22 
23 #ifndef UTILITIES_H
24 #define UTILITIES_H
25 
26 #include "pteros/core/typedefs.h"
27 
28 namespace pteros {
29 
30  float angle_between_vectors(Vector3f_const_ref vec1, Vector3f_const_ref vec2);
31 
32  Eigen::Vector3f project_vector(Vector3f_const_ref vec1, Vector3f_const_ref vec2);
33 
34  float rad_to_deg(float rad);
35 
36  constexpr long double operator"" _deg ( long double deg )
37  {
38  return deg*3.141592/180;
39  }
40 
41 /*
42  float distance_to_vector(Vector3f_const_ref point,
43  Vector3f_const_ref vec_origin,
44  Vector3f_const_ref vec_dir);
45 
46  void project_to_vector(Vector3f_const_ref point,
47  Vector3f_const_ref vec_origin,
48  Vector3f_const_ref vec_dir);
49 
50  float distance_to_plane(Vector3f_const_ref point,
51  Vector3f_const_ref plane_origin,
52  Vector3f_const_ref plane_normal);
53 */
54 
55 }
56 
57 #endif
Pteros namespace.
Definition: options.cpp:32