-- Floatの大きな値
BIG_FLOAT = 1.0e32
-- AABB
struct AABB
(
vMin,
vMax
)
-- AABBを取得
fn GetAABB =
(
local v = AABB()
v.vMin = [ BIG_FLOAT, BIG_FLOAT, BIG_FLOAT ]
v.vMax = [-BIG_FLOAT, -BIG_FLOAT, -BIG_FLOAT]
return v
)
-- binStreamにPoint3を書き込む
fn WritePoint3 bstream v =
(
WriteFloat bstream v.x
WriteFloat bstream v.y
WriteFloat bstream v.z
)
-- ファイルにAABBの値を書き込む
fn WriteAabbToFile filePath aabb =
(
file = fopen filePath "wb"
WritePoint3 file aabb.vMin
WritePoint3 file aabb.vMax
fclose file
)
-- ファイルにデータを書き込むテスト
fname = "test.bin" -- ファイル名
fdir = (GetDir #export) -- ファイルを書き込むディレクトリ
fpath = fdir + "\\" + fname
aabb = GetAABB()
aabb.vMin.x = 8.0
aabb.vMax.z = 0.0
WriteAabbToFile fpath aabb