コード例 #1
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Lambert(XmlColladaList fxList)
     : base(fxList)
 {
 }
コード例 #2
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public XmlShaderElement(XmlColladaList fxList)
 {
     _fxList = fxList;
 }
コード例 #3
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Accessor(int count, int offset, string source, int stride, XmlColladaList paramsList)
 {
     _count = count;
     _offset = offset;
     _source = source;
     _stride = stride;
     _paramsList = paramsList;
     if (null == _paramsList)
     {
         _paramsList = new XmlColladaList();
     }
 }
コード例 #4
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public Visual_Scene(XPathNodeIterator iterator, string uri)
        {
            XPathNodeIterator attributeIterator;
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Material.id);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _id = attributeIterator.Current.Value;
            }
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Material.name);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _name = attributeIterator.Current.Value;
            }

            _nodes = new XmlColladaList();
            XPathNodeIterator nodeIterator = iterator.Current.SelectChildren(XmlCollada.Node.root, uri);
            while (nodeIterator.MoveNext())
            {
                _nodes.Add(new Node(nodeIterator, uri));
            }
        }
コード例 #5
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public XmlGeometry(int count, string material, XmlColladaList inputs, int[] vcount, int[] p)
 {
     _count = count;
     _material = material;
     _inputs = inputs;
     if (null == _inputs)
     {
         _inputs = new XmlColladaList();
     }
     _vcount = vcount;
     _p = p;
 }
コード例 #6
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public Profile_COMMON(XPathNodeIterator iterator, string uri)
        {
            _newParamList = new XmlColladaList();

            XPathNodeIterator nodesIterator = iterator.Current.SelectChildren(XmlCollada.Technique.root, uri);
            if (nodesIterator.Count > 0)
            {
                nodesIterator.MoveNext();
                _technique = new Technique(nodesIterator, uri);
            }

            nodesIterator = iterator.Current.SelectChildren(XmlCollada.NewParam.root, uri);
            while (nodesIterator.MoveNext())
            {
                _newParamList.Add(new NewParam(nodesIterator, uri));
            }
        }
コード例 #7
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Triangles(int count, string material, XmlColladaList inputs, int[] p)
     : base(count, material, inputs, null, p)
 {
 }
コード例 #8
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Images(XPathNodeIterator iterator, string uri)
 {
     _images = new XmlColladaList();
     XPathNodeIterator imageNodeIterator = iterator.Current.SelectChildren(XmlCollada.Image.root, uri);
     while (imageNodeIterator.MoveNext())
     {
         _images.Add(new Image(imageNodeIterator, uri));
     }
 }
コード例 #9
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Materials(XmlColladaList materials)
 {
     _materials = materials;
 }
コード例 #10
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Geometries(XPathNodeIterator iterator, string uri)
 {
     _geometries = new XmlColladaList();
     XPathNodeIterator geometryNodeIterator = iterator.Current.SelectChildren(XmlCollada.Geometry.root, uri);
     while (geometryNodeIterator.MoveNext())
     {
         _geometries.Add(new Geometry(geometryNodeIterator, uri));
     }
 }
コード例 #11
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Images(XmlColladaList images)
 {
     _images = images;
 }
コード例 #12
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Geometries(XmlColladaList geometries)
 {
     _geometries = geometries;
     if (null == _geometries)
     {
         _geometries = new XmlColladaList();
     }
 }
コード例 #13
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Effects(XPathNodeIterator iterator, string uri)
 {
     _effects = new XmlColladaList();
     XPathNodeIterator effectNodeIterator = iterator.Current.SelectChildren(XmlCollada.Effect.root, uri);
     while (effectNodeIterator.MoveNext())
     {
         _effects.Add(new Effect(effectNodeIterator, uri));
     }
 }
コード例 #14
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Effects(XmlColladaList effects)
 {
     _effects = effects;
 }
コード例 #15
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Phong(XmlColladaList fxList)
     : base(fxList)
 {
 }
コード例 #16
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Materials(XPathNodeIterator iterator, string uri)
 {
     _materials = new XmlColladaList();
     XPathNodeIterator materialNodeIterator = iterator.Current.SelectChildren(XmlCollada.Material.root, uri);
     while (materialNodeIterator.MoveNext())
     {
         _materials.Add(new Material(materialNodeIterator, uri));
     }
 }
コード例 #17
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Profile_COMMON(Technique technique, XmlColladaList newParamList)
 {
     _technique = technique;
     _newParamList = newParamList;
     if (null == _newParamList)
     {
         _newParamList = new XmlColladaList();
     }
 }
コード例 #18
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Visual_Scenes(XmlColladaList visualScenes)
 {
     _visualScenes = visualScenes;
     if (null == _visualScenes)
     {
         _visualScenes = new XmlColladaList();
     }
 }
コード例 #19
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Blinn(XmlColladaList fxList)
     : base(fxList)
 {
 }
コード例 #20
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Library_Visual_Scenes(XPathNodeIterator iterator, string uri)
 {
     _visualScenes = new XmlColladaList();
     XPathNodeIterator visualSceneNodeIterator = iterator.Current.SelectChildren(XmlCollada.Visual_Scene.root, uri);
     while (visualSceneNodeIterator.MoveNext())
     {
         _visualScenes.Add(new Visual_Scene(visualSceneNodeIterator, uri));
     }
 }
コード例 #21
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Visual_Scene(string id, string name, XmlColladaList nodes)
 {
     _id = id;
     _name = name;
     _nodes = nodes;
     if (null == _nodes)
     {
         _nodes = new XmlColladaList();
     }
 }
コード例 #22
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Mesh(XmlColladaList sources, Vertices vertices, XmlColladaList geometries)
 {
     _sources = sources;
     if (null == _sources)
     {
         _sources = new XmlColladaList();
     }
     _vertices = vertices;
     _geometries = geometries;
     if (null == _geometries)
     {
         _geometries = new XmlColladaList();
     }
 }
コード例 #23
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public XmlColladaList GetInstanceGeometryNodes()
 {
     XmlColladaList result = new XmlColladaList();
     for (int i = 0; i < _nodes.Count; i++)
     {
         Node node = (Node)_nodes.GetAt(i);
         if (null != node.InstanceGeometry)
         {
             result.Add(node);
         }
     }
     return result;
 }
コード例 #24
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public Mesh(XPathNodeIterator iterator, string uri)
        {
            _sources = new XmlColladaList();
            XPathNodeIterator sourceNodesIterator = iterator.Current.SelectChildren(XmlCollada.Source.root, uri);
            while (sourceNodesIterator.MoveNext())
            {
                _sources.Add(new Source(sourceNodesIterator, uri));
            }

            XPathNodeIterator verticesNodesIterator = iterator.Current.SelectChildren(XmlCollada.Vertices.root, uri);
            if (verticesNodesIterator.MoveNext())
            {
                _vertices = new Vertices(verticesNodesIterator, uri);
            }

            _geometries = new XmlColladaList();
            XPathNodeIterator polylistsNodesIterator = iterator.Current.SelectChildren(polylist, uri);
            while (polylistsNodesIterator.MoveNext())
            {
                _geometries.Add(new PolyList(polylistsNodesIterator, uri));
            }

            XPathNodeIterator trianglesNodesIterator = iterator.Current.SelectChildren(triangles, uri);
            while (trianglesNodesIterator.MoveNext())
            {
                _geometries.Add(new Triangles(trianglesNodesIterator, uri));
            }
        }
コード例 #25
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public XmlGeometry(XPathNodeIterator iterator, string uri)
        {
            _count = 0;

            XPathNodeIterator attributeIterator;
            attributeIterator = iterator.Current.Select("@" + XmlCollada.PolyList.count);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _count = Convert.ToInt32(attributeIterator.Current.Value);
            }
            attributeIterator = iterator.Current.Select("@" + XmlCollada.PolyList.material);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _material = attributeIterator.Current.Value;
            }

            _inputs = new XmlColladaList();
            XPathNodeIterator inputNodesIterator = iterator.Current.SelectChildren(XmlCollada.Input.root, uri);
            while (inputNodesIterator.MoveNext())
            {
                _inputs.Add(new Input(inputNodesIterator, uri));
            }

            XPathNodeIterator vcountIterator = iterator.Current.SelectChildren(XmlCollada.PolyList.vcount, uri);
            if (vcountIterator.Count > 0)
            {
                vcountIterator.MoveNext();
                string value = vcountIterator.Current.Value;
                string[] valueArray = value.Split(' ');
                if (valueArray.Length > 0)
                {
                    _vcount = new int[valueArray.Length];
                    int idx = 0;
                    foreach (string s in valueArray)
                    {
                        _vcount[idx++] = Convert.ToInt32(s);
                    }
                }
            }

            XPathNodeIterator pIterator = iterator.Current.SelectChildren(XmlCollada.PolyList.p, uri);
            if (pIterator.Count > 0)
            {
                pIterator.MoveNext();
                string value = pIterator.Current.Value;
                string[] valueArray = value.Split(' ');
                if (valueArray.Length > 0)
                {
                    _p = new int[valueArray.Length];
                    int idx = 0;
                    foreach (string s in valueArray)
                    {
                        _p[idx++] = Convert.ToInt32(s);
                    }
                }
            }
        }
コード例 #26
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
 public Node(string id, string name, XmlColladaList transforms, Instance_Geometry instanceGeometry)
 {
     _transforms = transforms;
     if (null == _transforms) {
         _transforms = new XmlColladaList();
     }
     _id = id;
     _name = name;
     _instanceGeometry = instanceGeometry;
 }
コード例 #27
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public XmlShaderElement(XPathNodeIterator iterator, string uri)
        {
            _fxList = new XmlColladaList();

            XPathNodeIterator childNodesIterator = iterator.Current.SelectChildren(XPathNodeType.Element);
            while (childNodesIterator.MoveNext())
            {
                Fx_common_color_or_texture_type fx = new Fx_common_color_or_texture_type(childNodesIterator, uri);
                _fxList.Add(fx);
            }
        }
コード例 #28
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public Node(XPathNodeIterator iterator, string uri)
        {
            XPathNodeIterator attributeIterator;
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Node.id);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _id = attributeIterator.Current.Value;
            }
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Node.name);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _name = attributeIterator.Current.Value;
            }

            XPathNodeIterator nodeIterator;
            _transforms = new XmlColladaList();
            nodeIterator = iterator.Current.SelectChildren(XmlCollada.Rotate.root, uri);
            while (nodeIterator.MoveNext())
            {
                _transforms.Add(new Rotate(nodeIterator, uri));
            }

            nodeIterator = iterator.Current.SelectChildren(XmlCollada.Translate.root, uri);
            while (nodeIterator.MoveNext())
            {
                _transforms.Add(new Translate(nodeIterator, uri));
            }

            nodeIterator = iterator.Current.SelectChildren(XmlCollada.Instance_Geometry.root, uri);
            if (nodeIterator.MoveNext())
            {
                _instanceGeometry = new Instance_Geometry(nodeIterator, uri);
            }
        }
コード例 #29
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public Accessor(XPathNodeIterator iterator, string uri)
        {
            _count = 0;
            _offset = 0;
            _stride = 1;

            XPathNodeIterator attributeIterator;
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Accessor.count);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _count = Convert.ToInt32(attributeIterator.Current.Value);
            }
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Accessor.offset);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _offset = Convert.ToInt32(attributeIterator.Current.Value);
            }
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Accessor.source);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _source = attributeIterator.Current.Value;
            }
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Accessor.stride);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _stride = Convert.ToInt32(attributeIterator.Current.Value);
            }

            _paramsList = new XmlColladaList();
            XPathNodeIterator paramsNodesIterator = iterator.Current.SelectChildren(XmlCollada.Param.root, uri);
            while (paramsNodesIterator.MoveNext())
            {
                _paramsList.Add(new Param(paramsNodesIterator, uri));
            }
        }
コード例 #30
0
ファイル: XmlCollada.cs プロジェクト: Gamieon/Cycles3D
        public Instance_Geometry(XPathNodeIterator iterator, string uri)
        {
            XPathNodeIterator attributeIterator;
            attributeIterator = iterator.Current.Select("@" + XmlCollada.Instance_Geometry.url);
            if (attributeIterator.Count > 0)
            {
                attributeIterator.MoveNext();
                _url = attributeIterator.Current.Value;
            }

            _bindMaterials = new XmlColladaList();
            XPathNodeIterator nodeIterator = iterator.Current.SelectChildren(XmlCollada.Bind_Material.root, uri);
            while (nodeIterator.MoveNext())
            {
                _bindMaterials.Add(new Bind_Material(nodeIterator, uri));
            }
        }