Lines Matching refs:patchWriter
235 if (VertexWriter patchWriter = fChunkBuilder.appendVertex()) {
236 patchWriter << fLastControlPoint;
237 patchWriter.writeArray(p, 4);
238 this->writeDynamicAttribs(&patchWriter);
579 if (VertexWriter patchWriter = fChunkBuilder.appendVertex()) {
580 patchWriter << fLastControlPoint << junctionPoint;
585 patchWriter << junctionPoint << junctionPoint;
590 patchWriter << nextControlPoint << nextControlPoint;
592 patchWriter << (nextControlPoint);
593 this->writeDynamicAttribs(&patchWriter);
599 SK_ALWAYS_INLINE void writeDynamicAttribs(VertexWriter* patchWriter) {
601 *patchWriter << fDynamicStroke;
604 *patchWriter << fDynamicColor;
710 PatchWriter patchWriter(fAttribs,
724 patchWriter.parametricPrecision(), localStrokeWidth);
725 patchWriter.updateTolerances(numRadialSegmentsPerRadian, stroke.getJoin());
730 StrokeToleranceBuffer toleranceBuffer(patchWriter.parametricPrecision());
736 patchWriter.updateTolerances(toleranceBuffer.fetchRadialSegmentsPerRadian(pathStroke),
738 patchWriter.updateDynamicStroke(stroke);
741 patchWriter.updateDynamicColor(pathStroke->fColor);
756 patchWriter.writeCaps(p[-1], shaderMatrix, stroke);
758 patchWriter.moveTo(p[0]);
762 patchWriter.writeClose(p[0], shaderMatrix, stroke);
771 prevJoinFitsInPatch = patchWriter.lineFitsInPatch_withJoin();
784 patchWriter.writeLineTo(p[0], p[2]);
791 patchWriter.writeLineTo(p[0], cusp);
792 patchWriter.writeLineTo(JoinType::kBowtie, cusp, p[2]);
796 wangs_formula::quadratic_pow4(patchWriter.parametricPrecision(), p);
797 if (!patchWriter.stroke180FitsInPatch(numParametricSegments_pow4)) {
800 patchWriter.writeConicPatchesTo(p, 1);
805 prevJoinFitsInPatch = patchWriter.stroke180FitsInPatch_withJoin(
819 patchWriter.writeLineTo(p[0], p[2]);
827 patchWriter.writeLineTo(p[0], cusp);
828 patchWriter.writeLineTo(JoinType::kBowtie, cusp, p[2]);
834 float n = wangs_formula::conic_pow2(patchWriter.parametricPrecision(), p, *w);
836 if (!patchWriter.stroke180FitsInPatch(numParametricSegments_pow4)) {
839 patchWriter.writeConicPatchesTo(p, *w);
844 prevJoinFitsInPatch = patchWriter.stroke180FitsInPatch_withJoin(
856 patchWriter.writeLineTo(p[0], p[3]);
860 wangs_formula::cubic_pow4(patchWriter.parametricPrecision(), p);
861 if (!patchWriter.stroke360FitsInPatch(numParametricSegments_pow4) ||
868 patchWriter.writeCubicConvex180PatchesTo(p);
873 prevJoinFitsInPatch = patchWriter.stroke360FitsInPatch_withJoin(
880 patchWriter.writePatchTo(prevJoinFitsInPatch, patchPts, endControlPoint);
884 patchWriter.writeCaps(p[path.countPoints() - 1], shaderMatrix, stroke);