Exemplo n.º 1
0
 public void BlendLineDiagonal(sPixel col, OutputMatrix output)
 {
     _AlphaBlend(1, 8, output.Reference(_SCALE - 1, _SCALE / 2), col);
     _AlphaBlend(1, 8, output.Reference(_SCALE - 2, _SCALE / 2 + 1), col);
     _AlphaBlend(1, 8, output.Reference(_SCALE - 3, _SCALE / 2 + 2), col);
     _AlphaBlend(7, 8, output.Reference(4, 3), col);
     _AlphaBlend(7, 8, output.Reference(3, 4), col);
     output.Reference(4, 4).SetPixel(col);
 }
Exemplo n.º 2
0
 public void BlendLineSteep(sPixel col, OutputMatrix output)
 {
     _AlphaBlend(1, 4, output.Reference(0, _SCALE - 1), col);
     _AlphaBlend(1, 4, output.Reference(2, _SCALE - 2), col);
     _AlphaBlend(3, 4, output.Reference(1, _SCALE - 1), col);
     _AlphaBlend(3, 4, output.Reference(3, _SCALE - 2), col);
     output.Reference(2, _SCALE - 1).SetPixel(col);
     output.Reference(3, _SCALE - 1).SetPixel(col);
 }
Exemplo n.º 3
0
 public void BlendLineShallow(sPixel col, OutputMatrix output)
 {
     _AlphaBlend(1, 4, output.Reference(_SCALE - 1, 0), col);
     _AlphaBlend(1, 4, output.Reference(_SCALE - 2, 2), col);
     _AlphaBlend(3, 4, output.Reference(_SCALE - 1, 1), col);
     _AlphaBlend(3, 4, output.Reference(_SCALE - 2, 3), col);
     output.Reference(_SCALE - 1, 2).SetPixel(col);
     output.Reference(_SCALE - 1, 3).SetPixel(col);
 }
Exemplo n.º 4
0
 public void BlendLineDiagonal(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 8, output.Reference(_SCALE - 1, _SCALE / 2), col);
   _AlphaBlend(1, 8, output.Reference(_SCALE - 2, _SCALE / 2 + 1), col);
   _AlphaBlend(1, 8, output.Reference(_SCALE - 3, _SCALE / 2 + 2), col);
   _AlphaBlend(7, 8, output.Reference(4, 3), col);
   _AlphaBlend(7, 8, output.Reference(3, 4), col);
   output.Reference(4, 4).SetPixel(col);
 }
Exemplo n.º 5
0
 public void BlendLineSteepAndShallow(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 4, output.Reference(0, _SCALE - 1), col);
   _AlphaBlend(1, 4, output.Reference(2, _SCALE - 2), col);
   _AlphaBlend(3, 4, output.Reference(1, _SCALE - 1), col);
   _AlphaBlend(1, 4, output.Reference(_SCALE - 1, 0), col);
   _AlphaBlend(1, 4, output.Reference(_SCALE - 2, 2), col);
   _AlphaBlend(3, 4, output.Reference(_SCALE - 1, 1), col);
   output.Reference(2, _SCALE - 1).SetPixel(col);
   output.Reference(3, _SCALE - 1).SetPixel(col);
   output.Reference(_SCALE - 1, 2).SetPixel(col);
   output.Reference(_SCALE - 1, 3).SetPixel(col);
   output.Reference(4, _SCALE - 1).SetPixel(col);
   _AlphaBlend(2, 3, output.Reference(3, 3), col);
 }
Exemplo n.º 6
0
 public void BlendLineSteep(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 4, output.Reference(0, _SCALE - 1), col);
   _AlphaBlend(1, 4, output.Reference(2, _SCALE - 2), col);
   _AlphaBlend(1, 4, output.Reference(4, _SCALE - 3), col);
   _AlphaBlend(3, 4, output.Reference(1, _SCALE - 1), col);
   _AlphaBlend(3, 4, output.Reference(3, _SCALE - 2), col);
   output.Reference(2, _SCALE - 1).SetPixel(col);
   output.Reference(3, _SCALE - 1).SetPixel(col);
   output.Reference(4, _SCALE - 1).SetPixel(col);
   output.Reference(4, _SCALE - 2).SetPixel(col);
 }
Exemplo n.º 7
0
 public void BlendLineShallow(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 4, output.Reference(_SCALE - 1, 0), col);
   _AlphaBlend(1, 4, output.Reference(_SCALE - 2, 2), col);
   _AlphaBlend(1, 4, output.Reference(_SCALE - 3, 4), col);
   _AlphaBlend(3, 4, output.Reference(_SCALE - 1, 1), col);
   _AlphaBlend(3, 4, output.Reference(_SCALE - 2, 3), col);
   output.Reference(_SCALE - 1, 2).SetPixel(col);
   output.Reference(_SCALE - 1, 3).SetPixel(col);
   output.Reference(_SCALE - 1, 4).SetPixel(col);
   output.Reference(_SCALE - 2, 4).SetPixel(col);
 }
Exemplo n.º 8
0
 public void BlendCorner(sPixel col, OutputMatrix output) {
   //model a round corner
   _AlphaBlend(68, 100, output.Reference(3, 3), col); //exact: 0.6848532563
   _AlphaBlend(9, 100, output.Reference(3, 2), col); //0.08677704501
   _AlphaBlend(9, 100, output.Reference(2, 3), col); //0.08677704501
 }
 public void BlendCorner(sPixel col, OutputMatrix output)
 {
     //model a round corner
     _AlphaBlend(21, 100, output.Reference(1, 1), col);                 //exact: 1 - pi/4 = 0.2146018366
 }
Exemplo n.º 10
0
 public void BlendLineDiagonal(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 8, output.Reference(1, 2), col);
   _AlphaBlend(1, 8, output.Reference(2, 1), col);
   _AlphaBlend(7, 8, output.Reference(2, 2), col);
 }
Exemplo n.º 11
0
 public void BlendLineSteepAndShallow(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 4, output.Reference(2, 0), col);
   _AlphaBlend(1, 4, output.Reference(0, 2), col);
   _AlphaBlend(3, 4, output.Reference(2, 1), col);
   _AlphaBlend(3, 4, output.Reference(1, 2), col);
   output.Reference(2, 2).SetPixel(col);
 }
Exemplo n.º 12
0
 public void BlendCorner(sPixel col, OutputMatrix output) {
   //model a round corner
   _AlphaBlend(21, 100, output.Reference(1, 1), col); //exact: 1 - pi/4 = 0.2146018366
 }
Exemplo n.º 13
0
 public void BlendLineSteepAndShallow(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 4, output.Reference(1, 0), col);
   _AlphaBlend(1, 4, output.Reference(0, 1), col);
   _AlphaBlend(5, 6, output.Reference(1, 1), col); //[!] fixes 7/8 used in xBR
 }
Exemplo n.º 14
0
 public void BlendLineSteep(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 4, output.Reference(0, _SCALE - 1), col);
   _AlphaBlend(3, 4, output.Reference(1, _SCALE - 1), col);
 }
Exemplo n.º 15
0
 public void BlendLineShallow(sPixel col, OutputMatrix output) {
   _AlphaBlend(1, 4, output.Reference(_SCALE - 1, 0), col);
   _AlphaBlend(3, 4, output.Reference(_SCALE - 1, 1), col);
 }
Exemplo n.º 16
0
 public void BlendCorner(sPixel col, OutputMatrix output) {
   //model a round corner
   _AlphaBlend(86, 100, output.Reference(4, 4), col); //exact: 0.8631434088
   _AlphaBlend(23, 100, output.Reference(4, 3), col); //0.2306749731
   _AlphaBlend(23, 100, output.Reference(3, 4), col); //0.2306749731
   //alphaBlend(8, 1000, out.ref(4, 2), col); //0.008384061834 -> negligable
   //alphaBlend(8, 1000, out.ref(2, 4), col); //0.008384061834
 }
Exemplo n.º 17
0
 public void BlendLineSteepAndShallow(sPixel col, OutputMatrix output)
 {
     _AlphaBlend(1, 4, output.Reference(1, 0), col);
     _AlphaBlend(1, 4, output.Reference(0, 1), col);
     _AlphaBlend(5, 6, output.Reference(1, 1), col);                 //[!] fixes 7/8 used in xBR
 }
Exemplo n.º 18
0
 public void BlendCorner(sPixel col, OutputMatrix output) {
   //model a round corner
   _AlphaBlend(45, 100, output.Reference(2, 2), col); //exact: 0.4545939598
   //alphaBlend(14, 1000, out.ref(2, 1), col); //0.01413008627 -> negligable
   //alphaBlend(14, 1000, out.ref(1, 2), col); //0.01413008627
 }
Exemplo n.º 19
0
 public void BlendLineDiagonal(sPixel col, OutputMatrix output)
 {
     _AlphaBlend(1, 8, output.Reference(1, 2), col);
     _AlphaBlend(1, 8, output.Reference(2, 1), col);
     _AlphaBlend(7, 8, output.Reference(2, 2), col);
 }
Exemplo n.º 20
0
 public void BlendLineSteepAndShallow(sPixel col, OutputMatrix output) {
   _AlphaBlend(3, 4, output.Reference(3, 1), col);
   _AlphaBlend(3, 4, output.Reference(1, 3), col);
   _AlphaBlend(1, 4, output.Reference(3, 0), col);
   _AlphaBlend(1, 4, output.Reference(0, 3), col);
   _AlphaBlend(1, 3, output.Reference(2, 2), col); //[!] fixes 1/4 used in xBR
   output.Reference(3, 3).SetPixel(col);
   output.Reference(3, 2).SetPixel(col);
   output.Reference(2, 3).SetPixel(col);
 }