<ソース解説>
<目次>
使い方はToolHolderクラスを見てください。
オプションはそれぞれの括りで一番上に書いてあるのが初期値です。
下位ビット・上位ビットはGetToolOptionに渡す値です。
ツールの種類
名前 |
ツールのラベル | 初期の変換表のラベル |
何もしない |
TOOL_NONE | TOOLTABLE_NONE |
移動 |
TOOL_MOVE | TOOLTABLE_MOVE |
ペン |
TOOL_PEN | TOOLTABLE_PEN |
点の追加 |
TOOL_INSERTKNOT | TOOLTABLE_INSERTKNOT |
点を削除 |
TOOL_DELETEPOINT | TOOLTABLE_DELETEPOINT |
方向点の切り替え |
TOOL_CHANGECONTROL | TOOLTABLE_CHANGECONTROL |
切断 |
TOOL_CUT | TOOLTABLE_CUT |
四角と円 |
TOOL_SHAPE | TOOLTABLE_BOXとTOOLTABLE_CIRCLE |
線上の全ての点の選択 |
TOOL_SELECTKNOTS | TOOLTABLE_SELECTKNOTS |
機能
なにもしません。パスとは関係のない操作をしているときに使います。
ツールのラベル
TOOL_NONE
初期値の変換表のラベル
TOOLTABLE_NONE
オプション
なし
状態
COND_NONE_IDLE 常にこの値。
機能
パスの部位を選択して移動します。
ツールのラベル
TOOL_MOVE
初期値の変換表のラベル
TOOLTABLE_MOVE
オプション
移動の動作
下位ビット MOVE_MOVE_LOW 上位ビット MOVE_MOVE_HI
- OPTION_MOVE_DRAG ドラッグして移動する。
- OPTION_MOVE_NODRAG 最初のクリックでつかんで後のクリックで置く。
- OPTION_MOVE_2WAY 両方。クリックして動かさずに離すとドラッグせずに動かせる。
線をつかんだ場合
下位ビット MOVE_CURVE_LOW 上位ビット MOVE_CURVE_HI
- OPTION_MOVE_CURVE_ALLSELECTED 選択されている線を全てそのままの形で移動する。
- OPTION_MOVE_CURVE_JUST 線をそのまま移動する。
- OPTION_MOVE_CURVE_SEGMENT 線を挟む2つの継ぎ目を移動する。
サブグループの移動
下位ビット MOVE_SUBGROUP_LOW 上位ビット MOVE_SUBGROUP_HI
- OPTION_MOVE_SUBGROUP_WITH_CURVE 線と一緒に移動する。
- OPTION_MOVE_SUBGROUP_WITH_KNOT 継ぎ目と一緒に移動する。
- OPTION_MOVE_SUBGROUP_ONLY サブグループだけで移動する。
部位の選択方法
下位ビット MOVE_SELECT_LOW 上位ビット MOVE_SELECT_HI
- OPTION_SELECT_SINGLE 選択されていなければ他の選択を解除して一つだけ選択する。
- OPTION_SELECT_ADD 選択を追加する。
- OPTION_SELECT_TOGGLE 選択を切り替える。
状態
- COND_MOVE_IDLE 何もしていない。矩形選択をする。
- COND_MOVE_KNOT 継ぎ目を移動している。
- COND_MOVE_CHAIN 継ぎ目を移動していて他の先端とつながる。
- COND_MOVE_CLOSE 継ぎ目を移動していて線を閉じる。
- COND_MOVE_CONTROL 方向点を移動している。
- COND_MOVE_CURVE 線を移動している。
- COND_MOVE_SUBGROUP グループを移動している。
- COND_MOVE_FIND_ANCHOR 通過点の上にカーソルがある。
- COND_MOVE_FIND_CONTROL 方向点の上にカーソルがある。
- COND_MOVE_FIND_CURVE 線の上にカーソルがある。
- COND_MOVE_FIND_SUBGROUP グループの上にカーソルがある。
- COND_SELECTBOX 矩形の範囲で選択する場合に範囲を動かしている。
以下は他のツールの補助機能として使われた場合にでます。
- COND_MOVE_WCONTROLS 方向線を両側に伸ばしている。
機能
線を書きます。
ツールのラベル
TOOL_PEN
初期値の変換表のラベル
TOOLTABLE_PEN
オプション
下位ビット PEN_RUBBER_LOW 上位ビット PEN_RUBBER_HI
- OPTION_PEN_RUBBER ラバーバンドを表示する。
- OPTION_PEN_NORUBBER ラバーバンドを表示しない。
移動のオプションも使います。
状態
- COND_PEN_IDLE 何もしていない。新たに線を追加する。
- COND_PEN_MOVE ラバーバンドを表示して移動している。オプションで表示していない場合も含む。
- COND_PEN_CHAIN 他の線とつながる。
- COND_PEN_CLOSE 線を閉じる。
- COND_PEN_TERMINATE クリックすると終わる。
- COND_PEN_OUTSIDE カーソルがウインドウの外にある。
移動の状態も使います。
機能
すでにある線の間に継ぎ目を加えます。
ツールのラベル
TOOL_INSERTKNOT
初期値の変換表のラベル
TOOLTABLE_INSERTKNOT
オプション
直線の分割
下位ビット INSERTKNOT_STRAIGHT_LOW 上位ビット INSERTKNOT_STRAIGHT_HI
- OPTION_INSERTKNOT_STRAIGHT_JUST 直線はそのまま直線で分割する。
- OPTION_INSERTKNOT_STRAIGHT_CURVE 直線を分割する場合は方向線を伸ばす。
通過点の移動
下位ビット INSERTKNOT_ANCHOR_LOW 上位ビット INSERTKNOT_ANCHOR_HI
- OPTION_INSERTKNOT_NOT_MOVE_ANCHOR 移動よりも継ぎ目の追加を優先する。通過点は動かせない。
- OPTION_INSERTKNOT_MOVE_ANCHOR 通過点と線の上にある方向点を移動できる。
移動のオプションも使います。
状態
- COND_INSERTKNOT_IDLE 何もしていない。
- COND_INSERT_KNOT 線に継ぎ目を追加する。
移動の状態も使います。
機能
継ぎ目か方向点を削除します。
ツールのラベル
TOOL_DELETEPOINT
初期値の変換表のラベル
TOOLTABLE_DELETEPOINT
オプション
移動のオプションを使います。
状態
- COND_DELETEPOINT_IDLE 何もしていない。
- COND_DELETE_KNOT 通過点を削除する。
- COND_DELETE_CONTROL 方向点を削除する。
移動の状態も使います。
機能
方向線を延ばしたり折ったりします。
ツールのラベル
TOOL_CHANGECONTROL
初期値の変換表のラベル
TOOLTABLE_CHANGECONTROL
オプション
移動のオプションを使います。
状態
- COND_CHANGECONTROL_IDLE 何もしていない。
- COND_CHANGE_STRAIGHT_KNOT 曲線をつなげる通過点の方向線を無くす。
- COND_CHANGE_CURVE_KNOT 直線をつなげる通過点の方向線を伸ばす。
- COND_CHANGE_LINKED_CONTROL 折れていない方向点を折る。
- COND_CHANGE_UNLINKED_CONTROL 折れている方向点を移動する。
移動の状態も使います。
機能
線を切断して2つに分けます。
ツールのラベル
TOOL_CUT
初期値の変換表のラベル
TOOLTABLE_CUT
オプション
下位ビット CUT_LOW 上位ビット CUT_HI
- OPTION_CUT_POINT 1点で切断して線を分ける。
- OPTION_CUT_SEGMENT 節を削除して線を分ける。
状態
- COND_CUT_IDLE 何もしていない。
- COND_CUT_FIND_CURVE 線を見つけた。
移動の状態も使います。
機能
四角か円を書きます。
ツールのラベル
TOOL_SHAPE
初期値の変換表のラベル
TOOLTABLE_BOX 四角
TOOLTABLE_CIRCLE 円
オプション
移動
移動ツールと意味は同じですが、初期値の動作が違います。
下位ビット SHAPE_MOVE_LOW 上位ビット SHAPE_MOVE_HI
- OPTION_SHAPE_2WAY 下の二つの両方。
- OPTION_SHAPE_DRAG 最初のクリックで始点、後のクリックで終点。
- OPTION_SHAPE_NODRAG ドラッグして移動する。
始点
下位ビット SHAPE_START_LOW 上位ビット SHAPE_START_HI
- OPTION_SHAPE_CORNER 始点は角を指す。
- OPTION_SHAPE_CENTER 始点は中心を指す。
縦横比
下位ビット SHAPE_SQUARE_LOW 上位ビット SHAPE_SQUARE_HI
- OPTION_SHAPE_NOT_SQUARE 縦横の長さを固定しない。
- OPTION_SHAPE_SQUARE 縦横の長さを同じにする。
図形
下位ビット SHAPE_SHAPE_LOW 上位ビット SHAPE_SHAPE_HI
- OPTION_SHAPE_BOX 四角形を書く。
- OPTION_SHAPE_CIRCLE 円を書く。
状態
- COND_SHAPE_IDLE 何もしていない。
- COND_SHAPE_MOVE 終点を移動している。
機能
線上の全ての継ぎ目の選択を切り替えたり、1つおきに選択したりします。
ツールのラベル
TOOL_SELECTKNOTS
初期値の変換表のラベル
TOOLTABLE_SELECTKNOTS
オプション
選択方法
下位ビット SELECTKNOTS_SELECT_LOW 上位ビット SELECTKNOTS_SELECT_HI
- OPTION_SELECTKNOTS_TOGGLE 始点の選択状態によって選択・非選択を切り替える。
- OPTION_SELECTKNOTS_SELECT 全て選択する。
- OPTION_SELECTKNOTS_UNSELECT 全て選択解除する。
- OPTION_SELECTKNOTS_ALTERNATE 1つおきに選択する。
通過点の移動
下位ビット SELECTKNOTS_ANCHOR_LOW 上位ビット SELECTKNOTS_ANCHOR_HI
- OPTION_SELECTKNOTS_MOVE_ANCHOR 継ぎ目の選択よりも移動を優先する。
通過点と線の上にある方向点を移動できる。
- OPTION_SELECTKNOTS_NOT_MOVE_ANCHOR 移動よりも継ぎ目の選択を優先する。通過点は動かせない。
移動のオプションも使います。
状態
- COND_SELECTKNOTS_IDLE 何もしていない。
- COND_SELECTKNOTS_SELECT 選択する。
- COND_SELECTKNOTS_UNSELECT 選択を解除する。
- COND_SELECTKNOTS_ALTERNATE 1つおきに選択する。
移動の状態も使います。
<頁の先頭>
<ソース解説>
<目次>