Lines Matching defs:distance
50 double DistanceEffect::gain(double distance)
52 // don't go beyond maximum distance
53 distance = std::min(distance, m_maxDistance);
55 // if clamped, don't get closer than reference distance
57 distance = std::max(distance, m_refDistance);
61 return linearGain(distance);
63 return inverseGain(distance);
65 return exponentialGain(distance);
71 double DistanceEffect::linearGain(double distance)
75 return (1.0 - m_rolloffFactor * (distance - m_refDistance) / (m_maxDistance - m_refDistance));
78 double DistanceEffect::inverseGain(double distance)
80 return m_refDistance / (m_refDistance + m_rolloffFactor * (distance - m_refDistance));
83 double DistanceEffect::exponentialGain(double distance)
85 return pow(distance / m_refDistance, -m_rolloffFactor);