本文整理汇总了C++中Transformd::get_parent_z方法的典型用法代码示例。如果您正苦于以下问题:C++ Transformd::get_parent_z方法的具体用法?C++ Transformd::get_parent_z怎么用?C++ Transformd::get_parent_z使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Transformd
的用法示例。
在下文中一共展示了Transformd::get_parent_z方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: sample_disk
void sample_disk(
const Transformd& light_transform,
const Vector2d& s,
const Vector3d& disk_center,
const double disk_radius,
Vector3d& position,
Vector3d& outgoing,
Spectrum& value,
double& probability) const
{
outgoing = -normalize(light_transform.get_parent_z());
const Basis3d basis(outgoing);
const Vector2d p = sample_disk_uniform(s);
position =
disk_center
- m_safe_scene_diameter * basis.get_normal()
+ disk_radius * p[0] * basis.get_tangent_u()
+ disk_radius * p[1] * basis.get_tangent_v();
probability = 1.0 / (Pi * disk_radius * disk_radius);
compute_sun_radiance(
outgoing,
m_values.m_turbidity,
m_values.m_radiance_multiplier,
value);
value *= SunSolidAngle;
}