formulas要素
要素に与えるパラメータ(誘導式)をグループ化する際に使用する要素です。
- shape要素またはshapetype要素の内部で使用します。
サンプル
<v:shapetype id="ken" path="m @2,@0 l @5,@4, @1,@2, @5,@5, @2,@1, @4,@5, @0,@2, @4,@4 x e"><v:formulas><v:f eqn="val 0" /><v:f eqn="val width" /><v:f eqn="val xcenter" /><v:f eqn="prod @2 #0 100" /><v:f eqn="sum @2 0 @3" /><v:f eqn="sum @2 @3 0" /></v:formulas></v:shapetype><v:shape type="#ken" adj="20" style="width:100; height:100;" /><v:shape type="#ken" adj="25" style="width:100; height:100;" /><v:shape type="#ken" adj="35" style="width:100; height:100;" />
属性
なし
fサブ要素
要素に与えるパラメータを定義する際に使用する要素です。
- formulas要素の内部で使用します。
- 128個まで指定できます。
属性
| 属性 | 型 | 説明 |
|---|---|---|
| eqn | string | パラメータの値となる式を指定します。 |
eqn属性で使用する式
演算子とパラメータを指定することで、式を表現します。
パラメータの数は演算子によって異なります。そのためeqn属性で指定する形式は演算子によって以下のように異なります。
演算子 v演算子 v P1演算子 v P1 P2
| 演算子 | 名前 | パラメータ | 説明 |
|---|---|---|---|
| val | 値 | v | v |
| sum | 加算減算 | v p1 p2 | v + p1 - p2 |
| prod | 乗算除算 | v p1 p2 | v * p1 / p2 |
| mid | 平均値 | v p1 | (v + p1) / 2 |
| abs | 絶対値 | v | abs(v) |
| min | 最小値 | v p1 | min(v, p1) |
| max | 最大値 | v p1 | max(v, p1) |
| if | 条件式 | v p1 p2 | v > 0 ? p1 : p2 |
| mod | 率 | v p1 p2 | sqrt(v2 + p12 + p22) |
| atan2 | 極形式演算 | v p1 | atan2(p1, v) |
| sin | 正弦 | v p1 | v * sin(p1) |
| cos | 余弦 | v p1 | v * cos(p1) |
| cosatan2 | 正弦2 | v p1 p2 | v * cos(atan2(p2, p1)) |
| sinatan2 | 余弦2 | v p1 p2 | v * sin(atan2(p2, p1)) |
| sqrt | 平方根 | v | sqrt(v) |
| sumangle | 角度 | v p1 p2 | v + p1 * 216 - p2 * 216 |
| ellipse | 楕円 | v p1 p2 | p2 * sqrt(1 - (v / p1)2) |
| tan | 正接 | v p1 | v * tan(p1) |
eqn属性で使用する定式値
式で使用する値は固定値だけでなく、以下のような定式値を使用できます。
| 値 | 説明 |
|---|---|
| @n | f要素の数式の結果を参照する場合に指定します。nは自身の添え字よりも小さい値を指定します。 |
| #n | shape要素またはshapetype要素のadj属性を参照する場合に指定します。nは0〜7の範囲で指定します。 |
| width | coordsize属性の横幅の値を参照する場合に指定します。 |
| height | coordsize属性の高さの値を参照する場合に指定します。 |
| xcenter | coordorigin属性の左位置に、coordsize属性の横幅の中心を足した値を参照する場合に指定します。 |
| ycenter | coordorigin属性の上位置に、coordsize属性の高さの中心を足した値を参照する場合に指定します。 |
| xlimo | limo属性のxの値を参照する場合に指定します。 |
| ylimo | limo属性のyの値を参照する場合に指定します。 |
| hasstroke | stroke要素がオン(1)かオフ(0)かの情報を参照する場合に指定します。 |
| hasfill | fill要素がオン(1)かオフ(0)かの情報を参照する場合に指定します。 |
| pixellinewidth | 実際に表示される図形の線幅を参照する場合に指定します。 |
| pixelwidth | 実際に表示される図形の横幅を参照する場合に指定します。 |
| pixelheight | 実際に表示される図形の高さを参照する場合に指定します。 |
| emuwidth | EMU単位でのcoordsize属性の横幅を参照する場合に指定します。 |
| emuheight | EMU単位でのcoordsize属性の高さを参照する場合に指定します。 |
| emuwidth2 | EMU単位でのcoordsize属性の横幅の半分を参照する場合に指定します。 |
| emuheight2 | EMU単位でのcoordsize属性の高さの半分を参照する場合に指定します。 |