00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 INLINE_MATHUTIL BoundingLine::
00022 BoundingLine() {
00023 }
00024
00025
00026
00027
00028
00029
00030 INLINE_MATHUTIL BoundingLine::
00031 BoundingLine(const LPoint3 &a, const LPoint3 &b) :
00032 _origin(a), _vector(b - a)
00033 {
00034 _vector.normalize();
00035 _flags = 0;
00036 nassertd(!_origin.is_nan() && !_vector.is_nan()) {
00037 _flags = F_empty;
00038 }
00039 }
00040
00041
00042
00043
00044
00045
00046 INLINE_MATHUTIL const LPoint3 &BoundingLine::
00047 get_point_a() const {
00048 nassertr(!is_empty(), _origin);
00049 nassertr(!is_infinite(), _origin);
00050 return _origin;
00051 }
00052
00053
00054
00055
00056
00057
00058 INLINE_MATHUTIL LPoint3 BoundingLine::
00059 get_point_b() const {
00060 nassertr(!is_empty(), _origin);
00061 nassertr(!is_infinite(), _origin);
00062 return _origin + _vector;
00063 }