本文整理汇总了C++中Coord::get方法的典型用法代码示例。如果您正苦于以下问题:C++ Coord::get方法的具体用法?C++ Coord::get怎么用?C++ Coord::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Coord
的用法示例。
在下文中一共展示了Coord::get方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getAnchor
Coord CubeOutLinedTransparent::getAnchor(const Coord & vector) const {
float x, y, z, fmax;
vector.get(x, y, z);
fmax = std::max(std::max(fabsf(x), fabsf(y)), fabsf(z));
if (fmax > 0.0f)
return vector * (0.5f / fmax);
else
return vector;
}
示例2: getAnchor
tlp::Coord ConeGlyph::getAnchor(const tlp::Coord &vector) const {
Coord anchor = vector;
float x, y, z, n;
anchor.get(x, y, z);
n = sqrt(x * x + y * y);
float vx0, vy0, vx1, vy1, x0, y0, x1, y1, px, py;
x0 = 0;
y0 = 0.5;
vx0 = 0.5;
vy0 = -1.0;
x1 = 0;
y1 = 0;
vx1 = sqrt(x * x + y * y);
vy1 = z;
py = -1.0 * (vy1 * (vx0 / vy0 * y0 + x0 - x1) - vx1 * y1) / (vx1 - vy1 / vy0 * vx0);
px = vx0 * (py - y0) / vy0 + x0;
if (fabsf(py) > 0.5) {
n = anchor.norm();
py = n * 0.5 / fabsf(z);
anchor.setX(x * py / n);
anchor.setY(y * py / n);
anchor.setZ(z * py / n);
}
else {
anchor.setX(x * px / n);
anchor.setY(y * px / n);
anchor.setZ(py);
}
if (_eeGlyph) {
swap(anchor[1], anchor[2]);
}
return anchor;
}