602{
611
612 TRACE(
"Line %3.1f, %3.1f, %3.1f (r%u, g%u, b%u) --> %3.1f, %3.1f, %3.1f (r%u, g%u, b%u)\n",
613 ctx->VB->Win[vert0][0],
ctx->VB->Win[vert0][1],
ctx->VB->Win[vert0][2],
ctx->VB->Color[vert0][0],
ctx->VB->Color[vert0][1],
ctx->VB->Color[vert0][2],
614 ctx->VB->Win[vert1][0],
ctx->VB->Win[vert1][1],
ctx->VB->Win[vert1][2],
ctx->VB->Color[vert1][0],
ctx->VB->Color[vert1][1],
ctx->VB->Color[vert1][2]);
615
616 if (
ctx->Line.StippleFlag) {
617
618#define INTERP_XY 1
619#define INTERP_Z 1
620#define INTERP_RGB 1
621#define INTERP_ALPHA 1
622#define WIDE 1
623#define STIPPLE 1
624#define PLOT(X,Y) \
625 pbx[count] = X; \
626 pby[count] = Y; \
627 pbz[count] = Z; \
628 pbr[count] = FixedToInt(r0); \
629 pbg[count] = FixedToInt(g0); \
630 pbb[count] = FixedToInt(b0); \
631 pba[count] = FixedToInt(a0); \
632 count++; \
633 CHECK_FULL(count);
635 }
636 else {
637
638 if (
ctx->Line.Width==2.0F) {
639
640#define INTERP_XY 1
641#define INTERP_Z 1
642#define INTERP_RGB 1
643#define INTERP_ALPHA 1
644#define XMAJOR_PLOT(X,Y) \
645 pbx[count] = X; pbx[count+1] = X; \
646 pby[count] = Y; pby[count+1] = Y+1; \
647 pbz[count] = Z; pbz[count+1] = Z; \
648 pbr[count] = FixedToInt(r0); pbr[count+1] = FixedToInt(r0); \
649 pbg[count] = FixedToInt(g0); pbg[count+1] = FixedToInt(g0); \
650 pbb[count] = FixedToInt(b0); pbb[count+1] = FixedToInt(b0); \
651 pba[count] = FixedToInt(a0); pba[count+1] = FixedToInt(a0); \
652 count += 2;
653#define YMAJOR_PLOT(X,Y) \
654 pbx[count] = X; pbx[count+1] = X+1; \
655 pby[count] = Y; pby[count+1] = Y; \
656 pbz[count] = Z; pbz[count+1] = Z; \
657 pbr[count] = FixedToInt(r0); pbr[count+1] = FixedToInt(r0); \
658 pbg[count] = FixedToInt(g0); pbg[count+1] = FixedToInt(g0); \
659 pbb[count] = FixedToInt(b0); pbb[count+1] = FixedToInt(b0); \
660 pba[count] = FixedToInt(a0); pba[count+1] = FixedToInt(a0); \
661 count += 2;
663 }
664 else {
665
666#define INTERP_XY 1
667#define INTERP_Z 1
668#define INTERP_RGB 1
669#define INTERP_ALPHA 1
670#define WIDE 1
671#define PLOT(X,Y) \
672 pbx[count] = X; \
673 pby[count] = Y; \
674 pbz[count] = Z; \
675 pbr[count] = FixedToInt(r0); \
676 pbg[count] = FixedToInt(g0); \
677 pbb[count] = FixedToInt(b0); \
678 pba[count] = FixedToInt(a0); \
679 count++; \
680 CHECK_FULL(count);
682 }
683 }
684
687}