本文整理汇总了C++中ON_3dVector::IsZero方法的典型用法代码示例。如果您正苦于以下问题:C++ ON_3dVector::IsZero方法的具体用法?C++ ON_3dVector::IsZero怎么用?C++ ON_3dVector::IsZero使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ON_3dVector
的用法示例。
在下文中一共展示了ON_3dVector::IsZero方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Translate
ON_BOOL32 ON_Geometry::Translate( const ON_3dVector& delta )
{
if ( delta.IsZero() )
return true;
ON_Xform tr;
tr.Translation( delta );
return Transform( tr );
}
示例2: ON_BrepExtrudeHelper_CheckPathCurve
static
bool ON_BrepExtrudeHelper_CheckPathCurve( const ON_Curve& path_curve, ON_3dVector& path_vector )
{
ON_Line path_line;
path_line.from = path_curve.PointAtStart();
path_line.to = path_curve.PointAtEnd();
path_vector = path_line.Direction();
return ( path_vector.IsZero() ? false : true );
}
示例3: InPlane
bool ON_Line::InPlane( ON_Plane& plane, double tolerance ) const
{
const ON_3dVector v = to-from;
const bool bTinyX = fabs(v.x) <= tolerance;
const bool bTinyY = fabs(v.y) <= tolerance;
const bool bTinyZ = fabs(v.z) <= tolerance;
bool rc = true;
ON_3dVector X;
ON_3dVector Y;
if ( bTinyZ && ( !bTinyX || !bTinyY ) )
{
X = ON_xaxis;
Y = ON_yaxis;
}
else if ( bTinyX && ( !bTinyY || !bTinyZ ) )
{
X = ON_yaxis;
Y = ON_zaxis;
}
else if ( bTinyY && ( !bTinyZ || !bTinyX ) )
{
X = ON_zaxis;
Y = ON_xaxis;
}
else
{
X = v;
X.Unitize();
Y.PerpendicularTo(X);
if ( bTinyX && bTinyY && bTinyZ )
{
rc = false;
if ( X.IsZero() )
{
X = ON_xaxis;
Y = ON_yaxis;
}
}
}
plane.CreateFromFrame( from, X, Y );
return rc;
}