« 新刊案内:一太郎2008のすべて/ATOK2008のすべて/Shuriken2008のすべて | トップページ | XAMLによる描画~画像の表示 »

2008/02/11

XAMLによる描画~Path(自由曲線)

1つ1つの点を指定して曲線や直線を描くのが<Path>です。点はData属性で指定します。たとえば、次は(10,10)から(100,100)に幅10ピクセルの青い線を引く記述です。

<Path Data="M 10,10 L 100,100" Stroke="blue" StrokeThickness="10" />

Mは「移動」を意味し、Lは直線を意味します。つまり、上記は(10,10)に移動し、そこから(100,100)まで直線を引けという意味になります。

ベジェ曲線も引けます。ベジェ曲線を引くときは、「S 制御点 終点」の形式で制御点と終点を指定します。次はその例です。

<Path Data="M 10,100 S 50,200 100,100" Stroke="lime" StrokeThickness="5" />

この場合、(10,100)に移動し、そこから(50,200)を制御点とし、終点を(100,100)とするベジェ曲線を引きます。

またData属性の最後に Z を指定すると、自動的に始点と終点が結ばれて図形が閉じます。その場合は、Fill属性で塗りつぶしの色を指定することが可能です。

以下に<Path>のサンプルを示します。

http://www.makoto3.net/xaml/silverlight0034/index.html

以下がXAMLのソースです。

【myxaml.xaml】

<Canvas
   xmlns="http://schemas.microsoft.com/client/2007"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

<Path Data="M 10,10 L 10,90 90,90" Stroke="blue" StrokeThickness="10" />
<Path Data="M 110,10 L 110,90 190,90 190,10" Stroke="red" StrokeThickness="5" />
<Path Data="M 200,10 L 250,90 290,10" Stroke="green" StrokeThickness="5" />

<Path Data="M 10,100 S 50,200 100,100 Z" Stroke="lime" StrokeThickness="5" />
<Path Data="M 100,100 S 150,250 200,100Z" Stroke="crimson" StrokeThickness="8" Fill="gold"/>
<Path Data="M 200,100 S 250,400 300,100" Stroke="navy" StrokeThickness="5" />

<Path Data="M 10,200 S 50,300 100,200 150,250 200,280 250,150 300,10" Stroke="purple" StrokeThickness="10" />

<Path Data="M 10,280 S 50,100 100,200 200,200 300,280" Stroke="white" StrokeThickness="15" Opacity="0.8"/>

</Canvas>

上のサンプルで使用した属性をまとめておきます。なお、<Path>そのものは、ミニ言語と呼んでよいくらいさまざまな指定が可能のようです。より詳細なトピックはSilverlight 1.0 SDKのヘルプに載っていますので、参考にしてください。。

Data

自由曲線の描画点や制御点。
M……移動
L……直線
S……ベジェ曲線の制御点と終点
末尾にZ……始点と終点をつないで図形を閉じる。

他にもさまざまな指定方法あり

Stroke

線の色

StrokeThickness

線の太さ

Fill

図形内部を塗りつぶす色(図形が閉じている場合)

Opacity

透明度(0.0~1.0)

Canvas.ZIndex

重なり順(マイナス値だと下、プラス値だと上)

JavaScriptでSilverlight 目次


このページは xfy Blog Editor  を利用して作成されました。

« 新刊案内:一太郎2008のすべて/ATOK2008のすべて/Shuriken2008のすべて | トップページ | XAMLによる描画~画像の表示 »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/39246/40078287

この記事へのトラックバック一覧です: XAMLによる描画~Path(自由曲線):

« 新刊案内:一太郎2008のすべて/ATOK2008のすべて/Shuriken2008のすべて | トップページ | XAMLによる描画~画像の表示 »

2009年7月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

最近のトラックバック