void LayoutSVGResourceLinearGradient::buildGradient(GradientData* gradientData) const { const LinearGradientAttributes& attributes = this->attributes(); gradientData->gradient = Gradient::create(startPoint(attributes), endPoint(attributes)); gradientData->gradient->setSpreadMethod(platformSpreadMethodFromSVGType(attributes.spreadMethod())); addStops(gradientData, attributes.stops()); }
void RenderSVGResourceRadialGradient::buildGradient(GradientData* gradientData) const { gradientData->gradient = Gradient::create(this->focalPoint(m_attributes), this->focalRadius(m_attributes), this->centerPoint(m_attributes), this->radius(m_attributes)); gradientData->gradient->setSpreadMethod(platformSpreadMethodFromSVGType(m_attributes.spreadMethod())); addStops(gradientData, m_attributes.stops()); }
void LayoutSVGResourceRadialGradient::buildGradient(GradientData* gradientData) const { const RadialGradientAttributes& attributes = this->attributes(); gradientData->gradient = Gradient::create(this->focalPoint(attributes), this->focalRadius(attributes), this->centerPoint(attributes), this->radius(attributes)); gradientData->gradient->setSpreadMethod(platformSpreadMethodFromSVGType(attributes.spreadMethod())); addStops(gradientData, attributes.stops()); }
void RenderSVGResourceLinearGradient::buildGradient(GradientData* gradientData, SVGGradientElement* gradientElement) const { SVGLinearGradientElement* linearGradientElement = static_cast<SVGLinearGradientElement*>(gradientElement); // Determine gradient start/end points FloatPoint startPoint; FloatPoint endPoint; linearGradientElement->calculateStartEndPoints(m_attributes, startPoint, endPoint); gradientData->gradient = Gradient::create(startPoint, endPoint); gradientData->gradient->setSpreadMethod(platformSpreadMethodFromSVGType(m_attributes.spreadMethod())); // Add stops addStops(gradientData, m_attributes.stops()); }