[Sie-developers] revuloさんの案を加えた最終案

Back to archive index

SIEについて情報交換するための SIEについて情報交換するための
2010年 2月 7日 (日) 20:25:28 JST


revuloさんへ。

> あと、Ample SDK のコードを眺めた感じでは、CTM の計算を行っていないようなので、
> CTM を用いた座標変換についても、説明しておいた方がいいのかもしれません。
> 蛇足かもしれませんが、こんな実例も書いておいてはどうでしょう?

ありがとうございます。さっそくそちらの案を使わせていただきましょう。修正も加えると、以下のよ
うな返答になると思います。

Hello, Sergey.
OK, I understand what your problem is.
SIE translates SVG arc command into cubic Bezier curves, because VML arc
command cannot render a transformed arc.

In my opinion, you should consider the possibility of
this translation to cubic Bezier, if you desire to emulate SVG arc
command by VML.

See SIE code. (http://sourceforge.jp/projects/sie/svn/view/trunk/sie.js?view=markup&revision

=1598&root=sie)

>STArc.prototype.set = function starcset(x1, y1, rx, ry, psai, fA, fS, x4, y4) {
>...
> this.D = (this.D ? this.D.concat(nea) : nea);
> nea = null;
> return true;
>};

Additionally, I show the example of coordinate transformation performed
in SIE. For example, please think of this simple SVG:
 
   <svg xmlns="http://www.w3.org/2000/svg">
     <g transform="rotate(30)">
       <g transform="rotate(30)">
         <line x1="0" y1="0" x2="100" y2="0" style="stroke:red;" />
       </g>
     </g>
   </svg>
 
SIE analyzes this SVG and creates a current transformation matrix (CTM)
for a rotation of 60 degree. SIE transforms the coordinates of each point
using this matrix, and then generates the following VML.
 
  <v:shape strokecolor="red" strokeweight=".75pt" path="m0,0 l50,86 e">
 
In this way, SIE converts SVG into VML.

SIE プロジェクト 管理人

dhrname (sie-d****@lists*****)




Sie-developers メーリングリストの案内
Back to archive index