diff --git a/BBox3d.cpp b/BBox3d.cpp index 17c9f02..1e8b0a1 100644 --- a/BBox3d.cpp +++ b/BBox3d.cpp @@ -74,6 +74,24 @@ BBox3d::Add( const Point3d& ptP) m_ptMax.z = ptP.z ; } +//---------------------------------------------------------------------------- +void +BBox3d::Add( double dX, double dY, double dZ) +{ + if ( dX < m_ptMin.x) + m_ptMin.x = dX ; + if ( dY < m_ptMin.y) + m_ptMin.y = dY ; + if ( dZ < m_ptMin.z) + m_ptMin.z = dZ ; + if ( dX > m_ptMax.x) + m_ptMax.x = dX ; + if ( dY > m_ptMax.y) + m_ptMax.y = dY ; + if ( dZ > m_ptMax.z) + m_ptMax.z = dZ ; +} + //---------------------------------------------------------------------------- void BBox3d::Add( const BBox3d& b3B) @@ -130,7 +148,7 @@ BBox3d::GetCenterExtent( Point3d& ptCenter, Vector3d& vtExtent) const if ( ! IsValid()) return false ; ptCenter = 0.5 * ( m_ptMin + m_ptMax) ; - vtExtent = 0.5 * ( m_ptMin - m_ptMax) ; + vtExtent = 0.5 * ( m_ptMax - m_ptMin) ; return true ; }