Lines Matching full:1
67 regionBottom = image->rle->spans[image->rle->size - 1].y; in _arrange()
137 if (aaSpans->lines[ay].x[1] < x2) aaSpans->lines[ay].x[1] = x2;
140 if ((x2 - x1) >= 1 && (x1 < maxx) && (x2 > minx)) {
143 dx = 1 - (_xa - x1);
160 ar = (int)(255 * (1 - modff(u, &iptr)));
161 ab = (int)(255 * (1 - modff(v, &iptr)));
162 iru = uu + 1;
163 irv = vv + 1;
209 ar = (int)(255 * (1 - modff(u, &iptr)));
210 ab = (int)(255 * (1 - modff(v, &iptr)));
211 iru = uu + 1;
212 irv = vv + 1;
331 if (aaSpans->lines[ay].x[1] < x2) aaSpans->lines[ay].x[1] = x2; in _rasterBlendingPolygonImageSegment()
334 if ((x2 - x1) >= 1 && (x1 < maxx) && (x2 > minx)) { in _rasterBlendingPolygonImageSegment()
337 dx = 1 - (_xa - x1); in _rasterBlendingPolygonImageSegment()
353 ar = (int)(255 * (1 - modff(u, &iptr))); in _rasterBlendingPolygonImageSegment()
354 ab = (int)(255 * (1 - modff(v, &iptr))); in _rasterBlendingPolygonImageSegment()
355 iru = uu + 1; in _rasterBlendingPolygonImageSegment()
356 irv = vv + 1; in _rasterBlendingPolygonImageSegment()
396 ar = (int)(255 * (1 - modff(u, &iptr))); in _rasterBlendingPolygonImageSegment()
397 ab = (int)(255 * (1 - modff(v, &iptr))); in _rasterBlendingPolygonImageSegment()
398 iru = uu + 1; in _rasterBlendingPolygonImageSegment()
399 irv = vv + 1; in _rasterBlendingPolygonImageSegment()
513 if (aaSpans->lines[ay].x[1] < x2) aaSpans->lines[ay].x[1] = x2; in _rasterPolygonImageSegment()
516 if ((x2 - x1) >= 1 && (x1 < maxx) && (x2 > minx)) { in _rasterPolygonImageSegment()
519 dx = 1 - (_xa - x1); in _rasterPolygonImageSegment()
539 iru = uu + 1; in _rasterPolygonImageSegment()
540 irv = vv + 1; in _rasterPolygonImageSegment()
587 iru = uu + 1; in _rasterPolygonImageSegment()
588 irv = vv + 1; in _rasterPolygonImageSegment()
652 float x[3] = {polygon.vertex[0].pt.x, polygon.vertex[1].pt.x, polygon.vertex[2].pt.x}; in _rasterPolygonImage()
653 float y[3] = {polygon.vertex[0].pt.y, polygon.vertex[1].pt.y, polygon.vertex[2].pt.y}; in _rasterPolygonImage()
654 float u[3] = {polygon.vertex[0].uv.x, polygon.vertex[1].uv.x, polygon.vertex[2].uv.x}; in _rasterPolygonImage()
655 float v[3] = {polygon.vertex[0].uv.y, polygon.vertex[1].uv.y, polygon.vertex[2].uv.y}; in _rasterPolygonImage()
663 if (y[0] > y[1]) { in _rasterPolygonImage()
664 std::swap(x[0], x[1]); in _rasterPolygonImage()
665 std::swap(y[0], y[1]); in _rasterPolygonImage()
666 std::swap(u[0], u[1]); in _rasterPolygonImage()
667 std::swap(v[0], v[1]); in _rasterPolygonImage()
675 if (y[1] > y[2]) { in _rasterPolygonImage()
676 std::swap(x[1], x[2]); in _rasterPolygonImage()
677 std::swap(y[1], y[2]); in _rasterPolygonImage()
678 std::swap(u[1], u[2]); in _rasterPolygonImage()
679 std::swap(v[1], v[2]); in _rasterPolygonImage()
683 int yi[3] = {(int)y[0], (int)y[1], (int)y[2]}; in _rasterPolygonImage()
686 …if ((yi[0] == yi[1] && yi[0] == yi[2]) || ((int) x[0] == (int) x[1] && (int) x[0] == (int) x[2])) … in _rasterPolygonImage()
689 auto denom = ((x[2] - x[0]) * (y[1] - y[0]) - (x[1] - x[0]) * (y[2] - y[0])); in _rasterPolygonImage()
694 denom = 1 / denom; //Reciprocal for speeding up in _rasterPolygonImage()
695 dudx = ((u[2] - u[0]) * (y[1] - y[0]) - (u[1] - u[0]) * (y[2] - y[0])) * denom; in _rasterPolygonImage()
696 dvdx = ((v[2] - v[0]) * (y[1] - y[0]) - (v[1] - v[0]) * (y[2] - y[0])) * denom; in _rasterPolygonImage()
697 auto dudy = ((u[1] - u[0]) * (x[2] - x[0]) - (u[2] - u[0]) * (x[1] - x[0])) * denom; in _rasterPolygonImage()
698 auto dvdy = ((v[1] - v[0]) * (x[2] - x[0]) - (v[2] - v[0]) * (x[1] - x[0])) * denom; in _rasterPolygonImage()
701 if (y[1] > y[0]) dxdy[0] = (x[1] - x[0]) / (y[1] - y[0]); in _rasterPolygonImage()
702 if (y[2] > y[0]) dxdy[1] = (x[2] - x[0]) / (y[2] - y[0]); in _rasterPolygonImage()
703 if (y[2] > y[1]) dxdy[2] = (x[2] - x[1]) / (y[2] - y[1]); in _rasterPolygonImage()
706 auto side = (dxdy[1] > dxdy[0]) ? true : false; in _rasterPolygonImage()
708 if (tvg::equal(y[0], y[1])) side = x[0] > x[1]; in _rasterPolygonImage()
709 if (tvg::equal(y[1], y[2])) side = x[2] > x[1]; in _rasterPolygonImage()
718 dxdya = dxdy[1]; in _rasterPolygonImage()
729 if (yi[0] < yi[1]) { in _rasterPolygonImage()
740 …ting(surface)) _rasterPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity, … in _rasterPolygonImage()
741 … else _rasterMaskedPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity, 1); in _rasterPolygonImage()
743 … _rasterBlendingPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity); in _rasterPolygonImage()
745 … _rasterPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity, false); in _rasterPolygonImage()
750 if (yi[1] < yi[2]) { in _rasterPolygonImage()
751 off_y = y[1] < regionTop ? (regionTop - y[1]) : 0; in _rasterPolygonImage()
759 xb = x[1] + (1 - (y[1] - yi[1])) * dxdyb + (off_y * dxdyb); in _rasterPolygonImage()
761 …if (_matting(surface)) _rasterPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, o… in _rasterPolygonImage()
762 … else _rasterMaskedPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, opacity, 2); in _rasterPolygonImage()
764 … _rasterBlendingPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, opacity); in _rasterPolygonImage()
766 … _rasterPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, opacity, false); in _rasterPolygonImage()
772 dxdyb = dxdy[1]; in _rasterPolygonImage()
777 if (yi[0] < yi[1]) { in _rasterPolygonImage()
791 …ting(surface)) _rasterPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity, … in _rasterPolygonImage()
792 … else _rasterMaskedPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity, 3); in _rasterPolygonImage()
794 … _rasterBlendingPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity); in _rasterPolygonImage()
796 … _rasterPolygonImageSegment(surface, image, region, yi[0], yi[1], aaSpans, opacity, false); in _rasterPolygonImage()
801 if (yi[1] < yi[2]) { in _rasterPolygonImage()
802 off_y = y[1] < regionTop ? (regionTop - y[1]) : 0; in _rasterPolygonImage()
809 dy = 1 - (y[1] - yi[1]); in _rasterPolygonImage()
810 xa = x[1] + dy * dxdya + (off_y * dxdya); in _rasterPolygonImage()
811 ua = u[1] + dy * dudya + (off_y * dudya); in _rasterPolygonImage()
812 va = v[1] + dy * dvdya + (off_y * dvdya); in _rasterPolygonImage()
815 …if (_matting(surface)) _rasterPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, o… in _rasterPolygonImage()
816 … else _rasterMaskedPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, opacity, 4); in _rasterPolygonImage()
818 … _rasterBlendingPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, opacity); in _rasterPolygonImage()
820 … _rasterPolygonImageSegment(surface, image, region, yi[1], yi[2], aaSpans, opacity, false); in _rasterPolygonImage()
845 aaSpans->lines[i].x[1] = 0; in _AASpans()
847 aaSpans->lines[i].length[1] = 0; in _AASpans()
855 if (eidx == 1) reverse = !reverse; in _calcIrregularCoverage()
861 lines[tmp].length[eidx] = 1; in _calcIrregularCoverage()
870 if (eidx == 1) reverse = !reverse; in _calcVertCoverage()
871 int32_t coverage = (255 / (rewind + 1)); in _calcVertCoverage()
873 for (int ry = 1; ry < (rewind + 1); ry++) { in _calcVertCoverage()
876 lines[tmp].length[eidx] = 1; in _calcVertCoverage()
886 lines[y].coverage[eidx] = (255 / (lines[y].length[eidx] + 1)); in _calcHorizCoverage()
893 * https://uigraphics.tistory.com/1
909 ptx[1] = tx[1]; \ in _calcAAEdge()
918 Point pEdge = {-1, -1}; //previous edge point in _calcAAEdge()
950 tx[1] = lines[y].x[0]; in _calcAAEdge()
952 tx[0] = lines[y].x[1]; in _calcAAEdge()
953 tx[1] = pEdge.x; in _calcAAEdge()
955 edgeDiff.x = (tx[0] - tx[1]); in _calcAAEdge()
960 if (edgeDiff.y == 1) curDir = DirOutHor; in _calcAAEdge()
963 if (edgeDiff.y == 1) curDir = DirInHor; in _calcAAEdge()
969 if ((abs(edgeDiff.x) == 1) && (edgeDiff.y == 1)) { in _calcAAEdge()
978 _calcHorizCoverage(lines, eidx, y, tx[0], tx[1]); in _calcAAEdge()
984 if (prevDir == DirOutVer) _calcHorizCoverage(lines, eidx, pEdge.y, ptx[0], ptx[1]); in _calcAAEdge()
987 if (y == 1) _calcHorizCoverage(lines, eidx, pEdge.y, tx[0], tx[1]); in _calcAAEdge()
998 if (prevDir == DirOutHor) _calcHorizCoverage(lines, eidx, pEdge.y, ptx[0], ptx[1]); in _calcAAEdge()
1003 _calcHorizCoverage(lines, eidx, (y - 1), tx[0], tx[1]); in _calcAAEdge()
1009 if (prevDir == DirOutHor) _calcHorizCoverage(lines, eidx, pEdge.y, ptx[0], ptx[1]); in _calcAAEdge()
1015 … if (prevDir == DirOutHor) edgeDiff.y -= 1; //Weird, fine tuning????????????????????? in _calcAAEdge()
1021 if (prevDir == DirOutHor) _calcHorizCoverage(lines, eidx, pEdge.y, ptx[0], ptx[1]); in _calcAAEdge()
1030 if ((edgeDiff.y == 1) && (edgeDiff.x != 0)) { in _calcAAEdge()
1031 if (y >= yEnd) y = (yEnd - 1); in _calcAAEdge()
1032 _calcHorizCoverage(lines, eidx, y - 1, ptx[0], ptx[1]); in _calcAAEdge()
1033 _calcHorizCoverage(lines, eidx, y, tx[0], tx[1]); in _calcAAEdge()
1037 _calcVertCoverage(lines, eidx, y, (edgeDiff.y + 1), (prevDir & 0x00000001)); in _calcAAEdge()
1053 _calcAAEdge(aaSpans, 1); in _apply()
1057 auto width = line->x[1] - line->x[0]; in _apply()
1063 if (line->x[0] > 1) pixel = *(dst - 1); in _apply()
1065 pos = 1; in _apply()
1079 dst = surface->buf32 + offset + line->x[1] - 1; in _apply()
1081 if (line->x[1] < (int32_t)(surface->w - 1)) pixel = *(dst + 1); in _apply()
1083 pos = line->length[1]; in _apply()
1089 *dst = INTERPOLATE(*dst, pixel, 255 - (line->coverage[1] * pos)); in _apply()
1105 2 triangles constructs 1 mesh.
1109 0 -- 1
1128 vertices[1] = {{float(image->w), 0.0f}, {float(image->w), 0.0f}}; in _rasterTexmapPolygon()
1146 polygon.vertex[1] = vertices[1]; in _rasterTexmapPolygon()
1152 polygon.vertex[0] = vertices[1]; in _rasterTexmapPolygon()
1153 polygon.vertex[1] = vertices[2]; in _rasterTexmapPolygon()