Beispiel #1
0
void effective_extinction_coefficient(
    const Spectrum& sigma_a,
    const Spectrum& sigma_s,
    const float     anisotropy,
    Spectrum&       sigma_tr)
{
    for (size_t i = 0, e = Spectrum::size(); i < e; ++i)
    {
        sigma_tr[i] =
            effective_extinction_coefficient(
                sigma_a[i],
                sigma_s[i],
                anisotropy);
    }
}
Beispiel #2
0
void effective_extinction_coefficient(
    const Spectrum& sigma_a,
    const Spectrum& sigma_s,
    const float     anisotropy,
    Spectrum&       sigma_tr)
{
    assert(sigma_a.size() == sigma_s.size());

    sigma_tr.resize(sigma_a.size());

    for (size_t i = 0, e = sigma_tr.size(); i < e; ++i)
    {
        sigma_tr[i] =
            effective_extinction_coefficient(
                sigma_a[i],
                sigma_s[i],
                anisotropy);
    }
}
Beispiel #3
0
void effective_extinction_coefficient(
    const Spectrum& sigma_a,
    const Spectrum& sigma_s,
    const double    anisotropy,
    Spectrum&       sigma_tr)
{
    assert(sigma_a.size() == sigma_s.size());
    sigma_tr.resize(sigma_a.size());

    for (size_t i = 0, e = sigma_tr.size(); i < e; ++i)
    {
        sigma_tr[i] =
            static_cast<float>(
                effective_extinction_coefficient(
                    static_cast<double>(sigma_a[i]),
                    static_cast<double>(sigma_s[i]),
                    anisotropy));
    }
}