http://www.coin3d.org/
http://www.kongsberg.com/kogt/
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
include
Inventor
projectors
SbSphereSectionProjector.h
1
#ifndef COIN_SBSPHERESECTIONPROJECTOR_H
2
#define COIN_SBSPHERESECTIONPROJECTOR_H
3
4
/**************************************************************************\
5
* Copyright (c) Kongsberg Oil & Gas Technologies AS
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 are
10
* met:
11
*
12
* Redistributions of source code must retain the above copyright notice,
13
* this list of conditions and the following disclaimer.
14
*
15
* Redistributions in binary form must reproduce the above copyright
16
* notice, this list of conditions and the following disclaimer in the
17
* documentation and/or other materials provided with the distribution.
18
*
19
* Neither the name of the copyright holder nor the names of its
20
* contributors may be used to endorse or promote products derived from
21
* 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 FOR
26
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27
* HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
\**************************************************************************/
35
36
#include <Inventor/projectors/SbSphereProjector.h>
37
#include <Inventor/SbPlane.h>
38
39
class
COIN_DLL_API
SbSphereSectionProjector
:
public
SbSphereProjector
{
40
typedef
SbSphereProjector
inherited
;
41
42
public
:
43
SbSphereSectionProjector
(
const
float
edgetol = 0.9f,
44
const
SbBool orienttoeye = TRUE);
45
SbSphereSectionProjector
(
const
SbSphere
& sph,
46
const
float
edgetol = 0.9f,
47
const
SbBool orienttoeye = TRUE);
48
49
virtual
SbProjector
*
copy
(
void
)
const
;
50
virtual
SbVec3f
project
(
const
SbVec2f
& point);
51
virtual
SbRotation
getRotation
(
const
SbVec3f
& point1,
52
const
SbVec3f
& point2);
53
void
setTolerance(
const
float
edgetol);
54
float
getTolerance(
void
)
const
;
55
void
setRadialFactor(
const
float
rad = 0.0f);
56
float
getRadialFactor(
void
)
const
;
57
SbBool isWithinTolerance(
const
SbVec3f
& point);
58
59
protected
:
60
virtual
void
setupTolerance(
void
);
61
62
float
tolerance
;
63
float
tolDist
;
64
float
radialFactor
;
65
SbVec3f
planePoint
;
66
SbVec3f
planeDir
;
67
float
planeDist
;
68
SbPlane
tolPlane
;
69
70
private
:
71
float
sqrtoldist;
72
};
73
74
#endif // !COIN_SBSPHERESECTIONPROJECTOR_H
Copyright © by
Kongsberg Oil & Gas Technologies
. All rights reserved.
Generated on Sat Oct 12 2013 06:27:48 for Coin by
Doxygen
1.8.1.2.