MQDocument class

オブジェクトや材質を管理します。

Property

get set Type Name Description
o x int numObject オブジェクトの数
o x int numMaterial 材質の数
o x list<MQObject> object オブジェクトのリスト
o x list<MQMaterial> material 材質のリスト
o o int currentObjectIndex カレントオブジェクトのインデックス
o o int currentMaterialIndex カレント材質のインデックス
o x string filename ファイル名
o x MQEnvMap envmap 環境マップ
o x int numMaxUVChannel オブジェクト当たりのUVチャンネルの最大数

Method

Member Description
getScene ドキュメント内のシーンを取得します。
addObject ドキュメントにオブジェクトを追加します。
insertObject ドキュメントにオブジェクトを挿入します。
removeObject ドキュメント中からオブジェクトを外します。オブジェクト自体は存続します。
deleteObject ドキュメント中のオブジェクトを削除します。
getObjectIndex オブジェクトのインデックスを取得します。
getParentObject 指定したオブジェクトの親オブジェクトを取得します。
getChildObjectCount 指定したオブジェクトの直下にある子オブジェクトの数を取得します。
getChildObject 指定したオブジェクトの直下にある子オブジェクトの数を取得します。
isAncestorObject ancestorがdescendantの先祖かどうかを調べます。
getUnusedObjectName 使用されていないオブジェクトの名前を取得します。
getGlobalMatrix 指定したオブジェクトのグローバル座標変換行列を取得します。
getGlobalInverseMatrix 指定したオブジェクトのグローバル座標変換逆行列を取得します。
addMaterial ドキュメント中にマテリアルを追加します。
deleteMaterial ドキュメント内のマテリアルを削除します。
getUnusedMaterialName 使用されていないマテリアルの名前を取得します。
clearSelect すべての頂点・辺・面の選択状態を解除します。
addSelectVertex 指定した頂点を選択します。
deleteSelectVertex 指定した頂点の選択を解除します。
isSelectVertex 指定した頂点が選択されているかを調べます。
addSelectLine 指定した辺を選択します。
deleteSelectLine 指定した辺の選択を解除します。
isSelectLine 指定した辺が選択されているかを調べます。
addSelectFace 指定した面を選択します。
deleteSelectFace 指定した面の選択を解除します。
isSelectFace 指定した面が選択されているかを調べます。
addSelectUVVertex 指定したUV頂点を選択します。
deleteSelectUVVertex 指定したUV頂点の選択を解除します。
isSelectUVVertex 指定したUV頂点が選択されているかを調べます。
createObjectUserData オブジェクト用のユーザーデータのIDを生成します。
deleteObjectUserData オブジェクト用のユーザーデータのIDを削除します。
findObjectUserData 作成済みのオブジェクト用のユーザーデータのIDを検索します。
createVertexUserData 頂点用のユーザーデータのIDを生成します。
deleteVertexUserData 頂点用のユーザーデータのIDを削除します。
findVertexUserData 作成済みの頂点用のユーザーデータのIDを検索します。
createFaceUserData 面用のユーザーデータのIDを生成します。
deleteFaceUserData 面用のユーザーデータのIDを削除します。
findFaceUserData 作成済みの面用のユーザーデータのIDを検索します。
createMaterialUserData 材質用のユーザーデータのIDを生成します。
deleteMaterialUserData 材質用のユーザーデータのIDを削除します。
findMaterialUserData 作成済みの材質用のユーザーデータのIDを検索します。
getUVChannelID 指定した名前に対応するUVチャンネルIDを生成・取得します。
getUVChannelName UVチャンネルの名前を取得します。
compact ドキュメント中の配列に存在するNullを切り詰めます。
save ファイルへ保存します。
undo アンドゥを実行します。
redo リドゥを実行します。
clearUndoBuffer アンドゥバッファを消去します。

getScene(index)

ドキュメント内のシーンを取得します。

引数:
int index - シーンのインデックス
戻り値:
MQScene - シーン

addObject(obj[, parent])

ドキュメントにオブジェクトを追加します。

引数:
MQObject obj - オブジェクト
MQObject parent - 親オブジェクト
省略した場合は直下に追加されます。
戻り値:
int - 登録されたオブジェクトのインデックス
注意点:
オブジェクトを挿入した場合、他のオブジェクトのインデックスが変更されます。

insertObject(obj, brother)

ドキュメントにオブジェクトを挿入します。

引数:
MQObject obj - オブジェクト
MQObject brother - 兄弟オブジェクト
戻り値:
int - 登録されたオブジェクトのインデックス
注意点:
parentを指定して階層化されたオブジェクトを追加した場合、他のオブジェクトのインデックスが変更されます。

removeObject(object)

ドキュメント中からオブジェクトを外します。オブジェクト自体は存続します。

引数:
MQObject object - オブジェクト
注意点:
取り外し後のobject[index]はNoneを返します。

deleteObject(index)

ドキュメント中のオブジェクトを削除します。

引数:
int index - オブジェクトのインデックス
注意点:
削除後のobject[index]はNoneを返します。

getObjectIndex(obj)

オブジェクトのインデックスを取得します。

引数:
MQObject obj - オブジェクト
戻り値:
int - オブジェクトのインデックス
[-1] ドキュメントに登録されていないオブジェクト

getParentObject(obj)

指定したオブジェクトの親オブジェクトを取得します。

引数:
MQObject obj - 子オブジェクト
戻り値:
MQObject - 親オブジェクト
[None] オブジェクトがルート直下にある場合

getChildObjectCount(obj)

指定したオブジェクトの直下にある子オブジェクトの数を取得します。

引数:
MQObject obj - 親オブジェクト
戻り値:
int - 子オブジェクトの数

getChildObject(obj, index)

指定したオブジェクトの直下にある子オブジェクトの数を取得します。

引数:
MQObject obj - 親オブジェクト
int index - 子オブジェクトのインデックス
戻り値:
MQObject - 子オブジェクト

isAncestorObject(ancestor, descendant)

ancestorがdescendantの先祖かどうかを調べます。

引数:
MQObject ancestor - 先祖オブジェクト
MQObject descendant - 孫オブジェクト
戻り値:
int - 関係
[0] 直系の先祖・子孫関係にならない
[1] 直系の先祖・子孫関係である

getUnusedObjectName([base_name])

使用されていないオブジェクトの名前を取得します。

引数:
string base_name - ベースの名前
戻り値:
string - 名前

getGlobalMatrix(obj)

指定したオブジェクトのグローバル座標変換行列を取得します。

引数:
MQObject obj - オブジェクト
戻り値:
MQMatrix - グローバル行列

getGlobalInverseMatrix(obj)

指定したオブジェクトのグローバル座標変換逆行列を取得します。

引数:
MQObject obj - オブジェクト
戻り値:
MQMatrix - グローバル逆行列

addMaterial(mat)

ドキュメント中にマテリアルを追加します。

引数:
MQMaterial mat - マテリアル
戻り値:
int - 登録されたマテリアルのインデックス

deleteMaterial(index)

ドキュメント内のマテリアルを削除します。

引数:
int index - マテリアルのインデックス
注意点:
削除後のmaterial[index]はNoneを返します。

getUnusedMaterialName([base_name])

使用されていないマテリアルの名前を取得します。

引数:
string base_name - ベースの名前
戻り値:
string - 名前

clearSelect

すべての頂点・辺・面の選択状態を解除します。

addSelectVertex(obj_index, vert_index)

指定した頂点を選択します。

引数:
int obj_index - オブジェクトのインデックス
int vert_index - 頂点のインデックス

deleteSelectVertex(obj_index, vert_index)

指定した頂点の選択を解除します。

引数:
int obj_index - オブジェクトのインデックス
int vert_index - 頂点のインデックス

isSelectVertex(obj_index, vert_index)

指定した頂点が選択されているかを調べます。

引数:
int obj_index - オブジェクトのインデックス
int vert_index - 頂点のインデックス
戻り値:
int - 選択状態
[0] 選択されていない
[1] 選択されている

addSelectLine(obj_index, face_index, line_index)

指定した辺を選択します。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス
int line_index - 辺のインデックス

deleteSelectLine(obj_index, face_index, line_index)

指定した辺の選択を解除します。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス
int line_index - 辺のインデックス

isSelectLine(obj_index, face_index, line_index)

指定した辺が選択されているかを調べます。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス
int line_index - 辺のインデックス
戻り値:
int - 選択状態
[0] 選択されていない
[1] 選択されている

addSelectFace(obj_index, face_index)

指定した面を選択します。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス

deleteSelectFace(obj_index, face_index)

指定した面の選択を解除します。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス

isSelectFace(obj_index, face_index)

指定した面が選択されているかを調べます。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス
戻り値:
int - 選択状態
[0] 選択されていない
[1] 選択されている

addSelectUVVertex(obj_index, face_index, apex_index)

指定したUV頂点を選択します。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス
int apex_index - 面内頂点のインデックス

deleteSelectUVVertex(obj_index, face_index, apex_index)

指定したUV頂点の選択を解除します。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス
int apex_index - 面内頂点のインデックス

isSelectUVVertex(obj_index, face_index, apex_index)

指定したUV頂点が選択されているかを調べます。

引数:
int obj_index - オブジェクトのインデックス
int face_index - 面のインデックス
int apex_index - 面内頂点のインデックス
戻り値:
int - 選択状態
[0] 選択されていない
[1] 選択されている

createObjectUserData(productID, pluginID, identifier, bytes_per_object)

オブジェクト用のユーザーデータのIDを生成します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
int bytes_per_object - オブジェクトごとに割り当てるデータのバイト数(65535バイト以内)
戻り値:
int - オブジェクトユーザーデータID
[0] 失敗
注意点:
既に作成されているユーザーデータと同じ productID、pluginID、identifier を指定した場合、ユーザーデータは新規作成されず、既存のユーザーデータのIDが返されます。複数のユーザーデータを扱うには異なる identifier を指定してください。

deleteObjectUserData(userdata_id)

オブジェクト用のユーザーデータのIDを削除します。

引数:
long userdata_id - オブジェクトユーザーデータID

findObjectUserData(productID, pluginID, identifier)

作成済みのオブジェクト用のユーザーデータのIDを検索します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
戻り値:
int - オブジェクトユーザーデータID
[0] 取得失敗

createVertexUserData(productID, pluginID, identifier, bytes_per_vertex)

頂点用のユーザーデータのIDを生成します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
int bytes_per_vertex - 頂点ごとに割り当てるデータのバイト数(65535バイト以内)
戻り値:
int - 頂点ユーザーデータID
[0] 失敗
注意点:
既に作成されているユーザーデータと同じ productID、pluginID、identifier を指定した場合、ユーザーデータは新規作成されず、既存のユーザーデータのIDが返されます。複数のユーザーデータを扱うには異なる identifier を指定してください。

deleteVertexUserData(userdata_id)

頂点用のユーザーデータのIDを削除します。

引数:
long userdata_id - 頂点ユーザーデータID

findVertexUserData(productID, pluginID, identifier)

作成済みの頂点用のユーザーデータのIDを検索します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
戻り値:
int - 頂点ユーザーデータID
[0] 取得失敗

createFaceUserData(productID, pluginID, identifier, bytes_per_face)

面用のユーザーデータのIDを生成します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
int bytes_per_face - 面ごとに割り当てるデータのバイト数(65535バイト以内)
戻り値:
int - 面ユーザーデータID
[0] 失敗
注意点:
既に作成されているユーザーデータと同じ productID、pluginID、identifier を指定した場合、ユーザーデータは新規作成されず、既存のユーザーデータのIDが返されます。複数のユーザーデータを扱うには異なる identifier を指定してください。

deleteFaceUserData(userdata_id)

面用のユーザーデータのIDを削除します。

引数:
long userdata_id - 面ユーザーデータID

findFaceUserData(productID, pluginID, identifier)

作成済みの面用のユーザーデータのIDを検索します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
戻り値:
int - 面ユーザーデータID
[0] 取得失敗

createMaterialUserData(productID, pluginID, identifier, bytes_per_material)

材質用のユーザーデータのIDを生成します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
int bytes_per_material - 材質ごとに割り当てるデータのバイト数(65535バイト以内)
戻り値:
int - 材質ユーザーデータID
[0] 失敗
注意点:
既に作成されているユーザーデータと同じ productID、pluginID、identifier を指定した場合、ユーザーデータは新規作成されず、既存のユーザーデータのIDが返されます。複数のユーザーデータを扱うには異なる identifier を指定してください。

deleteMaterialUserData(userdata_id)

材質用のユーザーデータのIDを削除します。

引数:
long userdata_id - 材質ユーザーデータID

findMaterialUserData(productID, pluginID, identifier)

作成済みの材質用のユーザーデータのIDを検索します。

引数:
long productID - プラグインの制作者ID
long pluginID - プラグインのID
string identifier - 識別用の任意文字列(15文字まで)
戻り値:
int - 材質ユーザーデータID
[0] 取得失敗

getUVChannelID(name)

指定した名前に対応するUVチャンネルIDを生成・取得します。

引数:
string name - UVチャンネル名
戻り値:
int - UVチャンネルID
注意点:
存在しない名前を指定した場合、新しいUVチャンネルIDが生成されます。

getUVChannelName(channel)

UVチャンネルの名前を取得します。

引数:
int channel - UVチャンネルID
戻り値:
string - UVチャンネル名
注意点:
存在しないIDまたは0を指定した場合、空文字が返ります。

compact

ドキュメント中の配列に存在するNullを切り詰めます。

save(filename[, productID, pluginID, index])

ファイルへ保存します。

引数:
string filename - ファイル名
long productID - プラグインの制作者ID
long pluginID - プラグインのID
int index - プラグイン内の拡張子のインデックス
戻り値:
int - 結果
[0] 失敗
[1] 成功

undo

アンドゥを実行します。

戻り値:
int - 結果
[0] 失敗
[1] 成功

redo

リドゥを実行します。

戻り値:
int - 結果
[0] 失敗
[1] 成功

clearUndoBuffer

アンドゥバッファを消去します。