Skip to content

Commit 1f1a2cb

Browse files
committed
more formatting
1 parent f1c9636 commit 1f1a2cb

File tree

14 files changed

+2891
-2891
lines changed

14 files changed

+2891
-2891
lines changed

include/fcl/math/detail/polysolver-inl.h

Lines changed: 201 additions & 201 deletions
Large diffs are not rendered by default.

include/fcl/math/detail/polysolver.h

Lines changed: 80 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -1,80 +1,80 @@
1-
/*
2-
* Software License Agreement (BSD License)
3-
*
4-
* Copyright (c) 2011-2014, Willow Garage, Inc.
5-
* Copyright (c) 2014-2016, Open Source Robotics Foundation
6-
* All rights reserved.
7-
*
8-
* Redistribution and use in source and binary forms, with or without
9-
* modification, are permitted provided that the following conditions
10-
* are met:
11-
*
12-
* * Redistributions of source code must retain the above copyright
13-
* notice, this list of conditions and the following disclaimer.
14-
* * Redistributions in binary form must reproduce the above
15-
* copyright notice, this list of conditions and the following
16-
* disclaimer in the documentation and/or other materials provided
17-
* with the distribution.
18-
* * Neither the name of Open Source Robotics Foundation nor the names of its
19-
* contributors may be used to endorse or promote products derived
20-
* from this software without specific prior written permission.
21-
*
22-
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23-
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24-
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25-
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26-
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27-
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28-
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30-
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31-
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32-
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33-
* POSSIBILITY OF SUCH DAMAGE.
34-
*/
35-
36-
/** @author Jia Pan */
37-
38-
#ifndef FCL_NARROWPHASE_DETAIL_POLYSOLVER_H
39-
#define FCL_NARROWPHASE_DETAIL_POLYSOLVER_H
40-
41-
#include "fcl/export.h"
42-
43-
namespace fcl
44-
{
45-
46-
namespace detail {
47-
48-
/// @brief A class solves polynomial degree (1,2,3) equations
49-
template <typename S>
50-
class PolySolver
51-
{
52-
public:
53-
/// @brief Solve a linear equation with coefficients c, return roots s and number of roots
54-
static int solveLinear(S c[2], S s[1]);
55-
56-
/// @brief Solve a quadratic function with coefficients c, return roots s and number of roots
57-
static int solveQuadric(S c[3], S s[2]);
58-
59-
/// @brief Solve a cubic function with coefficients c, return roots s and number of roots
60-
static int solveCubic(S c[4], S s[3]);
61-
62-
private:
63-
/// @brief Check whether v is zero
64-
static bool isZero(S v);
65-
66-
/// @brief Compute v^{1/3}
67-
static bool cbrt(S v);
68-
69-
static constexpr S getNearZeroThreshold();
70-
};
71-
72-
using PolySolverf = PolySolver<float>;
73-
using PolySolverd = PolySolver<double>;
74-
75-
} // namespace detail
76-
} // namespace fcl
77-
78-
#include "fcl/math/detail/polysolver-inl.h"
79-
80-
#endif
1+
/*
2+
* Software License Agreement (BSD License)
3+
*
4+
* Copyright (c) 2011-2014, Willow Garage, Inc.
5+
* Copyright (c) 2014-2016, Open Source Robotics Foundation
6+
* All rights reserved.
7+
*
8+
* Redistribution and use in source and binary forms, with or without
9+
* modification, are permitted provided that the following conditions
10+
* are met:
11+
*
12+
* * Redistributions of source code must retain the above copyright
13+
* notice, this list of conditions and the following disclaimer.
14+
* * Redistributions in binary form must reproduce the above
15+
* copyright notice, this list of conditions and the following
16+
* disclaimer in the documentation and/or other materials provided
17+
* with the distribution.
18+
* * Neither the name of Open Source Robotics Foundation nor the names of its
19+
* contributors may be used to endorse or promote products derived
20+
* from this software without specific prior written permission.
21+
*
22+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23+
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24+
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25+
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26+
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27+
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28+
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29+
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30+
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31+
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32+
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33+
* POSSIBILITY OF SUCH DAMAGE.
34+
*/
35+
36+
/** @author Jia Pan */
37+
38+
#ifndef FCL_NARROWPHASE_DETAIL_POLYSOLVER_H
39+
#define FCL_NARROWPHASE_DETAIL_POLYSOLVER_H
40+
41+
#include "fcl/export.h"
42+
43+
namespace fcl
44+
{
45+
46+
namespace detail {
47+
48+
/// @brief A class solves polynomial degree (1,2,3) equations
49+
template <typename S>
50+
class PolySolver
51+
{
52+
public:
53+
/// @brief Solve a linear equation with coefficients c, return roots s and number of roots
54+
static int solveLinear(S c[2], S s[1]);
55+
56+
/// @brief Solve a quadratic function with coefficients c, return roots s and number of roots
57+
static int solveQuadric(S c[3], S s[2]);
58+
59+
/// @brief Solve a cubic function with coefficients c, return roots s and number of roots
60+
static int solveCubic(S c[4], S s[3]);
61+
62+
private:
63+
/// @brief Check whether v is zero
64+
static bool isZero(S v);
65+
66+
/// @brief Compute v^{1/3}
67+
static bool cbrt(S v);
68+
69+
static constexpr S getNearZeroThreshold();
70+
};
71+
72+
using PolySolverf = PolySolver<float>;
73+
using PolySolverd = PolySolver<double>;
74+
75+
} // namespace detail
76+
} // namespace fcl
77+
78+
#include "fcl/math/detail/polysolver-inl.h"
79+
80+
#endif

0 commit comments

Comments
 (0)