7

交差するがあり、Path2 回以上交差する領域の色を変更したいと考えています。以下のように:

望ましい行動

ということで、塗料をセット。

    highlighterPaint = new Paint();
    highlighterPaint.setAntiAlias(true);
    strokeWidth = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 20,
            displayMetrics);
    highlighterPaint.setStrokeWidth(strokeWidth);
    highlighterPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DARKEN));
    highlighterPaint.setAlpha(200);
    highlighterPaint.setStyle(Paint.Style.STROKE);
    highlighterPaint.setStrokeJoin(Paint.Join.ROUND);

しかし、私が電話するcanvas.drawPath(mPath1, highlighterPaint)canvas.drawPath(mPath2, highlighterPaint)、下の画像が表示されます。この図には、エンドポイントにラベルが付けられた 2 つのパスがあります。

実際の行動

に各パスを描画していCanvasます。

セパレートPathは共有領域を正しく暗くしますが、シングルPathはそうではありません。最初の画像と同様の効果を得るにはどうすればよいですか?

4

1 に答える 1