コード例 #1
0
        public ColladaNewparam() : base(Enums.ColladaElementType.Fx_Newparam)
        {
            Fields.Add(_sid       = new ColladaObjectAttribute <string>(""));
            Fields.Add(_semantic  = new ColladaObjectElement <ColladaSemantic>());
            Fields.Add(_float     = new ColladaObjectElement <ColladaValueArray <float> >());
            Fields.Add(_float2    = new ColladaObjectElement <ColladaValueArray <float> >());
            Fields.Add(_float3    = new ColladaObjectElement <ColladaValueArray <float> >());
            Fields.Add(_float4    = new ColladaObjectElement <ColladaValueArray <float> >());
            Fields.Add(_surface   = new ColladaObjectElement <ColladaSurface>());
            Fields.Add(_sampler2D = new ColladaObjectElement <ColladaSampler2D>());

            List <ColladaObject> field_list = new List <ColladaObject>();

            field_list.Add(_float);
            field_list.Add(_float2);
            field_list.Add(_float3);
            field_list.Add(_float4);
            field_list.Add(_surface);
            field_list.Add(_sampler2D);

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _sid));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _sid));
            ValidationTests.Add(new ColladaOneRequired(Enums.ColladaElementType.All, field_list));
            ValidationTests.Add(new ColladaMutuallyExclusive(Enums.ColladaElementType.All, field_list));
        }
コード例 #2
0
        public ColladaAnimation() : base(Enums.ColladaElementType.Core_Animation)
        {
            Fields.Add(_id        = new ColladaObjectAttribute <string>(""));
            Fields.Add(_name      = new ColladaObjectAttribute <string>(""));
            Fields.Add(_asset     = new ColladaObjectElement <ColladaAsset>());
            Fields.Add(_animation = new ColladaObjectElementList <ColladaAnimation>());
            Fields.Add(_source    = new ColladaObjectElementList <ColladaSource>());
            Fields.Add(_sampler   = new ColladaObjectElementList <ColladaSampler>());
            Fields.Add(_channel   = new ColladaObjectElementList <ColladaChannel>());
            Fields.Add(_extra     = new ColladaObjectElementList <ColladaExtra>());

            List <ColladaObject> mutually_inclusive = new List <ColladaObject>();

            mutually_inclusive.Add(_sampler);
            mutually_inclusive.Add(_channel);

            List <ColladaObject> mutually_exclusive1 = new List <ColladaObject>();

            mutually_inclusive.Add(_animation);
            mutually_inclusive.Add(_sampler);

            List <ColladaObject> mutually_exclusive2 = new List <ColladaObject>();

            mutually_inclusive.Add(_animation);
            mutually_inclusive.Add(_channel);

            ValidationTests.Add(new ColladaMutuallyInclusive(Enums.ColladaElementType.All, mutually_inclusive));
            ValidationTests.Add(new ColladaMutuallyExclusive(Enums.ColladaElementType.All, mutually_exclusive1));
            ValidationTests.Add(new ColladaMutuallyExclusive(Enums.ColladaElementType.All, mutually_exclusive2));
        }
コード例 #3
0
        public ColladaControlVertices() : base(Enums.ColladaElementType.Core_ControlVertices)
        {
            Fields.Add(_input = new ColladaObjectElementList <ColladaInputShared>());
            Fields.Add(_extra = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _input));
            ValidationTests.Add(new ColladaListMinCount <ColladaInputShared>(Enums.ColladaElementType.All, _input, 1));
        }
コード例 #4
0
        public ColladaTechnique() : base(Enums.ColladaElementType.Core_Technique)
        {
            Fields.Add(_profile = new ColladaObjectAttribute <string>(""));
            Fields.Add(_xmlns   = new ColladaObjectAttribute <string>(""));

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _profile));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _profile));
        }
コード例 #5
0
        public ColladaImager() : base(Enums.ColladaElementType.Core_Imager)
        {
            Fields.Add(_technique = new ColladaObjectElementList <ColladaTechnique>());
            Fields.Add(_extra     = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _technique));
            ValidationTests.Add(new ColladaListMinCount <ColladaTechnique>(Enums.ColladaElementType.All, _technique, 1));
        }
コード例 #6
0
        public ColladaInputUnshared() : base(Enums.ColladaElementType.Core_InputUnshared)
        {
            Fields.Add(_semantic = new ColladaObjectAttribute <Enums.ColladaInputSharedSemantic>(Enums.ColladaInputSharedSemantic.BINORMAL));
            Fields.Add(_source   = new ColladaObjectAttribute <string>(""));

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _source));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _source));
        }
コード例 #7
0
        public ColladaSampler3D() : base(Enums.ColladaElementType.Fx_Sampler3D)
        {
            Fields.Add(_source = new ColladaObjectValue <string>(""));
            Fields.Add(_extra  = new ColladaObjectElementList <Core.ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _source));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _source));
        }
コード例 #8
0
        public ColladaOptics() : base(Enums.ColladaElementType.Core_Optics)
        {
            Fields.Add(_techniqueCommon = new ColladaObjectElement <ColladaTechniqueCommon>());
            Fields.Add(_technique       = new ColladaObjectElementList <ColladaTechnique>());
            Fields.Add(_extra           = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _techniqueCommon));
        }
コード例 #9
0
        public ColladaBind() : base(Enums.ColladaElementType.Fx_Bind)
        {
            Fields.Add(_semantic = new ColladaObjectAttribute <string>(""));
            Fields.Add(_target   = new ColladaObjectAttribute <string>(""));

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _target));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _target));
        }
コード例 #10
0
        public ColladaBindMaterial() : base(Enums.ColladaElementType.Fx_BindMaterial)
        {
            Fields.Add(_param           = new ColladaObjectElementList <Core.ColladaParam>());
            Fields.Add(_techniqueCommon = new ColladaObjectElement <Core.ColladaTechniqueCommon>());
            Fields.Add(_technique       = new ColladaObjectElementList <Core.ColladaTechnique>());
            Fields.Add(_extra           = new ColladaObjectElementList <Core.ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _techniqueCommon));
        }
コード例 #11
0
        public ColladaPolyPH() : base(Enums.ColladaElementType.Undefined)
        {
            Fields.Add(_p = new ColladaObjectElement <ColladaValueArray <uint> >());
            Fields.Add(_h = new ColladaObjectElementList <ColladaValueArray <uint> >());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _p));
            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _h));
            ValidationTests.Add(new ColladaListMinCount <ColladaValueArray <uint> >(Enums.ColladaElementType.All, _h, 1));
        }
コード例 #12
0
        public ColladaTechniqueHint() : base(Enums.ColladaElementType.Fx_TechniqueHint)
        {
            Fields.Add(_platform = new ColladaObjectAttribute <string>(""));
            Fields.Add(_ref      = new ColladaObjectAttribute <string>(""));
            Fields.Add(_profile  = new ColladaObjectAttribute <string>(""));

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _ref));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _ref));
        }
コード例 #13
0
        public ColladaPoint() : base(Enums.ColladaElementType.Core_Point)
        {
            Fields.Add(_color = new ColladaObjectElement <ColladaColor>());
            Fields.Add(_constantAttenuation  = new ColladaObjectElement <ColladaSIDValue <float> >());
            Fields.Add(_linearAttenuation    = new ColladaObjectElement <ColladaSIDValue <float> >());
            Fields.Add(_quadraticAttenuation = new ColladaObjectElement <ColladaSIDValue <float> >());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _color));
            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _quadraticAttenuation));
        }
コード例 #14
0
        public ColladaChannel() : base(Enums.ColladaElementType.Core_Channel)
        {
            Fields.Add(_source = new ColladaObjectAttribute <string>(""));
            Fields.Add(_target = new ColladaObjectAttribute <string>(""));

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _source));
            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _target));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _source));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _target));
        }
コード例 #15
0
        public ColladaJoints() : base(Enums.ColladaElementType.Core_Joints)
        {
            Fields.Add(_input = new ColladaObjectElementList <ColladaInputUnshared>());
            Fields.Add(_extra = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _input));
            ValidationTests.Add(new ColladaListMinCount <ColladaInputUnshared>(Enums.ColladaElementType.All, _input, 2));
            ValidationTests.Add(new ColladaListHasValue <ColladaInputUnshared, Enums.ColladaInputSharedSemantic>(Enums.ColladaElementType.All,
                                                                                                                 _input, "Semantic", Enums.ColladaInputSharedSemantic.JOINT));
        }
コード例 #16
0
        public ColladaMaterial() : base(Enums.ColladaElementType.Fx_Material)
        {
            Fields.Add(_id             = new ColladaObjectAttribute <ColladaID <ColladaMaterial> >(""));
            Fields.Add(_name           = new ColladaObjectAttribute <ColladaNCName>(""));
            Fields.Add(_asset          = new ColladaObjectElement <Core.ColladaAsset>());
            Fields.Add(_instanceEffect = new ColladaObjectElement <ColladaInstanceEffect>());
            Fields.Add(_extra          = new ColladaObjectElementList <Core.ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _instanceEffect));
        }
コード例 #17
0
        public ColladaInstanceVisualScene() : base(Enums.ColladaElementType.Core_InstanceVisualScene)
        {
            Fields.Add(_sid   = new ColladaObjectAttribute <string>(""));
            Fields.Add(_name  = new ColladaObjectAttribute <string>(""));
            Fields.Add(_url   = new ColladaObjectAttribute <string>(""));
            Fields.Add(_extra = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _url));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _url));
        }
コード例 #18
0
        public ColladaAccessor() : base(Enums.ColladaElementType.Core_Accessor)
        {
            Fields.Add(_count  = new ColladaObjectAttribute <uint>(0));
            Fields.Add(_offset = new ColladaObjectAttribute <uint>(0));
            Fields.Add(_source = new ColladaObjectAttribute <string>(""));
            Fields.Add(_param  = new ColladaObjectElementList <ColladaParam>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _source));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _source));
        }
コード例 #19
0
        public ColladaSampler() : base(Enums.ColladaElementType.Core_Sampler)
        {
            Fields.Add(_id    = new ColladaObjectAttribute <string>(""));
            Fields.Add(_input = new ColladaObjectElementList <ColladaInputUnshared>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _input));
            ValidationTests.Add(new ColladaListMinCount <ColladaInputUnshared>(Enums.ColladaElementType.All, _input, 1));
            ValidationTests.Add(new ColladaListHasValue <ColladaInputUnshared, Enums.ColladaInputSharedSemantic>(Enums.ColladaElementType.All,
                                                                                                                 _input, "Semantic", Enums.ColladaInputSharedSemantic.INTERPOLATION));
        }
コード例 #20
0
        public ColladaVisualScene() : base(Enums.ColladaElementType.Core_VisualScene)
        {
            Fields.Add(_id    = new ColladaObjectAttribute <ColladaID <ColladaVisualScene> >(""));
            Fields.Add(_name  = new ColladaObjectAttribute <ColladaNCName>(""));
            Fields.Add(_asset = new ColladaObjectElement <ColladaAsset>());
            Fields.Add(_node  = new ColladaObjectElementList <ColladaNode>());
            Fields.Add(_extra = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _node));
            ValidationTests.Add(new ColladaListMinCount <ColladaNode>(Enums.ColladaElementType.All, _node, 1));
        }
コード例 #21
0
        public ColladaExtra() : base(Enums.ColladaElementType.Core_Extra)
        {
            Fields.Add(_id        = new ColladaObjectAttribute <string>(""));
            Fields.Add(_name      = new ColladaObjectAttribute <string>(""));
            Fields.Add(_type      = new ColladaObjectAttribute <string>(""));
            Fields.Add(_asset     = new ColladaObjectElement <ColladaAsset>());
            Fields.Add(_technique = new ColladaObjectElementList <ColladaTechnique>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _technique));
            ValidationTests.Add(new ColladaListMinCount <ColladaTechnique>(Enums.ColladaElementType.All, _technique, 1));
        }
コード例 #22
0
        public ColladaSpline() : base(Enums.ColladaElementType.Core_Spline)
        {
            Fields.Add(_closed          = new ColladaObjectAttribute <bool>(false));
            Fields.Add(_source          = new ColladaObjectElementList <ColladaSource>());
            Fields.Add(_controlVertices = new ColladaObjectElement <ColladaControlVertices>());
            Fields.Add(_extra           = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _source));
            ValidationTests.Add(new ColladaListMinCount <ColladaSource>(Enums.ColladaElementType.All, _source, 1));
            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _controlVertices));
        }
コード例 #23
0
        public ColladaLibraryGeometries() : base(Enums.ColladaElementType.Core_LibraryGeometries)
        {
            Fields.Add(_id       = new ColladaObjectAttribute <ColladaID <ColladaLibraryGeometries> >(""));
            Fields.Add(_name     = new ColladaObjectAttribute <ColladaNCName>(""));
            Fields.Add(_asset    = new ColladaObjectElement <ColladaAsset>());
            Fields.Add(_geometry = new ColladaObjectElementList <ColladaGeometry>());
            Fields.Add(_extra    = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _geometry));
            ValidationTests.Add(new ColladaListMinCount <ColladaGeometry>(Enums.ColladaElementType.All, _geometry, 1));
        }
コード例 #24
0
        public ColladaInstanceGeometry() : base(Enums.ColladaElementType.Core_InstanceGeometry)
        {
            Fields.Add(_sid          = new ColladaObjectAttribute <string>(""));
            Fields.Add(_name         = new ColladaObjectAttribute <string>(""));
            Fields.Add(_url          = new ColladaObjectAttribute <string>(""));
            Fields.Add(_bindMaterial = new ColladaObjectElement <Fx.ColladaBindMaterial>());
            Fields.Add(_extra        = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _url));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _url));
        }
コード例 #25
0
        public ColladaTexture() : base(Enums.ColladaElementType.Undefined)
        {
            Fields.Add(_texture  = new ColladaObjectAttribute <string>(""));
            Fields.Add(_texCoord = new ColladaObjectAttribute <string>(""));
            Fields.Add(_extra    = new ColladaObjectElement <Core.ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.Fx_CommonColorOrTextureType, _texture));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.Fx_CommonColorOrTextureType, _texture));
            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.Fx_CommonColorOrTextureType, _texCoord));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.Fx_CommonColorOrTextureType, _texCoord));
        }
コード例 #26
0
        public ColladaLibraryMaterials() : base(Enums.ColladaElementType.Fx_LibraryMaterials)
        {
            Fields.Add(_id       = new ColladaObjectAttribute <ColladaID <ColladaLibraryMaterials> >(""));
            Fields.Add(_name     = new ColladaObjectAttribute <ColladaNCName>(""));
            Fields.Add(_asset    = new ColladaObjectElement <Core.ColladaAsset>());
            Fields.Add(_material = new ColladaObjectElementList <ColladaMaterial>());
            Fields.Add(_extra    = new ColladaObjectElementList <Core.ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _material));
            ValidationTests.Add(new ColladaListMinCount <ColladaMaterial>(Enums.ColladaElementType.All, _material, 1));
        }
コード例 #27
0
        public ColladaLibraryControllers() : base(Enums.ColladaElementType.Core_LibraryControllers)
        {
            Fields.Add(_id         = new ColladaObjectAttribute <ColladaID <ColladaLibraryControllers> >(""));
            Fields.Add(_name       = new ColladaObjectAttribute <ColladaNCName>(""));
            Fields.Add(_asset      = new ColladaObjectElement <ColladaAsset>());
            Fields.Add(_controller = new ColladaObjectElementList <ColladaController>());
            Fields.Add(_extra      = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _controller));
            ValidationTests.Add(new ColladaListMinCount <ColladaController>(Enums.ColladaElementType.All, _controller, 1));
        }
コード例 #28
0
		public ColladaLight() : base(Enums.ColladaElementType.Core_Light)
		{
			Fields.Add(_id = new ColladaObjectAttribute<ColladaID<ColladaLight>>(""));
			Fields.Add(_name = new ColladaObjectAttribute<ColladaNCName>(""));
			Fields.Add(_asset = new ColladaObjectElement<ColladaAsset>());
			Fields.Add(_techniqueCommon = new ColladaObjectElement<ColladaTechniqueCommon>());
			Fields.Add(_technique = new ColladaObjectElementList<ColladaTechnique>());
			Fields.Add(_extra = new ColladaObjectElementList<ColladaExtra>());

			ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _techniqueCommon));
		}
コード例 #29
0
        public ColladaLibraryNodes() : base(Enums.ColladaElementType.Core_LibraryNodes)
        {
            Fields.Add(_id    = new ColladaObjectAttribute <string>(""));
            Fields.Add(_name  = new ColladaObjectAttribute <string>(""));
            Fields.Add(_asset = new ColladaObjectElement <ColladaAsset>());
            Fields.Add(_node  = new ColladaObjectElementList <ColladaNode>());
            Fields.Add(_extra = new ColladaObjectElementList <ColladaExtra>());

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _node));
            ValidationTests.Add(new ColladaListMinCount <ColladaNode>(Enums.ColladaElementType.All, _node, 1));
        }
コード例 #30
0
        public ColladaBindVertexInput() : base(Enums.ColladaElementType.Fx_BindVertexInput)
        {
            Fields.Add(_semantic      = new ColladaObjectAttribute <string>(""));
            Fields.Add(_inputSemantic = new ColladaObjectAttribute <string>(""));
            Fields.Add(_inputSet      = new ColladaObjectAttribute <uint>(0));

            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _semantic));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _semantic));
            ValidationTests.Add(new ColladaIsNull(Enums.ColladaElementType.All, _inputSemantic));
            ValidationTests.Add(new ColladaEmptyString(Enums.ColladaElementType.All, _inputSemantic));
        }