本文整理汇总了C++中float3::ProjectToNorm方法的典型用法代码示例。如果您正苦于以下问题:C++ float3::ProjectToNorm方法的具体用法?C++ float3::ProjectToNorm怎么用?C++ float3::ProjectToNorm使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类float3
的用法示例。
在下文中一共展示了float3::ProjectToNorm方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void float3::Orthonormalize(float3 &a, float3 &b, float3 &c)
{
assume(!a.IsZero());
a.Normalize();
b -= b.ProjectToNorm(a);
assume(!b.IsZero());
b.Normalize();
c -= c.ProjectToNorm(a);
c -= c.ProjectToNorm(b);
assume(!c.IsZero());
c.Normalize();
}
示例2: ExtremePoint
float3 Circle::ExtremePoint(const float3 &direction) const
{
float3 d = direction - direction.ProjectToNorm(normal);
if (d.IsZero())
return pos;
else
return pos + d.ScaledToLength(r);
}
示例3:
Plane::Plane(const Line &line, const float3 &normal)
{
float3 perpNormal = normal - normal.ProjectToNorm(line.dir);
Set(line.pos, perpNormal.Normalized());
}