構文
{with-render-properties
[ = ,]*
=
on do
}
with-render-properties は一時的に 1 つ以上のレンダリング プロパティを
説明
{with-render-properties a, b on r2d do ... }
{with-render-properties a on r2d do {with-render-properties b on r2d do ... } }
レンダリング プロパティ | 説明 |
---|---|
fill-pattern: | レンダリングに使用されるソース FillPattern 。 |
draw-operation: | ソース ピクセルおよび出力先ピクセルの赤、緑、青およびアルファ チャネルの組み合わせ方法。 |
stroke-thickness: | レンダリングされる線の太さ。 |
line-style: | レンダリングされる線の様式。 |
font: | 文字列をレンダリングするのに使用するフォント。 |
レンダリング プロパティ | 説明 |
---|---|
translation: | x-y 平面内で現在の変換を平行移動します。 |
translation-x: | x 軸に沿って現在の変換を平行移動します。 |
translation-y: | y 軸に沿って現在の変換を平行移動します。 |
rotation: | 起点を中心に現在の変換を回転します。 正の値は時計回りの回転を指定します。負の値は反時計回りの回転を指定します。 |
uniform-scale: | 現在の変換をスケールに応じて均一に変更します (x 軸と y 軸両方に沿って)。 |
scale: | 現在の変換を、scale パラメータの x フィールドを x 軸に、scale パラメータの y フィールドを y 軸に合わせて変更します。 |
transformation: | 既存の変換と指定された {old-transformation.compose-clone new-transformation} これは、古い変換マトリックスに新しい変換マトリックスを乗算し、その結果が新しい transformation レンダリング プロパティになります。compose-clone を含むそのメソッドの詳細については 座標変換は、レンダリング中のすべての座標を変換するのに使用されます。つまり、Transformation2d.transform-point ( 座標変換を変更して、さまざまな効果を生み出すことができます。これには、頂点のスケール変更、平行移動、回転などが含まれます。実際、次のレンダリング プロパティは直接座標変換を変更し、Transformation2d の使用の省略形になります。
GUI Toolkit は座標変換を使用して、レンダリングに使用する座標システムがレイアウト座標システムと一致することを確認します。つまり、グラフィカル オブジェクトが 座標変換の初期値は恒等変換 — つまり、座標をまったく変更しない変換です。ただし、Renderer2d のインスタンスにはすでに transformation が割り当てられているものもあります。これは前述したような GUI Toolkit Renderer2d に関する場合です。 すべてのレンダリング プロパティと同様に、with-render-properties ブロックの最後で座標変換はその前の状態に復元されます。 |
absolute-transformation: | 提供された 他の全てのレンダリングプロパティのプロパティと同様に、座標変換は with-render-properties ブロックの最後で以前の状態に復元されます。 |
texture-transformation: | 既存のテクスチャ変換と指定された {old-transformation.compose-clone new-transformation} これは、古い変換マトリックスに新しい変換マトリックスを乗算し、その結果が新しい texture-transformation レンダリング プロパティになります。 テクスチャ変換は、レンダリング中のすべてのテクスチャ座標を変換するのに使用されます。通常、これらのテクスチャ座標は直接指定したり、表示することはありません。(ただし、 テクスチャ座標は直接テクスチャ上の点にマッピングします。(0, 0) はテクスチャの左上隅に、(0.5, 0.5) はその中心に、(1, 1) はその右下隅にマッピングします。テクスチャ変換が (2, 2) のスケールで設定され、Renderer2d.render-rectangle が既定のテクスチャ座標 (0, 0) および (1, 1) で呼び出された場合、イメージは 4 つのコピーが四角形を塗りつぶすようにマッピングされます。これは、座標 (0, 0) は変更されず、座標 (1, 1) が (2, 2) に変換されるためです。これはテクスチャ ラッピングの一例にもなります。 平行移動や回転などの他の変換は可能です。これらは 初期 texture-transformation は恒等変換 — つまり、テクスチャ座標をまったく変更しない変換です。 |
clipping-region: | 現在のクリッピング領域を、入力 with-render-properties ブロックの最後で、前のクリッピング領域が復元されます。 |
clipping-rectangle:(x: | 現在のクリッピング領域を、入力の四角形と現在のクリッピング領域との交点に設定します。 with-render-properties ブロックの最後で、前のクリッピング領域が復元されます。 このプロパティを使用すると、明示的に四角形の このプロパティを使用した例を次に示します。 {with-render-properties clipping-rectangle=(x, y, width, height) on renderer2d do ... } |
antialiasing?: | with-render-properties スコープ内に描画された幾何学上のオブジェクトのアンチエイリアス処理をオンまたはオフにします。 antialiasing? プロパティはテキストには影響を与えません。 |
例
{with-render-properties fill-pattern = "blue", clipping-region = region on renderer2d do {renderer2d.render-line ...} }
注意事項