public void drawLine(PlotterReferenceFrame frame, Line2d line) { PlotterPoint2d start = pointBin[0]; PlotterVector2d direction = vectorBin[0]; start.setIncludingFrame(frame, line.getPoint()); direction.setIncludingFrame(frame, line.getNormalizedVector()); start.changeFrame(screenFrame); direction.changeFrame(screenFrame); direction.normalize(); PlotterPoint2d farPointPositive = pointBin[1]; PlotterPoint2d farPointNegative = pointBin[2]; PlotterVector2d far = vectorBin[1]; far.setIncludingFrame(direction); far.scale(1e4); farPointPositive.setIncludingFrame(start); farPointNegative.setIncludingFrame(start); farPointPositive.add(far); farPointNegative.sub(far); drawLineSegment(pixelate(farPointNegative.getX()), pixelate(farPointNegative.getY()), pixelate(farPointPositive.getX()), pixelate(farPointPositive.getY())); }