Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members | File Members

utilities.h File Reference

#include <stdlib.h>
#include <vector>
#include "math.h"
#include <qpainter.h>
#include "../primitives/point.h"

Go to the source code of this file.

Functions

Point3DqPointToPoint3D (const QPoint &point)
QPoint point3DToQPoint (Point3D *point)
double calculateDistance (const QPoint &center, const QPoint &pTemp)
bool equalQPoint (QPoint pA, QPoint pB)
bool isNear (QPoint p, QPoint pref)
int nearPoint (QPoint point, vector< QPoint > vect)
Point3D changeCoordinateSystem (const Point3D &point, const Point3D &origin)
Point3D changeCoordinateSystemReverse (const Point3D &point, const Point3D &origin)
void clearVector (vector< Point3D * > vect)


Detailed Description


Function Documentation

double calculateDistance const QPoint &  center,
const QPoint &  pTemp
 

00022 { 00023 return sqrt((double)( (center.x() - pTemp.x()) * (center.x() - pTemp.x()) 00024 + (center.y() - pTemp.y()) * (center.y() - pTemp.y()) ) ); 00025 }

Point3D changeCoordinateSystem const Point3D point,
const Point3D origin
 

00069 { 00070 return Point3D(point[0]-origin[0],point[1]-origin[1],point[2]-origin[2]); 00071 };

Point3D changeCoordinateSystemReverse const Point3D point,
const Point3D origin
 

00075 { 00076 return Point3D(point[0]+origin[0],point[1]+origin[1],point[2]+origin[2]); 00077 };

void clearVector vector< Point3D * >  vect  ) 
 

00081 { 00082 for (unsigned int i = 0; i < vect.size(); i++) 00083 delete vect[i]; 00084 00085 vect.clear(); 00086 }

bool equalQPoint QPoint  pA,
QPoint  pB
 

00030 { 00031 return ( (pA.x() == pB.x()) && (pA.y() == pB.y()) ); 00032 }

bool isNear QPoint  p,
QPoint  pref
 

00037 { 00038 int ecart = 10; 00039 return ( ( p.x() >= (pref.x() - ecart) ) 00040 && ( p.x() <= (pref.x() + ecart) ) 00041 && ( p.y() >= (pref.y() - ecart) ) 00042 && ( p.y() <= (pref.y() + ecart) ) 00043 ); 00044 }

int nearPoint QPoint  point,
vector< QPoint >  vect
 

00050 { 00051 int res = -1; 00052 unsigned int i = 0; 00053 bool trouve = false; 00054 while ( (i < vect.size()) && !trouve) 00055 { 00056 if (isNear(point,vect[i])) 00057 { 00058 res = i; 00059 trouve = true; 00060 } 00061 i++; 00062 } 00063 return res; 00064 }

QPoint point3DToQPoint Point3D point  ) 
 

00014 { 00015 return QPoint((int)(point->getCoordinate(0)), 00016 (int)(point->getCoordinate(1))); 00017 }

Point3D* qPointToPoint3D const QPoint &  point  ) 
 

00006 { 00007 return new Point3D(point.x(), point.y(), 0); 00008 }


Generated on Tue Nov 29 21:58:58 2005 for CylinderGenerator by doxygen 1.3.7