Directory: | ./ |
---|---|
File: | test/geometric_shapes.cpp |
Date: | 2025-04-01 09:23:31 |
Exec | Total | Coverage | |
---|---|---|---|
Lines: | 3047 | 3094 | 98.5% |
Branches: | 6139 | 12454 | 49.3% |
Line | Branch | Exec | Source |
---|---|---|---|
1 | /* | ||
2 | * Software License Agreement (BSD License) | ||
3 | * | ||
4 | * Copyright (c) 2011-2014, Willow Garage, Inc. | ||
5 | * Copyright (c) 2014-2015, Open Source Robotics Foundation | ||
6 | * Copyright (c) 2024, INRIA | ||
7 | * All rights reserved. | ||
8 | * | ||
9 | * Redistribution and use in source and binary forms, with or without | ||
10 | * modification, are permitted provided that the following conditions | ||
11 | * are met: | ||
12 | * | ||
13 | * * Redistributions of source code must retain the above copyright | ||
14 | * notice, this list of conditions and the following disclaimer. | ||
15 | * * Redistributions in binary form must reproduce the above | ||
16 | * copyright notice, this list of conditions and the following | ||
17 | * disclaimer in the documentation and/or other materials provided | ||
18 | * with the distribution. | ||
19 | * * Neither the name of Open Source Robotics Foundation nor the names of its | ||
20 | * contributors may be used to endorse or promote products derived | ||
21 | * from this software without specific prior written permission. | ||
22 | * | ||
23 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
24 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
25 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS | ||
26 | * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE | ||
27 | * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
28 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | ||
29 | * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
30 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | ||
31 | * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
32 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN | ||
33 | * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
34 | * POSSIBILITY OF SUCH DAMAGE. | ||
35 | */ | ||
36 | |||
37 | /** \author Jia Pan */ | ||
38 | |||
39 | #define BOOST_TEST_MODULE COAL_GEOMETRIC_SHAPES | ||
40 | #include <boost/test/included/unit_test.hpp> | ||
41 | |||
42 | #include "coal/narrowphase/narrowphase.h" | ||
43 | #include "coal/collision.h" | ||
44 | #include "coal/distance.h" | ||
45 | #include "utility.h" | ||
46 | #include <iostream> | ||
47 | #include "coal/internal/tools.h" | ||
48 | #include "coal/shape/geometric_shape_to_BVH_model.h" | ||
49 | #include "coal/internal/shape_shape_func.h" | ||
50 | |||
51 | using namespace coal; | ||
52 | |||
53 | Scalar extents[6] = {0, 0, 0, 10, 10, 10}; | ||
54 | |||
55 | Scalar tol_gjk = Scalar(0.01); | ||
56 | GJKSolver solver1; | ||
57 | GJKSolver solver2; | ||
58 | |||
59 | int line; | ||
60 | #define SET_LINE line = __LINE__ | ||
61 | #define FCL_CHECK(cond) \ | ||
62 | BOOST_CHECK_MESSAGE(cond, "from line " << line << ": " #cond) | ||
63 | #define FCL_CHECK_EQUAL(a, b) \ | ||
64 | BOOST_CHECK_MESSAGE((a) == (b), "from line " << line << ": " #a "[" << (a) \ | ||
65 | << "] != " #b "[" << (b) \ | ||
66 | << "].") | ||
67 | #define BOOST_CHECK_FALSE(p) BOOST_CHECK(!(p)) | ||
68 | |||
69 | namespace coal { | ||
70 | ✗ | std::ostream& operator<<(std::ostream& os, const ShapeBase&) { | |
71 | ✗ | return os << "a_shape"; | |
72 | } | ||
73 | |||
74 | ✗ | std::ostream& operator<<(std::ostream& os, const Box& b) { | |
75 | ✗ | return os << "Box(" << 2 * b.halfSide.transpose() << ')'; | |
76 | } | ||
77 | } // namespace coal | ||
78 | |||
79 | template <typename S1, typename S2> | ||
80 | ✗ | void printComparisonError(const std::string& comparison_type, const S1& s1, | |
81 | const Transform3s& tf1, const S2& s2, | ||
82 | const Transform3s& tf2, | ||
83 | const Vec3s& contact_or_normal, | ||
84 | const Vec3s& expected_contact_or_normal, | ||
85 | bool check_opposite_normal, Scalar tol) { | ||
86 | std::cout << "Disagreement between " << comparison_type << " and expected_" | ||
87 | ✗ | << comparison_type << " for " << getNodeTypeName(s1.getNodeType()) | |
88 | ✗ | << " and " << getNodeTypeName(s2.getNodeType()) << ".\n" | |
89 | ✗ | << "tf1.quaternion: " << tf1.getQuatRotation() << std::endl | |
90 | ✗ | << "tf1.translation: " << tf1.getTranslation().transpose() | |
91 | ✗ | << std::endl | |
92 | ✗ | << "tf2.quaternion: " << tf2.getQuatRotation() << std::endl | |
93 | ✗ | << "tf2.translation: " << tf2.getTranslation().transpose() | |
94 | ✗ | << std::endl | |
95 | ✗ | << comparison_type << ": " << contact_or_normal.transpose() | |
96 | ✗ | << std::endl | |
97 | ✗ | << "expected_" << comparison_type << ": " | |
98 | ✗ | << expected_contact_or_normal.transpose(); | |
99 | |||
100 | ✗ | if (check_opposite_normal) | |
101 | ✗ | std::cout << " or " << -expected_contact_or_normal.transpose(); | |
102 | |||
103 | ✗ | std::cout << std::endl | |
104 | ✗ | << "difference: " | |
105 | ✗ | << (contact_or_normal - expected_contact_or_normal).norm() | |
106 | ✗ | << std::endl | |
107 | ✗ | << "tolerance: " << tol << std::endl; | |
108 | } | ||
109 | |||
110 | template <typename S1, typename S2> | ||
111 | ✗ | void printComparisonError(const std::string& comparison_type, const S1& s1, | |
112 | const Transform3s& tf1, const S2& s2, | ||
113 | const Transform3s& tf2, Scalar depth, | ||
114 | Scalar expected_depth, Scalar tol) { | ||
115 | std::cout << "Disagreement between " << comparison_type << " and expected_" | ||
116 | ✗ | << comparison_type << " for " << getNodeTypeName(s1.getNodeType()) | |
117 | ✗ | << " and " << getNodeTypeName(s2.getNodeType()) << ".\n" | |
118 | ✗ | << "tf1.quaternion: " << tf1.getQuatRotation() << std::endl | |
119 | ✗ | << "tf1.translation: " << tf1.getTranslation() << std::endl | |
120 | ✗ | << "tf2.quaternion: " << tf2.getQuatRotation() << std::endl | |
121 | ✗ | << "tf2.translation: " << tf2.getTranslation() << std::endl | |
122 | ✗ | << "depth: " << depth << std::endl | |
123 | ✗ | << "expected_depth: " << expected_depth << std::endl | |
124 | ✗ | << "difference: " << std::fabs(depth - expected_depth) << std::endl | |
125 | ✗ | << "tolerance: " << tol << std::endl; | |
126 | } | ||
127 | |||
128 | template <typename S1, typename S2> | ||
129 | 550 | void compareContact(const S1& s1, const Transform3s& tf1, const S2& s2, | |
130 | const Transform3s& tf2, const Vec3s& contact, | ||
131 | Vec3s* expected_point, Scalar depth, Scalar* expected_depth, | ||
132 | const Vec3s& normal, Vec3s* expected_normal, | ||
133 | bool check_opposite_normal, Scalar tol) { | ||
134 |
2/2✓ Branch 0 taken 153 times.
✓ Branch 1 taken 122 times.
|
550 | if (expected_point) { |
135 | 306 | bool contact_equal = isEqual(contact, *expected_point, tol); | |
136 |
7/14✓ Branch 3 taken 153 times.
✗ Branch 4 not taken.
✓ Branch 8 taken 153 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 153 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 153 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 153 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 153 times.
✗ Branch 21 not taken.
✗ Branch 27 not taken.
✓ Branch 28 taken 153 times.
|
306 | FCL_CHECK(contact_equal); |
137 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 153 times.
|
306 | if (!contact_equal) |
138 | ✗ | printComparisonError("contact", s1, tf1, s2, tf2, contact, | |
139 | *expected_point, false, tol); | ||
140 | } | ||
141 | |||
142 |
2/2✓ Branch 0 taken 173 times.
✓ Branch 1 taken 102 times.
|
550 | if (expected_depth) { |
143 | 346 | bool depth_equal = std::fabs(depth - *expected_depth) < tol; | |
144 |
7/14✓ Branch 3 taken 173 times.
✗ Branch 4 not taken.
✓ Branch 8 taken 173 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 173 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 173 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 173 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 173 times.
✗ Branch 21 not taken.
✗ Branch 27 not taken.
✓ Branch 28 taken 173 times.
|
346 | FCL_CHECK(depth_equal); |
145 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 173 times.
|
346 | if (!depth_equal) |
146 | ✗ | printComparisonError("depth", s1, tf1, s2, tf2, depth, *expected_depth, | |
147 | tol); | ||
148 | } | ||
149 | |||
150 |
2/2✓ Branch 0 taken 246 times.
✓ Branch 1 taken 29 times.
|
550 | if (expected_normal) { |
151 | 492 | bool normal_equal = isEqual(normal, *expected_normal, tol); | |
152 | |||
153 |
3/4✓ Branch 0 taken 13 times.
✓ Branch 1 taken 233 times.
✓ Branch 2 taken 13 times.
✗ Branch 3 not taken.
|
492 | if (!normal_equal && check_opposite_normal) |
154 |
1/2✓ Branch 2 taken 13 times.
✗ Branch 3 not taken.
|
26 | normal_equal = isEqual(normal, -(*expected_normal), tol); |
155 | |||
156 |
7/14✓ Branch 3 taken 246 times.
✗ Branch 4 not taken.
✓ Branch 8 taken 246 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 246 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 246 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 246 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 246 times.
✗ Branch 21 not taken.
✗ Branch 27 not taken.
✓ Branch 28 taken 246 times.
|
492 | FCL_CHECK(normal_equal); |
157 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 246 times.
|
492 | if (!normal_equal) |
158 | ✗ | printComparisonError("normal", s1, tf1, s2, tf2, normal, *expected_normal, | |
159 | check_opposite_normal, tol); | ||
160 | } | ||
161 | 550 | } | |
162 | |||
163 | template <typename S1, typename S2> | ||
164 | 822 | void testShapeCollide(const S1& s1, const Transform3s& tf1, const S2& s2, | |
165 | const Transform3s& tf2, bool expect_collision, | ||
166 | Vec3s* expected_point = NULL, | ||
167 | Scalar* expected_depth = NULL, | ||
168 | Vec3s* expected_normal = NULL, | ||
169 | bool check_opposite_normal = false, | ||
170 | Scalar tol = Scalar(1e-9)) { | ||
171 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | CollisionRequest request; |
172 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | CollisionResult result; |
173 | |||
174 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | Vec3s contact; |
175 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | Vec3s normal; // normal direction should be from object 1 to object 2 |
176 | bool collision; | ||
177 | 822 | bool check_failed = false; | |
178 | |||
179 | 822 | request.enable_contact = false; | |
180 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | result.clear(); |
181 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | collision = (collide(&s1, tf1, &s2, tf2, request, result) > 0); |
182 |
12/24✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 411 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 411 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 411 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 411 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 411 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 411 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 411 times.
✗ Branch 26 not taken.
✓ Branch 28 taken 411 times.
✗ Branch 29 not taken.
✓ Branch 31 taken 411 times.
✗ Branch 32 not taken.
✓ Branch 34 taken 411 times.
✗ Branch 35 not taken.
✗ Branch 45 not taken.
✓ Branch 46 taken 411 times.
|
822 | FCL_CHECK_EQUAL(collision, expect_collision); |
183 |
2/4✓ Branch 0 taken 411 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 411 times.
|
822 | check_failed = check_failed || (collision != expect_collision); |
184 | |||
185 | 822 | request.enable_contact = true; | |
186 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | result.clear(); |
187 |
1/2✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
|
822 | collision = (collide(&s1, tf1, &s2, tf2, request, result) > 0); |
188 |
12/24✓ Branch 1 taken 411 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 411 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 411 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 411 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 411 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 411 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 411 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 411 times.
✗ Branch 26 not taken.
✓ Branch 28 taken 411 times.
✗ Branch 29 not taken.
✓ Branch 31 taken 411 times.
✗ Branch 32 not taken.
✓ Branch 34 taken 411 times.
✗ Branch 35 not taken.
✗ Branch 45 not taken.
✓ Branch 46 taken 411 times.
|
822 | FCL_CHECK_EQUAL(collision, expect_collision); |
189 |
2/4✓ Branch 0 taken 411 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 411 times.
|
822 | check_failed = check_failed || (collision != expect_collision); |
190 | |||
191 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 411 times.
|
822 | if (check_failed) { |
192 | ✗ | BOOST_TEST_MESSAGE("Failure occured between " << s1 << " and " << s2 | |
193 | << " at transformations\n" | ||
194 | << tf1 << '\n' | ||
195 | << tf2); | ||
196 | } | ||
197 | |||
198 |
2/2✓ Branch 0 taken 275 times.
✓ Branch 1 taken 136 times.
|
822 | if (expect_collision) { |
199 |
12/24✓ Branch 1 taken 275 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 275 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 275 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 275 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 275 times.
✗ Branch 17 not taken.
✓ Branch 20 taken 275 times.
✗ Branch 21 not taken.
✓ Branch 23 taken 275 times.
✗ Branch 24 not taken.
✓ Branch 26 taken 275 times.
✗ Branch 27 not taken.
✓ Branch 29 taken 275 times.
✗ Branch 30 not taken.
✓ Branch 33 taken 275 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 275 times.
✗ Branch 37 not taken.
✗ Branch 47 not taken.
✓ Branch 48 taken 275 times.
|
550 | FCL_CHECK_EQUAL(result.numContacts(), 1); |
200 |
1/2✓ Branch 1 taken 275 times.
✗ Branch 2 not taken.
|
550 | if (result.numContacts() == 1) { |
201 |
2/4✓ Branch 1 taken 275 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 275 times.
✗ Branch 5 not taken.
|
550 | Contact contact = result.getContact(0); |
202 |
1/2✓ Branch 1 taken 275 times.
✗ Branch 2 not taken.
|
550 | compareContact(s1, tf1, s2, tf2, contact.pos, expected_point, |
203 | contact.penetration_depth, expected_depth, contact.normal, | ||
204 | expected_normal, check_opposite_normal, tol); | ||
205 | } | ||
206 | } | ||
207 | 822 | } | |
208 | |||
209 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(box_to_bvh) { |
210 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box shape(1, 1, 1); |
211 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | BVHModel<OBB> bvh; |
212 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | generateBVHModel(bvh, shape, Transform3s()); |
213 | 2 | } | |
214 | |||
215 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(sphere_to_bvh) { |
216 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere shape(1); |
217 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | BVHModel<OBB> bvh; |
218 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | generateBVHModel(bvh, shape, Transform3s(), 10, 10); |
219 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | generateBVHModel(bvh, shape, Transform3s(), 50); |
220 | 2 | } | |
221 | |||
222 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(cylinder_to_bvh) { |
223 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder shape(1, 1); |
224 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | BVHModel<OBB> bvh; |
225 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | generateBVHModel(bvh, shape, Transform3s(), 10, 10); |
226 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | generateBVHModel(bvh, shape, Transform3s(), 50); |
227 | 2 | } | |
228 | |||
229 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(cone_to_bvh) { |
230 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone shape(1, 1); |
231 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | BVHModel<OBB> bvh; |
232 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | generateBVHModel(bvh, shape, Transform3s(), 10, 10); |
233 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | generateBVHModel(bvh, shape, Transform3s(), 50); |
234 | 2 | } | |
235 | |||
236 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_spheresphere) { |
237 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s1(20); |
238 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s2(10); |
239 | |||
240 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
241 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
242 | |||
243 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
244 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
245 | |||
246 | // Vec3s point; | ||
247 | // Scalar depth; | ||
248 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
249 | |||
250 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
251 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(40, 0, 0)); |
252 | 2 | SET_LINE; | |
253 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
254 | |||
255 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
256 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(40, 0, 0)); |
257 | 2 | SET_LINE; | |
258 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
259 | |||
260 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
261 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(30, 0, 0)); |
262 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
263 | 2 | SET_LINE; | |
264 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
265 | |||
266 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
267 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(30.01), 0, 0)); |
268 | 2 | SET_LINE; | |
269 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
270 | |||
271 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
272 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(30.01), 0, 0)); |
273 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
274 | 2 | SET_LINE; | |
275 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
276 | |||
277 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
278 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(29.9), 0, 0)); |
279 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
280 | 2 | SET_LINE; | |
281 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
282 | |||
283 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
284 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(29.9), 0, 0)); |
285 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
286 | 2 | SET_LINE; | |
287 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
288 | |||
289 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
290 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
291 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; // If the centers of two sphere are at the same position, |
292 | // the normal is (1, 0, 0) | ||
293 | 2 | SET_LINE; | |
294 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
295 | |||
296 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
297 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
298 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; // If the centers of two sphere are at the same position, |
299 | // the normal is (1, 0, 0) | ||
300 | 2 | SET_LINE; | |
301 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
302 | |||
303 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
304 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-29.9), 0, 0)); |
305 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
306 | 2 | SET_LINE; | |
307 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
308 | |||
309 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
310 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-29.9), 0, 0)); |
311 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
312 | 2 | SET_LINE; | |
313 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
314 | |||
315 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
316 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-30.0, 0, 0)); |
317 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
318 | 2 | SET_LINE; | |
319 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
320 | |||
321 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
322 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-30.01), 0, 0)); |
323 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
324 | 2 | SET_LINE; | |
325 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
326 | |||
327 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
328 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-30.01), 0, 0)); |
329 | 2 | SET_LINE; | |
330 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
331 | 2 | } | |
332 | |||
333 | 2075 | bool compareContactPoints(const Vec3s& c1, const Vec3s& c2) { | |
334 | 2075 | return c1[2] < c2[2]; | |
335 | } // Ascending order | ||
336 | |||
337 | 100 | void testBoxBoxContactPoints(const Matrix3s& R) { | |
338 |
1/2✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
|
100 | Box s1(100, 100, 100); |
339 |
1/2✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
|
100 | Box s2(10, 20, 30); |
340 | |||
341 | // Vertices of s2 | ||
342 |
1/2✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
|
100 | std::vector<Vec3s> vertices(8); |
343 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[0] << 1, 1, 1; |
344 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[1] << 1, 1, -1; |
345 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[2] << 1, -1, 1; |
346 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[3] << 1, -1, -1; |
347 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[4] << -1, 1, 1; |
348 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[5] << -1, 1, -1; |
349 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[6] << -1, -1, 1; |
350 |
3/6✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 100 times.
✗ Branch 9 not taken.
|
100 | vertices[7] << -1, -1, -1; |
351 | |||
352 |
2/2✓ Branch 0 taken 800 times.
✓ Branch 1 taken 100 times.
|
900 | for (std::size_t i = 0; i < 8; ++i) { |
353 |
3/6✓ Branch 1 taken 800 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 800 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 800 times.
✗ Branch 9 not taken.
|
800 | vertices[i].array() *= s2.halfSide.array(); |
354 | } | ||
355 | |||
356 |
2/4✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 100 times.
✗ Branch 5 not taken.
|
100 | Transform3s tf1 = Transform3s(Vec3s(0, 0, -50)); |
357 |
1/2✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
|
100 | Transform3s tf2 = Transform3s(R); |
358 | |||
359 |
1/2✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
|
100 | Vec3s normal; |
360 |
2/4✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 100 times.
✗ Branch 5 not taken.
|
100 | Vec3s p1, p2; |
361 | |||
362 | // Make sure the two boxes are colliding | ||
363 | 100 | solver1.gjk_tolerance = Scalar(1e-5); | |
364 | 100 | solver1.epa_tolerance = Scalar(1e-5); | |
365 | 100 | const bool compute_penetration = true; | |
366 |
1/2✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
|
100 | Scalar distance = solver1.shapeDistance(s1, tf1, s2, tf2, compute_penetration, |
367 | p1, p2, normal); | ||
368 |
8/16✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 100 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 100 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 100 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 100 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 100 times.
✗ Branch 23 not taken.
✗ Branch 29 not taken.
✓ Branch 30 taken 100 times.
|
100 | FCL_CHECK(distance <= 0); |
369 | |||
370 | // Compute global vertices | ||
371 |
3/4✓ Branch 2 taken 800 times.
✗ Branch 3 not taken.
✓ Branch 6 taken 800 times.
✓ Branch 7 taken 100 times.
|
900 | for (std::size_t i = 0; i < 8; ++i) vertices[i] = tf2.transform(vertices[i]); |
372 | |||
373 | // Sort the vertices so that the lowest vertex along z-axis comes first | ||
374 |
1/2✓ Branch 3 taken 100 times.
✗ Branch 4 not taken.
|
100 | std::sort(vertices.begin(), vertices.end(), compareContactPoints); |
375 | |||
376 | // The lowest vertex along z-axis should be the contact point | ||
377 |
10/20✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 100 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 100 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 100 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 100 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 100 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 100 times.
✗ Branch 26 not taken.
✓ Branch 28 taken 100 times.
✗ Branch 29 not taken.
✗ Branch 35 not taken.
✓ Branch 36 taken 100 times.
|
100 | FCL_CHECK(normal.isApprox(Vec3s(0, 0, 1), Scalar(1e-6))); |
378 |
3/6✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 100 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 100 times.
✗ Branch 8 not taken.
|
100 | Vec3s point = Scalar(0.5) * (p1 + p2); |
379 |
11/22✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 100 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 100 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 100 times.
✗ Branch 17 not taken.
✓ Branch 20 taken 100 times.
✗ Branch 21 not taken.
✓ Branch 23 taken 100 times.
✗ Branch 24 not taken.
✓ Branch 26 taken 100 times.
✗ Branch 27 not taken.
✓ Branch 29 taken 100 times.
✗ Branch 30 not taken.
✓ Branch 32 taken 100 times.
✗ Branch 33 not taken.
✗ Branch 39 not taken.
✓ Branch 40 taken 100 times.
|
100 | FCL_CHECK(vertices[0].head<2>().isApprox(point.head<2>(), Scalar(1e-6))); |
380 |
13/26✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 100 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 100 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 100 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 100 times.
✗ Branch 17 not taken.
✓ Branch 20 taken 100 times.
✗ Branch 21 not taken.
✓ Branch 23 taken 100 times.
✗ Branch 24 not taken.
✓ Branch 25 taken 100 times.
✗ Branch 26 not taken.
✓ Branch 28 taken 100 times.
✗ Branch 29 not taken.
✓ Branch 30 taken 100 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 100 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 100 times.
✗ Branch 37 not taken.
✗ Branch 43 not taken.
✓ Branch 44 taken 100 times.
|
100 | FCL_CHECK(vertices[0][2] <= point[2] && point[2] < 0); |
381 | 100 | } | |
382 | |||
383 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_boxbox) { |
384 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s1(20, 40, 50); |
385 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s2(10, 10, 10); |
386 | |||
387 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
388 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
389 | |||
390 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
391 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
392 | |||
393 | // Vec3s point; | ||
394 | // Scalar depth; | ||
395 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
396 | |||
397 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Quats q; |
398 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | q = AngleAxis((Scalar)3.140 / 6, UnitZ); |
399 | |||
400 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
401 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
402 | // TODO: Need convention for normal when the centers of two objects are at | ||
403 | // same position. The current result is (1, 0, 0). | ||
404 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
405 | 2 | SET_LINE; | |
406 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, 0x0); |
407 | |||
408 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
409 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
410 | // TODO: Need convention for normal when the centers of two objects are at | ||
411 | // same position. The current result is (1, 0, 0). | ||
412 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
413 | 2 | SET_LINE; | |
414 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, 0x0); |
415 | |||
416 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
417 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(15, 0, 0)); |
418 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
419 | 2 | SET_LINE; | |
420 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, |
421 | Scalar(1e-8)); | ||
422 | |||
423 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
424 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(15.01), 0, 0)); |
425 | 2 | SET_LINE; | |
426 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
427 | |||
428 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
429 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(15.01), 0, 0)); |
430 | 2 | SET_LINE; | |
431 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
432 | |||
433 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
434 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(q); |
435 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
436 | 2 | SET_LINE; | |
437 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, 0x0); |
438 | |||
439 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
440 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = transform * Transform3s(q); |
441 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
442 | 2 | SET_LINE; | |
443 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, 0x0); |
444 | |||
445 | 2 | int numTests = 100; | |
446 |
2/2✓ Branch 0 taken 100 times.
✓ Branch 1 taken 1 times.
|
202 | for (int i = 0; i < numTests; ++i) { |
447 |
1/2✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
|
200 | Transform3s tf; |
448 |
1/2✓ Branch 1 taken 100 times.
✗ Branch 2 not taken.
|
200 | generateRandomTransform(extents, tf); |
449 | 200 | SET_LINE; | |
450 |
1/2✓ Branch 2 taken 100 times.
✗ Branch 3 not taken.
|
200 | testBoxBoxContactPoints(tf.getRotation()); |
451 | } | ||
452 | 2 | } | |
453 | |||
454 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_spherebox) { |
455 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s1(20); |
456 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s2(5, 5, 5); |
457 | |||
458 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
459 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
460 | |||
461 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
462 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
463 | |||
464 | // Vec3s point; | ||
465 | // Scalar depth; | ||
466 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
467 | |||
468 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
469 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
470 | // TODO: Need convention for normal when the centers of two objects are at | ||
471 | // same position. The current result is (-1, 0, 0). | ||
472 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
473 | 2 | SET_LINE; | |
474 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
475 | |||
476 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
477 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
478 | // TODO: Need convention for normal when the centers of two objects are at | ||
479 | // same position. | ||
480 | 2 | SET_LINE; | |
481 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
482 | |||
483 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
484 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(22.50001), 0, 0)); |
485 | 2 | SET_LINE; | |
486 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
487 | |||
488 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
489 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(22.501), 0, 0)); |
490 | 2 | SET_LINE; | |
491 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
492 | |||
493 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
494 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(22.4), 0, 0)); |
495 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
496 | 2 | SET_LINE; | |
497 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
498 | |||
499 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
500 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(22.4), 0, 0)); |
501 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
502 | 2 | SET_LINE; | |
503 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
504 | 2 | } | |
505 | |||
506 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(distance_spherebox) { |
507 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | coal::Matrix3s rotSphere; |
508 |
9/18✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 1 times.
✗ Branch 26 not taken.
|
2 | rotSphere << 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0; |
509 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | coal::Vec3s trSphere(0.0, 0.0, 0.0); |
510 | |||
511 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | coal::Matrix3s rotBox; |
512 |
9/18✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 1 times.
✗ Branch 26 not taken.
|
2 | rotBox << 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0; |
513 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | coal::Vec3s trBox(0.0, 5.0, 3.0); |
514 | |||
515 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | coal::Sphere sphere(1); |
516 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | coal::Box box(10, 2, 10); |
517 | |||
518 |
1/2✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
2 | coal::DistanceResult result; |
519 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | distance(&sphere, Transform3s(rotSphere, trSphere), &box, |
520 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Transform3s(rotBox, trBox), DistanceRequest(true), result); |
521 | |||
522 | 2 | Scalar eps = Eigen::NumTraits<Scalar>::epsilon(); | |
523 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✓ Branch 21 taken 1 times.
|
2 | BOOST_CHECK_CLOSE(result.min_distance, 3., eps); |
524 |
18/36✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 26 taken 1 times.
✗ Branch 27 not taken.
✓ Branch 29 taken 1 times.
✗ Branch 30 not taken.
✓ Branch 32 taken 1 times.
✗ Branch 33 not taken.
✓ Branch 35 taken 1 times.
✗ Branch 36 not taken.
✓ Branch 38 taken 1 times.
✗ Branch 39 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 51 taken 1 times.
✗ Branch 52 not taken.
✓ Branch 54 taken 1 times.
✗ Branch 55 not taken.
✗ Branch 65 not taken.
✓ Branch 66 taken 1 times.
|
2 | EIGEN_VECTOR_IS_APPROX(result.nearest_points[0], Vec3s(0, 1, 0), eps); |
525 |
18/36✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 26 taken 1 times.
✗ Branch 27 not taken.
✓ Branch 29 taken 1 times.
✗ Branch 30 not taken.
✓ Branch 32 taken 1 times.
✗ Branch 33 not taken.
✓ Branch 35 taken 1 times.
✗ Branch 36 not taken.
✓ Branch 38 taken 1 times.
✗ Branch 39 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 51 taken 1 times.
✗ Branch 52 not taken.
✓ Branch 54 taken 1 times.
✗ Branch 55 not taken.
✗ Branch 65 not taken.
✓ Branch 66 taken 1 times.
|
2 | EIGEN_VECTOR_IS_APPROX(result.nearest_points[1], Vec3s(0, 4, 0), eps); |
526 |
18/36✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 1 times.
✗ Branch 26 not taken.
✓ Branch 28 taken 1 times.
✗ Branch 29 not taken.
✓ Branch 31 taken 1 times.
✗ Branch 32 not taken.
✓ Branch 34 taken 1 times.
✗ Branch 35 not taken.
✓ Branch 37 taken 1 times.
✗ Branch 38 not taken.
✓ Branch 40 taken 1 times.
✗ Branch 41 not taken.
✓ Branch 43 taken 1 times.
✗ Branch 44 not taken.
✓ Branch 46 taken 1 times.
✗ Branch 47 not taken.
✓ Branch 49 taken 1 times.
✗ Branch 50 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✗ Branch 63 not taken.
✓ Branch 64 taken 1 times.
|
2 | EIGEN_VECTOR_IS_APPROX(result.normal, Vec3s(0, 1, 0), eps); |
527 | 2 | } | |
528 | |||
529 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_spherecapsule) { |
530 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s1(20); |
531 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Capsule s2(5, 10); |
532 | |||
533 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
534 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
535 | |||
536 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
537 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
538 | |||
539 | // Vec3s point; | ||
540 | // Scalar depth; | ||
541 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
542 | |||
543 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
544 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
545 | // TODO: Need convention for normal when the centers of two objects are at | ||
546 | // same position. | ||
547 | 2 | SET_LINE; | |
548 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
549 | |||
550 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
551 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
552 | // TODO: Need convention for normal when the centers of two objects are at | ||
553 | // same position. | ||
554 | 2 | SET_LINE; | |
555 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
556 | |||
557 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
558 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(24.9), 0, 0)); |
559 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
560 | 2 | SET_LINE; | |
561 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
562 | |||
563 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
564 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(24.9), 0, 0)); |
565 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
566 | 2 | SET_LINE; | |
567 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
568 | |||
569 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
570 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(25, 0, 0)); |
571 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
572 | 2 | SET_LINE; | |
573 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
574 | |||
575 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
576 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(24.999999), 0, 0)); |
577 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
578 | 2 | SET_LINE; | |
579 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
580 | |||
581 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
582 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(25.1), 0, 0)); |
583 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
584 | 2 | SET_LINE; | |
585 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
586 | |||
587 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
588 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(25.1), 0, 0)); |
589 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
590 | 2 | SET_LINE; | |
591 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
592 | 2 | } | |
593 | |||
594 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_cylindercylinder) { |
595 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s1(5, 15); |
596 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s2(5, 15); |
597 | |||
598 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
599 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
600 | |||
601 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
602 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
603 | |||
604 | // Vec3s point; | ||
605 | // Scalar depth; | ||
606 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
607 | |||
608 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
609 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
610 | // TODO: Need convention for normal when the centers of two objects are at | ||
611 | // same position. | ||
612 | 2 | SET_LINE; | |
613 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
614 | |||
615 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
616 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
617 | // TODO: Need convention for normal when the centers of two objects are at | ||
618 | // same position. | ||
619 | 2 | SET_LINE; | |
620 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
621 | |||
622 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
623 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(9.9), 0, 0)); |
624 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
625 | 2 | SET_LINE; | |
626 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
627 | |||
628 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
629 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(9.9), 0)); |
630 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; |
631 | 2 | SET_LINE; | |
632 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
633 | |||
634 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
635 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(9.9), 0, 0)); |
636 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
637 | 2 | SET_LINE; | |
638 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
639 | |||
640 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
641 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(9.9), 0, 0)); |
642 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
643 | 2 | SET_LINE; | |
644 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
645 | |||
646 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
647 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(10.01), 0, 0)); |
648 | 2 | SET_LINE; | |
649 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
650 | |||
651 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
652 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(10.01), 0, 0)); |
653 | 2 | SET_LINE; | |
654 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
655 | 2 | } | |
656 | |||
657 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_conecone) { |
658 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s1(5, 10); |
659 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s2(5, 10); |
660 | |||
661 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
662 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
663 | |||
664 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
665 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
666 | |||
667 | // Vec3s point; | ||
668 | // Scalar depth; | ||
669 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
670 | |||
671 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
672 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
673 | // TODO: Need convention for normal when the centers of two objects are at | ||
674 | // same position. | ||
675 | 2 | SET_LINE; | |
676 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
677 | |||
678 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
679 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
680 | // TODO: Need convention for normal when the centers of two objects are at | ||
681 | // same position. | ||
682 | 2 | SET_LINE; | |
683 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
684 | |||
685 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
686 | // z=0 is a singular points. Two normals could be returned. | ||
687 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(9.9), 0, Scalar(0.00001))); |
688 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = Vec3s(2 * (s1.halfLength + s2.halfLength), 0, s1.radius + s2.radius) |
689 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | .normalized(); |
690 | 2 | SET_LINE; | |
691 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
692 | |||
693 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
694 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = transform * tf2; |
695 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
696 | 2 | SET_LINE; | |
697 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
698 | |||
699 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
700 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(9.9), 0, Scalar(0.00001))); |
701 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = Vec3s(2 * (s1.halfLength + s2.halfLength), 0, s1.radius + s2.radius) |
702 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | .normalized(); |
703 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
704 | 2 | SET_LINE; | |
705 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, true, tol_gjk); |
706 | |||
707 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
708 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(10.1), 0, 0)); |
709 | 2 | SET_LINE; | |
710 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
711 | |||
712 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
713 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(10.001), 0, 0)); |
714 | 2 | SET_LINE; | |
715 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
716 | |||
717 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
718 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(10.001), 0, 0)); |
719 | 2 | SET_LINE; | |
720 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
721 | |||
722 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
723 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(9.9))); |
724 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; |
725 | 2 | SET_LINE; | |
726 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
727 | |||
728 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
729 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(9.9))); |
730 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); |
731 | 2 | SET_LINE; | |
732 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
733 | 2 | } | |
734 | |||
735 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_conecylinder) { |
736 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s1(5, 10); |
737 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s2(5, 10); |
738 | |||
739 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
740 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
741 | |||
742 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
743 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
744 | |||
745 | // Vec3s point; | ||
746 | // Scalar depth; | ||
747 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
748 | |||
749 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
750 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
751 | // TODO: Need convention for normal when the centers of two objects are at | ||
752 | // same position. | ||
753 | 2 | SET_LINE; | |
754 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
755 | |||
756 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
757 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
758 | // TODO: Need convention for normal when the centers of two objects are at | ||
759 | // same position. | ||
760 | 2 | SET_LINE; | |
761 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
762 | |||
763 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
764 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(9.9), 0, 0)); |
765 | normal = | ||
766 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s(2 * (s1.halfLength + s2.halfLength), 0, -(s1.radius + s2.radius)) |
767 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | .normalized(); |
768 | 2 | SET_LINE; | |
769 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
770 | |||
771 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
772 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(9.9), 0, 0)); |
773 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
774 | 2 | SET_LINE; | |
775 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
776 | |||
777 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
778 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(9.9), 0, Scalar(0.1))); |
779 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
780 | 2 | SET_LINE; | |
781 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
782 | |||
783 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
784 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(9.9), 0, Scalar(0.1))); |
785 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
786 | 2 | SET_LINE; | |
787 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
788 | |||
789 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
790 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(10.01), 0, 0)); |
791 | 2 | SET_LINE; | |
792 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
793 | |||
794 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
795 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(10.01), 0, 0)); |
796 | 2 | SET_LINE; | |
797 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
798 | |||
799 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
800 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(10, 0, 0)); |
801 | 2 | SET_LINE; | |
802 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
803 | |||
804 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
805 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(10, 0, 0)); |
806 | 2 | SET_LINE; | |
807 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, NULL); |
808 | |||
809 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
810 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(9.9))); |
811 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; |
812 | 2 | SET_LINE; | |
813 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
814 | |||
815 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
816 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(9.9))); |
817 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); |
818 | 2 | SET_LINE; | |
819 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal); |
820 | |||
821 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
822 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(10.01))); |
823 | 2 | SET_LINE; | |
824 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
825 | |||
826 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
827 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(10.01))); |
828 | 2 | SET_LINE; | |
829 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
830 | |||
831 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
832 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, 10)); |
833 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; |
834 | 2 | SET_LINE; | |
835 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, true, NULL, NULL, &normal, false, tol_gjk); |
836 | |||
837 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
838 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(10.1))); |
839 | 2 | SET_LINE; | |
840 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s1, tf1, s2, tf2, false); |
841 | 2 | } | |
842 | |||
843 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_spheretriangle) { |
844 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s(10); |
845 | |||
846 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
847 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
848 | |||
849 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
850 | |||
851 | // | ||
852 | // Testing collision x, y, z | ||
853 | // | ||
854 | { | ||
855 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
856 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 20, 0, 0; |
857 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, 0, 0; |
858 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 20, 0; |
859 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
860 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); // identity |
861 | |||
862 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(0.001))); |
863 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; |
864 | 2 | SET_LINE; | |
865 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
866 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
867 | 2 | SET_LINE; | |
868 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
869 | &normal); | ||
870 | |||
871 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(-0.001))); |
872 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
873 | 2 | SET_LINE; | |
874 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
875 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
876 | 2 | SET_LINE; | |
877 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
878 | &normal); | ||
879 | 2 | } | |
880 | |||
881 | { | ||
882 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
883 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 30, 0, 0; |
884 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << Scalar(9.9), -20, 0; |
885 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << Scalar(9.9), 20, 0; |
886 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
887 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
888 | |||
889 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(0.001))); |
890 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << Scalar(9.9), 0, Scalar(0.001); |
891 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal.normalize(); |
892 | 2 | SET_LINE; | |
893 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
894 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
895 | 2 | SET_LINE; | |
896 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
897 | &normal); | ||
898 | |||
899 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(-0.001))); |
900 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << Scalar(9.9), 0, Scalar(-0.001); |
901 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal.normalize(); |
902 | 2 | SET_LINE; | |
903 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
904 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
905 | 2 | SET_LINE; | |
906 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
907 | &normal); | ||
908 | 2 | } | |
909 | |||
910 | { | ||
911 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
912 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 30, 0, 0; |
913 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, 0, 0; |
914 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 0, 20; |
915 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
916 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
917 | |||
918 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, Scalar(0.001), 0)); |
919 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; |
920 | 2 | SET_LINE; | |
921 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
922 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
923 | 2 | SET_LINE; | |
924 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
925 | &normal); | ||
926 | |||
927 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, Scalar(-0.001), 0)); |
928 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
929 | 2 | SET_LINE; | |
930 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
931 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
932 | 2 | SET_LINE; | |
933 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
934 | &normal); | ||
935 | 2 | } | |
936 | |||
937 | { | ||
938 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
939 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 0, 30, 0; |
940 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << 0, -10, 0; |
941 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 0, 20; |
942 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
943 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
944 | |||
945 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(Scalar(0.001), 0, 0)); |
946 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
947 | 2 | SET_LINE; | |
948 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
949 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
950 | 2 | SET_LINE; | |
951 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
952 | &normal); | ||
953 | |||
954 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(Scalar(-0.001), 0, 0)); |
955 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
956 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
957 | 2 | SET_LINE; | |
958 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
959 | 2 | SET_LINE; | |
960 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, true, NULL, NULL, |
961 | &normal); | ||
962 | 2 | } | |
963 | |||
964 | // | ||
965 | // Testing no collision x, y, z | ||
966 | // | ||
967 | { | ||
968 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
969 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 20, 0, 0; |
970 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, 0, 0; |
971 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 20, 0; |
972 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
973 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
974 | |||
975 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(10.1))); |
976 | 2 | SET_LINE; | |
977 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, false); |
978 | 2 | SET_LINE; | |
979 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, false); |
980 | |||
981 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(-10.1))); |
982 | 2 | SET_LINE; | |
983 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, false); |
984 | 2 | SET_LINE; | |
985 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, false); |
986 | 2 | } | |
987 | |||
988 | { | ||
989 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
990 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 20, 0, 0; |
991 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, 0, 0; |
992 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 0, 20; |
993 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
994 | |||
995 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
996 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, Scalar(10.1), 0)); |
997 | 2 | SET_LINE; | |
998 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, false); |
999 | 2 | SET_LINE; | |
1000 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, false); |
1001 | |||
1002 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, Scalar(-10.1), 0)); |
1003 | 2 | SET_LINE; | |
1004 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, false); |
1005 | 2 | SET_LINE; | |
1006 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, false); |
1007 | 2 | } | |
1008 | |||
1009 | { | ||
1010 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
1011 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 0, 20, 0; |
1012 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << 0, -20, 0; |
1013 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 0, 20; |
1014 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
1015 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
1016 | |||
1017 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(Scalar(10.1), 0, 0)); |
1018 | 2 | SET_LINE; | |
1019 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, false); |
1020 | 2 | SET_LINE; | |
1021 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, false); |
1022 | |||
1023 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(Scalar(-10.1), 0, 0)); |
1024 | 2 | SET_LINE; | |
1025 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, Transform3s(), tri, tf_tri, false); |
1026 | 2 | SET_LINE; | |
1027 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(s, transform, tri, transform * tf_tri, false); |
1028 | 2 | } | |
1029 | 2 | } | |
1030 | |||
1031 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspacetriangle) { |
1032 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Halfspace hs(Vec3s(0, 0, 1), 0); |
1033 | |||
1034 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1035 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1036 | |||
1037 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1038 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = hs.n; // with halfspaces, it's simple: normal is always |
1039 | // the normal of the halfspace. | ||
1040 | |||
1041 | { | ||
1042 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
1043 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 20, 0, 0; |
1044 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, 0, 0; |
1045 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 20, 0; |
1046 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
1047 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); // identity |
1048 | |||
1049 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(-0.001))); |
1050 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = hs.n; |
1051 | 2 | SET_LINE; | |
1052 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1053 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1054 | 2 | SET_LINE; | |
1055 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, true, NULL, NULL, |
1056 | &normal); | ||
1057 | |||
1058 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(0.001))); |
1059 | 2 | SET_LINE; | |
1060 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1061 | 2 | SET_LINE; | |
1062 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1063 | |||
1064 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(1, 1, Scalar(0.001))); |
1065 | 2 | SET_LINE; | |
1066 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1067 | 2 | SET_LINE; | |
1068 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1069 | |||
1070 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(-1, -1, Scalar(0.001))); |
1071 | 2 | SET_LINE; | |
1072 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1073 | 2 | SET_LINE; | |
1074 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1075 | 2 | } | |
1076 | |||
1077 | { | ||
1078 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
1079 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 30, 0, 0; |
1080 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, 0, 0; |
1081 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 0, 20; |
1082 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
1083 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
1084 | |||
1085 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(-0.001))); |
1086 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = hs.n; |
1087 | 2 | SET_LINE; | |
1088 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1089 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1090 | 2 | SET_LINE; | |
1091 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, true, NULL, NULL, |
1092 | &normal); | ||
1093 | |||
1094 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(0.001))); |
1095 | 2 | SET_LINE; | |
1096 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1097 | 2 | SET_LINE; | |
1098 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1099 | |||
1100 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(1, 1, Scalar(0.001))); |
1101 | 2 | SET_LINE; | |
1102 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1103 | 2 | SET_LINE; | |
1104 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1105 | |||
1106 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(-1, -1, Scalar(0.001))); |
1107 | 2 | SET_LINE; | |
1108 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1109 | 2 | SET_LINE; | |
1110 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1111 | 2 | } | |
1112 | |||
1113 | { | ||
1114 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
1115 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 0, 30, 0; |
1116 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << 0, -10, 0; |
1117 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 0, 20; |
1118 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
1119 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); |
1120 | |||
1121 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(-0.001))); |
1122 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = hs.n; |
1123 | 2 | SET_LINE; | |
1124 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1125 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1126 | 2 | SET_LINE; | |
1127 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, true, NULL, NULL, |
1128 | &normal); | ||
1129 | |||
1130 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(0.001))); |
1131 | 2 | SET_LINE; | |
1132 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1133 | 2 | SET_LINE; | |
1134 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1135 | |||
1136 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(1, 1, Scalar(0.001))); |
1137 | 2 | SET_LINE; | |
1138 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1139 | 2 | SET_LINE; | |
1140 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1141 | |||
1142 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(-1, -1, Scalar(0.001))); |
1143 | 2 | SET_LINE; | |
1144 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, Transform3s(), tri, tf_tri, false); |
1145 | 2 | SET_LINE; | |
1146 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(hs, transform, tri, transform * tf_tri, false); |
1147 | 2 | } | |
1148 | 2 | } | |
1149 | |||
1150 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_planetriangle) { |
1151 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1152 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1153 | |||
1154 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1155 | |||
1156 | { | ||
1157 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
1158 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 20, 0, Scalar(0.05); |
1159 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, 0, Scalar(0.05); |
1160 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, 20, Scalar(-0.1); |
1161 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane pl(Vec3s(0, 0, 1), 0); |
1162 | |||
1163 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
1164 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); // identity |
1165 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | normal = -pl.n; |
1166 | 2 | SET_LINE; | |
1167 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1168 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1169 | 2 | SET_LINE; | |
1170 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, true, NULL, NULL, |
1171 | &normal); | ||
1172 | |||
1173 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(0.05))); |
1174 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = pl.n; |
1175 | 2 | SET_LINE; | |
1176 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1177 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1178 | 2 | SET_LINE; | |
1179 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, true, NULL, NULL, |
1180 | &normal); | ||
1181 | |||
1182 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(-0.06))); |
1183 | 2 | SET_LINE; | |
1184 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, false); |
1185 | 2 | SET_LINE; | |
1186 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, false); |
1187 | |||
1188 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, 0, Scalar(0.11))); |
1189 | 2 | SET_LINE; | |
1190 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, false); |
1191 | 2 | SET_LINE; | |
1192 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, false); |
1193 | 2 | } | |
1194 | |||
1195 | { | ||
1196 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
1197 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << 30, Scalar(0.05), 0; |
1198 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << -20, Scalar(0.05), 0; |
1199 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << 0, Scalar(-0.1), 20; |
1200 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane pl(Vec3s(0, 1, 0), 0); |
1201 | |||
1202 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
1203 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); // identity |
1204 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | normal = -pl.n; |
1205 | 2 | SET_LINE; | |
1206 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1207 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1208 | 2 | SET_LINE; | |
1209 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, true, NULL, NULL, |
1210 | &normal); | ||
1211 | |||
1212 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, Scalar(0.05), 0)); |
1213 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = pl.n; |
1214 | 2 | SET_LINE; | |
1215 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1216 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1217 | 2 | SET_LINE; | |
1218 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, true, NULL, NULL, |
1219 | &normal); | ||
1220 | |||
1221 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, Scalar(-0.06), 0)); |
1222 | 2 | SET_LINE; | |
1223 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, false); |
1224 | 2 | SET_LINE; | |
1225 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, false); |
1226 | |||
1227 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(0, Scalar(0.11), 0)); |
1228 | 2 | SET_LINE; | |
1229 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, false); |
1230 | 2 | SET_LINE; | |
1231 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, false); |
1232 | 2 | } | |
1233 | |||
1234 | { | ||
1235 |
3/4✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 1 times.
|
8 | Vec3s t[3]; |
1236 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[0] << Scalar(0.05), 30, 0; |
1237 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[1] << Scalar(0.05), -10, 0; |
1238 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | t[2] << Scalar(-0.1), 0, 20; |
1239 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane pl(Vec3s(1, 0, 0), 0); |
1240 | |||
1241 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | TriangleP tri(t[0], t[1], t[2]); |
1242 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf_tri = Transform3s(); // identity |
1243 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | normal = -pl.n; |
1244 | 2 | SET_LINE; | |
1245 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1246 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1247 | 2 | SET_LINE; | |
1248 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, true, NULL, NULL, |
1249 | &normal); | ||
1250 | |||
1251 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(Scalar(0.05), 0, 0)); |
1252 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = pl.n; |
1253 | 2 | SET_LINE; | |
1254 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, true, NULL, NULL, &normal); |
1255 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
1256 | 2 | SET_LINE; | |
1257 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, true, NULL, NULL, |
1258 | &normal); | ||
1259 | |||
1260 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(Scalar(-0.06), 0, 0)); |
1261 | 2 | SET_LINE; | |
1262 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, false); |
1263 | 2 | SET_LINE; | |
1264 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, false); |
1265 | |||
1266 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf_tri.setTranslation(Vec3s(Scalar(0.11), 0, 0)); |
1267 | 2 | SET_LINE; | |
1268 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, Transform3s(), tri, tf_tri, false); |
1269 | 2 | SET_LINE; | |
1270 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | testShapeCollide(pl, transform, tri, transform * tf_tri, false); |
1271 | 2 | } | |
1272 | 2 | } | |
1273 | |||
1274 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspacesphere) { |
1275 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s(10); |
1276 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Halfspace hs(Vec3s(1, 0, 0), 0); |
1277 | |||
1278 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
1279 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
1280 | |||
1281 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1282 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1283 | |||
1284 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
1285 | Scalar depth; | ||
1286 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1287 | |||
1288 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1289 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1290 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -5, 0, 0; |
1291 | 2 | depth = -10; | |
1292 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1293 | 2 | SET_LINE; | |
1294 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1295 | |||
1296 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1297 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1298 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-5, 0, 0)); |
1299 | 2 | depth = -10; | |
1300 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1301 | 2 | SET_LINE; | |
1302 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1303 | |||
1304 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1305 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(5, 0, 0)); |
1306 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -2.5, 0, 0; |
1307 | 2 | depth = -15; | |
1308 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1309 | 2 | SET_LINE; | |
1310 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1311 | |||
1312 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1313 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(5, 0, 0)); |
1314 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-2.5, 0, 0)); |
1315 | 2 | depth = -15; | |
1316 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1317 | 2 | SET_LINE; | |
1318 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1319 | |||
1320 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1321 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-5, 0, 0)); |
1322 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -7.5, 0, 0; |
1323 | 2 | depth = -5; | |
1324 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1325 | 2 | SET_LINE; | |
1326 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1327 | |||
1328 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1329 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-5, 0, 0)); |
1330 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-7.5, 0, 0)); |
1331 | 2 | depth = -5; | |
1332 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1333 | 2 | SET_LINE; | |
1334 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1335 | |||
1336 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1337 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-10.1), 0, 0)); |
1338 | 2 | SET_LINE; | |
1339 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1340 | |||
1341 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1342 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-10.1), 0, 0)); |
1343 | 2 | SET_LINE; | |
1344 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1345 | |||
1346 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1347 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(10.1), 0, 0)); |
1348 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << Scalar(0.05), 0, 0; |
1349 | 2 | depth = Scalar(-20.1); | |
1350 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1351 | 2 | SET_LINE; | |
1352 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1353 | |||
1354 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1355 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(10.1), 0, 0)); |
1356 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(Scalar(0.05), 0, 0)); |
1357 | 2 | depth = Scalar(-20.1); | |
1358 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1359 | 2 | SET_LINE; | |
1360 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1361 | 2 | } | |
1362 | |||
1363 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_planesphere) { |
1364 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s(10); |
1365 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane hs(Vec3s(1, 0, 0), 0); |
1366 | |||
1367 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
1368 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
1369 | |||
1370 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1371 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1372 | |||
1373 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
1374 | Scalar depth; | ||
1375 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1376 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s p1, p2; |
1377 | |||
1378 | 2 | Scalar eps = Scalar(1e-6); | |
1379 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(eps, 0, 0)); |
1380 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1381 | 2 | depth = -10 + eps; | |
1382 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << -10 + eps, 0, 0; |
1383 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
1384 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
1385 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
1386 | 2 | SET_LINE; | |
1387 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1388 | |||
1389 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
1390 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1391 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
1392 | normal = | ||
1393 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | transform.getRotation() * Vec3s(-1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
1394 | 2 | SET_LINE; | |
1395 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
1396 | |||
1397 | 2 | eps = Scalar(-1e-6); | |
1398 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(eps, 0, 0)); |
1399 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1400 | 2 | depth = -10 - eps; | |
1401 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 10 + eps, 0, 0; |
1402 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
1403 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
1404 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
1405 | 2 | SET_LINE; | |
1406 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1407 | |||
1408 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
1409 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1410 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
1411 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
1412 | 2 | SET_LINE; | |
1413 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
1414 | |||
1415 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1416 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(5, 0, 0)); |
1417 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 10, 0, 0; |
1418 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 5, 0, 0; |
1419 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
1420 | 2 | depth = -5; | |
1421 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
1422 | 2 | SET_LINE; | |
1423 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1424 | |||
1425 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1426 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(5, 0, 0)); |
1427 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
1428 | 2 | depth = -5; | |
1429 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
1430 | 2 | SET_LINE; | |
1431 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1432 | |||
1433 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1434 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-5, 0, 0)); |
1435 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << -10, 0, 0; |
1436 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << -5, 0, 0; |
1437 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
1438 | 2 | depth = -5; | |
1439 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1440 | 2 | SET_LINE; | |
1441 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1442 | |||
1443 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1444 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-5, 0, 0)); |
1445 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
1446 | 2 | depth = -5; | |
1447 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1448 | 2 | SET_LINE; | |
1449 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1450 | |||
1451 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1452 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-10.1), 0, 0)); |
1453 | 2 | SET_LINE; | |
1454 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1455 | |||
1456 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1457 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-10.1), 0, 0)); |
1458 | 2 | SET_LINE; | |
1459 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1460 | |||
1461 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1462 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(10.1), 0, 0)); |
1463 | 2 | SET_LINE; | |
1464 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1465 | |||
1466 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1467 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(10.1), 0, 0)); |
1468 | 2 | SET_LINE; | |
1469 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1470 | 2 | } | |
1471 | |||
1472 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspacebox) { |
1473 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s(5, 10, 20); |
1474 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Halfspace hs(Vec3s(1, 0, 0), 0); |
1475 | |||
1476 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
1477 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
1478 | |||
1479 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1480 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1481 | |||
1482 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
1483 | Scalar depth; | ||
1484 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1485 | |||
1486 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1487 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1488 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -1.25, 0, 0; |
1489 | 2 | depth = -2.5; | |
1490 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1491 | 2 | SET_LINE; | |
1492 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1493 | |||
1494 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1495 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1496 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-1.25, 0, 0)); |
1497 | 2 | depth = -2.5; | |
1498 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1499 | 2 | SET_LINE; | |
1500 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1501 | |||
1502 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1503 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(1.25, 0, 0)); |
1504 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -0.625, 0, 0; |
1505 | 2 | depth = -3.75; | |
1506 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1507 | 2 | SET_LINE; | |
1508 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1509 | |||
1510 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1511 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(1.25, 0, 0)); |
1512 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-0.625, 0, 0)); |
1513 | 2 | depth = -3.75; | |
1514 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1515 | 2 | SET_LINE; | |
1516 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1517 | |||
1518 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1519 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-1.25, 0, 0)); |
1520 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -1.875, 0, 0; |
1521 | 2 | depth = -1.25; | |
1522 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1523 | 2 | SET_LINE; | |
1524 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1525 | |||
1526 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1527 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-1.25, 0, 0)); |
1528 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-1.875, 0, 0)); |
1529 | 2 | depth = -1.25; | |
1530 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1531 | 2 | SET_LINE; | |
1532 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1533 | |||
1534 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1535 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(2.51), 0, 0)); |
1536 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << Scalar(0.005), 0, 0; |
1537 | 2 | depth = Scalar(-5.01); | |
1538 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1539 | 2 | SET_LINE; | |
1540 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1541 | |||
1542 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1543 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(2.51), 0, 0)); |
1544 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(Scalar(0.005), 0, 0)); |
1545 | 2 | depth = Scalar(-5.01); | |
1546 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1547 | 2 | SET_LINE; | |
1548 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1549 | |||
1550 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1551 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-2.51), 0, 0)); |
1552 | 2 | SET_LINE; | |
1553 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1554 | |||
1555 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1556 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-2.51), 0, 0)); |
1557 | 2 | SET_LINE; | |
1558 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1559 | |||
1560 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | tf1 = Transform3s(transform.getRotation()); |
1561 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1562 | 2 | SET_LINE; | |
1563 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true); |
1564 | 2 | } | |
1565 | |||
1566 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_planebox) { |
1567 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s(5, 10, 20); |
1568 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane hs(Vec3s(1, 0, 0), 0); |
1569 | |||
1570 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
1571 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
1572 | |||
1573 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1574 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1575 | |||
1576 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
1577 | Scalar depth; | ||
1578 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1579 | |||
1580 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1581 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1582 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s p1(2.5, 0, 0); |
1583 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s p2(0, 0, 0); |
1584 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
1585 | 2 | depth = -2.5; | |
1586 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
1587 | 2 | SET_LINE; | |
1588 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1589 | |||
1590 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1591 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1592 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
1593 | 2 | depth = -2.5; | |
1594 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
1595 | 2 | SET_LINE; | |
1596 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1597 | |||
1598 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1599 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(1.25, 0, 0)); |
1600 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 1.25, 0, 0; |
1601 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
1602 | 2 | depth = -1.25; | |
1603 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
1604 | 2 | SET_LINE; | |
1605 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1606 | |||
1607 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1608 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(1.25, 0, 0)); |
1609 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
1610 | 2 | depth = -1.25; | |
1611 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
1612 | 2 | SET_LINE; | |
1613 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1614 | |||
1615 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1616 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-1.25, 0, 0)); |
1617 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << -2.5, 0, 0; |
1618 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << -1.25, 0, 0; |
1619 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
1620 | 2 | depth = -1.25; | |
1621 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1622 | 2 | SET_LINE; | |
1623 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1624 | |||
1625 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1626 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-1.25, 0, 0)); |
1627 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
1628 | 2 | depth = -1.25; | |
1629 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1630 | 2 | SET_LINE; | |
1631 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1632 | |||
1633 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1634 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(2.51), 0, 0)); |
1635 | 2 | SET_LINE; | |
1636 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1637 | |||
1638 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1639 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(2.51), 0, 0)); |
1640 | 2 | SET_LINE; | |
1641 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1642 | |||
1643 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1644 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-2.51), 0, 0)); |
1645 | 2 | SET_LINE; | |
1646 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1647 | |||
1648 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1649 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-2.51), 0, 0)); |
1650 | 2 | SET_LINE; | |
1651 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1652 | |||
1653 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | tf1 = Transform3s(transform.getRotation()); |
1654 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1655 | 2 | SET_LINE; | |
1656 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true); |
1657 | 2 | } | |
1658 | |||
1659 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspacecapsule) { |
1660 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Capsule s(5, 10); |
1661 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Halfspace hs(Vec3s(1, 0, 0), 0); |
1662 | |||
1663 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
1664 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
1665 | |||
1666 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1667 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1668 | |||
1669 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
1670 | Scalar depth; | ||
1671 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1672 | |||
1673 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1674 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1675 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -2.5, 0, 0; |
1676 | 2 | depth = -5; | |
1677 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1678 | 2 | SET_LINE; | |
1679 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1680 | |||
1681 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1682 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1683 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-2.5, 0, 0)); |
1684 | 2 | depth = -5; | |
1685 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1686 | 2 | SET_LINE; | |
1687 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1688 | |||
1689 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1690 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(2.5, 0, 0)); |
1691 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -1.25, 0, 0; |
1692 | 2 | depth = -7.5; | |
1693 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1694 | 2 | SET_LINE; | |
1695 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1696 | |||
1697 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1698 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(2.5, 0, 0)); |
1699 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-1.25, 0, 0)); |
1700 | 2 | depth = -7.5; | |
1701 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1702 | 2 | SET_LINE; | |
1703 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1704 | |||
1705 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1706 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-2.5, 0, 0)); |
1707 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -3.75, 0, 0; |
1708 | 2 | depth = -2.5; | |
1709 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1710 | 2 | SET_LINE; | |
1711 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1712 | |||
1713 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1714 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-2.5, 0, 0)); |
1715 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-3.75, 0, 0)); |
1716 | 2 | depth = -2.5; | |
1717 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1718 | 2 | SET_LINE; | |
1719 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1720 | |||
1721 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1722 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
1723 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << Scalar(0.05), 0, 0; |
1724 | 2 | depth = Scalar(-10.1); | |
1725 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1726 | 2 | SET_LINE; | |
1727 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1728 | |||
1729 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1730 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
1731 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(Scalar(0.05), 0, 0)); |
1732 | 2 | depth = Scalar(-10.1); | |
1733 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1734 | 2 | SET_LINE; | |
1735 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1736 | |||
1737 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1738 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
1739 | 2 | SET_LINE; | |
1740 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1741 | |||
1742 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1743 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
1744 | 2 | SET_LINE; | |
1745 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1746 | |||
1747 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Halfspace(Vec3s(0, 1, 0), 0); |
1748 | |||
1749 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1750 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1751 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -2.5, 0; |
1752 | 2 | depth = -5; | |
1753 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
1754 | 2 | SET_LINE; | |
1755 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1756 | |||
1757 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1758 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1759 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -2.5, 0)); |
1760 | 2 | depth = -5; | |
1761 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
1762 | 2 | SET_LINE; | |
1763 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1764 | |||
1765 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1766 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 2.5, 0)); |
1767 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -1.25, 0; |
1768 | 2 | depth = -7.5; | |
1769 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
1770 | 2 | SET_LINE; | |
1771 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1772 | |||
1773 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1774 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 2.5, 0)); |
1775 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -1.25, 0)); |
1776 | 2 | depth = -7.5; | |
1777 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
1778 | 2 | SET_LINE; | |
1779 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1780 | |||
1781 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1782 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, -2.5, 0)); |
1783 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -3.75, 0; |
1784 | 2 | depth = -2.5; | |
1785 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
1786 | 2 | SET_LINE; | |
1787 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1788 | |||
1789 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1790 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, -2.5, 0)); |
1791 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -3.75, 0)); |
1792 | 2 | depth = -2.5; | |
1793 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
1794 | 2 | SET_LINE; | |
1795 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1796 | |||
1797 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1798 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(5.1), 0)); |
1799 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, Scalar(0.05), 0; |
1800 | 2 | depth = Scalar(-10.1); | |
1801 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
1802 | 2 | SET_LINE; | |
1803 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1804 | |||
1805 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1806 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(5.1), 0)); |
1807 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, Scalar(0.05), 0)); |
1808 | 2 | depth = Scalar(-10.1); | |
1809 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
1810 | 2 | SET_LINE; | |
1811 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1812 | |||
1813 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1814 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
1815 | 2 | SET_LINE; | |
1816 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1817 | |||
1818 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1819 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
1820 | 2 | SET_LINE; | |
1821 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1822 | |||
1823 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Halfspace(Vec3s(0, 0, 1), 0); |
1824 | |||
1825 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1826 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1827 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -5; |
1828 | 2 | depth = -10; | |
1829 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
1830 | 2 | SET_LINE; | |
1831 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1832 | |||
1833 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1834 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1835 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -5)); |
1836 | 2 | depth = -10; | |
1837 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
1838 | 2 | SET_LINE; | |
1839 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1840 | |||
1841 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1842 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, 2.5)); |
1843 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -3.75; |
1844 | 2 | depth = -12.5; | |
1845 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
1846 | 2 | SET_LINE; | |
1847 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1848 | |||
1849 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1850 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, 2.5)); |
1851 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -3.75)); |
1852 | 2 | depth = -12.5; | |
1853 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
1854 | 2 | SET_LINE; | |
1855 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1856 | |||
1857 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1858 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, -2.5)); |
1859 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -6.25; |
1860 | 2 | depth = -7.5; | |
1861 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
1862 | 2 | SET_LINE; | |
1863 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1864 | |||
1865 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1866 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, -2.5)); |
1867 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -6.25)); |
1868 | 2 | depth = -7.5; | |
1869 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
1870 | 2 | SET_LINE; | |
1871 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1872 | |||
1873 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1874 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(10.1))); |
1875 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, Scalar(0.05); |
1876 | 2 | depth = Scalar(-20.1); | |
1877 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
1878 | 2 | SET_LINE; | |
1879 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1880 | |||
1881 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1882 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(10.1))); |
1883 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, Scalar(0.05))); |
1884 | 2 | depth = Scalar(-20.1); | |
1885 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
1886 | 2 | SET_LINE; | |
1887 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
1888 | |||
1889 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1890 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
1891 | 2 | SET_LINE; | |
1892 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1893 | |||
1894 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1895 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
1896 | 2 | SET_LINE; | |
1897 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1898 | 2 | } | |
1899 | |||
1900 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_planecapsule) { |
1901 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Capsule s(5, 10); |
1902 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane hs(Vec3s(1, 0, 0), 0); |
1903 | |||
1904 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
1905 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
1906 | |||
1907 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
1908 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
1909 | |||
1910 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
1911 | Scalar depth; | ||
1912 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
1913 | |||
1914 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1915 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1916 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, 0; |
1917 | 2 | depth = -5; | |
1918 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
1919 | 2 | SET_LINE; | |
1920 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, 0x0, 0x0, true); |
1921 | |||
1922 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1923 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1924 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, 0)); |
1925 | 2 | depth = -5; | |
1926 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
1927 | 2 | SET_LINE; | |
1928 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, 0x0, 0x0, true); |
1929 | |||
1930 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1931 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(2.5, 0, 0)); |
1932 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 2.5, 0, 0; |
1933 | 2 | depth = -2.5; | |
1934 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
1935 | 2 | SET_LINE; | |
1936 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, &normal); |
1937 | |||
1938 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1939 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(2.5, 0, 0)); |
1940 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(2.5, 0, 0)); |
1941 | 2 | depth = -2.5; | |
1942 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
1943 | 2 | SET_LINE; | |
1944 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, &normal); |
1945 | |||
1946 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1947 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-2.5, 0, 0)); |
1948 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -2.5, 0, 0; |
1949 | 2 | depth = -2.5; | |
1950 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
1951 | 2 | SET_LINE; | |
1952 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, &normal); |
1953 | |||
1954 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1955 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-2.5, 0, 0)); |
1956 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-2.5, 0, 0)); |
1957 | 2 | depth = -2.5; | |
1958 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
1959 | 2 | SET_LINE; | |
1960 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, &normal); |
1961 | |||
1962 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1963 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
1964 | 2 | SET_LINE; | |
1965 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1966 | |||
1967 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1968 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
1969 | 2 | SET_LINE; | |
1970 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1971 | |||
1972 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1973 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
1974 | 2 | SET_LINE; | |
1975 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1976 | |||
1977 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1978 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
1979 | 2 | SET_LINE; | |
1980 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
1981 | |||
1982 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Plane(Vec3s(0, 1, 0), 0); |
1983 | |||
1984 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
1985 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
1986 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, 0; |
1987 | 2 | depth = -5; | |
1988 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; // (0, 1, 0) or (0, -1, 0) |
1989 | 2 | SET_LINE; | |
1990 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0, true); |
1991 | |||
1992 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
1993 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
1994 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, 0)); |
1995 | 2 | depth = -5; | |
1996 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); // (0, 1, 0) or (0, -1, 0) |
1997 | 2 | SET_LINE; | |
1998 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, &normal, true); |
1999 | |||
2000 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2001 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 2.5, 0)); |
2002 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 2.5, 0; |
2003 | 2 | depth = -2.5; | |
2004 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; |
2005 | 2 | SET_LINE; | |
2006 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0); |
2007 | |||
2008 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2009 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 2.5, 0)); |
2010 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 2.5, 0)); |
2011 | 2 | depth = -2.5; | |
2012 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); |
2013 | 2 | SET_LINE; | |
2014 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0); |
2015 | |||
2016 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2017 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, -2.5, 0)); |
2018 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -2.5, 0; |
2019 | 2 | depth = -2.5; | |
2020 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2021 | 2 | SET_LINE; | |
2022 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, &normal); |
2023 | |||
2024 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2025 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, -2.5, 0)); |
2026 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -2.5, 0)); |
2027 | 2 | depth = -2.5; | |
2028 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2029 | 2 | SET_LINE; | |
2030 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, &normal); |
2031 | |||
2032 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2033 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2034 | 2 | SET_LINE; | |
2035 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2036 | |||
2037 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2038 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2039 | 2 | SET_LINE; | |
2040 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2041 | |||
2042 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2043 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2044 | 2 | SET_LINE; | |
2045 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2046 | |||
2047 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2048 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2049 | 2 | SET_LINE; | |
2050 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2051 | |||
2052 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Plane(Vec3s(0, 0, 1), 0); |
2053 | |||
2054 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2055 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2056 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, 0; |
2057 | 2 | depth = -10; | |
2058 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; // (0, 0, 1) or (0, 0, -1) |
2059 | 2 | SET_LINE; | |
2060 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, 0x0, 0x0, true); |
2061 | |||
2062 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2063 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2064 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, 0)); |
2065 | 2 | depth = -10; | |
2066 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); // (0, 0, 1) or (0, 0, -1) |
2067 | 2 | SET_LINE; | |
2068 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0, true); |
2069 | |||
2070 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2071 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, 2.5)); |
2072 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, 2.5; |
2073 | 2 | depth = -7.5; | |
2074 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; |
2075 | 2 | SET_LINE; | |
2076 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0); |
2077 | |||
2078 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2079 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, 2.5)); |
2080 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, 2.5)); |
2081 | 2 | depth = -7.5; | |
2082 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); |
2083 | 2 | SET_LINE; | |
2084 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0); |
2085 | |||
2086 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2087 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, -2.5)); |
2088 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -2.5; |
2089 | 2 | depth = -7.5; | |
2090 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2091 | 2 | SET_LINE; | |
2092 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0); |
2093 | |||
2094 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2095 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, -2.5)); |
2096 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -2.5)); |
2097 | 2 | depth = -7.5; | |
2098 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2099 | 2 | SET_LINE; | |
2100 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, 0x0, &depth, 0x0); |
2101 | |||
2102 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2103 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(10.1))); |
2104 | 2 | SET_LINE; | |
2105 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2106 | |||
2107 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2108 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(10.1))); |
2109 | 2 | SET_LINE; | |
2110 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2111 | |||
2112 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2113 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
2114 | 2 | SET_LINE; | |
2115 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2116 | |||
2117 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2118 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
2119 | 2 | SET_LINE; | |
2120 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2121 | 2 | } | |
2122 | |||
2123 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspacecylinder) { |
2124 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s(5, 10); |
2125 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Halfspace hs(Vec3s(1, 0, 0), 0); |
2126 | |||
2127 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
2128 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
2129 | |||
2130 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
2131 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
2132 | |||
2133 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
2134 | Scalar depth; | ||
2135 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
2136 | |||
2137 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2138 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2139 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -2.5, 0, 0; |
2140 | 2 | depth = -5; | |
2141 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2142 | 2 | SET_LINE; | |
2143 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2144 | |||
2145 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2146 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2147 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-2.5, 0, 0)); |
2148 | 2 | depth = -5; | |
2149 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2150 | 2 | SET_LINE; | |
2151 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2152 | |||
2153 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2154 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(2.5, 0, 0)); |
2155 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -1.25, 0, 0; |
2156 | 2 | depth = -7.5; | |
2157 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2158 | 2 | SET_LINE; | |
2159 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2160 | |||
2161 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2162 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(2.5, 0, 0)); |
2163 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-1.25, 0, 0)); |
2164 | 2 | depth = -7.5; | |
2165 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2166 | 2 | SET_LINE; | |
2167 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2168 | |||
2169 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2170 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-2.5, 0, 0)); |
2171 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -3.75, 0, 0; |
2172 | 2 | depth = -2.5; | |
2173 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2174 | 2 | SET_LINE; | |
2175 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2176 | |||
2177 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2178 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-2.5, 0, 0)); |
2179 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-3.75, 0, 0)); |
2180 | 2 | depth = -2.5; | |
2181 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2182 | 2 | SET_LINE; | |
2183 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2184 | |||
2185 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2186 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
2187 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << Scalar(0.05), 0, 0; |
2188 | 2 | depth = Scalar(-10.1); | |
2189 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2190 | 2 | SET_LINE; | |
2191 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2192 | |||
2193 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2194 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
2195 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(Scalar(0.05), 0, 0)); |
2196 | 2 | depth = Scalar(-10.1); | |
2197 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2198 | 2 | SET_LINE; | |
2199 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2200 | |||
2201 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2202 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
2203 | 2 | SET_LINE; | |
2204 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2205 | |||
2206 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2207 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
2208 | 2 | SET_LINE; | |
2209 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2210 | |||
2211 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Halfspace(Vec3s(0, 1, 0), 0); |
2212 | |||
2213 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2214 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2215 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -2.5, 0; |
2216 | 2 | depth = -5; | |
2217 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2218 | 2 | SET_LINE; | |
2219 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2220 | |||
2221 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2222 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2223 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -2.5, 0)); |
2224 | 2 | depth = -5; | |
2225 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2226 | 2 | SET_LINE; | |
2227 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2228 | |||
2229 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2230 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 2.5, 0)); |
2231 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -1.25, 0; |
2232 | 2 | depth = -7.5; | |
2233 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2234 | 2 | SET_LINE; | |
2235 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2236 | |||
2237 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2238 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 2.5, 0)); |
2239 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -1.25, 0)); |
2240 | 2 | depth = -7.5; | |
2241 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2242 | 2 | SET_LINE; | |
2243 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2244 | |||
2245 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2246 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, -2.5, 0)); |
2247 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -3.75, 0; |
2248 | 2 | depth = -2.5; | |
2249 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2250 | 2 | SET_LINE; | |
2251 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2252 | |||
2253 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2254 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, -2.5, 0)); |
2255 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -3.75, 0)); |
2256 | 2 | depth = -2.5; | |
2257 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2258 | 2 | SET_LINE; | |
2259 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2260 | |||
2261 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2262 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2263 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, Scalar(0.05), 0; |
2264 | 2 | depth = Scalar(-10.1); | |
2265 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2266 | 2 | SET_LINE; | |
2267 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2268 | |||
2269 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2270 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2271 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, Scalar(0.05), 0)); |
2272 | 2 | depth = Scalar(-10.1); | |
2273 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2274 | 2 | SET_LINE; | |
2275 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2276 | |||
2277 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2278 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2279 | 2 | SET_LINE; | |
2280 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2281 | |||
2282 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2283 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2284 | 2 | SET_LINE; | |
2285 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2286 | |||
2287 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Halfspace(Vec3s(0, 0, 1), 0); |
2288 | |||
2289 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2290 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2291 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -2.5; |
2292 | 2 | depth = -5; | |
2293 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2294 | 2 | SET_LINE; | |
2295 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2296 | |||
2297 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2298 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2299 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -2.5)); |
2300 | 2 | depth = -5; | |
2301 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2302 | 2 | SET_LINE; | |
2303 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2304 | |||
2305 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2306 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, 2.5)); |
2307 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -1.25; |
2308 | 2 | depth = -7.5; | |
2309 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2310 | 2 | SET_LINE; | |
2311 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2312 | |||
2313 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2314 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, 2.5)); |
2315 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -1.25)); |
2316 | 2 | depth = -7.5; | |
2317 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2318 | 2 | SET_LINE; | |
2319 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2320 | |||
2321 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2322 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, -2.5)); |
2323 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -3.75; |
2324 | 2 | depth = -2.5; | |
2325 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2326 | 2 | SET_LINE; | |
2327 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2328 | |||
2329 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2330 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, -2.5)); |
2331 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -3.75)); |
2332 | 2 | depth = -2.5; | |
2333 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2334 | 2 | SET_LINE; | |
2335 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2336 | |||
2337 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2338 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(5.1))); |
2339 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, Scalar(0.05); |
2340 | 2 | depth = Scalar(-10.1); | |
2341 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2342 | 2 | SET_LINE; | |
2343 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2344 | |||
2345 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2346 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(5.1))); |
2347 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, Scalar(0.05))); |
2348 | 2 | depth = Scalar(-10.1); | |
2349 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2350 | 2 | SET_LINE; | |
2351 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2352 | |||
2353 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2354 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(-5.1))); |
2355 | 2 | SET_LINE; | |
2356 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2357 | |||
2358 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2359 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(-5.1))); |
2360 | 2 | SET_LINE; | |
2361 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2362 | 2 | } | |
2363 | |||
2364 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_planecylinder) { |
2365 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s(5, 10); |
2366 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane hs(Vec3s(1, 0, 0), 0); |
2367 | |||
2368 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
2369 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
2370 | |||
2371 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
2372 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
2373 | |||
2374 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
2375 | Scalar depth; | ||
2376 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
2377 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s p1, p2; |
2378 | |||
2379 | 2 | Scalar eps = Scalar(1e-6); | |
2380 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(eps, 0, 0)); |
2381 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2382 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << -5 + eps, 0, 0; |
2383 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
2384 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2385 | 2 | depth = -5 + eps; | |
2386 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
2387 | 2 | SET_LINE; | |
2388 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2389 | |||
2390 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2391 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2392 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2393 | 2 | depth = -5 + eps; | |
2394 | normal = | ||
2395 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | transform.getRotation() * Vec3s(-1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
2396 | 2 | SET_LINE; | |
2397 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2398 | |||
2399 | 2 | eps = Scalar(-1e-6); | |
2400 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(eps, 0, 0)); |
2401 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2402 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 5 + eps, 0, 0; |
2403 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
2404 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2405 | 2 | depth = -5 - eps; | |
2406 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
2407 | 2 | SET_LINE; | |
2408 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2409 | |||
2410 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2411 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2412 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2413 | 2 | depth = -5 - eps; | |
2414 | normal = | ||
2415 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | transform.getRotation() * Vec3s(-1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
2416 | 2 | SET_LINE; | |
2417 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2418 | |||
2419 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2420 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(2.5, 0, 0)); |
2421 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 5, 0, 0; |
2422 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 2.5, 0, 0; |
2423 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2424 | 2 | depth = -2.5; | |
2425 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
2426 | 2 | SET_LINE; | |
2427 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2428 | |||
2429 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2430 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(2.5, 0, 0)); |
2431 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2432 | 2 | depth = -2.5; | |
2433 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
2434 | 2 | SET_LINE; | |
2435 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2436 | |||
2437 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2438 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-2.5, 0, 0)); |
2439 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << -5, 0, 0; |
2440 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << -2.5, 0, 0; |
2441 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2442 | 2 | depth = -2.5; | |
2443 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2444 | 2 | SET_LINE; | |
2445 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2446 | |||
2447 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2448 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-2.5, 0, 0)); |
2449 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2450 | 2 | depth = -2.5; | |
2451 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2452 | 2 | SET_LINE; | |
2453 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2454 | |||
2455 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2456 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
2457 | 2 | SET_LINE; | |
2458 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2459 | |||
2460 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2461 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
2462 | 2 | SET_LINE; | |
2463 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2464 | |||
2465 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2466 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
2467 | 2 | SET_LINE; | |
2468 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2469 | |||
2470 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2471 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
2472 | 2 | SET_LINE; | |
2473 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2474 | |||
2475 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Plane(Vec3s(0, 1, 0), 0); |
2476 | |||
2477 | 2 | eps = Scalar(1e-6); | |
2478 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, eps, 0)); |
2479 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2480 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, -5 + eps, 0; |
2481 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
2482 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2483 | 2 | depth = -5 + eps; | |
2484 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; // (1, 0, 0) or (-1, 0, 0) |
2485 | 2 | SET_LINE; | |
2486 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2487 | |||
2488 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2489 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2490 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2491 | 2 | depth = -5 + eps; | |
2492 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); // (1, 0, 0) or (-1, 0, 0) |
2493 | 2 | SET_LINE; | |
2494 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2495 | |||
2496 | 2 | eps = Scalar(-1e-6); | |
2497 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, eps, 0)); |
2498 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2499 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 5 + eps, 0; |
2500 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
2501 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2502 | 2 | depth = -5 - eps; | |
2503 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; // (1, 0, 0) or (-1, 0, 0) |
2504 | 2 | SET_LINE; | |
2505 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2506 | |||
2507 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2508 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2509 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2510 | 2 | depth = -5 - eps; | |
2511 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); // (1, 0, 0) or (-1, 0, 0) |
2512 | 2 | SET_LINE; | |
2513 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2514 | |||
2515 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2516 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 2.5, 0)); |
2517 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 5, 0; |
2518 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 2.5, 0; |
2519 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2520 | 2 | depth = -2.5; | |
2521 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; |
2522 | 2 | SET_LINE; | |
2523 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2524 | |||
2525 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2526 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 2.5, 0)); |
2527 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2528 | 2 | depth = -2.5; | |
2529 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); |
2530 | 2 | SET_LINE; | |
2531 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2532 | |||
2533 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2534 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, -2.5, 0)); |
2535 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, -5, 0; |
2536 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, -2.5, 0; |
2537 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2538 | 2 | depth = -2.5; | |
2539 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2540 | 2 | SET_LINE; | |
2541 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2542 | |||
2543 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2544 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, -2.5, 0)); |
2545 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2546 | 2 | depth = -2.5; | |
2547 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2548 | 2 | SET_LINE; | |
2549 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2550 | |||
2551 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2552 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2553 | 2 | SET_LINE; | |
2554 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2555 | |||
2556 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2557 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2558 | 2 | SET_LINE; | |
2559 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2560 | |||
2561 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2562 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2563 | 2 | SET_LINE; | |
2564 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2565 | |||
2566 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2567 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2568 | 2 | SET_LINE; | |
2569 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2570 | |||
2571 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Plane(Vec3s(0, 0, 1), 0); |
2572 | |||
2573 | 2 | eps = Scalar(1e-6); | |
2574 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, 0, eps)); |
2575 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2576 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, -5 + eps; |
2577 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
2578 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2579 | 2 | depth = -5 + eps; | |
2580 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; // (1, 0, 0) or (-1, 0, 0) |
2581 | 2 | SET_LINE; | |
2582 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2583 | |||
2584 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2585 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2586 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2587 | 2 | depth = -5 + eps; | |
2588 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); // (1, 0, 0) or (-1, 0, 0) |
2589 | 2 | SET_LINE; | |
2590 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2591 | |||
2592 | 2 | eps = Scalar(-1e-6); | |
2593 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, 0, eps)); |
2594 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2595 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, 5 + eps; |
2596 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
2597 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2598 | 2 | depth = -5 - eps; | |
2599 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; // (1, 0, 0) or (-1, 0, 0) |
2600 | 2 | SET_LINE; | |
2601 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2602 | |||
2603 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2604 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2605 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2606 | 2 | depth = -5 - eps; | |
2607 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); // (1, 0, 0) or (-1, 0, 0) |
2608 | 2 | SET_LINE; | |
2609 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2610 | |||
2611 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2612 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, 2.5)); |
2613 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, 5; |
2614 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 2.5; |
2615 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2616 | 2 | depth = -2.5; | |
2617 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; |
2618 | 2 | SET_LINE; | |
2619 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2620 | |||
2621 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2622 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, 2.5)); |
2623 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2624 | 2 | depth = -2.5; | |
2625 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); |
2626 | 2 | SET_LINE; | |
2627 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2628 | |||
2629 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2630 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, -2.5)); |
2631 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, -5.; |
2632 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, -2.5; |
2633 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2634 | 2 | depth = -2.5; | |
2635 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2636 | 2 | SET_LINE; | |
2637 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2638 | |||
2639 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2640 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, -2.5)); |
2641 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2642 | 2 | depth = -2.5; | |
2643 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2644 | 2 | SET_LINE; | |
2645 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2646 | |||
2647 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2648 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(10.1))); |
2649 | 2 | SET_LINE; | |
2650 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2651 | |||
2652 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2653 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(10.1))); |
2654 | 2 | SET_LINE; | |
2655 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2656 | |||
2657 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2658 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
2659 | 2 | SET_LINE; | |
2660 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2661 | |||
2662 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2663 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
2664 | 2 | SET_LINE; | |
2665 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2666 | 2 | } | |
2667 | |||
2668 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspacecone) { |
2669 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s(5, 10); |
2670 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Halfspace hs(Vec3s(1, 0, 0), 0); |
2671 | |||
2672 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
2673 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
2674 | |||
2675 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
2676 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
2677 | |||
2678 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
2679 | Scalar depth; | ||
2680 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
2681 | |||
2682 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2683 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2684 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -2.5, 0, -5; |
2685 | 2 | depth = -5; | |
2686 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2687 | 2 | SET_LINE; | |
2688 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2689 | |||
2690 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2691 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2692 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-2.5, 0, -5)); |
2693 | 2 | depth = -5; | |
2694 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2695 | 2 | SET_LINE; | |
2696 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2697 | |||
2698 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2699 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(2.5, 0, 0)); |
2700 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -1.25, 0, -5; |
2701 | 2 | depth = -7.5; | |
2702 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2703 | 2 | SET_LINE; | |
2704 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2705 | |||
2706 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2707 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(2.5, 0, 0)); |
2708 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-1.25, 0, -5)); |
2709 | 2 | depth = -7.5; | |
2710 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2711 | 2 | SET_LINE; | |
2712 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2713 | |||
2714 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2715 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-2.5, 0, 0)); |
2716 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << -3.75, 0, -5; |
2717 | 2 | depth = -2.5; | |
2718 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2719 | 2 | SET_LINE; | |
2720 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2721 | |||
2722 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2723 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-2.5, 0, 0)); |
2724 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(-3.75, 0, -5)); |
2725 | 2 | depth = -2.5; | |
2726 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2727 | 2 | SET_LINE; | |
2728 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2729 | |||
2730 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2731 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
2732 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << Scalar(0.05), 0, -5; |
2733 | 2 | depth = Scalar(-10.1); | |
2734 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2735 | 2 | SET_LINE; | |
2736 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2737 | |||
2738 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2739 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
2740 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(Scalar(0.05), 0, -5)); |
2741 | 2 | depth = Scalar(-10.1); | |
2742 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2743 | 2 | SET_LINE; | |
2744 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2745 | |||
2746 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2747 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
2748 | 2 | SET_LINE; | |
2749 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2750 | |||
2751 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2752 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
2753 | 2 | SET_LINE; | |
2754 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2755 | |||
2756 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Halfspace(Vec3s(0, 1, 0), 0); |
2757 | |||
2758 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2759 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2760 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -2.5, -5; |
2761 | 2 | depth = -5; | |
2762 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2763 | 2 | SET_LINE; | |
2764 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2765 | |||
2766 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2767 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2768 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -2.5, -5)); |
2769 | 2 | depth = -5; | |
2770 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2771 | 2 | SET_LINE; | |
2772 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2773 | |||
2774 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2775 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 2.5, 0)); |
2776 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -1.25, -5; |
2777 | 2 | depth = -7.5; | |
2778 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2779 | 2 | SET_LINE; | |
2780 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2781 | |||
2782 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2783 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 2.5, 0)); |
2784 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -1.25, -5)); |
2785 | 2 | depth = -7.5; | |
2786 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2787 | 2 | SET_LINE; | |
2788 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2789 | |||
2790 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2791 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, -2.5, 0)); |
2792 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, -3.75, -5; |
2793 | 2 | depth = -2.5; | |
2794 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2795 | 2 | SET_LINE; | |
2796 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2797 | |||
2798 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2799 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, -2.5, 0)); |
2800 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, -3.75, -5)); |
2801 | 2 | depth = -2.5; | |
2802 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2803 | 2 | SET_LINE; | |
2804 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2805 | |||
2806 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2807 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2808 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, Scalar(0.05), -5; |
2809 | 2 | depth = Scalar(-10.1); | |
2810 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
2811 | 2 | SET_LINE; | |
2812 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2813 | |||
2814 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2815 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(5.1), 0)); |
2816 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, Scalar(0.05), -5)); |
2817 | 2 | depth = Scalar(-10.1); | |
2818 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
2819 | 2 | SET_LINE; | |
2820 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2821 | |||
2822 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2823 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2824 | 2 | SET_LINE; | |
2825 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2826 | |||
2827 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2828 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
2829 | 2 | SET_LINE; | |
2830 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2831 | |||
2832 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Halfspace(Vec3s(0, 0, 1), 0); |
2833 | |||
2834 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2835 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2836 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -2.5; |
2837 | 2 | depth = -5; | |
2838 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2839 | 2 | SET_LINE; | |
2840 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2841 | |||
2842 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2843 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2844 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -2.5)); |
2845 | 2 | depth = -5; | |
2846 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2847 | 2 | SET_LINE; | |
2848 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2849 | |||
2850 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2851 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, 2.5)); |
2852 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -1.25; |
2853 | 2 | depth = -7.5; | |
2854 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2855 | 2 | SET_LINE; | |
2856 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2857 | |||
2858 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2859 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, 2.5)); |
2860 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -1.25)); |
2861 | 2 | depth = -7.5; | |
2862 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2863 | 2 | SET_LINE; | |
2864 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2865 | |||
2866 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2867 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, -2.5)); |
2868 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, -3.75; |
2869 | 2 | depth = -2.5; | |
2870 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2871 | 2 | SET_LINE; | |
2872 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2873 | |||
2874 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2875 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, -2.5)); |
2876 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, -3.75)); |
2877 | 2 | depth = -2.5; | |
2878 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2879 | 2 | SET_LINE; | |
2880 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2881 | |||
2882 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2883 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(5.1))); |
2884 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << 0, 0, Scalar(0.05); |
2885 | 2 | depth = Scalar(-10.1); | |
2886 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
2887 | 2 | SET_LINE; | |
2888 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2889 | |||
2890 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2891 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(5.1))); |
2892 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = transform.transform(Vec3s(0, 0, Scalar(0.05))); |
2893 | 2 | depth = Scalar(-10.1); | |
2894 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
2895 | 2 | SET_LINE; | |
2896 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2897 | |||
2898 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2899 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(-5.1))); |
2900 | 2 | SET_LINE; | |
2901 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2902 | |||
2903 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2904 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(-5.1))); |
2905 | 2 | SET_LINE; | |
2906 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
2907 | 2 | } | |
2908 | |||
2909 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_planecone) { |
2910 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s(5, 10); |
2911 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane hs(Vec3s(1, 0, 0), 0); |
2912 | |||
2913 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
2914 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
2915 | |||
2916 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
2917 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
2918 | |||
2919 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
2920 | Scalar depth; | ||
2921 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
2922 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s p1, p2; |
2923 | |||
2924 | 2 | Scalar eps = Scalar(1e-6); | |
2925 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(eps, 0, 0)); |
2926 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2927 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << -5 + eps, 0, -5; |
2928 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, -5; |
2929 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2930 | 2 | depth = -5 + eps; | |
2931 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
2932 | 2 | SET_LINE; | |
2933 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2934 | |||
2935 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2936 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2937 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2938 | 2 | depth = -5 + eps; | |
2939 | normal = | ||
2940 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | transform.getRotation() * Vec3s(-1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
2941 | 2 | SET_LINE; | |
2942 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2943 | |||
2944 | 2 | eps = Scalar(-1e-6); | |
2945 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(eps, 0, 0)); |
2946 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
2947 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 5 + eps, 0, -5; |
2948 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, -5; |
2949 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2950 | 2 | depth = -5 - eps; | |
2951 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; // (1, 0, 0) or (-1, 0, 0) |
2952 | 2 | SET_LINE; | |
2953 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2954 | |||
2955 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
2956 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
2957 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2958 | 2 | depth = -5 - eps; | |
2959 | normal = | ||
2960 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | transform.getRotation() * Vec3s(-1, 0, 0); // (1, 0, 0) or (-1, 0, 0) |
2961 | 2 | SET_LINE; | |
2962 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
2963 | |||
2964 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2965 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(2.5, 0, 0)); |
2966 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 5, 0, -5; |
2967 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 2.5, 0, -5; |
2968 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2969 | 2 | depth = -2.5; | |
2970 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 1, 0, 0; |
2971 | 2 | SET_LINE; | |
2972 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2973 | |||
2974 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2975 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(2.5, 0, 0)); |
2976 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2977 | 2 | depth = -2.5; | |
2978 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(1, 0, 0); |
2979 | 2 | SET_LINE; | |
2980 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2981 | |||
2982 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
2983 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(-2.5, 0, 0)); |
2984 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << -5, 0, -5; |
2985 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << -2.5, 0, -5; |
2986 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
2987 | 2 | depth = -2.5; | |
2988 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << -1, 0, 0; |
2989 | 2 | SET_LINE; | |
2990 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2991 | |||
2992 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
2993 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(-2.5, 0, 0)); |
2994 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
2995 | 2 | depth = -2.5; | |
2996 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(-1, 0, 0); |
2997 | 2 | SET_LINE; | |
2998 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
2999 | |||
3000 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3001 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
3002 | 2 | SET_LINE; | |
3003 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3004 | |||
3005 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3006 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(5.1), 0, 0)); |
3007 | 2 | SET_LINE; | |
3008 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3009 | |||
3010 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3011 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
3012 | 2 | SET_LINE; | |
3013 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3014 | |||
3015 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3016 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(Scalar(-5.1), 0, 0)); |
3017 | 2 | SET_LINE; | |
3018 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3019 | |||
3020 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Plane(Vec3s(0, 1, 0), 0); |
3021 | |||
3022 | 2 | eps = Scalar(1e-6); | |
3023 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, eps, 0)); |
3024 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
3025 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, -5 + eps, -5; |
3026 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, -5; |
3027 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3028 | 2 | depth = -5 + eps; | |
3029 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; // (1, 0, 0) or (-1, 0, 0) |
3030 | 2 | SET_LINE; | |
3031 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3032 | |||
3033 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
3034 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3035 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3036 | 2 | depth = -5 + eps; | |
3037 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); // (1, 0, 0) or (-1, 0, 0) |
3038 | 2 | SET_LINE; | |
3039 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3040 | |||
3041 | 2 | eps = Scalar(-1e-6); | |
3042 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, eps, 0)); |
3043 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
3044 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 5 + eps, -5; |
3045 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, -5; |
3046 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3047 | 2 | depth = -5 - eps; | |
3048 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; // (1, 0, 0) or (-1, 0, 0) |
3049 | 2 | SET_LINE; | |
3050 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3051 | |||
3052 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
3053 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3054 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3055 | 2 | depth = -5 - eps; | |
3056 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); // (1, 0, 0) or (-1, 0, 0) |
3057 | 2 | SET_LINE; | |
3058 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3059 | |||
3060 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3061 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 2.5, 0)); |
3062 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 5, -5; |
3063 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 2.5, -5; |
3064 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3065 | 2 | depth = -2.5; | |
3066 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 1, 0; |
3067 | 2 | SET_LINE; | |
3068 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3069 | |||
3070 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3071 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 2.5, 0)); |
3072 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3073 | 2 | depth = -2.5; | |
3074 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 1, 0); |
3075 | 2 | SET_LINE; | |
3076 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3077 | |||
3078 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3079 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, -2.5, 0)); |
3080 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, -5, -5; |
3081 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, -2.5, -5; |
3082 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3083 | 2 | depth = -2.5; | |
3084 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
3085 | 2 | SET_LINE; | |
3086 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3087 | |||
3088 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3089 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, -2.5, 0)); |
3090 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3091 | 2 | depth = -2.5; | |
3092 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, -1, 0); |
3093 | 2 | SET_LINE; | |
3094 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3095 | |||
3096 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3097 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(5.1), 0)); |
3098 | 2 | SET_LINE; | |
3099 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3100 | |||
3101 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3102 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(5.1), 0)); |
3103 | 2 | SET_LINE; | |
3104 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3105 | |||
3106 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3107 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
3108 | 2 | SET_LINE; | |
3109 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3110 | |||
3111 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3112 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, Scalar(-5.1), 0)); |
3113 | 2 | SET_LINE; | |
3114 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3115 | |||
3116 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | hs = Plane(Vec3s(0, 0, 1), 0); |
3117 | |||
3118 | 2 | eps = Scalar(1e-6); | |
3119 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, 0, eps)); |
3120 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
3121 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, -5 + eps; |
3122 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
3123 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3124 | 2 | depth = -5 + eps; | |
3125 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; // (1, 0, 0) or (-1, 0, 0) |
3126 | 2 | SET_LINE; | |
3127 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3128 | |||
3129 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
3130 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3131 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3132 | 2 | depth = -5 + eps; | |
3133 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); // (1, 0, 0) or (-1, 0, 0) |
3134 | 2 | SET_LINE; | |
3135 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3136 | |||
3137 | 2 | eps = Scalar(-1e-6); | |
3138 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf1 = Transform3s(Vec3s(0, 0, eps)); |
3139 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf2 = Transform3s(); |
3140 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, 5 + eps; |
3141 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 0; |
3142 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3143 | 2 | depth = -5 - eps; | |
3144 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; // (1, 0, 0) or (-1, 0, 0) |
3145 | 2 | SET_LINE; | |
3146 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3147 | |||
3148 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = transform * tf1; |
3149 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3150 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3151 | 2 | depth = -5 - eps; | |
3152 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); // (1, 0, 0) or (-1, 0, 0) |
3153 | 2 | SET_LINE; | |
3154 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal, true); |
3155 | |||
3156 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3157 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, 2.5)); |
3158 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, 5; |
3159 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, 2.5; |
3160 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3161 | 2 | depth = -2.5; | |
3162 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, 1; |
3163 | 2 | SET_LINE; | |
3164 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3165 | |||
3166 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3167 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, 2.5)); |
3168 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3169 | 2 | depth = -2.5; | |
3170 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, 1); |
3171 | 2 | SET_LINE; | |
3172 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3173 | |||
3174 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3175 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, -2.5)); |
3176 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p1 << 0, 0, -5; |
3177 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | p2 << 0, 0, -2.5; |
3178 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << (p1 + p2) / 2; |
3179 | 2 | depth = -2.5; | |
3180 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, 0, -1; |
3181 | 2 | SET_LINE; | |
3182 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3183 | |||
3184 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3185 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, -2.5)); |
3186 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact = transform.transform((p1 + p2) / 2); |
3187 | 2 | depth = -2.5; | |
3188 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
|
2 | normal = transform.getRotation() * Vec3s(0, 0, -1); |
3189 | 2 | SET_LINE; | |
3190 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, true, &contact, &depth, &normal); |
3191 | |||
3192 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3193 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(10.1))); |
3194 | 2 | SET_LINE; | |
3195 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3196 | |||
3197 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3198 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(10.1))); |
3199 | 2 | SET_LINE; | |
3200 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3201 | |||
3202 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | tf1 = Transform3s(); |
3203 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | tf2 = Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
3204 | 2 | SET_LINE; | |
3205 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3206 | |||
3207 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3208 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | tf2 = transform * Transform3s(Vec3s(0, 0, Scalar(-10.1))); |
3209 | 2 | SET_LINE; | |
3210 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(s, tf1, hs, tf2, false); |
3211 | 2 | } | |
3212 | |||
3213 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_planeplane) { |
3214 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
3215 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
3216 | |||
3217 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
3218 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
3219 | Scalar distance; | ||
3220 | |||
3221 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3222 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3223 | |||
3224 | { | ||
3225 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3226 | 2 | Scalar offset = Scalar(3.14); | |
3227 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane1(n, offset); |
3228 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane2(n, offset); |
3229 | |||
3230 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3231 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3232 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = n; |
3233 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | contact = plane1.n * plane1.d; |
3234 | 2 | distance = 0.; | |
3235 | 2 | SET_LINE; | |
3236 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, true, &contact, &distance, |
3237 | &normal); | ||
3238 | |||
3239 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3240 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3241 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3242 | contact = | ||
3243 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | transform.getRotation() * plane1.n * |
3244 | ✗ | (plane1.d + | |
3245 |
3/6✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
4 | (transform.getRotation() * plane1.n).dot(transform.getTranslation())); |
3246 | 2 | SET_LINE; | |
3247 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, true, &contact, &distance, |
3248 | &normal); | ||
3249 | 2 | } | |
3250 | |||
3251 | { | ||
3252 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3253 | 2 | Scalar offset1 = Scalar(3.14); | |
3254 | 2 | Scalar offset2 = offset1 + Scalar(1.19841); | |
3255 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane1(n, offset1); |
3256 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane2(n, offset2); |
3257 | |||
3258 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3259 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3260 | 2 | SET_LINE; | |
3261 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, false); |
3262 | |||
3263 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3264 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3265 | 2 | SET_LINE; | |
3266 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, false); |
3267 | 2 | } | |
3268 | |||
3269 | { | ||
3270 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3271 | 2 | Scalar offset1 = Scalar(3.14); | |
3272 | 2 | Scalar offset2 = offset1 - Scalar(1.19841); | |
3273 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane1(n, offset1); |
3274 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane2(n, offset2); |
3275 | |||
3276 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3277 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3278 | 2 | SET_LINE; | |
3279 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, false); |
3280 | |||
3281 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3282 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3283 | 2 | SET_LINE; | |
3284 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, false); |
3285 | 2 | } | |
3286 | |||
3287 | { | ||
3288 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n1(1, 0, 0); |
3289 | 2 | Scalar offset1 = Scalar(3.14); | |
3290 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane1(n1, offset1); |
3291 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n2(0, 0, 1); |
3292 | 2 | Scalar offset2 = Scalar(-2.13); | |
3293 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane2(n2, offset2); |
3294 | |||
3295 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3296 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3297 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
3298 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | contact << offset1, 0, offset2; |
3299 | 2 | SET_LINE; | |
3300 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, true, &contact, NULL, &normal); |
3301 | |||
3302 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3303 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3304 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3305 | 2 | SET_LINE; | |
3306 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, true, NULL, NULL, &normal); |
3307 | 2 | } | |
3308 | |||
3309 | { | ||
3310 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n1(1, 0, 0); |
3311 | 2 | Scalar offset1 = Scalar(3.14); | |
3312 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane1(n1, offset1); |
3313 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n2(1, 1, 1); |
3314 | 2 | Scalar offset2 = Scalar(-2.13); | |
3315 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane2(n2, offset2); |
3316 | |||
3317 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3318 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3319 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, Scalar(-0.5774), Scalar(0.5774); |
3320 | 2 | SET_LINE; | |
3321 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, true, NULL, NULL, &normal, false, |
3322 | Scalar(1e-3)); | ||
3323 | |||
3324 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3325 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3326 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3327 | 2 | SET_LINE; | |
3328 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(plane1, tf1, plane2, tf2, true, NULL, NULL, &normal, false, |
3329 | Scalar(1e-3)); | ||
3330 | 2 | } | |
3331 | 2 | } | |
3332 | |||
3333 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspacehalfspace) { |
3334 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
3335 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
3336 | |||
3337 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
3338 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
3339 | Scalar distance; | ||
3340 | |||
3341 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3342 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3343 | |||
3344 | { | ||
3345 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3346 | 2 | Scalar offset = Scalar(3.14); | |
3347 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf1(n, offset); |
3348 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf2(n, offset); |
3349 | |||
3350 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3351 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3352 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = n; |
3353 | 2 | SET_LINE; | |
3354 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal); |
3355 | |||
3356 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3357 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3358 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3359 | 2 | SET_LINE; | |
3360 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal); |
3361 | 2 | } | |
3362 | |||
3363 | { | ||
3364 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3365 | 2 | Scalar offset1 = Scalar(3.14); | |
3366 | 2 | Scalar offset2 = offset1 + Scalar(1.19841); | |
3367 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf1(n, offset1); |
3368 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf2(n, offset2); |
3369 | |||
3370 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3371 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3372 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = n; |
3373 | 2 | SET_LINE; | |
3374 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal); |
3375 | |||
3376 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3377 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3378 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3379 | 2 | SET_LINE; | |
3380 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal); |
3381 | 2 | } | |
3382 | |||
3383 | { | ||
3384 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3385 | 2 | Scalar offset1 = Scalar(3.14); | |
3386 | 2 | Scalar offset2 = offset1 - Scalar(1.19841); | |
3387 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf1(n, offset1); |
3388 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Halfspace hf2(-n, -offset2); |
3389 | |||
3390 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3391 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3392 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = n; |
3393 | 2 | distance = offset2 - offset1; | |
3394 | 2 | SET_LINE; | |
3395 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, &distance, &normal); |
3396 | |||
3397 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3398 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3399 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3400 | 2 | SET_LINE; | |
3401 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, &distance, &normal); |
3402 | 2 | } | |
3403 | |||
3404 | { | ||
3405 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n1(1, 0, 0); |
3406 | 2 | Scalar offset1 = Scalar(3.14); | |
3407 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf1(n1, offset1); |
3408 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n2(0, 0, 1); |
3409 | 2 | Scalar offset2 = Scalar(-2.13); | |
3410 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf2(n2, offset2); |
3411 | |||
3412 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3413 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3414 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
3415 | 2 | SET_LINE; | |
3416 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal); |
3417 | |||
3418 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3419 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3420 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3421 | 2 | SET_LINE; | |
3422 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal); |
3423 | 2 | } | |
3424 | |||
3425 | { | ||
3426 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n1(1, 0, 0); |
3427 | 2 | Scalar offset1 = Scalar(3.14); | |
3428 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf1(n1, offset1); |
3429 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n2(1, 1, 1); |
3430 | 2 | Scalar offset2 = Scalar(-2.13); | |
3431 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf2(n2, offset2); |
3432 | |||
3433 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3434 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3435 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, Scalar(-0.5774), Scalar(0.5774); |
3436 | 2 | SET_LINE; | |
3437 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal, false, |
3438 | Scalar(1e-3)); | ||
3439 | |||
3440 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3441 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3442 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3443 | 2 | SET_LINE; | |
3444 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf1, tf1, hf2, tf2, true, NULL, NULL, &normal, false, |
3445 | Scalar(1e-3)); | ||
3446 | 2 | } | |
3447 | 2 | } | |
3448 | |||
3449 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(collide_halfspaceplane) { |
3450 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf1; |
3451 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s tf2; |
3452 | |||
3453 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s normal; |
3454 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s contact; |
3455 | Scalar distance; | ||
3456 | |||
3457 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3458 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3459 | |||
3460 | { | ||
3461 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3462 | 2 | Scalar offset = Scalar(3.14); | |
3463 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf(n, offset); |
3464 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane(n, offset); |
3465 | |||
3466 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3467 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3468 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = n; |
3469 | 2 | distance = 0; | |
3470 | 2 | SET_LINE; | |
3471 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, &distance, &normal); |
3472 | |||
3473 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3474 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3475 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3476 | 2 | SET_LINE; | |
3477 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, &distance, &normal); |
3478 | 2 | } | |
3479 | |||
3480 | { | ||
3481 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3482 | 2 | Scalar offset1 = Scalar(3.14); | |
3483 | 2 | Scalar offset2 = offset1 + Scalar(1.19841); | |
3484 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf(n, offset1); |
3485 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane(n, offset2); |
3486 | |||
3487 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3488 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3489 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = n; |
3490 | 2 | distance = offset2 - offset1; | |
3491 | 2 | SET_LINE; | |
3492 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, false); |
3493 | |||
3494 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3495 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3496 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3497 | 2 | SET_LINE; | |
3498 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, false); |
3499 | 2 | } | |
3500 | |||
3501 | { | ||
3502 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s n = Vec3s::Random().normalized(); |
3503 | 2 | Scalar offset1 = Scalar(3.14); | |
3504 | 2 | Scalar offset2 = offset1 - Scalar(1.19841); | |
3505 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf(n, offset1); |
3506 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane(n, offset2); |
3507 | |||
3508 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3509 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3510 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | normal = n; |
3511 | 2 | distance = offset2 - offset1; | |
3512 | 2 | SET_LINE; | |
3513 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, &distance, &normal); |
3514 | |||
3515 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3516 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3517 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3518 | 2 | SET_LINE; | |
3519 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, &distance, &normal); |
3520 | 2 | } | |
3521 | |||
3522 | { | ||
3523 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n1(1, 0, 0); |
3524 | 2 | Scalar offset1 = Scalar(3.14); | |
3525 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf(n1, offset1); |
3526 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n2(0, 0, 1); |
3527 | 2 | Scalar offset2 = Scalar(-2.13); | |
3528 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane(n2, offset2); |
3529 | |||
3530 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3531 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3532 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, -1, 0; |
3533 | 2 | SET_LINE; | |
3534 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, NULL, &normal); |
3535 | |||
3536 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3537 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3538 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3539 | 2 | SET_LINE; | |
3540 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, NULL, &normal); |
3541 | 2 | } | |
3542 | |||
3543 | { | ||
3544 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n1(1, 0, 0); |
3545 | 2 | Scalar offset1 = Scalar(3.14); | |
3546 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Halfspace hf(n1, offset1); |
3547 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Vec3s n2(1, 1, 1); |
3548 | 2 | Scalar offset2 = Scalar(-2.13); | |
3549 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Plane plane(n2, offset2); |
3550 | |||
3551 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setIdentity(); |
3552 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2.setIdentity(); |
3553 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | normal << 0, Scalar(-0.5774), Scalar(0.5774); |
3554 | 2 | SET_LINE; | |
3555 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, NULL, &normal, false, |
3556 | Scalar(1e-3)); | ||
3557 | |||
3558 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1 = transform; |
3559 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf2 = transform; |
3560 |
2/4✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
|
2 | normal = transform.getRotation() * normal; |
3561 | 2 | SET_LINE; | |
3562 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testShapeCollide(hf, tf1, plane, tf2, true, NULL, NULL, &normal, false, |
3563 | Scalar(1e-3)); | ||
3564 | 2 | } | |
3565 | 2 | } | |
3566 | |||
3567 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(GJKSolver_shapeDistance_spheresphere) { |
3568 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s1(20); |
3569 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s2(10); |
3570 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Vec3s closest_p1, closest_p2, normal; |
3571 | 2 | bool compute_penetration = true; | |
3572 | |||
3573 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3574 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3575 | |||
3576 | 2 | Scalar dist = -1; | |
3577 | |||
3578 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3579 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(40, 0, 0)), compute_penetration, |
3580 | closest_p1, closest_p2, normal); | ||
3581 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10) < 0.001); |
3582 | |||
3583 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3584 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(Scalar(30.1), 0, 0)), |
3585 | compute_penetration, closest_p1, closest_p2, normal); | ||
3586 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3587 | |||
3588 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3589 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(Scalar(29.9), 0, 0)), |
3590 | compute_penetration, closest_p1, closest_p2, normal); | ||
3591 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3592 | |||
3593 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(Vec3s(40, 0, 0)), s2, |
3594 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Transform3s(), compute_penetration, closest_p1, |
3595 | closest_p2, normal); | ||
3596 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10) < 0.001); |
3597 | |||
3598 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(Vec3s(Scalar(30.1), 0, 0)), s2, |
3599 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Transform3s(), compute_penetration, closest_p1, |
3600 | closest_p2, normal); | ||
3601 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3602 | |||
3603 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(Vec3s(Scalar(29.9), 0, 0)), s2, |
3604 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Transform3s(), compute_penetration, closest_p1, |
3605 | closest_p2, normal); | ||
3606 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist < 0); |
3607 | |||
3608 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3609 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(40, 0, 0)), |
3610 | compute_penetration, closest_p1, closest_p2, normal); | ||
3611 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10) < 0.001); |
3612 | |||
3613 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3614 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(Scalar(30.1), 0, 0)), |
3615 | compute_penetration, closest_p1, closest_p2, normal); | ||
3616 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3617 | |||
3618 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3619 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(Scalar(29.9), 0, 0)), |
3620 | compute_penetration, closest_p1, closest_p2, normal); | ||
3621 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist < 0); |
3622 | |||
3623 |
4/8✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
|
2 | dist = solver1.shapeDistance(s1, transform * Transform3s(Vec3s(40, 0, 0)), s2, |
3624 | transform, compute_penetration, closest_p1, | ||
3625 | closest_p2, normal); | ||
3626 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10) < 0.001); |
3627 | |||
3628 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3629 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform * Transform3s(Vec3s(Scalar(30.1), 0, 0)), s2, transform, |
3630 | compute_penetration, closest_p1, closest_p2, normal); | ||
3631 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3632 | |||
3633 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3634 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform * Transform3s(Vec3s(Scalar(29.9), 0, 0)), s2, transform, |
3635 | compute_penetration, closest_p1, closest_p2, normal); | ||
3636 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist < 0); |
3637 | 2 | } | |
3638 | |||
3639 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(GJKSolver_shapeDistance_boxbox) { |
3640 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s1(20, 40, 50); |
3641 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s2(10, 10, 10); |
3642 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Vec3s closest_p1, closest_p2, normal; |
3643 | 2 | bool compute_penetration = true; | |
3644 | |||
3645 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3646 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3647 | |||
3648 | Scalar dist; | ||
3649 | |||
3650 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
3651 | compute_penetration, closest_p1, closest_p2, | ||
3652 | normal); | ||
3653 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3654 | |||
3655 | dist = | ||
3656 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3657 | closest_p1, closest_p2, normal); | ||
3658 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3659 | |||
3660 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3661 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
3662 | compute_penetration, closest_p1, closest_p2, normal); | ||
3663 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3664 | |||
3665 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3666 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(Scalar(20.1), 0, 0)), |
3667 | compute_penetration, closest_p1, closest_p2, normal); | ||
3668 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10.1) < 0.001); |
3669 | |||
3670 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3671 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(0, Scalar(20.2), 0)), |
3672 | compute_penetration, closest_p1, closest_p2, normal); | ||
3673 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10.2) < 0.001); |
3674 | |||
3675 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3676 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(Scalar(10.1), Scalar(10.1), 0)), |
3677 | compute_penetration, closest_p1, closest_p2, normal); | ||
3678 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1 * 1.414) < 0.001); |
3679 | |||
3680 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver2.shapeDistance( |
3681 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
3682 | compute_penetration, closest_p1, closest_p2, normal); | ||
3683 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3684 | |||
3685 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver2.shapeDistance( |
3686 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(Scalar(20.1), 0, 0)), |
3687 | compute_penetration, closest_p1, closest_p2, normal); | ||
3688 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10.1) < 0.001); |
3689 | |||
3690 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver2.shapeDistance( |
3691 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(0, Scalar(20.1), 0)), |
3692 | compute_penetration, closest_p1, closest_p2, normal); | ||
3693 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 10.1) < 0.001); |
3694 | |||
3695 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver2.shapeDistance( |
3696 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s2, Transform3s(), s2, Transform3s(Vec3s(Scalar(10.1), Scalar(10.1), 0)), |
3697 | compute_penetration, closest_p1, closest_p2, normal); | ||
3698 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1 * 1.414) < 0.001); |
3699 | |||
3700 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3701 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(Scalar(15.1), 0, 0)), |
3702 | compute_penetration, closest_p1, closest_p2, normal); | ||
3703 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3704 | |||
3705 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3706 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(20, 0, 0)), compute_penetration, |
3707 | closest_p1, closest_p2, normal); | ||
3708 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 5) < 0.001); |
3709 | |||
3710 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3711 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(20, 0, 0)), |
3712 | compute_penetration, closest_p1, closest_p2, normal); | ||
3713 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 5) < 0.001); |
3714 | 2 | } | |
3715 | |||
3716 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(GJKSolver_shapeDistance_cylinderbox) { |
3717 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s1(Scalar(0.029), Scalar(0.1)); |
3718 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s2(Scalar(1.6), Scalar(0.6), Scalar(0.025)); |
3719 | |||
3720 | using Quat = Eigen::Quaternion<Scalar>; | ||
3721 | Transform3s tf1( | ||
3722 | ✗ | Quat(Scalar(0.5279170511703305), Scalar(-0.50981118132505521), | |
3723 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Scalar(-0.67596178682051911), Scalar(0.0668715876735793)), |
3724 | ✗ | Vec3s(Scalar(0.041218354748013122), Scalar(1.2022554710435607), | |
3725 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
4 | Scalar(0.77338855025700015))); |
3726 | |||
3727 | Transform3s tf2( | ||
3728 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Quat(Scalar(0.70738826916719977), 0, 0, Scalar(0.70682518110536596)), |
3729 | ✗ | Vec3s(Scalar(-0.29936284351096382), Scalar(0.80023864435868775), | |
3730 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
4 | Scalar(0.71750000000000003))); |
3731 | |||
3732 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | GJKSolver solver; |
3733 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Vec3s p1, p2, normal; |
3734 | 2 | bool compute_penetration = true; | |
3735 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver.shapeDistance(s1, tf1, s2, tf2, compute_penetration, p1, p2, normal); |
3736 | // If objects are not colliding, p2 should be outside the cylinder and | ||
3737 | // p1 should be outside the box | ||
3738 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s p2Loc(tf1.inverse().transform(p2)); |
3739 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
|
2 | bool p2_in_cylinder((fabs(p2Loc[2]) <= s1.halfLength) && |
3740 | ✗ | (p2Loc[0] * p2Loc[0] + p2Loc[1] * p2Loc[1] <= s1.radius)); | |
3741 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Vec3s p1Loc(tf2.inverse().transform(p1)); |
3742 |
5/10✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
|
2 | bool p1_in_box = (p1Loc.array().abs() <= s2.halfSide.array()).all(); |
3743 |
5/10✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
|
2 | std::cout << "p2 in cylinder = (" << p2Loc.transpose() << ")" << std::endl; |
3744 |
5/10✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
|
2 | std::cout << "p1 in box = (" << p1Loc.transpose() << ")" << std::endl; |
3745 | |||
3746 |
8/20✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
✗ Branch 20 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 1 times.
✗ Branch 26 not taken.
✗ Branch 30 not taken.
✓ Branch 31 taken 1 times.
|
2 | BOOST_CHECK((!p2_in_cylinder && !p1_in_box) || (p2_in_cylinder && p1_in_box)); |
3747 | |||
3748 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver.shapeDistance(s2, tf2, s1, tf1, compute_penetration, p2, p1, normal); |
3749 | // If objects are not colliding, p2 should be outside the cylinder and | ||
3750 | // p1 should be outside the box | ||
3751 | |||
3752 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | p2Loc = tf1.inverse().transform(p2); |
3753 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
|
2 | p2_in_cylinder = (fabs(p2Loc[2]) <= s1.halfLength) && |
3754 | ✗ | (p2Loc[0] * p2Loc[0] + p2Loc[1] * p2Loc[1] <= s1.radius); | |
3755 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | p1Loc = tf2.inverse().transform(p1); |
3756 |
5/10✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
|
2 | p1_in_box = (p1Loc.array().abs() <= s2.halfSide.array()).all(); |
3757 | |||
3758 |
5/10✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
|
2 | std::cout << "p2 in cylinder = (" << p2Loc.transpose() << ")" << std::endl; |
3759 |
5/10✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
|
2 | std::cout << "p1 in box = (" << p1.transpose() << ")" << std::endl; |
3760 | |||
3761 |
8/20✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
✗ Branch 20 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 1 times.
✗ Branch 26 not taken.
✗ Branch 30 not taken.
✓ Branch 31 taken 1 times.
|
2 | BOOST_CHECK((!p2_in_cylinder && !p1_in_box) || (p2_in_cylinder && p1_in_box)); |
3762 | |||
3763 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | s1 = Cylinder(Scalar(0.06), Scalar(0.1)); |
3764 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setTranslation(Vec3s(Scalar(-0.66734052046473924), |
3765 | ✗ | Scalar(0.22219183277457269), | |
3766 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Scalar(0.76825248755616293))); |
3767 | using Quat = Eigen::Quaternion<Scalar>; | ||
3768 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | tf1.setQuatRotation( |
3769 | ✗ | Quat(Scalar(0.52613359459338371), Scalar(0.32189408354839893), | |
3770 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Scalar(0.70415587451837913), Scalar(-0.35175580165512249))); |
3771 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver.shapeDistance(s1, tf1, s2, tf2, compute_penetration, p1, p2, normal); |
3772 | 2 | } | |
3773 | |||
3774 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(GJKSolver_shapeDistance_boxsphere) { |
3775 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere s1(20); |
3776 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box s2(5, 5, 5); |
3777 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Vec3s closest_p1, closest_p2, normal; |
3778 | 2 | bool compute_penetration = true; | |
3779 | |||
3780 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3781 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3782 | |||
3783 | Scalar dist; | ||
3784 | |||
3785 | 2 | int N = 10; | |
3786 |
2/2✓ Branch 0 taken 11 times.
✓ Branch 1 taken 1 times.
|
24 | for (int i = 0; i < N + 1; ++i) { |
3787 |
1/2✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
|
22 | Scalar dbox = Scalar(0.0001) + (s1.radius + s2.halfSide(0)) * Scalar(i) * |
3788 | 22 | 4 / (3 * Scalar(N)); | |
3789 |
3/6✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 11 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 11 times.
✗ Branch 8 not taken.
|
22 | dist = solver1.shapeDistance(s1, Transform3s(Vec3s(dbox, 0., 0.)), s2, |
3790 |
1/2✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
|
44 | Transform3s(), compute_penetration, closest_p1, |
3791 | closest_p2, normal); | ||
3792 |
7/14✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 11 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 11 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 11 times.
✗ Branch 12 not taken.
✓ Branch 16 taken 11 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 11 times.
✗ Branch 20 not taken.
✗ Branch 23 not taken.
✓ Branch 24 taken 11 times.
|
22 | BOOST_CHECK_CLOSE(dist, (dbox - s1.radius - s2.halfSide(0)), Scalar(1e-6)); |
3793 |
20/40✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 11 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 11 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 11 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 11 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 11 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 11 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 11 times.
✗ Branch 26 not taken.
✓ Branch 28 taken 11 times.
✗ Branch 29 not taken.
✓ Branch 31 taken 11 times.
✗ Branch 32 not taken.
✓ Branch 34 taken 11 times.
✗ Branch 35 not taken.
✓ Branch 37 taken 11 times.
✗ Branch 38 not taken.
✓ Branch 40 taken 11 times.
✗ Branch 41 not taken.
✓ Branch 43 taken 11 times.
✗ Branch 44 not taken.
✓ Branch 46 taken 11 times.
✗ Branch 47 not taken.
✓ Branch 49 taken 11 times.
✗ Branch 50 not taken.
✓ Branch 52 taken 11 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 11 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 11 times.
✗ Branch 59 not taken.
✗ Branch 69 not taken.
✓ Branch 70 taken 11 times.
|
22 | EIGEN_VECTOR_IS_APPROX(normal, -Vec3s(1, 0, 0), Scalar(1e-6)); |
3794 | |||
3795 | 22 | dist = | |
3796 |
1/2✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
|
22 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3797 | closest_p1, closest_p2, normal); | ||
3798 |
1/2✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
|
22 | dist = solver1.shapeDistance( |
3799 |
3/6✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 11 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 11 times.
✗ Branch 8 not taken.
|
44 | s1, transform * Transform3s(Vec3s(dbox, 0., 0.)), s2, transform, |
3800 | compute_penetration, closest_p1, closest_p2, normal); | ||
3801 |
7/14✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 11 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 11 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 11 times.
✗ Branch 12 not taken.
✓ Branch 16 taken 11 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 11 times.
✗ Branch 20 not taken.
✗ Branch 23 not taken.
✓ Branch 24 taken 11 times.
|
22 | BOOST_CHECK_CLOSE(dist, (dbox - s1.radius - s2.halfSide(0)), Scalar(1e-6)); |
3802 |
20/40✓ Branch 1 taken 11 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 11 times.
✗ Branch 6 not taken.
✓ Branch 10 taken 11 times.
✗ Branch 11 not taken.
✓ Branch 13 taken 11 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 11 times.
✗ Branch 17 not taken.
✓ Branch 19 taken 11 times.
✗ Branch 20 not taken.
✓ Branch 22 taken 11 times.
✗ Branch 23 not taken.
✓ Branch 25 taken 11 times.
✗ Branch 26 not taken.
✓ Branch 29 taken 11 times.
✗ Branch 30 not taken.
✓ Branch 32 taken 11 times.
✗ Branch 33 not taken.
✓ Branch 35 taken 11 times.
✗ Branch 36 not taken.
✓ Branch 38 taken 11 times.
✗ Branch 39 not taken.
✓ Branch 41 taken 11 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 11 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 11 times.
✗ Branch 49 not taken.
✓ Branch 51 taken 11 times.
✗ Branch 52 not taken.
✓ Branch 54 taken 11 times.
✗ Branch 55 not taken.
✓ Branch 57 taken 11 times.
✗ Branch 58 not taken.
✓ Branch 60 taken 11 times.
✗ Branch 61 not taken.
✗ Branch 71 not taken.
✓ Branch 72 taken 11 times.
|
22 | EIGEN_VECTOR_IS_APPROX(normal, -transform.getRotation().col(0), |
3803 | Scalar(1e-6)); | ||
3804 | } | ||
3805 | |||
3806 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
3807 | compute_penetration, closest_p1, closest_p2, | ||
3808 | normal); | ||
3809 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3810 | |||
3811 | 2 | dist = | |
3812 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3813 | closest_p1, closest_p2, normal); | ||
3814 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3815 | |||
3816 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3817 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(Scalar(22.6), 0, 0)), |
3818 | compute_penetration, closest_p1, closest_p2, normal); | ||
3819 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3820 | |||
3821 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3822 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(Scalar(22.6), 0, 0)), |
3823 | compute_penetration, closest_p1, closest_p2, normal); | ||
3824 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.01); |
3825 | |||
3826 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3827 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(40, 0, 0)), compute_penetration, |
3828 | closest_p1, closest_p2, normal); | ||
3829 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 17.5) < 0.001); |
3830 | |||
3831 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3832 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(40, 0, 0)), |
3833 | compute_penetration, closest_p1, closest_p2, normal); | ||
3834 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 17.5) < 0.001); |
3835 | 2 | } | |
3836 | |||
3837 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(GJKSolver_shapeDistance_cylindercylinder) { |
3838 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s1(5, 10); |
3839 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s2(5, 10); |
3840 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Vec3s closest_p1, closest_p2, normal; |
3841 | 2 | bool compute_penetration = true; | |
3842 | |||
3843 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3844 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3845 | |||
3846 | Scalar dist; | ||
3847 | |||
3848 | { | ||
3849 | // The following situations corresponds to the case where the two cylinders | ||
3850 | // are exactly superposed. This is the worst case for EPA which will take | ||
3851 | // forever to converge with default parameters. | ||
3852 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
3853 | compute_penetration, closest_p1, closest_p2, | ||
3854 | normal); | ||
3855 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3856 | |||
3857 | dist = | ||
3858 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3859 | closest_p1, closest_p2, normal); | ||
3860 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3861 | |||
3862 | // To handle the superposing case, we have to decrease the tolerance of EPA | ||
3863 | // and allow it to work with more vertices and faces. | ||
3864 | 2 | Scalar epa_tolerance_backup = solver1.epa_tolerance; | |
3865 | 2 | size_t epa_max_iterations_backup = solver1.epa_max_iterations; | |
3866 | 2 | solver1.epa_tolerance = Scalar(1e-2); | |
3867 | 2 | solver1.epa_max_iterations = 1000; | |
3868 | |||
3869 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
3870 | compute_penetration, closest_p1, closest_p2, | ||
3871 | normal); | ||
3872 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3873 | |||
3874 | dist = | ||
3875 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3876 | closest_p1, closest_p2, normal); | ||
3877 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3878 | |||
3879 | // We restore the original values of the EPA parameters | ||
3880 | 2 | solver1.epa_tolerance = epa_tolerance_backup; | |
3881 | 2 | solver1.epa_max_iterations = epa_max_iterations_backup; | |
3882 | } | ||
3883 | |||
3884 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3885 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
3886 | compute_penetration, closest_p1, closest_p2, normal); | ||
3887 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3888 | |||
3889 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3890 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
3891 | compute_penetration, closest_p1, closest_p2, normal); | ||
3892 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3893 | |||
3894 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3895 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(40, 0, 0)), compute_penetration, |
3896 | closest_p1, closest_p2, normal); | ||
3897 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 30) < 0.001); |
3898 | |||
3899 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3900 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(40, 0, 0)), |
3901 | compute_penetration, closest_p1, closest_p2, normal); | ||
3902 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 30) < 0.001); |
3903 | 2 | } | |
3904 | |||
3905 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(GJKSolver_shapeDistance_conecone) { |
3906 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s1(5, 10); |
3907 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s2(5, 10); |
3908 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Vec3s closest_p1, closest_p2, normal; |
3909 | 2 | bool compute_penetration = true; | |
3910 | |||
3911 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3912 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3913 | |||
3914 | Scalar dist; | ||
3915 | |||
3916 | { | ||
3917 | // The following situations corresponds to the case where the two cones | ||
3918 | // are exactly superposed. This is the worst case for EPA which will take | ||
3919 | // forever to converge with default parameters. | ||
3920 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
3921 | compute_penetration, closest_p1, closest_p2, | ||
3922 | normal); | ||
3923 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3924 | |||
3925 | dist = | ||
3926 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3927 | closest_p1, closest_p2, normal); | ||
3928 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3929 | |||
3930 | // To handle the superposing case, we have to decrease the tolerance of EPA | ||
3931 | // and allow it to work with more vertices and faces. | ||
3932 | 2 | Scalar epa_tolerance_backup = solver1.epa_tolerance; | |
3933 | 2 | size_t epa_max_iterations_backup = solver1.epa_max_iterations; | |
3934 | 2 | solver1.epa_tolerance = Scalar(1e-2); | |
3935 | 2 | solver1.epa_max_iterations = 1000; | |
3936 | |||
3937 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
3938 | compute_penetration, closest_p1, closest_p2, | ||
3939 | normal); | ||
3940 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3941 | |||
3942 | dist = | ||
3943 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3944 | closest_p1, closest_p2, normal); | ||
3945 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3946 | |||
3947 | // We restore the original values of the EPA parameters | ||
3948 | 2 | solver1.epa_tolerance = epa_tolerance_backup; | |
3949 | 2 | solver1.epa_max_iterations = epa_max_iterations_backup; | |
3950 | } | ||
3951 | |||
3952 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3953 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
3954 | compute_penetration, closest_p1, closest_p2, normal); | ||
3955 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3956 | |||
3957 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3958 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
3959 | compute_penetration, closest_p1, closest_p2, normal); | ||
3960 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.001); |
3961 | |||
3962 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3963 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(0, 0, 40)), compute_penetration, |
3964 | closest_p1, closest_p2, normal); | ||
3965 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 30) < 1); |
3966 | |||
3967 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
3968 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(0, 0, 40)), |
3969 | compute_penetration, closest_p1, closest_p2, normal); | ||
3970 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 30) < 1); |
3971 | 2 | } | |
3972 | |||
3973 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(GJKSolver_shapeDistance_conecylinder) { |
3974 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder s1(5, 10); |
3975 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone s2(5, 10); |
3976 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | Vec3s closest_p1, closest_p2, normal; |
3977 | 2 | bool compute_penetration = true; | |
3978 | |||
3979 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Transform3s transform; |
3980 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | generateRandomTransform(extents, transform); |
3981 | |||
3982 | Scalar dist; | ||
3983 | |||
3984 | { | ||
3985 | // The following situations corresponds to the case where the two cones | ||
3986 | // are exactly superposed. This is the worst case for EPA which will take | ||
3987 | // forever to converge with default parameters. | ||
3988 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
3989 | compute_penetration, closest_p1, closest_p2, | ||
3990 | normal); | ||
3991 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3992 | |||
3993 | dist = | ||
3994 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
3995 | closest_p1, closest_p2, normal); | ||
3996 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
3997 | |||
3998 | // To handle the superposing case, we have to decrease the tolerance of EPA | ||
3999 | // and allow it to work with more vertices and faces. | ||
4000 | 2 | Scalar epa_tolerance_backup = solver1.epa_tolerance; | |
4001 | 2 | size_t epa_max_iterations_backup = solver1.epa_max_iterations; | |
4002 | 2 | solver1.epa_tolerance = Scalar(1e-2); | |
4003 | 2 | solver1.epa_max_iterations = 1000; | |
4004 | |||
4005 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
2 | dist = solver1.shapeDistance(s1, Transform3s(), s2, Transform3s(), |
4006 | compute_penetration, closest_p1, closest_p2, | ||
4007 | normal); | ||
4008 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
4009 | |||
4010 | dist = | ||
4011 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | solver1.shapeDistance(s1, transform, s2, transform, compute_penetration, |
4012 | closest_p1, closest_p2, normal); | ||
4013 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(dist <= 0); |
4014 | |||
4015 | // We restore the original values of the EPA parameters | ||
4016 | 2 | solver1.epa_tolerance = epa_tolerance_backup; | |
4017 | 2 | solver1.epa_max_iterations = epa_max_iterations_backup; | |
4018 | } | ||
4019 | |||
4020 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
4021 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
4022 | compute_penetration, closest_p1, closest_p2, normal); | ||
4023 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.01); |
4024 | |||
4025 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
4026 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(Scalar(10.1), 0, 0)), |
4027 | compute_penetration, closest_p1, closest_p2, normal); | ||
4028 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 0.1) < 0.02); |
4029 | |||
4030 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
4031 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, Transform3s(), s2, Transform3s(Vec3s(40, 0, 0)), compute_penetration, |
4032 | closest_p1, closest_p2, normal); | ||
4033 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 30) < 0.01); |
4034 | |||
4035 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dist = solver1.shapeDistance( |
4036 |
3/6✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
|
4 | s1, transform, s2, transform * Transform3s(Vec3s(40, 0, 0)), |
4037 | compute_penetration, closest_p1, closest_p2, normal); | ||
4038 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
2 | BOOST_CHECK(fabs(dist - 30) < 0.1); |
4039 | 2 | } | |
4040 | |||
4041 | template <typename S1, typename S2> | ||
4042 | 1 | void testReversibleShapeDistance(const S1& s1, const S2& s2, Scalar distance) { | |
4043 | 1 | const Scalar half = Scalar(0.5); | |
4044 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | Transform3s tf1(Vec3s(-half * distance, 0.0, 0.0)); |
4045 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | Transform3s tf2(Vec3s(+half * distance, 0.0, 0.0)); |
4046 | |||
4047 | Scalar distA; | ||
4048 | Scalar distB; | ||
4049 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Vec3s p1A; |
4050 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Vec3s p1B; |
4051 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Vec3s p2A; |
4052 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Vec3s p2B; |
4053 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | Vec3s normalA, normalB; |
4054 | 1 | bool compute_penetration = true; | |
4055 | |||
4056 | 1 | const Scalar tol = Scalar(1e-6); | |
4057 | |||
4058 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | distA = solver1.shapeDistance(s1, tf1, s2, tf2, compute_penetration, p1A, p2A, |
4059 | normalA); | ||
4060 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | distB = solver1.shapeDistance(s2, tf2, s1, tf1, compute_penetration, p1B, p2B, |
4061 | normalB); | ||
4062 | |||
4063 |
3/8✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
|
1 | assert((distA <= 0 && distB <= 0) || (distA > 0 && distB > 0)); |
4064 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✓ Branch 21 taken 1 times.
|
1 | BOOST_CHECK_CLOSE(distA, distB, tol); // distances should be same |
4065 |
7/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✗ Branch 25 not taken.
✓ Branch 26 taken 1 times.
|
1 | BOOST_CHECK( |
4066 | isEqual(p1A, p2B, tol)); // closest points should in reverse order | ||
4067 |
7/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✗ Branch 25 not taken.
✓ Branch 26 taken 1 times.
|
1 | BOOST_CHECK(isEqual(p2A, p1B, tol)); |
4068 | |||
4069 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | distA = solver2.shapeDistance(s1, tf1, s2, tf2, compute_penetration, p1A, p2A, |
4070 | normalA); | ||
4071 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | distB = solver2.shapeDistance(s2, tf2, s1, tf1, compute_penetration, p1B, p2B, |
4072 | normalB); | ||
4073 | |||
4074 |
3/8✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
|
1 | assert((distA <= 0 && distB <= 0) || (distA > 0 && distB > 0)); |
4075 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
1 | BOOST_CHECK(solver1.gjk.status == solver2.gjk.status); |
4076 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✗ Branch 22 not taken.
✓ Branch 23 taken 1 times.
|
1 | BOOST_CHECK(solver1.epa.status == solver2.epa.status); |
4077 |
6/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 14 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✓ Branch 21 taken 1 times.
|
1 | BOOST_CHECK_CLOSE(distA, distB, tol); |
4078 |
7/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✗ Branch 25 not taken.
✓ Branch 26 taken 1 times.
|
1 | BOOST_CHECK(isEqual(p1A, p2B, tol)); |
4079 |
7/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✗ Branch 25 not taken.
✓ Branch 26 taken 1 times.
|
1 | BOOST_CHECK(isEqual(p2A, p1B, tol)); |
4080 | 1 | } | |
4081 | |||
4082 |
33/66✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 20 not taken.
✓ Branch 23 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 27 taken 1 times.
✗ Branch 28 not taken.
✓ Branch 30 taken 1 times.
✗ Branch 31 not taken.
✓ Branch 33 taken 1 times.
✗ Branch 34 not taken.
✓ Branch 36 taken 1 times.
✗ Branch 37 not taken.
✓ Branch 41 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 45 taken 1 times.
✗ Branch 46 not taken.
✓ Branch 48 taken 1 times.
✗ Branch 49 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 53 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 56 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 59 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 62 not taken.
✓ Branch 66 taken 1 times.
✗ Branch 67 not taken.
✓ Branch 70 taken 1 times.
✗ Branch 71 not taken.
✓ Branch 73 taken 1 times.
✗ Branch 74 not taken.
✓ Branch 77 taken 1 times.
✗ Branch 78 not taken.
✓ Branch 80 taken 1 times.
✗ Branch 81 not taken.
✓ Branch 83 taken 1 times.
✗ Branch 84 not taken.
✓ Branch 86 taken 1 times.
✗ Branch 87 not taken.
✓ Branch 91 taken 1 times.
✗ Branch 92 not taken.
✓ Branch 95 taken 1 times.
✗ Branch 96 not taken.
✓ Branch 98 taken 1 times.
✗ Branch 99 not taken.
✓ Branch 102 taken 1 times.
✗ Branch 103 not taken.
✓ Branch 105 taken 1 times.
✗ Branch 106 not taken.
✓ Branch 108 taken 1 times.
✗ Branch 109 not taken.
✓ Branch 111 taken 1 times.
✗ Branch 112 not taken.
✓ Branch 116 taken 1 times.
✗ Branch 117 not taken.
|
4 | BOOST_AUTO_TEST_CASE(reversibleShapeDistance_allshapes) { |
4083 | // This test check whether a shape distance algorithm is called for the | ||
4084 | // reverse case as well. For example, if FCL has sphere-capsule distance | ||
4085 | // algorithm, then this algorithm should be called for capsule-sphere case. | ||
4086 | |||
4087 | // Prepare all kinds of primitive shapes (7) -- box, sphere, capsule, cone, | ||
4088 | // cylinder, plane, halfspace | ||
4089 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Box box(10, 10, 10); |
4090 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Sphere sphere(5); |
4091 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Capsule capsule(5, 10); |
4092 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cone cone(5, 10); |
4093 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Cylinder cylinder(5, 10); |
4094 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Plane plane(Vec3s(0, 0, 0), 0.0); |
4095 |
2/4✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
2 | Halfspace halfspace(Vec3s(0, 0, 0), 0.0); |
4096 | |||
4097 | // Use sufficiently long distance so that all the primitive shapes CANNOT | ||
4098 | // intersect | ||
4099 | 2 | Scalar distance = 15.0; | |
4100 | |||
4101 | // If new shape distance algorithm is added for two distinct primitive | ||
4102 | // shapes, uncomment associated lines. For example, box-sphere intersection | ||
4103 | // algorithm is added, then uncomment box-sphere. | ||
4104 | |||
4105 | // testReversibleShapeDistance(box, sphere, distance); | ||
4106 | // testReversibleShapeDistance(box, capsule, distance); | ||
4107 | // testReversibleShapeDistance(box, cone, distance); | ||
4108 | // testReversibleShapeDistance(box, cylinder, distance); | ||
4109 | // testReversibleShapeDistance(box, plane, distance); | ||
4110 | // testReversibleShapeDistance(box, halfspace, distance); | ||
4111 | |||
4112 | 2 | SET_LINE; | |
4113 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | testReversibleShapeDistance(sphere, capsule, distance); |
4114 | // testReversibleShapeDistance(sphere, cone, distance); | ||
4115 | // testReversibleShapeDistance(sphere, cylinder, distance); | ||
4116 | // testReversibleShapeDistance(sphere, plane, distance); | ||
4117 | // testReversibleShapeDistance(sphere, halfspace, distance); | ||
4118 | |||
4119 | // testReversibleShapeDistance(capsule, cone, distance); | ||
4120 | // testReversibleShapeDistance(capsule, cylinder, distance); | ||
4121 | // testReversibleShapeDistance(capsule, plane, distance); | ||
4122 | // testReversibleShapeDistance(capsule, halfspace, distance); | ||
4123 | |||
4124 | // testReversibleShapeDistance(cone, cylinder, distance); | ||
4125 | // testReversibleShapeDistance(cone, plane, distance); | ||
4126 | // testReversibleShapeDistance(cone, halfspace, distance); | ||
4127 | |||
4128 | // testReversibleShapeDistance(cylinder, plane, distance); | ||
4129 | // testReversibleShapeDistance(cylinder, halfspace, distance); | ||
4130 | |||
4131 | // testReversibleShapeDistance(plane, halfspace, distance); | ||
4132 | 2 | } | |
4133 |