VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
matrix
3dChord.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*******************************************************************************/
5
6
#ifndef _3dChord_H
7
#define _3dChord_H
8
9
#include <
vlutil/vlMachineTypes.h
>
10
#include "
3dPoint.h
"
11
#include "
3dExtent.h
"
12
16
17
#ifdef DtUSE_UTILITIES_NAMESPACE
18
namespace
DtUSE_UTILITIES_NAMESPACE
19
{
20
#endif
21
32
class
DT_DLL_MATRIX
Dt3dChord
33
{
34
public
:
36
Dt3dChord
();
37
39
Dt3dChord
(
const
Dt3dPoint
& endpoint0,
const
Dt3dPoint
& endpoint1);
40
42
~
Dt3dChord
();
43
45
Dt3dChord
(
const
Dt3dChord
& orig);
46
48
Dt3dChord
& operator=(
const
Dt3dChord
& orig);
49
51
52
53
const
Dt3dPoint
& endpoint0()
const
;
54
56
const
Dt3dPoint
& endpoint1()
const
;
57
59
double
directedXComponent()
const
;
60
62
double
directedYComponent()
const
;
63
65
double
directedZComponent()
const
;
66
68
const
Dt3dExtent
& extent()
const
;
70
73
Dt3dPoint
computePoint(
const
double
t)
const
;
74
76
bool
isCollinear(
const
Dt3dPoint
& p)
const
;
77
79
bool
parallelToXYPlane()
const
;
80
82
bool
inPlaneZEquals(
const
double
c)
const
;
83
87
bool
intersectsPlaneZEqualsAtPoint(
const
double
c,
88
double
& tvalue)
const
;
89
92
bool
collinearPointLiesWithin(
const
Dt3dPoint
& pt)
const
;
93
94
protected
:
95
97
double
minZ()
const
;
98
100
double
maxZ()
const
;
101
106
void
guaranteeValidConstruction();
107
108
protected
:
109
Dt3dPoint
myEndpoint0
;
110
Dt3dPoint
myEndpoint1
;
111
113
114
double
myDirectedXComponent
;
115
double
myDirectedYComponent
;
116
double
myDirectedZComponent
;
117
118
Dt3dExtent
myExtent
;
120
};
121
122
123
inline
const
Dt3dExtent
&
Dt3dChord::extent
()
const
124
{
125
return
myExtent;
126
}
127
128
inline
const
Dt3dPoint
&
Dt3dChord::endpoint0
()
const
129
{
130
return
myEndpoint0;
131
}
132
133
inline
const
Dt3dPoint
&
Dt3dChord::endpoint1
()
const
134
{
135
return
myEndpoint1;
136
}
137
138
inline
double
Dt3dChord::directedXComponent
()
const
139
{
140
return
myDirectedXComponent;
141
}
142
143
inline
double
Dt3dChord::directedYComponent
()
const
144
{
145
return
myDirectedYComponent;
146
}
147
148
inline
double
Dt3dChord::directedZComponent
()
const
149
{
150
return
myDirectedZComponent;
151
}
152
153
DT_DLL_MATRIX
std::ostream&
operator<<
(std::ostream& os,
const
Dt3dChord
& chord);
154
155
#ifdef DtUSE_UTILITIES_NAMESPACE
156
}
157
#endif
158
159
#endif
160
Document ID: Generated on Wed Oct 23 22:25:48 EDT 2013 from SVN revision 132765
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)