Blender V4.3
BLI_math_boolean.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
13
14#ifdef WITH_GMP
15# include "BLI_math_mpq.hh"
17#endif
18
19namespace blender {
20
27int orient2d(const double2 &a, const double2 &b, const double2 &c);
28int orient2d_fast(const double2 &a, const double2 &b, const double2 &c);
29
30int incircle(const double2 &a, const double2 &b, const double2 &c, const double2 &d);
31int incircle_fast(const double2 &a, const double2 &b, const double2 &c, const double2 &d);
32
39int orient3d(const double3 &a, const double3 &b, const double3 &c, const double3 &d);
40int orient3d_fast(const double3 &a, const double3 &b, const double3 &c, const double3 &d);
41
42int insphere(
43 const double3 &a, const double3 &b, const double3 &c, const double3 &d, const double3 &e);
45 const double3 &a, const double3 &b, const double3 &c, const double3 &d, const double3 &e);
46
47#ifdef WITH_GMP
52int orient2d(const mpq2 &a, const mpq2 &b, const mpq2 &c);
58int incircle(const mpq2 &a, const mpq2 &b, const mpq2 &c, const mpq2 &d);
65int orient3d(const mpq3 &a, const mpq3 &b, const mpq3 &c, const mpq3 &d);
66#endif
67} // namespace blender
ATTR_WARN_UNUSED_RESULT const BMVert const BMEdge * e
local_group_size(16, 16) .push_constant(Type b
int orient3d_fast(const double3 &a, const double3 &b, const double3 &c, const double3 &d)
int orient2d(const double2 &a, const double2 &b, const double2 &c)
VecBase< double, 2 > double2
int incircle(const double2 &a, const double2 &b, const double2 &c, const double2 &d)
int orient3d(const double3 &a, const double3 &b, const double3 &c, const double3 &d)
VecBase< double, 3 > double3
int incircle_fast(const double2 &a, const double2 &b, const double2 &c, const double2 &d)
int orient2d_fast(const double2 &a, const double2 &b, const double2 &c)
int insphere_fast(const double3 &a, const double3 &b, const double3 &c, const double3 &d, const double3 &e)
int insphere(const double3 &a, const double3 &b, const double3 &c, const double3 &d, const double3 &e)