FrontPage  ページ一覧  検索  更新履歴  RSS  ログイン

Psychlops Wiki - Stroke 差分

  • 最後の更新で追加された部分はこのように表示します。
  • 最後の更新で削除された部分はこのように表示します。

線を表現する構造体です。描画系の関数にColorの代わりに Stroke構造体を与えることで線を描画します。

!! 現状の制限
* ImageにStrokeを描画することはできません。
* 線が角ごとに途切れるうえ、円が多角形近似のため、ある程度以上太くしたり破線を指定したりするとアラが目に見えてわかります。

! 関数
!!! コンストラクタ, set関数 (Color color, double thick, Stroke::Pattern pattern)
:color: 線の色です。
:thick: 線の太さです。現状ピクセル単位になります。
:pattern: バターンの種類はSOLID, DASHED, DOTTEDです

! コード例

{{syntax_highlight('cpp')}}
<<<
    Stroke solid(Color::red, 1, Stroke::SOLID); // 宣言と設定を同時に行う方法は関数内でのみ使用できます。
    Stroke dashed, dotted;
    dashed.set(Color::green, 3, Stroke::DASHED);
    dotted.color = Color::blue;
    dotted.width = 5;
    dotted.pattern = Stroke::DOTTED;

    Psychlops::Rectangle rect(100,100);

    while(!Keyboard::esc.pushed()) {
        canvas.clear();
        rect.centering();
        rect.shift(-150,0).draw(solid);
        rect.shift( 150,0).draw(dashed);
        rect.shift( 150,0).draw(dotted);
        canvas.flip();
    }
>>>

!!実行結果
[[http://psychlops.sourceforge.jp/images/ReferenceManual/Stroke_Sample.png]]