过程化纹理滤镜允许使用预定函数和用户定义的变量来执行多种像素处理。您完全可以使用可配置的参数来编写自己的滤镜。

此滤镜可以作为非破坏性的实时滤镜应用。可以通过图层菜单,从新建实时滤镜图层类别访问此滤镜。
在滤镜对话框中可调整下列设置:
滤镜有几个关键组件,必须理解才能有效使用:
var v=vec2(rx, ry); var clr=vec3(R,G,B); scurveinterp(R, B, 0.5).这将在红色和蓝色通道数据之间进行插值,平衡/混合为 50%(因为余额可以是 0 和 1 之间的数值)。R/(a*2)var v2=vec2(rx/w/2, ry/h/(b*2)); dir(v2*(a*2))*(c*2) (括号以粗体突出显示)ry/h/(b*2) 算式的一部分。如果这个表达式不在括号中,结果会有所不同。perlin(rx, ry, a, b)—其中 a 控制八度,b 控制持久性。以下是如何使用程序纹理过滤器的一些实际示例。自定义输入变量以粗体突出显示。要跟随它们,将代码行复制并粘贴到新的方程行中,必要时设置通道目标,然后在表条目后创建自定义输入。
var vignettew=vec2(rx, ry)/w; var vignetteh=vec2(rx, ry)/h; var productw=oscsc(vignettew); var producth=oscsc(vignetteh); scurveinterp(productw, producth, roundness)*(intensity*imultiplier)
针对所有三个通道(R、G、B)。使用混合模式,例如屏幕。
| 自定义输入类型 | 变量名 | 说明 |
|---|---|---|
| [0,1] 范围输入 | roundness | 用作 scurveinterp 中的变量以控制晕影圆度。 |
| [0,1] 范围输入 | intensity | 此值乘以 scurveinterp 结果以修改晕影的强度(亮度)。 |
| 实数输入 | imultiplier | 此实数乘以 intensity 值以便对其进行缩放,从而产生更大范围的可实现亮度。 |
在这个表达式中,我们有四个变量声明:rx 和 ry 用于创建两个矢量结果:vignettew 和 vignetteh。矢量结果分别除以宽度和高度。之后通过使用 S 曲线振荡器 (oscsc) 计算 productw 和 producth。最后,我们使用 S 曲线插值 (scurveinterp) 在这两个乘积结果之间进行插值。两个结果之间的混合由 roundness 自定义输入控制,亮度按 intensity 和 imultiplier 自定义输入缩放。
因为 rx 和 ry 相对 X 和 Y 位置)用于矢量创建,用户可以在画布上单击并拖动以确定晕影的中心(原点)点。
当滤镜使用适当的混合模式时(建议使用实时滤镜版本),可以实现合适的晕影效果。
var v=vec2(rx,ry)/w; smoothoschlin(oschcr(v/(dsize*dmult)),dsmooth)
目标仅为 alpha 通道 (A)。
| 自定义输入类型 | 变量名 | 说明 |
|---|---|---|
| [0,1] 范围输入 | dsmooth | 控制蒙版边缘的平滑。 |
| [0,1] 范围输入 | dsize | 确定蒙版的大小。 |
| 实数输入 | dmult | 比例 dsize 通过乘数来实现更大/更小的蒙版尺寸。 |
在这里,我们将使用 rx 和 ry 的矢量创建的结果分配到变量 v(将结果除以文档宽度,w)。然后将 v 结果通过带有 Catmull-Rom 样条 (oschcr) 的谐振子,然后它本身通过一个平滑的谐波线性振荡器 (smoothoschlin)。使用 oschcr 功能,v 除以 dsize*dmult,它控制整体大小。dsmooth 在 smoothoschlin 功能中使用,以影响边缘的平滑度和模糊。当通道目标设置为仅 alpha 时 (A),此表达式创建菱形 alpha 蒙版效果。
因为 rx 和 ry(相对 X 和 Y 位置)用于矢量创建,用户可以在画布上单击并拖动以修改蒙版效果的位置。
下面是可以在方程部分使用的函数表,其中:
如果函数使用 T 或 V 参数,则所有参数的矢量大小必须相同。它们不可互换。
| 函数 | 用法 | 注释 |
|---|---|---|
| 常用数学 | ||
| abs | abs(T) | 值舍入为绝对整数 |
| acos | acos(T) | |
| asin | asin(T) | |
| atan | atan(T) | |
| atan2 | atan2(T, T) | |
| 平均 | average(T, T, ...)(变量参数) | |
| ceil | ceil(T) | 向上舍入值 |
| copysign | copysign(T, T sign) | |
| cos | cos(T) | |
| dim | dim(T x, T y) | |
| floor | floor(T) | 向下舍入值 |
| fma | fma(T a, T b, T c) | 计算 (a*b) + c |
| fmod | fmod(T, T) | |
| fraction | fraction(T) | |
| idiv | idiv(T, T) | |
| irem | irem(T, T) | |
| lerp | lerp(T a, T b, T t) | 两个值之间的平衡线性插值(取决于 0-1 之间的 t) |
| max | max(T, T, ...)(变量参数) | |
| mid | mid(T, T) | |
| min | min(T, T, ...)(变量参数) | |
| mix | mix(T a, T b, T t) | 与 lerp 相同 |
| pow | pow(T x, T y) | x 的 y 次幂 |
| powr | powr(T x, T y) | x 的 y 次幂,其中 x>0 |
| round | round(T) | |
| roundup | roundup(T) | |
| rounddown | rounddown(T) | |
| sign | sign(T) | |
| sin | sin(T) | |
| sq | sq(T) | |
| sqrt | sqrt(T) | 平方根 |
| tan | tan(T) | |
| trunc | trunc(T) | truncate 的简写 |
| truncate | truncate(T) | |
| rgbtoi | rgbtoi(S r, S g, Sb) 或 rgbtoi(V rgb) | |
| whole | whole(T) | |
| 数字范围转换 | ||
| tocui | tocui(T) | 到闭合单位间隔 0-1 |
| tohcui | tohcui(T) | 到闭合单位间隔 -1-1(谐波) |
| 钳位 | ||
| saturate | saturate(T) | |
| clamp | clamp(T) 或 clamp(T, T min, T max) | |
| clampmin | clampmin(T, T min) | |
| clampmax | clampmax(T, T max) | |
| 几何函数 | ||
| cross | cross(V3, V3) | 计算两个 Vector3 (XYZ) 分量的叉积 |
| dist | dist(V a, V b) | distance 的简写 |
| dist_sq | dist_sq(V a, V b) | distance_squared 的简写 |
| distance | distance(V a, V b) | |
| distance_squared | distance_squared(V a, V b) | |
| dot | dot(V, V) | |
| length | length(V) 或 length(S, S, ...) | |
| length_squared | length_squared(V) 或 length_squared(S, S, ...) | |
| norm | norm(V) | normalise 或 normalize 的简写 |
| normalise | normalise(V) | |
| normalize | normalize(V) | |
| 矢量创建 | ||
| vec2 | vec2(S) 或 vec2(S, S) | 适用于从 XY 定位创建矢量,例如 vec2(rx, ry) |
| vec3 | vec3(S) 或 vec3(S, S, S) | 可用于从颜色数据创建矢量,例如 vec3(R, G, B) |
| vec4 | vec4(S) 或 vec4(S, S, S, S) | |
| vec5 | vec5(S) 或 vec5(S, S, S, S, S) | |
| vec6 | vec6(S) 或 vec6(S, S, S, S, S, S) | |
| tovec3 | tovec3(V) | |
| tovec4 | tovec4(V) | |
| tovec5 | tovec5(V) | |
| tovec6 | tovec6(V) | |
| 矢量操作 | ||
| rev | rev(V) | |
| rotl | rotl(V) | 向左旋转矢量 |
| rotr | rotr(V) | 向右旋转矢量 |
| swap12 | swap12(V) | |
| swap13 | swap13(V) | |
| swap23 | swap23(V) | |
| swapxy | swapxy(V) | |
| swapxz | swapxz(V) | |
| swapyz | swapyz(V) | |
| swaprg | swaprg(V) | |
| swaprb | swaprb(V) | |
| swapgb | swapgb(V) | |
| neg1 | neg1(V) | |
| neg2 | neg2(V) | |
| neg3 | neg3(V) | |
| neg12 | neg12(V) | |
| negx | negx(V) | |
| negy | negy(V) | |
| negz | negz(V) | |
| negxy | negxy(V) | |
| negr | negr(V) | |
| negg | negg(V) | |
| negb | negb(V) | |
| negrg | negrg(V) | |
| 矢量应用工具 | ||
| debump | debump(S r, S g, S b) | |
| Interpolation | ||
| scurveinterp | scurveinterp(T a, T b, T t) | |
| sininterp | sininterp(T a, T b, T t) | |
| cubicinterp | cubicinterp(T a, T b, T c, T d, T t) | |
| scurveinterpolant | scurveinterpolant(T cui) | |
| sininterpolant | sininterpolant(T cui) | |
| scerp | scerp(T a, T b, T t) | scurveinterp 的简写 |
| serp | serp(T a, T b, T t) | sininterp 的简写 |
| cerp | cerp(T a, T b, T c, T d, T t) | cubicinterp 的简写 |
| cubic | scerp(T a, T b, T c, T d, T t) | cubicinterp 的简写 |
| scint | scint(T cui) | scurverinterpolant 的简写 |
| sint | sint(T cui) | sininterpolant 的简写 |
| 阶跃 | ||
| mapcui | mapcui(T v, T edge0, T edge1) | |
| step | step(T edge, T v) | |
| stepn | stepn(T edge, T v) | |
| smoothsteplin | smoothsteplin(T edge0, T edge1, T v) 或 smoothsteplin(T in0, T in1, T out1, T out0, T v) | |
| smoothstep | smoothstep(T edge0, T edge1, T v) 或 smoothstep(T in0, T in1, T out1, T out0, T v) | |
| smoothstepsc | smoothstepsc(T edge0, T edge1, T v) 或 smoothstepsc(T in0, T in1, T out1, T out0, T v) | |
| smoothstepsin | smoothstepsin(T edge0, T edge1, T v) 或 smoothstepsin(T in0, T in1, T out1, T out0, T v) | |
| smoothstepcs | smoothstepcs(T edge0, T edge1, T v) 或 smoothstepcs(T in0, T in1, T out1, T out0, T v) | |
| smoothstepsq | smoothstepsq(T edge0, T edge1, T v) 或 smoothstepsq(T in0, T in1, T out1, T out0, T v) | |
| smoothstepsqi | smoothstepsqi(T edge0, T edge1, T v) 或 smoothstepsqi(T in0, T in1, T out1, T out0, T v) | |
| smoothstepcb | smoothstepcb(T edge0, T edge1, T v) 或 smoothstepcb(T in0, T in1, T out1, T out0, T v) | |
| smoothstepcbi | smoothstepcbi(T edge0, T edge1, T v) 或 smoothstepcbi(T in0, T in1, T out1, T out0, T v) | |
| smoothstepsin | smoothstepsin(T edge0, T edge1, T v) 或 smoothstepsin(T in0, T in1, T out1, T out0, T v) | |
| smoothstepsini | smoothstepsini(T edge0, T edge1, T v) 或 smoothstepsini(T in0, T in1, T out1, T out0, T v) | |
| smoothstepcr | smoothstepcr(T edge0, T edge1, T v) 或 smoothstepcr(T in0, T in1, T out1, T out0, T v) | |
| smoothstepcri | smoothstepcri(T edge0, T edge1, T v) 或 smoothstepcri(T in0, T in1, T out1, T out0, T v) | |
| smoothsteprt | smoothsteprt(T edge0, T edge1, T v) 或 smoothsteprt(T in0, T in1, T out1, T out0, T v) | |
| smoothsteprti | smoothsteprti(T edge0, T edge1, T v) 或 smoothsteprti(T in0, T in1, T out1, T out0, T v) | |
| smoothstepnlin | smoothstepnlin(T edge1, T edge0, T v) | |
| smoothstepn | smoothstepn(T edge1, T edge0, T v) | |
| smoothstepnsc | smoothstepnsc(T edge1, T edge0, T v) | |
| smoothstepnsin | smoothstepnsin(T edge1, T edge0, T v) | |
| smoothstepncs | smoothstepncs(T edge1, T edge0, T v) | |
| smoothstepnsq | smoothstepnsq(T edge1, T edge0, T v) | |
| smoothstepnsqi | smoothstepnsqi(T edge1, T edge0, T v) | |
| smoothstepncb | smoothstepncb(T edge1, T edge0, T v) | |
| smoothstepncbi | smoothstepncbi(T edge1, T edge0, T v) | |
| smoothstepnpsini | smoothstepnpsini(T edge1, T edge0, T v) | |
| smoothstepncr | smoothstepncr(T edge1, T edge0, T v) | |
| smoothstepncri | smoothstepncri(T edge1, T edge0, T v) | |
| smoothstepnrt | smoothstepnrt(T edge1, T edge0, T v) | |
| smoothstepnrti | smoothstepnrti(T edge1, T edge0, T v) | |
| 量子化 | ||
| quantize | quantize(T band, T v) 或 quantize(T band, T smooth, T v) | |
| quantizelin | quantizelin(T band, T smooth, T v) | |
| quantizesc | quantizesc(T band, T smooth, T v) | |
| quantizesin | quantizesin(T band, T smooth, T v) | |
| quantizecs | quantizecs(T band, T smooth, T v) | |
| 振荡器 | ||
| osci | osci(S) osci(S, S) osci(V2) |
标准振荡,接受标量或矢量输入 |
| oscsc | oscsc(S) oscsc(S, S) oscsc(V2) |
使用 S-Curve 的振荡器 |
| oscsin | oscsin(S) oscsin(S, S) oscsin(V2) |
|
| osccs | osccs(S) osccs(S, S) osccs(V2) |
|
| osccubic | osccubic(S) osccubic(S, S) osccubic(V2) |
|
| oscsq | oscsq(S) oscsq(S, S) oscsq(V2) |
|
| oscsqi | oscsqi(S) oscsqi(S, S) oscsqi(V2) |
|
| osccb | osccb(S) osccb(S, S) osccb(V2) |
|
| osccbi | osccbi(S) osccbi(S, S) osccbi(V2) |
|
| oscpsin | oscpsin(S) oscpsin(S, S) oscpsin(V2) |
|
| oscpsini | oscpsini(S) oscpsini(S, S) oscpsini(V2) |
|
| osccr | osccr(S) osccr(S, S) osccr(V2) |
|
| osccri | osccri(S) osccri(S, S) osccri(V2) |
|
| oscrt | oscrt(S) oscrt(S, S) oscrt(V2) |
|
| oscrti | oscrti(S) oscrti(S, S) oscrti(V2) |
|
| smoothosclin | smoothosclin(S, S smoothingwidth) smoothosclin(S, S, S smoothingwidth) smoothosclin(V2, S smoothingwidth) |
|
| smoothosc | smoothosc(S, S smoothingwidth) smoothosc(S, S, S smoothingwidth) smoothosc(V2, S smoothingwidth) |
|
| smoothoscsc | smoothoscsc(S, S smoothingwidth) smoothoscsc(S, S, S smoothingwidth) smoothoscsc(V2, S smoothingwidth) |
|
| smoothoscsin | smoothoscsin(S, S smoothingwidth) smoothoscsin(S, S, S smoothingwidth) smoothoscsin(V2, S smoothingwidth) |
|
| smoothosccs | smoothosccs(S, S smoothingwidth) smoothosccs(S, S, S smoothingwidth) smoothosccs(V2, S smoothingwidth) |
|
| 谐波振荡器 | ||
| oschi | oschi(S) oschi(S, S) oschi(V2) |
|
| osch | osch(S) osch(S, S) osch(V2) |
|
| oschsc | oschsc(S) oschsc(S, S) oschsc(V2) |
|
| oschsin | oschsin(S) oschsin(S, S) oschsin(V2) |
|
| oschcs | oschcs(S) oschcs(S, S) oschcs(V2) |
|
| oschcubic | oschcubic(S) oschcubic(S, S) oschcubic(V2) |
|
| oschsq | oschsq(S) oschsq(S, S) oschsq(V2) |
|
| oschsqi | oschsqi(S) oschsqi(S, S) oschsqi(V2) |
|
| oschcb | oschcb(S) oschcb(S, S) oschcb(V2) |
|
| oschcbi | oschcbi(S) oschcbi(S, S) oschcbi(V2) |
|
| oschhsin | oschhsin(S) oschhsin(S, S) oschhsin(V2) |
|
| oschhsini | oschhsini(S) oschhsini(S, S) oschhsini(V2) |
|
| oschcr | oschcr(S) oschcr(S, S) oschcr(V2) |
|
| oschcri | oschcri(S) oschcri(S, S) oschcri(V2) |
|
| oschrt | oschrt(S) oschrt(S, S) oschrt(V2) |
|
| oschrti | oschrti(S) oschrti(S, S) oschrti(V2) |
|
| smoothoschlin | smoothoschlin(S, S smoothingwidth) smoothoschlin(S, S, S smoothingwidth) smoothoschlin(V2, S smoothingwidth) |
|
| smoothosch | smoothosch(S, S smoothingwidth) smoothosch(S, S, S smoothingwidth) smoothosch(V2, S smoothingwidth) |
|
| smoothoschsc | smoothoschsc(S, S smoothingwidth) smoothoschsc(S, S, S smoothingwidth) smoothoschsc(V2, S smoothingwidth) |
|
| smoothoschsin | smoothoschsin(S, S smoothingwidth) smoothoschsin(S, S, S smoothingwidth) smoothoschsin(V2, S smoothingwidth) |
|
| smoothoschcs | smoothoschcs(S, S smoothingwidth) smoothoschcs(S, S, S smoothingwidth) smoothoschcs(V2, S smoothingwidth) |
|
| 简单噪声 | ||
| noisei | noisei(S) noisei(S, S) noisei(S, S, S) noisei(V2) noisei(V3) |
|
| noise | noise(S) noise(S, S) noise(S, S, S) noise(V2) noise(V3) |
线性噪声 |
| noisesc | noisesc(S) noisesc(S, S) noisesc(S, S, S) noisesc(V2) noisesc(V3) |
S-Curve 噪声 |
| noisesin | noisesin(S) noisesin(S, S) noisesin(S, S, S) noisesin(V2) noisesin(V3) |
|
| noisecs | noisecs(S) noisecs(S, S) noisecs(S, S, S) noisecs(V2) noisecs(V3) |
|
| noisecubic | noisecubic(S) noisecubic(S, S) noisecubic(S, S, S) noisecubic(V2) noisecubic(V3) |
|
| noisesq | noisesq(S) noisesq(S, S) noisesq(S, S, S) noisesq(V2) noisesq(V3) |
|
| noisesqi | noisesqi(S) noisesqi(S, S) noisesqi(S, S, S) noisesqi(V2) noisesqi(V3) |
|
| noisecb | noisecb(S) noisecb(S, S) noisecb(S, S, S) noisecb(V2) noisecb(V3) |
|
| noisecbi | noisecbi(S) noisecbi(S, S) noisecbi(S, S, S) noisecbi(V2) noisecbi(V3) |
|
| noisepsin | noisepsin(S) noisepsin(S, S) noisepsin(S, S, S) noisepsin(V2) noisepsin(V3) |
|
| noisepsini | noisepsini(S) noisepsini(S, S) noisepsini(S, S, S) noisepsini(V2) noisepsini(V3) |
|
| noisecr | noisecr(S) noisecr(S, S) noisecr(S, S, S) noisecr(V2) noisecr(V3) |
|
| noisecri | noisecri(S) noisecri(S, S) noisecri(S, S, S) noisecri(V2) noisecri(V3) |
|
| noisert | noisert(S) noisert(S, S) noisert(S, S, S) noisert(V2) noisert(V3) |
|
| noiserti | noiserti(S) noiserti(S, S) noiserti(S, S, S) noiserti(V2) noiserti(V3) |
|
| 谐波简单噪声 | ||
| noisehi | noisehi(S) noisehi(S, S) noisehi(S, S, S) noisehi(V2) noisehi(V3) |
|
| noiseh | noiseh(S) noiseh(S, S) noiseh(S, S, S) noiseh(V2) noiseh(V3) |
|
| noisehsc | noisehsc(S) noisehsc(S, S) noisehsc(S, S, S) noisehsc(V2) noisehsc(V3) |
|
| noisehsin | noisehsin(S) noisehsin(S, S) noisehsin(S, S, S) noisehsin(V2) noisehsin(V3) |
|
| noisehcs | noisehcs(S) noisehcs(S, S) noisehcs(S, S, S) noisehcs(V2) noisehcs(V3) |
|
| noisehcubic | noisehcubic(S) noisehcubic(S, S) noisehcubic(S, S, S) noisehcubic(V2) noisehcubic(V3) |
|
| noisehsq | noisehsq(S) noisehsq(S, S) noisehsq(S, S, S) noisehsq(V2) noisehsq(V3) |
|
| noisehsqi | noisehsqi(S) noisehsqi(S, S) noisehsqi(S, S, S) noisehsqi(V2) noisehsqi(V3) |
|
| noisehcb | noisehcb(S) noisehcb(S, S) noisehcb(S, S, S) noisehcb(V2) noisehcb(V3) |
|
| noisehcbi | noisehcbi(S) noisehcbi(S, S) noisehcbi(S, S, S) noisehcbi(V2) noisehcbi(V3) |
|
| noisehpsin | noisehpsin(S) noisehpsin(S, S) noisehpsin(S, S, S) noisehpsin(V2) noisehpsin(V3) |
|
| noisehpsini | noisehpsini(S) noisehpsini(S, S) noisehpsini(S, S, S) noisehpsini(V2) noisehpsini(V3) |
|
| noisehcr | noisehcr(S) noisehcr(S, S) noisehcr(S, S, S) noisehcr(V2) noisehcr(V3) |
|
| noisehcri | noisehcri(S) noisehcri(S, S) noisehcri(S, S, S) noisehcri(V2) noisehcri(V3) |
|
| noisehrt | noisehrt(S) noisehrt(S, S) noisehrt(S, S, S) noisehrt(V2) noisehrt(V3) |
|
| noisehrti | noisehrti(S) noisehrti(S, S) noisehrti(S, S, S) noisehrti(V2) noisehrti(V3) |
|
| Perlin 噪声 | ||
| perlin | perlin(S x, I octaves, S persistence) perlin(S x, S y, I octaves, S persistence) perlin(V2 pt, I octaves, S persistence) |
|
| perlinsc | perlinsc(S x, I octaves, S persistence) perlinsc(S x, S y, I octaves, S persistence) perlinsc(V2 pt, I octaves, S persistence) |
|
| perlinsin | perlinsin(S x, I octaves, S persistence) perlinsin(S x, S y, I octaves, S persistence) perlinsin(V2 pt, I octaves, S persistence) |
|
| perlincubic | perlincubic(S x, I octaves, S persistence) perlincubic(S x, S y, I octaves, S persistence) perlincubic(V2 pt, I octaves, S persistence) |
|
| perlincs | perlincs(S x, I octaves, S persistence) perlincs(S x, S y, I octaves, S persistence) perlincs(V2 pt, I octaves, S persistence) |
|
| 谐波 Perlin 噪音 | ||
| perlinh | perlinh(S x, I octaves, S persistence) perlinh(S x, S y, I octaves, S persistence) perlinh(V2 pt, I octaves, S persistence) |
|
| perlinhsc | perlinhsc(S x, I octaves, S persistence) perlinhsc(S x, S y, I octaves, S persistence) perlinhsc(V2 pt, I octaves, S persistence) |
|
| perlinhsin | perlinhsin(S x, I octaves, S persistence) perlinhsin(S x, S y, I octaves, S persistence) perlinhsin(V2 pt, I octaves, S persistence) |
|
| perlinhcubic | perlinhcubic(S x, I octaves, S persistence) perlinhcubic(S x, S y, I octaves, S persistence) perlinhcubic(V2 pt, I octaves, S persistence) |
|
| perlinhcs | perlinhcs(S x, I octaves, S persistence) perlinhcs(S x, S y, I octaves, S persistence) perlinhcs(V2 pt, I octaves, S persistence) |
|
| Voronoi 噪音 | ||
| cellnoise | cellnoise(S x, S y) cellnoise(S x, S y, S spread) |
|
| cellnoise2 | cellnoise2(S x, S y, I degree) | |
| cellnoisedist | cellnoisedist(S x, S y) cellnoisedist(S x, S y, S spread) |
|
| cellnoiseedge | cellnoiseedge(S x, S y, S sz, S softness) | |
| 定向噪音 | ||
| diri | diri(S) diri(S, S) diri(V2) |
|
| dir | dir(S) dir(S, S) dir(V2) |
|
| dirsc | dirsc(S) dirsc(S, S) dirsc(V2) |
|
| dirsin | dirsin(S) dirsin(S, S) dirsin(V2) |
|
| dircs | dircs(S) dircs(S, S) dircs(V2) |
|
| udiri | udiri(S) udiri(S, S) udiri(V2) |
|
| udir | udir(S) udir(S, S) udir(V2) |
|
| udirsc | udirsc(S) udirsc(S, S) udirsc(V2) |
|
| udirsin | udirsin(S) udirsin(S, S) udirsin(V2) |
|
| udircs | udircs(S) udircs(S, S) udircs(V2) |
|
| dir3i | dir3i(S) dir3i(S, S) dir3i(V2) |
|
| dir3 | dir3(S) dir3(S, S) dir3(V2) |
|
| dir3sc | dir3sc(S) dir3sc(S, S) dir3sc(V2) |
|
| dir3sin | dir3sin(S) dir3sin(S, S) dir3sin(V2) |
|
| dir3cs | dir3cs(S) dir3cs(S, S) dir3cs(V2) |
|
| udir3i | udir3i(S) udir3i(S, S) udir3i(V2) |
|
| udir3 | udir3(S) udir3(S, S) udir3(V2) |
|
| udir3sc | udir3sc(S) udir3sc(S, S) udir3sc(V2) |
|
| udir3sin | udir3sin(S) udir3sin(S, S) udir3sin(V2) |
|
| udir3cs | udir3cs(S) udir3cs(S, S) udir3cs(V2) |