1234567891011121314151617181920212223242526272829 |
- /**
- * Returns 1.0 if the given value is positive or zero, and -1.0 if it is negative. This is similar to the GLSL
- * built-in function <code>sign</code> except that returns 1.0 instead of 0.0 when the input value is 0.0.
- *
- * @name czm_signNotZero
- * @glslFunction
- *
- * @param {} value The value for which to determine the sign.
- * @returns {} 1.0 if the value is positive or zero, -1.0 if the value is negative.
- */
- float czm_signNotZero(float value)
- {
- return value >= 0.0 ? 1.0 : -1.0;
- }
- vec2 czm_signNotZero(vec2 value)
- {
- return vec2(czm_signNotZero(value.x), czm_signNotZero(value.y));
- }
- vec3 czm_signNotZero(vec3 value)
- {
- return vec3(czm_signNotZero(value.x), czm_signNotZero(value.y), czm_signNotZero(value.z));
- }
- vec4 czm_signNotZero(vec4 value)
- {
- return vec4(czm_signNotZero(value.x), czm_signNotZero(value.y), czm_signNotZero(value.z), czm_signNotZero(value.w));
- }
|