Ich zeichne einen hexagonalen Pfad in Android App. Jetzt möchte ich ein Bild in den gezeichneten Pfad legen. Unten ist der Code, den ich verwende, um den Pfad zu zeichnen.Hinzufügen eines Zeichens innerhalb einer angegebenen "Path" Variable in Android?
combPath = getHexPath(cellWidth/2f, cellWidth/2f, (float) (cellWidth * Math.sqrt(3)/4));
fillPaint.setColor(cellSet[c][r] ? Color.RED : Color.WHITE);
canvas.drawPath(combPath, fillPaint);
Method getHexPath()
private Path getHexPath(float size, float centerX, float centerY) {
Path path = new Path();
for (int j = 0; j <= 6; j++) {
double angle = j * Math.PI/3;
float x = (float) (centerX + size * Math.cos(angle));
float y = (float) (centerY + size * Math.sin(angle));
if (j == 0) {
path.moveTo(x, y);
} else {
path.lineTo(x, y);
}
}
return path;
}
Jetzt habe ich ein Bild in der hexagonalen Pfad zu platzieren "path()" Variable. Wie kann ich es erreichen? TIA
Dies zeichnet die Bitmap in der gesamten Aktivität nicht in der spezifischen hexagonalen Ansicht. – Sarfaraz
Ich habe meine Antwort aktualisiert. Es wird nicht intern geändert, aber Sie müssen mit einer Zielbitmap arbeiten. Ein ähnlicher Code in der 'OnDraw'-Methode schlägt jedoch fehl. –