//--------------------------------------------------------------------- public DistanceInterpolator3(int x1, int y1, int x2, int y2, int sx, int sy, int ex, int ey, int x, int y) { unchecked { _dx = (x2 - x1); _dy = (y2 - y1); _dx_start = (LineAA.Mr(sx) - LineAA.Mr(x1)); _dy_start = (LineAA.Mr(sy) - LineAA.Mr(y1)); _dx_end = (LineAA.Mr(ex) - LineAA.Mr(x2)); _dy_end = (LineAA.Mr(ey) - LineAA.Mr(y2)); _dist = (AggMath.iround((double)(x + LineAA.SUBPIXEL_SCALE / 2 - x2) * (double)(_dy) - (double)(y + LineAA.SUBPIXEL_SCALE / 2 - y2) * (double)(_dx))); _dist_start = ((LineAA.Mr(x + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(sx)) * _dy_start - (LineAA.Mr(y + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(sy)) * _dx_start); _dist_end = ((LineAA.Mr(x + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(ex)) * _dy_end - (LineAA.Mr(y + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(ey)) * _dx_end); _dx <<= LineAA.SUBPIXEL_SHIFT; _dy <<= LineAA.SUBPIXEL_SHIFT; _dx_start <<= LineAA.MR_SUBPIXEL_SHIFT; _dy_start <<= LineAA.MR_SUBPIXEL_SHIFT; _dx_end <<= LineAA.MR_SUBPIXEL_SHIFT; _dy_end <<= LineAA.MR_SUBPIXEL_SHIFT; } }
public DistanceInterpolator0(int x1, int y1, int x2, int y2, int x, int y) { unchecked { _dx = (LineAA.Mr(x2) - LineAA.Mr(x1)); _dy = (LineAA.Mr(y2) - LineAA.Mr(y1)); _dist = ((LineAA.Mr(x + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(x2)) * _dy - (LineAA.Mr(y + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(y2)) * _dx); _dx <<= LineAA.MR_SUBPIXEL_SHIFT; _dy <<= LineAA.MR_SUBPIXEL_SHIFT; } }
public DistanceInterpolator2(int x1, int y1, int x2, int y2, int ex, int ey, int x, int y, int none) { _dx = (x2 - x1); _dy = (y2 - y1); _dx_start = (LineAA.Mr(ex) - LineAA.Mr(x2)); _dy_start = (LineAA.Mr(ey) - LineAA.Mr(y2)); _dist = (AggMath.iround((double)(x + LineAA.SUBPIXEL_SCALE / 2 - x2) * (double)(_dy) - (double)(y + LineAA.SUBPIXEL_SCALE / 2 - y2) * (double)(_dx))); _dist_start = ((LineAA.Mr(x + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(ex)) * _dy_start - (LineAA.Mr(y + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(ey)) * _dx_start); _dx <<= LineAA.SUBPIXEL_SHIFT; _dy <<= LineAA.SUBPIXEL_SHIFT; _dx_start <<= LineAA.MR_SUBPIXEL_SHIFT; _dy_start <<= LineAA.MR_SUBPIXEL_SHIFT; }
//--------------------------------------------------------------------- public DistanceInterpolator2(int x1, int y1, int x2, int y2, int sx, int sy, int x, int y) { m_dx = (x2 - x1); m_dy = (y2 - y1); m_dx_start = (LineAA.Mr(sx) - LineAA.Mr(x1)); m_dy_start = (LineAA.Mr(sy) - LineAA.Mr(y1)); m_dist = (AggBasics.iround((double)(x + LineAA.SUBPIXEL_SCALE / 2 - x2) * (double)(m_dy) - (double)(y + LineAA.SUBPIXEL_SCALE / 2 - y2) * (double)(m_dx))); m_dist_start = ((LineAA.Mr(x + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(sx)) * m_dy_start - (LineAA.Mr(y + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(sy)) * m_dx_start); m_dx <<= LineAA.SUBPIXEL_SHIFT; m_dy <<= LineAA.SUBPIXEL_SHIFT; m_dx_start <<= LineAA.MR_SUBPIXEL_SHIFT; m_dy_start <<= LineAA.MR_SUBPIXEL_SHIFT; }
public DistanceInterpolator00(int xc, int yc, int x1, int y1, int x2, int y2, int x, int y) { _dx1 = (LineAA.Mr(x1) - LineAA.Mr(xc)); _dy1 = (LineAA.Mr(y1) - LineAA.Mr(yc)); _dx2 = (LineAA.Mr(x2) - LineAA.Mr(xc)); _dy2 = (LineAA.Mr(y2) - LineAA.Mr(yc)); _dist1 = ((LineAA.Mr(x + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(x1)) * _dy1 - (LineAA.Mr(y + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(y1)) * _dx1); _dist2 = ((LineAA.Mr(x + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(x2)) * _dy2 - (LineAA.Mr(y + LineAA.SUBPIXEL_SCALE / 2) - LineAA.Mr(y2)) * _dx2); _dx1 <<= LineAA.MR_SUBPIXEL_SHIFT; _dy1 <<= LineAA.MR_SUBPIXEL_SHIFT; _dx2 <<= LineAA.MR_SUBPIXEL_SHIFT; _dy2 <<= LineAA.MR_SUBPIXEL_SHIFT; }