@fremming
Thank you for your kind feedback.
Information like vendor, software are placed in scene.AssetInfo
while measurements, coordinate systems are stored in scene.RootNode.AssetInfo
. This design was learnt from Collada, although it may cause confusions.
The scale factor can be retrieved from scene.RootNode.AssetInfo.UnitScaleFactor
which is 0.001
, the unit name was null because it is undefined in the FBX file (Found by using Autodesk FBX Converter). Default unit measurement name in FBX is centimeter where it is meter in Aspose.3D, so the unit of shared file VegaNils.fbx
is actually 1mm (0.001m)
And the Up vector is X axis, as it can be retrieved from scene.RootNode.AssetInfo.UpVector
, it is unusual, but in the FBX file the raw value of up vector here is 1, according to FBX SDK:
enum EUpVector { eXAxis = 1, eYAxis = 2, eZAxis = 3 }
So it actually has a X axis as up vector in the FBX file.
Coordinate system was not properly set from the FBX file, but you can still get the raw FBX setting values using following code:
Scene scene = new Scene();
scene.Open(@"VegaNils.fbx");
string[] keys = { "UpAxis", "UpAxisSign", "FrontAxis", "FrontAxisSign", "CoordAxis", "CoordAxisSign", "OriginalUpAxis", "OriginalUpAxisSign", "UnitScaleFactor", "OriginalUnitScaleFactor" };
foreach(var key in keys)
{
Console.WriteLine("{0} = {1}", key, scene.RootNode.AssetInfo.GetProperty(key));
}
We hope this will be helpful. Please feel free to contact us if you need any further assistance.