CRI ADX  Last Updated: 2025-10-02 09:59 p
全体のコード

tutorial02-1_new_basic_project.py

# --Description:[チュートリアル]プロジェクト〜キューまでの基本再生データ作成と保存
import sys
import os
# cri atomcraft モジュールの読み込み
import cri.atomcraft.debug as acdebug
import cri.atomcraft.project as acproject
# 作成するプロジェクト名
project_name = "TutorialProject_Robot"
# プロジェクトを作成する場所
projects_dir = os.path.expanduser('~/Documents/CRIWARE/CriAtomCraft/projects')
if not os.path.isdir(projects_dir):
os.makedirs(projects_dir)
# チュートリアル用波形ファイルの場所
data_dir = os.path.dirname(os.path.dirname(__file__)) + '/tutorial_data'
# プロジェクト作成
result = acproject.create_project(projects_dir, project_name, True)
if not result["succeed"]:
acdebug.warning("Failed Create Project")
sys.exit()
# ワークユニット作成
result = acproject.create_workunit("WorkUnit_Tutorial", True, None)
if not result["succeed"]:
acdebug.warning("Failed Create WorkUnit")
sys.exit()
# ワークユニット情報を取得
workunit = result["data"]
# マテリアルルートフォルダー取得
material_rootfolder = acproject.get_material_rootfolder(workunit)["data"]
# マテリアルルートフォルダに波形ファイルを登録
material = acproject.register_material(material_rootfolder, data_dir+"/tutorial_data01/gun1_High.wav")["data"]
# ----- キューシート・キューの作成 -----
# キューシートフォルダを取得
cuesheet_rootfolder = acproject.get_cuesheet_rootfolder(workunit)["data"]
# キューシートフォルダ「WorkUnit_Tutorial」を取得
cuesheet_folder = acproject.get_child_object(cuesheet_rootfolder, "CueSheetFolder", "WorkUnit_Tutorial")["data"]
# キューシートフォルダにキューシートを作成
cuesheet = acproject.create_object(cuesheet_folder, "CueSheet", "Tutorial")["data"]
# ----- キュー・トラック・ウェーブフォームリージョンを作成 -----
# キューを作成
cue = acproject.create_object(cuesheet, "Cue", "gun1_High")["data"]
# トラックを作成
track = acproject.create_object(cue, "Track", "Track")["data"]
# マテリアルを指定してウェーブフォームリージョンを作成
waveform_region = acproject.create_waveform_region(track, material)["data"]
# プロジェクトの保存
result = acproject.save_project_all()
if not result["succeed"]:
acdebug.warning("プロジェクトファイルの保存に失敗しました。")