public override void Enlarge(Rectangle r) { r.Add((int)(_x0 + 0.5), (int)(_y0 + 0.5)); r.Add((int)(_x1 + 0.5), (int)(_y1 + 0.5)); }
public override void Enlarge(Rectangle r) { r.Add((int)(_x0 + .5), (int)(_y0 + .5)); double[] eqn = { _xcoeff1, 2 * _xcoeff2, 3 * _xcoeff3 }; int numroots = QuadCurve.SolveQuadratic(eqn, eqn); for (int i = 0; i < numroots; i++) { double t = eqn[i]; if (t > 0 && t < 1) { r.Add((int)(XforT(t) + .5), (int)(YforT(t) + .5)); } } r.Add((int)(_x1 + .5), (int)(_y1 + .5)); }
public override void Enlarge(Rectangle r) { r.Add((int)(_x0 + 0.5), (int)(_y0 + 0.5)); double t = -_xcoeff1 / (2 * _xcoeff2); if (t > 0 && t < 1) { r.Add((int)(XforT(t) + .5), (int)(YforT(t) + .5)); } r.Add((int)(_x1 + 0.5), (int)(_y1 + 0.5)); }