public double getFocusPointX() { focusPoint.changeFrame(metersFrame); return focusPoint.getX(); }
public double getFocusPointY() { focusPoint.changeFrame(metersFrame); return focusPoint.getY(); }
public double getSelectedX() { selected.changeFrame(metersFrame); return selected.getX(); }
public double getSelectedY() { selected.changeFrame(metersFrame); return selected.getY(); }
public void setFocusPointY(double focusPointY) { focusPoint.changeFrame(metersFrame); focusPoint.setY(focusPointY); centerOnFocusPoint(); }
public void setScale(double pixelsPerMeterX, double pixelsPerMeterY) { focusPoint.changeFrame(metersFrame); metersToPixels.set(pixelsPerMeterX, pixelsPerMeterY); centerOnFocusPoint(); }
public void setFocusPointX(double focusPointX) { focusPoint.changeFrame(metersFrame); focusPoint.setX(focusPointX); centerOnFocusPoint(); }
private void centerOnFocusPoint() { focusPoint.changeFrame(pixelsFrame); screenPosition.changeFrame(pixelsFrame); screenPosition.set(focusPoint); screenPosition.add(-getPlotterWidthPixels() / 2.0, getPlotterHeightPixels() / 2.0); updateFrames(); }
public void drawString(String string, PlotterPoint2d startPoint) { startPoint.changeFrame(screenFrame); drawString(string, pixelate(startPoint.getX()), pixelate(startPoint.getY())); }
public void drawLineSegment(PlotterReferenceFrame frame, double firstPointX, double firstPointY, double secondPointX, double secondPointY) { PlotterPoint2d firstEndpoint = pointBin[0]; PlotterPoint2d secondEndpoint = pointBin[1]; firstEndpoint.setIncludingFrame(frame, firstPointX, firstPointY); secondEndpoint.setIncludingFrame(frame, secondPointX, secondPointY); firstEndpoint.changeFrame(screenFrame); secondEndpoint.changeFrame(screenFrame); drawLineSegment(pixelate(firstEndpoint.getX()), pixelate(firstEndpoint.getY()), pixelate(secondEndpoint.getX()), pixelate(secondEndpoint.getY())); }
public void drawString(PlotterReferenceFrame frame, String string, Point2d startPoint) { PlotterPoint2d plotStart = pointBin[0]; plotStart.setIncludingFrame(frame, startPoint); plotStart.changeFrame(screenFrame); drawString(string, pixelate(plotStart.getX()), pixelate(plotStart.getY())); }
public void drawRectangle(PlotterReferenceFrame frame, double x, double y, double width, double height) { PlotterPoint2d position = pointBin[0]; PlotterVector2d dimensions = vectorBin[0]; position.setIncludingFrame(frame, x, y); dimensions.setIncludingFrame(frame, Math.abs(width), Math.abs(height)); position.changeFrame(screenFrame); dimensions.changeFrame(screenFrame); drawRectangle(pixelate(position.getX()), pixelate(position.getY()), pixelate(dimensions.getX()), pixelate(dimensions.getY())); }
public void drawLineSegment(PlotterReferenceFrame frame, LineSegment2d lineSegment) { PlotterPoint2d firstEndpoint = pointBin[0]; PlotterPoint2d secondEndpoint = pointBin[1]; firstEndpoint.setIncludingFrame(frame, lineSegment.getFirstEndpoint()); secondEndpoint.setIncludingFrame(frame, lineSegment.getSecondEndpoint()); firstEndpoint.changeFrame(screenFrame); secondEndpoint.changeFrame(screenFrame); drawLineSegment(pixelate(firstEndpoint.getX()), pixelate(firstEndpoint.getY()), pixelate(secondEndpoint.getX()), pixelate(secondEndpoint.getY())); }
private void setupForDrawPolygon(PlotterReferenceFrame frame, ConvexPolygon2d convexPolygon2d) { for (int i = 0; i < convexPolygon2d.getNumberOfVertices(); i++) { pointBin[i].setIncludingFrame(frame, convexPolygon2d.getVertex(i)); pointBin[i].changeFrame(screenFrame); tempPoints[0][i] = pixelate(pointBin[i].getX()); tempPoints[1][i] = pixelate(pointBin[i].getY()); } }
public void drawRectangle(PlotterReferenceFrame frame, Point2d center, Vector2d radii) { PlotterPoint2d centerFramePoint = pointBin[0]; PlotterVector2d radiiFrameVector = vectorBin[0]; centerFramePoint.setIncludingFrame(frame, center); radiiFrameVector.setIncludingFrame(frame, radii.getX(), radii.getY()); centerFramePoint.changeFrame(screenFrame); radiiFrameVector.changeFrame(screenFrame); radiiFrameVector.set(Math.abs(radiiFrameVector.getX()), Math.abs(radiiFrameVector.getY())); centerFramePoint.sub(radiiFrameVector); drawRectangle(pixelate(centerFramePoint.getX()), pixelate(centerFramePoint.getY()), pixelate(2.0 * radiiFrameVector.getX()), pixelate(2.0 * radiiFrameVector.getY())); }
public void drawOvalFilled(PlotterReferenceFrame frame, Point2d center, Vector2d radii) { PlotterPoint2d centerFramePoint = pointBin[0]; PlotterVector2d radiiFrameVector = vectorBin[0]; centerFramePoint.setIncludingFrame(frame, center); radiiFrameVector.setIncludingFrame(frame, radii.getX(), radii.getY()); centerFramePoint.changeFrame(screenFrame); radiiFrameVector.changeFrame(screenFrame); radiiFrameVector.set(Math.abs(radiiFrameVector.getX()), Math.abs(radiiFrameVector.getY())); centerFramePoint.sub(radiiFrameVector); drawOvalFilled(pixelate(centerFramePoint.getX()), pixelate(centerFramePoint.getY()), pixelate(2.0 * radiiFrameVector.getX()), pixelate(2.0 * radiiFrameVector.getY())); }
public void drawOval(PlotterReferenceFrame frame, Point2d center, Vector2d radii) { PlotterPoint2d centerFramePoint = pointBin[0]; PlotterVector2d radiiFrameVector = vectorBin[0]; centerFramePoint.setIncludingFrame(frame, center); radiiFrameVector.setIncludingFrame(frame, radii.getX(), radii.getY()); centerFramePoint.changeFrame(screenFrame); radiiFrameVector.changeFrame(screenFrame); radiiFrameVector.set(Math.abs(radiiFrameVector.getX()), Math.abs(radiiFrameVector.getY())); centerFramePoint.sub(radiiFrameVector); drawOval(pixelate(centerFramePoint.getX()), pixelate(centerFramePoint.getY()), pixelate(2.0 * radiiFrameVector.getX()), pixelate(2.0 * radiiFrameVector.getY())); }
public void drawSquareFilled(PlotterReferenceFrame frame, Point2d center, Vector2d radii) { PlotterPoint2d centerFramePoint = pointBin[0]; PlotterVector2d radiiFrameVector = vectorBin[0]; centerFramePoint.setIncludingFrame(frame, center); radiiFrameVector.setIncludingFrame(frame, radii.getX(), radii.getY()); centerFramePoint.changeFrame(screenFrame); radiiFrameVector.changeFrame(screenFrame); radiiFrameVector.set(Math.abs(radiiFrameVector.getX()), Math.abs(radiiFrameVector.getY())); centerFramePoint.sub(radiiFrameVector); drawRectangleFilled(pixelate(centerFramePoint.getX()), pixelate(centerFramePoint.getY()), pixelate(2.0 * radiiFrameVector.getX()), pixelate(2.0 * radiiFrameVector.getY())); }
public void drawPoint(PlotterReferenceFrame frame, Point2d point) { PlotterPoint2d plotterPoint = pointBin[0]; plotterPoint.setIncludingFrame(frame, point); plotterPoint.changeFrame(screenFrame); drawLineSegment(pixelate(plotterPoint.getX()), pixelate(plotterPoint.getY()), pixelate(plotterPoint.getX()), pixelate(plotterPoint.getY())); }
@Override protected void updateTransformToParent(RigidBodyTransform transformToParent) { screenPosition.changeFrame(pixelsFrame); transformToParent.setIdentity(); tempTranslation.set(screenPosition.getX() + getPlotterWidthPixels() / 2.0, screenPosition.getY() - getPlotterHeightPixels() / 2.0, 0.0); transformToParent.applyTranslation(tempTranslation); transformToParent.applyRotationZ(screenRotation); tempTranslation.set(-getPlotterWidthPixels() / 2.0, getPlotterHeightPixels() / 2.0, 0.0); transformToParent.applyTranslation(tempTranslation); transformToParent.applyRotationY(Math.PI); transformToParent.applyRotationZ(Math.PI); } };