if (!addGoodPts(goodPts, llpt)) countBad++; if (!addGoodPts(goodPts, urpt)) countBad++; if (!addGoodPts(goodPts, lrpt)) countBad++; if (!addGoodPts(goodPts, ulpt)) countBad++; addGoodPts(goodPts, new ProjectionPointImpl(0, maxR)); addGoodPts(goodPts, new ProjectionPointImpl(maxR, 0)); addGoodPts(goodPts, new ProjectionPointImpl(0, -maxR)); addGoodPts(goodPts, new ProjectionPointImpl(-maxR, 0)); addGoodPts(goodPts, new ProjectionPointImpl(xcoord, getLimitCoord(xcoord))); addGoodPts(goodPts, new ProjectionPointImpl(getLimitCoord(ycoord), ycoord)); } else if (!ProjectionPointImpl.isInfinite(urpt)) { double xcoord = urpt.getX(); addGoodPts(goodPts, new ProjectionPointImpl(xcoord, -getLimitCoord(xcoord))); addGoodPts(goodPts, new ProjectionPointImpl(-getLimitCoord(ycoord), ycoord)); } else if (!ProjectionPointImpl.isInfinite(ulpt)) { double xcoord = ulpt.getX(); addGoodPts(goodPts, new ProjectionPointImpl(xcoord, -getLimitCoord(xcoord)));
if (!addGoodPts(goodPts, llpt)) countBad++; if (!addGoodPts(goodPts, urpt)) countBad++; if (!addGoodPts(goodPts, lrpt)) countBad++; if (!addGoodPts(goodPts, ulpt)) countBad++; addGoodPts(goodPts, new ProjectionPointImpl(0, maxR)); addGoodPts(goodPts, new ProjectionPointImpl(maxR, 0)); addGoodPts(goodPts, new ProjectionPointImpl(0, -maxR)); addGoodPts(goodPts, new ProjectionPointImpl(-maxR, 0)); addGoodPts(goodPts, new ProjectionPointImpl(xcoord, getLimitCoord(xcoord))); addGoodPts(goodPts, new ProjectionPointImpl(getLimitCoord(ycoord), ycoord)); } else if (!ProjectionPointImpl.isInfinite(urpt)) { double xcoord = urpt.getX(); addGoodPts(goodPts, new ProjectionPointImpl(xcoord, -getLimitCoord(xcoord))); addGoodPts(goodPts, new ProjectionPointImpl(-getLimitCoord(ycoord), ycoord)); } else if (!ProjectionPointImpl.isInfinite(ulpt)) { double xcoord = ulpt.getX(); addGoodPts(goodPts, new ProjectionPointImpl(xcoord, -getLimitCoord(xcoord)));