Exemplo n.º 1
0
        private void resolveHref(Dictionary <String, SVGGradient> pSVGGradientMap)
        {
            SVGGradient parent = pSVGGradientMap[this.mHref];

            if (parent == null)
            {
                throw new SVGParseException("Could not resolve href: '" + this.mHref + "' of SVGGradient: '" + this.mID + "'.");
            }
            else
            {
                parent.ensureHrefResolved(pSVGGradientMap);
                this.mParent = parent;
                this.mSVGAttributes.setParentSVGAttributes(this.mParent.mSVGAttributes);
                if (this.mSVGGradientStops == null)
                {
                    this.mSVGGradientStops          = this.mParent.mSVGGradientStops;
                    this.mSVGGradientStopsColors    = this.mParent.mSVGGradientStopsColors;
                    this.mSVGGradientStopsPositions = this.mParent.mSVGGradientStopsPositions;
                }
            }
        }
Exemplo n.º 2
0
        Shader getGradientShader(string pGradientShaderID)
        {
            SVGGradient svgGradient = this.mSVGGradientMap[pGradientShaderID];

            if (svgGradient == null)
            {
                throw new SVGParseException("No SVGGradient found for id: '" + pGradientShaderID + "'.");
            }
            else
            {
                Shader gradientShader = svgGradient.getShader();
                if (gradientShader != null)
                {
                    return(gradientShader);
                }
                else
                {
                    svgGradient.ensureHrefResolved(this.mSVGGradientMap);
                    return(svgGradient.createShader());
                }
            }
        }