cgma
|
#include <math.h>
#include "CubitVector.hpp"
#include <string>
#include <stdexcept>
#include "CubitPlane.hpp"
#include "GeometryDefines.h"
#include "CubitBox.hpp"
Go to the source code of this file.
Defines | |
#define | DETERM3(p1, q1, p2, q2, p3, q3) |
Functions | |
CubitVector | vectorRotate (const double angle, const CubitVector &normalAxis, const CubitVector &referenceAxis) |
Variables | |
const double | PI = 3.14159265358979323846 |
const double | TWO_PI = 2.0 * PI |
#define DETERM3 | ( | p1, | |
q1, | |||
p2, | |||
q2, | |||
p3, | |||
q3 | |||
) |
((q3)*((p2)-(p1)) + \ (q2)*((p1)-(p3)) + \ (q1)*((p3)-(p2)))
CubitVector vectorRotate | ( | const double | angle, |
const CubitVector & | normalAxis, | ||
const CubitVector & | referenceAxis | ||
) |
Definition at line 265 of file CubitVector.cpp.
{ // A new coordinate system is created with the xy plane corresponding // to the plane normal to the normal axis, and the x axis corresponding to // the projection of the reference axis onto the normal plane. The normal // plane is the tangent plane at the root point. A unit vector is // constructed along the local x axis and then rotated by the given // ccw angle to form the new point. The new point, then is a unit // distance from the global origin in the tangent plane. double x, y; // project a unit distance from root along reference axis CubitVector yAxis = normalAxis * referenceAxis; CubitVector xAxis = yAxis * normalAxis; yAxis.normalize(); xAxis.normalize(); x = cos(angle); y = sin(angle); xAxis *= x; yAxis *= y; return CubitVector(xAxis + yAxis); }
const double PI = 3.14159265358979323846 |
Definition at line 19 of file CubitVector.cpp.
Definition at line 21 of file CubitVector.cpp.