Example #1
0
        public void _PrintFbxObject(FbxObject obj, TextWriter writer)
        {
            writer.WriteLine("${0}", PrintObjectID(obj));  // extra $ for easy text search
            writer.WriteLine("    Name = {0}", quote(obj.GetName()));
            writer.WriteLine("    ClassId = {0}", obj.GetType().Name /*obj.GetRuntimeClassId().GetName()*/);
            writer.WriteLine("    UniqueId = {0}", obj.GetUniqueID());
            writer.WriteLine("    GetScene() = {0}", PrintObjectID(obj.GetScene()));
//            writer.Write("    GetDocument() = {0}", PrintObjectID(obj.GetDocument()));
//            writer.Write("    GetRootDocument() = {0}", PrintObjectID(obj.GetRootDocument()));
            writer.WriteLine("    SrcObjectCount = {0}", obj.GetSrcObjectCount());

            int i;

            for (i = 0; i < obj.GetSrcObjectCount(); i++)
            {
                FbxObject srcObj = obj.GetSrcObject(i);
                writer.WriteLine("        #{0} {1}", i, PrintObjectID(srcObj));
            }
            writer.WriteLine("    DstObjectCount = {0}", obj.GetDstObjectCount());
            for (i = 0; i < obj.GetDstObjectCount(); i++)
            {
                FbxObject dstObj = obj.GetDstObject(i);
                writer.WriteLine("        #{0} {1}", i, PrintObjectID(dstObj));
            }

            var prop = obj.GetFirstProperty();
            int n    = 0;

            while (prop != null && prop.IsValid())
            {
                n++;
                prop = obj.GetNextProperty(prop);
            }
            writer.WriteLine("    Properties {0}", n);

            prop = obj.GetFirstProperty();
            n    = 0;
            while (prop != null && prop.IsValid())
            {
                writer.WriteLine("        #{0} {1}", n, PrintPropertyID(prop));
                PrintProperty(prop, writer, true);
                n++;
                prop = obj.GetNextProperty(prop);
            }

            writer.WriteLine("    SrcPropertyCount = {0}", obj.GetSrcPropertyCount());
            for (i = 0; i < obj.GetSrcPropertyCount(); i++)
            {
                prop = obj.GetSrcProperty(i);
                writer.WriteLine("        #{0} {1}", i, PrintPropertyID(prop));
            }
            writer.WriteLine("    DstPropertyCount = {0}", obj.GetDstPropertyCount());
            for (i = 0; i < obj.GetDstPropertyCount(); i++)
            {
                prop = obj.GetDstProperty(i);
                writer.WriteLine("        #{0} {1}", i, PrintPropertyID(prop));
            }
            if (obj.RootProperty.IsValid())
            {
                writer.WriteLine("    RootProperty = {0}", PrintPropertyID(obj.RootProperty));
                PrintProperty(obj.RootProperty, writer);
            }
        }