Ocean
Loading...
Searching...
No Matches
TestSphere3.h
Go to the documentation of this file.
1/*
2 * Copyright (c) Meta Platforms, Inc. and affiliates.
3 *
4 * This source code is licensed under the MIT license found in the
5 * LICENSE file in the root directory of this source tree.
6 */
7
8#ifndef META_OCEAN_TEST_TESTMATH_TEST_SPHERE_3_H
9#define META_OCEAN_TEST_TESTMATH_TEST_SPHERE_3_H
10
12
14
15namespace Ocean
16{
17
18namespace Test
19{
20
21namespace TestMath
22{
23
24/**
25 * This class implements a test for the 3D sphere.
26 * @ingroup testmath
27 */
28class OCEAN_TEST_MATH_EXPORT TestSphere3
29{
30 public:
31
32 /**
33 * Tests all sphere functions.
34 * @param testDuration Number of seconds for each test, with range (0, infinity)
35 * @param selector The test selector
36 * @return True, if succeeded
37 */
38 static bool test(const double testDuration, const TestSelector& selector);
39
40 /**
41 * Tests the sphere-ray intersection function.
42 * @param testDuration Number of seconds for each test, with range (0, infinity)
43 * @return True, if succeeded
44 * @tparam T The data type to be used
45 */
46 template <typename T>
47 static bool testHasIntersection(const double testDuration);
48
49 /**
50 * Tests the sphere-ray intersection function for a transformed sphere.
51 * @param testDuration Number of seconds for each test, with range (0, infinity)
52 * @return True, if succeeded
53 * @tparam T The data type to be used
54 */
55 template <typename T>
56 static bool testHasIntersectionTransformed(const double testDuration);
57
58 /**
59 * Tests the coordinate/vector conversion.
60 * @param testDuration Number of seconds for each test, with range (0, infinity)
61 * @return True, if succeeded
62 * @tparam T The data type to be used
63 */
64 template <typename T>
65 static bool testCoordinateVectorConversion(const double testDuration);
66
67 /**
68 * Tests the shortest distance function.
69 * @param testDuration Number of seconds for each test, with range (0, infinity)
70 * @return True, if succeeded
71 * @tparam T The data type to be used
72 */
73 template <typename T>
74 static bool testShortestDistance(const double testDuration);
75};
76
77}
78
79}
80
81}
82
83#endif // META_OCEAN_TEST_TESTMATH_TEST_SPHERE_3_H
This class implements a test for the 3D sphere.
Definition TestSphere3.h:29
static bool testHasIntersection(const double testDuration)
Tests the sphere-ray intersection function.
static bool testCoordinateVectorConversion(const double testDuration)
Tests the coordinate/vector conversion.
static bool test(const double testDuration, const TestSelector &selector)
Tests all sphere functions.
static bool testHasIntersectionTransformed(const double testDuration)
Tests the sphere-ray intersection function for a transformed sphere.
static bool testShortestDistance(const double testDuration)
Tests the shortest distance function.
This class implements a test selector that parses test function strings and determines which tests sh...
Definition TestSelector.h:51
The namespace covering the entire Ocean framework.
Definition Accessor.h:15