Ejemplo n.º 1
0
 internal static ThreeMfResource ParseResource(XElement element, Dictionary <int, ThreeMfResource> resourceMap, Package package)
 {
     if (element.Name == ObjectName)
     {
         return(ThreeMfObject.ParseObject(element, resourceMap, package));
     }
     else if (element.Name == BaseMaterialsName)
     {
         return(ThreeMfBaseMaterials.ParseBaseMaterials(element));
     }
     else if (element.Name == ColorGroupName)
     {
         return(ThreeMfColorGroup.ParseColorGroup(element));
     }
     else if (element.Name == Texture2DName)
     {
         return(ThreeMfTexture2D.ParseTexture(element, package));
     }
     else if (element.Name == Texture2DGroupName)
     {
         return(ThreeMfTexture2DGroup.ParseTexture2DGroup(element, resourceMap));
     }
     else
     {
         return(null);
     }
 }
Ejemplo n.º 2
0
        internal static ThreeMfBaseMaterials ParseBaseMaterials(XElement element)
        {
            var baseMaterials = new ThreeMfBaseMaterials();

            baseMaterials.Id = element.AttributeIntValueOrThrow(IdAttributeName);
            foreach (var baseElement in element.Elements(ThreeMfBase.BaseName))
            {
                var baseMaterial = ThreeMfBase.ParseBaseMaterial(baseElement);
                baseMaterials.Bases.Add(baseMaterial);
            }

            return(baseMaterials);
        }