「共通関数」の版間の差分

提供: Tommy6
移動: 案内検索
 
(1人の利用者による、間の7版が非表示)
18行: 18行:
 
{{!-}}
 
{{!-}}
 
{{!}} [[degrees]]
 
{{!}} [[degrees]]
{{!}}  
+
{{!}} ''radians'' を度に変換します。つまり、(180/π) * ''radians'' を求めるということです。
 
{{!-}}
 
{{!-}}
 
{{!}} [[max]]
 
{{!}} [[max]]
{{!}}  
+
{{!}} ''x'' < ''y'' のときは ''y'' を、そうでないときは ''x'' を返します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[min]]
 
{{!}} [[min]]
{{!}}  
+
{{!}} ''y'' < ''x'' のときは ''y'' を、そうでないときは ''x'' を返します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[mix]]
 
{{!}} [[mix]]
{{!}}  
+
{{!}} ''x'' + (''y'' - ''x'') * ''a'' による ''x'' と ''y'' の線形ブレンドを行います。
 
{{!-}}
 
{{!-}}
 
{{!}} [[radians]]
 
{{!}} [[radians]]
{{!}}  
+
{{!}} ''degrees'' をラジアンに変換します。つまり、(π/180) * ''degrees'' を求めるということです。
 
{{!-}}
 
{{!-}}
 
{{!}} [[step]]
 
{{!}} [[step]]
{{!}}  
+
{{!}} ''x'' &lt; ''edge'' のときは 0.0 を、そうでないときは 1.0 を返します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[smoothstep]]
 
{{!}} [[smoothstep]]
{{!}}  
+
{{!}} ''x'' &lt;{{=}} ''edge0'' のときは 0.0 を、''x'' &gt;{{=}} ''edge1'' のときは 1.0 を返します。''edge0'' &lt; ''x'' &lt; ''edge1'' のときは、0 と 1 の間でエルミート補間による滑らかな補間を行います。
 
{{!-}}
 
{{!-}}
 
{{!}} [[sign]]
 
{{!}} [[sign]]
{{!}}  
+
{{!}} ''x'' &gt; 0 のときは 1.0 を、''x'' {{=}} -0.0 のときは -0.0 を、''x'' {{=}} +0.0 のときは +0.0 を、''x'' &lt; 0 のときは -1.0 を返します。
  
 
{{!}}}
 
{{!}}}

2011年5月18日 (水) 17:16時点における最新版

共通関数はスカラもしくはベクトル引数をとります。

ベクトル版の整数関数では、演算はベクトルの要素ごとに行われます。それぞれの関数の解説は、各要素で行われる操作についてです。

共通関数は最近接偶数丸めモードを利用して実装しています。

関数の一覧

1.1 : OpenCL 1.1で追加・変更

関数 概要
clamp fmin(fmax(x, minval), maxval) を返します。
degrees radians を度に変換します。つまり、(180/π) * radians を求めるということです。
max x < y のときは y を、そうでないときは x を返します。
min y < x のときは y を、そうでないときは x を返します。
mix x + (y - x) * a による xy の線形ブレンドを行います。
radians degrees をラジアンに変換します。つまり、(π/180) * degrees を求めるということです。
step x < edge のときは 0.0 を、そうでないときは 1.0 を返します。
smoothstep x <= edge0 のときは 0.0 を、x >= edge1 のときは 1.0 を返します。edge0 < x < edge1 のときは、0 と 1 の間でエルミート補間による滑らかな補間を行います。
sign x > 0 のときは 1.0 を、x = -0.0 のときは -0.0 を、x = +0.0 のときは +0.0 を、x < 0 のときは -1.0 を返します。

変更記録

―――― Version 1.1, The OpenCL Specification より翻訳