示例#1
0
        public override Color xStep(AET_entry_base to, int x, int y)
        {
            Color c = texture[(x - corner.X) % texture.GetLength(0), (y - corner.Y) % texture.GetLength(1)];

            setFillPoint(to, new FillPoint(x, y, 0, c, new float[] { 0, 0, 1 }));
            return(c);
        }
示例#2
0
        public override Color xStep(AET_entry_base to, int x, int y)
        {
            Color c = Color.FromArgb((int)xR, (int)xG, (int)xB);

            xR += xStepR;
            xG += xStepG;
            xB += xStepB;
            setFillPoint(to, new FillPoint(x, y, 0, c, new float[] { 0, 0, 1 }));
            return(c);
        }
示例#3
0
 public virtual void DrawLine(Bitmap bitmap, AET_entry_base to, int y, Point relativePosition)
 {
     if (beforeDraw(to, y))
     {
         for (int k = (int)x; k < (int)to.x; k++)
         {
             DrawEngine.DrawPixel(bitmap, k + relativePosition.X, y + relativePosition.Y, xStep(to, k, y));
         }
     }
 }
        public override Color xStep(AET_entry_base to, int x, int y)
        {
            int xIndex = (x - corner.X) % texture.GetLength(0);
            int yIndex = (y - corner.Y) % texture.GetLength(1);

            float[] versor = Sun.getVersor(new float[] {
                (texture[xIndex == texture.GetLength(0) - 1? 0 : xIndex + 1, yIndex] - texture[xIndex, yIndex]),
                (texture[xIndex, yIndex == texture.GetLength(1) - 1? 0 : yIndex + 1] - texture[xIndex, yIndex]),
                1
            });
            setFillPoint(to, new FillPoint(x, y, texture[xIndex, yIndex], color, versor));
            return(color);//DrawEngine.sun.newColor(new Point(x, y), texture[xIndex, yIndex], color, versor);
        }
示例#5
0
        public override bool beforeDraw(AET_entry_base to, int y)
        {
            base.beforeDraw(to, y);
            AET_entry_Interpol To = to as AET_entry_Interpol;
            float div             = to.x - x;

            if (div == 0)
            {
                return(false);
            }
            xStepR = ((float)(To.color.R - color.R) / div);
            xStepG = ((float)(To.color.G - color.G) / div);
            xStepB = ((float)(To.color.B - color.B) / div);
            xR     = color.R;
            xG     = color.G;
            xB     = color.B;
            return(true);
        }
示例#6
0
 public override Color xStep(AET_entry_base to, int x, int y)
 {
     setFillPoint(to, new FillPoint(x, y, 0, color, new float[] { 0, 0, 1 }));
     return(DrawEngine.sun.newColor(new Point(x, y), 0, color, new float[] { 0, 0, 1 }));
 }
示例#7
0
 public virtual bool beforeDraw(AET_entry_base to, int y)
 {
     p.fillPoints[y - p.vertexes[p.sortedVertexes[0]].Y] = new FillPoint[Math.Abs((int)to.x - (int)x)];
     return(true);
 }
示例#8
0
 public void setFillPoint(AET_entry_base to, FillPoint point)
 {
     p.fillPoints[point.y - p.vertexes[p.sortedVertexes[0]].Y][point.x - (int)x] = point;
 }
示例#9
0
 public virtual Color xStep(AET_entry_base to, int x, int y)
 {
     setFillPoint(to, new FillPoint(x, y, 0, Color.Black, new float[] { 0, 0, 1 }));
     return(Color.Black);
 }