QUAOAR STUDIO // Mobius API
poly_DistanceFunc.h
1
//-----------------------------------------------------------------------------
2
// Created on: 12 December 2019
3
//-----------------------------------------------------------------------------
4
// Copyright (c) 2019-present, Sergey Slyadnev
5
// All rights reserved.
6
//
7
// Redistribution and use in source and binary forms, with or without
8
// modification, are permitted provided that the following conditions are met:
9
//
10
// * Redistributions of source code must retain the above copyright
11
// notice, this list of conditions and the following disclaimer.
12
// * Redistributions in binary form must reproduce the above copyright
13
// notice, this list of conditions and the following disclaimer in the
14
// documentation and/or other materials provided with the distribution.
15
// * Neither the name of Sergey Slyadnev nor the
16
// names of all contributors may be used to endorse or promote products
17
// derived from this software without specific prior written permission.
18
//
19
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22
// DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY
23
// DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26
// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
//-----------------------------------------------------------------------------
30
31
#ifndef poly_DistanceFunc_HeaderFile
32
#define poly_DistanceFunc_HeaderFile
33
34
// Poly includes
35
#include <mobius/poly_RealFunc.h>
36
37
namespace
mobius
{
38
44
class
poly_DistanceFunc
:
public
poly_RealFunc
45
{
46
public
:
47
49
enum
Mode
50
{
51
Mode_Signed
= 0,
52
Mode_Unsigned
53
};
54
55
public
:
56
59
mobiusPoly_EXPORT
60
poly_DistanceFunc
(
const
Mode
mode);
61
62
public
:
63
65
Mode
GetMode
()
const
66
{
67
return
m_mode
;
68
}
69
70
protected
:
71
73
Mode
m_mode
;
74
75
};
76
77
}
78
79
#endif
mobius
Defines an exception class C1 that inherits an exception class C2.
Definition:
bspl_Decompose.h:41
mobius::poly_DistanceFunc::Mode
Mode
Type of distance to measure.
Definition:
poly_DistanceFunc.h:49
mobius::poly_RealFunc
Definition:
poly_RealFunc.h:47
mobius::poly_DistanceFunc
Definition:
poly_DistanceFunc.h:44
mobius::poly_DistanceFunc::Mode_Signed
@ Mode_Signed
Signed distance.
Definition:
poly_DistanceFunc.h:51
mobius::poly_DistanceFunc::m_mode
Mode m_mode
Type of distance.
Definition:
poly_DistanceFunc.h:73
mobius::poly_DistanceFunc::GetMode
Mode GetMode() const
Definition:
poly_DistanceFunc.h:65
mobius::poly_DistanceFunc::poly_DistanceFunc
mobiusPoly_EXPORT poly_DistanceFunc(const Mode mode)
mobius::poly_DistanceFunc::Mode_Unsigned
@ Mode_Unsigned
Unsigned distance.
Definition:
poly_DistanceFunc.h:52
src
poly
fields
poly_DistanceFunc.h