flash.display.Graphics
クラスが最終的なものであり、拡張することも、スプライト内のオブジェクトを置き換えることもできないことを私は知っています。しかし、その動作を変更するか、変更された動作を偽造する必要があります。通常、OOP では、クラスを拡張し、そのメソッドをオーバーライドして、必要に応じてスーパー メソッドを呼び出します。しかし、それは不可能なので、それGraphics
を達成するための最良のテクニックは何ですか?
- プロトタイピングは、私が望むようにクラスを変更する
Graphics
方法ですか?
円の代わりに四角形を描きたいとしましょう:
public class Graphics2 extends Graphics
{
override public function drawCircle(x: NUmber, y: Number, radius: Number): void
{
super.drawRect(x - radius, y - radius, 2 * radius, 2 * radius);
}
}
これが私がやりたかったことです。どうすればそれを偽造できますか? 最後に、さまざまな描画スタイルを表すオブジェクトが必要です。オブジェクトを置き換えると、Graphics2
描画スタイル全体が変更されます (円が四角に変わるなど)。