本文整理汇总了C++中vec3_t::abs2方法的典型用法代码示例。如果您正苦于以下问题:C++ vec3_t::abs2方法的具体用法?C++ vec3_t::abs2怎么用?C++ vec3_t::abs2使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vec3_t
的用法示例。
在下文中一共展示了vec3_t::abs2方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: projectPointOnEdge
vec3_t projectPointOnEdge(const vec3_t& M,const vec3_t& A, const vec3_t& u)
{
checkVector(u);
if(u.abs2()==0) EG_BUG;
double k = ((M-A)*u)/u.abs2();
return A + k*u;
}
示例2: projectVectorOnPlane
vec2_t projectVectorOnPlane(vec3_t V,vec3_t i,vec3_t j)
{
if(i.abs2()==0) EG_BUG;
if(j.abs2()==0) EG_BUG;
double x = V*i/i.abs2();
double y = V*j/j.abs2();
return vec2_t(x,y);
}
示例3: angle
double angle(const vec3_t & u, const vec3_t & v)
{
// return the angle w.r.t. another 3-vector
double ptot2 = u.abs2()*v.abs2();
if(ptot2 <= 0) {
return 0.0;
} else {
double arg = (u*v)/sqrt(ptot2);
if(arg > 1.0) arg = 1.0;
if(arg < -1.0) arg = -1.0;
return acos(arg);
}
}
示例4: projectPointOnPlane
vec3_t projectPointOnPlane(const vec3_t& M, const vec3_t& A, const vec3_t& N)
{
double k = ((M-A)*N)/N.abs2();
return( M - k*N );
}