Brush API

Brush API には、ストロークの視覚スタイルを定義するためのツールが用意されています。さまざまな色、サイズ、ファミリーでブラシを作成して、さまざまな外観を実現できます。

ブラシを作成する

ブラシを作成するには、Brush ファクトリ メソッド(createWithColorIntArgb() クラスなど)を使用します。ファクトリ メソッドを使用すると、次のプロパティを設定できます。

  • family: ブラシのスタイル。テキストの書体やフォントと同様に使用します。使用可能な BrushFamily 値については、StockBrushes をご覧ください。
  • color: ブラシの色。色を設定するには、ColorLong または ColorInt を使用します。
  • size: ブラシで作成されるストローク全体の太さ。
  • イプシロン: ストローク生成のジオメトリにおいて 2 つのポイントが視覚的に区別できる最小距離。イプシロンとストローク ポイントの比率は、メモリを犠牲にしてアーティファクトなしでストロークを拡大できる度合いを制御します。ストローク単位の開始点は 1 ピクセル、イプシロンの開始点は 0.1 が最適です。エプシロン値を大きくするとメモリ使用量は少なくなりますが、三角形のアーチファクトが表示されるまでのズームは少なくなります。ユースケースに適した値を見つけるためにテストします。
val brush = Brush.createWithColorIntArgb(
        family = StockBrushes.pressurePenLatest,
        colorIntArgb = Color.Black.toArgb(),
        size = 5F,
        epsilon = 0.1F
    )

ブラシのプロパティを変更する

既存のブラシのコピーを作成するには、copy() メソッドを使用します。このメソッドを使用すると、ブラシのプロパティを変更できます。

val redBrush = Brush.createWithColorIntArgb(
        family = StockBrushes.pressurePenLatest,
        colorIntArgb = Color.RED.toArgb(),
        size = 5F,
        epsilon = 0.1F
    )

val blueBrush = redBrush.copy(colorIntArgb = Color.BLUE.toArgb())