27int main(
int argc,
char **argv)
48 catch(
const exception &error) {
49 FATAL(error.what() << endl);
52 gRandom->SetSeed(seed);
57 const JUTMPosition pointer[] = { JNorth_t, JEast_t, JSouth_t, JWest_t, JNorth_t };
59 for (
int i = 0; i != 4; ++i) {
69 ASSERT(u.
equals(pointer[i+1], precision),
"compass definitions");
73 for (
int count = 0; count < numberOfEvents; ++count) {
75 STATUS(
"event: " << setw(10) << count <<
'\r');
DEBUG(endl);
77 const JCompass c1(gRandom->Uniform(-1.0*PI,+1.0*PI),
78 gRandom->Uniform(-0.5*PI,+0.5*PI),
79 gRandom->Uniform(-0.5*PI,+0.5*PI));
86 DEBUG(
"compass [1] " << setprecision(3) <<
c1 << endl);
87 DEBUG(
"compass [2] " << setprecision(3) << c2 << endl);
88 DEBUG(
"quaternion [1] " << setprecision(5) << Q1 << endl);
89 DEBUG(
"quaternion [2] " << setprecision(5) << Q2 << endl);
94 Q1.
equals(-Q2, precision),
"compass to rotation to quaternion versus compass to quaternion");
96 ASSERT(
c1.equals(c2, precision),
"compass to quaternion to compass");
104 for (
int i = 0; i !=
sizeof(pos)/
sizeof(pos[0]); ++i) {
115 DEBUG(showpos <<
FIXED(8,3) << p0 <<
" -> " << flush);
TCanvas * c1
Global variables to handle mouse events.
General purpose messaging.
#define DEBUG(A)
Message macros.
#define ASSERT(A,...)
Assert macro.
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
I/O formatting auxiliaries.
Data structure for compass in three dimensions.
Data structure for position in three dimensions.
JPosition3D & rotate(const JRotation3D &R)
Rotate.
JPosition3D & rotate_back(const JRotation3D &R)
Rotate back.
Data structure for unit quaternion in three dimensions.
const JQuaternion3D & getQuaternion() const
Get quaternion.
bool equals(const JQuaternion3D &quaternion, const double precision=std::numeric_limits< double >::min()) const
Check equality.
const JRotation3D & getRotation() const
Get rotation.
bool equals(const JVector3D &vector, const double precision=std::numeric_limits< double >::min()) const
Check equality.
Utility class to parse command line options.
Data structure for UTM position.
int main(int argc, char **argv)
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary data structure for floating point format specification.