bool ON_BezierCage::Transform( const ON_Xform& xform ) { int i,j; bool rc = (m_order[0] > 0 && m_order[1] > 0 && m_order[2]) ? true : false; if (rc) { if ( 0 == m_is_rat ) { if ( xform.m_xform[3][0] != 0.0 || xform.m_xform[3][1] != 0.0 || xform.m_xform[3][2] != 0.0 ) { MakeRational(); } } for ( i = 0; rc && i < m_order[0]; i++ ) { for ( j = 0; rc && j < m_order[1]; j++ ) { rc = ON_TransformPointList( m_dim, m_is_rat, m_order[2], m_cv_stride[2], CV(i,j,0), xform ); } } } return rc; }
ON_BOOL32 ON_Point::Transform( const ON_Xform& xform ) { TransformUserData(xform); return ON_TransformPointList(3,0,1,3,&point.x,xform); }
bool ON_2fVectorArray::Transform( const ON_Xform& xform ) { return ON_TransformPointList( 2, false, Count(), 2, (m_a) ? &m_a[0].x : 0, xform ); }
bool ON_3dPointArray::Transform( const ON_Xform& xform ) { return ON_TransformPointList( 3, false, Count(), 3, (m_a) ? &m_a[0].x : 0, xform ); }
bool ON_4fPointArray::Transform( const ON_Xform& xform ) { return ON_TransformPointList( 3, true, Count(), 4, (m_a) ? &m_a[0].x : 0, xform ); }