|
HMDT - Special Issue / Sketch BP / 円弧ツールの仕様 |
- Modification -
円弧ツールの仕様
■ 円弧ツールの仕様を考える追加されるツールの 1 つ、円弧ツールについて考えてみよう。 円弧ツールは、楕円の 1/4 の弧を描くためのツール、ってことにしよう。昔ながらのドローツールには必ずあったよね。最近はベジエにとってかわられてるけど。あればあったで便利だと思うけどな。 じゃ、まず作り方から考えよう。円弧を作るときは、ドラッグして四角の領域を設定する。その大きさに応じた円弧を描くことにしよう。ドラッグする方向によって、円弧のどの象元を描くか決定しよう。例えば、右下にドラッグしたら、右下の方の円弧を描くんだ。
あと、ドローオブジェクトの周りに線を描くときは、円弧の部分だけ描くようにしよう。直線の部分は、描かないことにするんだ。
編集機能はなし。作った後はドラッグしてサイズを変えるだけ。 注意すべきところは、こんなところか。 ■ 円弧ツールに必要となるもの円弧ツールが、他のツールと違って、必要なる情報を考えてみよう。 まず、ドラッグでオブジェクトを作るんだけど、そのとき、どっちの方向にドラッグしたか?ってことを決める必要があるんだよね。これは、ドラッグの方向で、どちらの向きに円弧を描くかが決まるからだ。ということは、まずドラッグの開始点を知る必要がある。これと、現在のドラッグした大きさから、どっちにドラッグしたかが分かるはずだ。あと、サイズ変更のときは、オリジナルの大きさを知る必要があるよね。 あと、この円弧は NSBezierPath を使って描くことになるんだけど、上の仕様な塗りつぶしをするには、1 つの NSBezierPath じゃできないんだ。なぜなら、NSBezierPath を普通に使うと、円弧の両端を一直線につないでしまうことになるから。
だから、円弧の線を描く NSBezierPath と、塗りつぶしをする NSBezierPath の 2 つが必要になるんだな。 |
|
- ソースコードのダウンロード - HMDT - Download / Sketch BP |
|
Home | Link | Download | Back Number | Speciall Issue
|