線とグループを所有してまとめるクラスです。 PathクラスとSubGroupクラスの基本クラスです。
GroupがSubGroupを所有して、SubGroupがGroupを継承しているのでグループは入れ子にできます。
アプリケーションは普段はPathクラスの関数を使います。 曲線そのものを扱いたい場合はGroupクラスのメンバー関数を使う必要があります。
コンストラクタ
デストラクタ
線の数
グループの数を数えます。 グループ内のグループは含みません。
グループの数
線やグループを所有しているかを調べます。
一つでも所有しているならtrue。
所有している線やグループを全て削除します。
追加をするとそれ以降の継ぎ目の番号がずれます。
mode 継ぎ目を加える方法
t 節を分割する場合の位置
knotIndex 継ぎ目を加える節の手前側の継ぎ目の番号
curveIndex 継ぎ目を加える線
追加した継ぎ目の番号
線の末端に継ぎ目を追加します。
追加をするとそれ以降の継ぎ目の番号がずれます。
point 追加する継ぎ目の座標
knotIndex 追加する末端の継ぎ目の番号
curveIndex 追加する線
追加した継ぎ目の番号
線の継ぎ目の数を得る。
curveIndex 線の番号
継ぎ目の数
継ぎ目を選択する
mode 選択方法
knotIndex 継ぎ目の番号
curveIndex 線の番号
継ぎ目の選択状態を得る。
knotIndex 継ぎ目の番号
curveIndex 線の番号
選択しているならtrue。選択していなければfalse。
選択されている全ての線の継ぎ目とグループを移動する。
rel 相対座標
継ぎ目を削除する
削除するとそれ以降の継ぎ目の番号がずれます。
mode DELETEKNOT_JUSTを指定してください。
knotIndex 削除する継ぎ目の番号
前後の方向線をつなげるか折る。
方向線を折ると角になります。
isLinked trueならつなげます。falseなら折ります。
knotIndex 継ぎ目の番号
curveIndex 線の番号
継ぎ目から方向点を出して前後の節を曲線にするか、方向点を削除して直線にします。
実際に線を曲げるには方向点を通過点と違う場所に移動します。
方向点を削除すると方向点は通過点と同じ座標になります。
isCurved trueなら方向点を出す。falseなら方向点を削除する。
part 部位
knotIndex 継ぎ目の番号
curveIndex 線の番号
継ぎ目から方向点が出ているかを調べます。
part 部位
knotIndex 継ぎ目の番号
curveIndex 線の番号
方向点が出ていればtrue。出ていなければfalse。
継ぎ目の番号を特殊な番号に変換します。
継ぎ目を追加したり削除したりすると番号が変わってしまいますが、 特殊な番号ならいつでも線の末端などを指定できます。
knotIndex 継ぎ目の番号
curveIndex 線の番号
特殊な番号に変換できる場合は変換します。 当てはまらない場合はそのままの番号を返します。
選択されている継ぎ目の数を数えます。
選択されている継ぎ目の数。
部位の座標を得ます。
part 部位
座標。
状況に合わせて部位を移動します。
通過点を移動すると方向点も動きます。
方向線が折れていない状態で、方向点を動かすと反対側の方向点も動きます。
方向点が出ていない状態で、方向点を移動すると方向点が出ます。
一つの部位の座標だけ移動したい場合はSetPointを呼んでください。
point 絶対座標
part 部位
knotIndex 継ぎ目の番号
curveIndex 線の番号
状況に関わらず座標だけ移動します。
方向点の状態に応じて移動するにはMovePointを呼んでください。
point 絶対座標
part 部位
knotIndex 継ぎ目の番号
curveIndex 線の番号
方向線を両側へ伸ばします。 通過点と両方の方向点との間隔を同じにします。
一方の方向点の座標を示すともう一方が反対側へ動きます。
point 絶対座標
grippedForward pointが指している座標が前方の方向点ならtrue。後方の方向点ならfalse。
knotIndex 継ぎ目の番号
curveIndex 線の番号
新しい空の線を追加します。
追加した以降の線の番号がずれます。
curveIndex 追加する線の手前の線の番号
追加された線の番号
線を削除します。
削除した以降の線の番号がずれます。
線に含まれる継ぎ目も全て削除します。
curveIndex 削除する線の番号
線を選択するか、または選択解除します。
selectMode 選択方法
curveIndex 線の番号
線が選択されているかを得ます。
curveIndex 線の番号
選択されていればtrue。選択されていなければfalse。
線全体か節を移動します。
oldPointにあるものがnewPointに来るように動かします。 座標が線そのものの位置を指している必要はありません。
newPoint 新しい座標
oldPoint 元の座標
mode 移動方法
knotIndex 節の手前の継ぎ目の番号
curveIndex 線の番号
同じ線を指す番号かを調べます。
数値として違っていても同じ線を指している場合もあります。
indexA 線の番号
indexB 線の番号
同じならtrue。別ならfalse。
線が閉じているかを調べます。
curveIndex 線の番号
閉じていればtrue。開いていればfalse。
線の末端同士をつなげて線を閉じます。
BZPathの線の表現では、最初の最後の通過点は同じ位置にある必要はありませんし、 同じ位置にあるとダブります。
isClosed 閉じるならtrue。開くならfalse。
curveIndex 線の番号
選択している線の数を数えます。
選択している線の数。
グループを選択または選択解除します。
selectMode 選択方法
subGroupIndex グループの番号
グループが選択されているかを調べる。
subGroupIndex グループの番号
選択されていればtrue。選択されていなければfalse。
パスの実座標を設定します。 Pathオブジェクトを作成したら必ず設定してください。
パスはこの範囲内からはみだすこともできます。
ここで設定した座標はパスを変形するときなどに使われます。 表示のための座標変換にはGraphオブジェクトに設定された座標が使われます。 同じ座標を設定してください。 違う座標を設定した場合の動作は未定です。
rect 実座標を表す矩形
以前に設定したパスの実座標を得ます。
rect 実座標を返す矩形のポインタ
パスの全ての線とグループを選択・選択解除します。
isSelected trueなら選択する。falseなら選択を解除する。
パスが収まる最小の矩形を得ます。
rect 矩形のポインタ
part 対象になる部位。以下を組み合わせます。
precision 許容する誤差
正確な値を出そうとすると無限ループに入るかも知れないので、
見切りをつける許容範囲を指定します。
0より大きい数で無いといけません。
パス全体の平行移動をします。
x 右に移動する量
y 下に移動する量
パス全体の左右反転をします。 SetBoundRectで設定した矩形を外枠とみなします。
パス全体の上下反転をします。 SetBoundRectで設定した矩形を外枠とみなします。