clip.setAngleExtent(angle); gg.setClip(clip);
/** * Draws the needle. * * @param g2 the graphics device. * @param plotArea the plot area. * @param rotate the rotation point. * @param angle the angle. */ @Override protected void drawNeedle(Graphics2D g2, Rectangle2D plotArea, Point2D rotate, double angle) { Arc2D shape = new Arc2D.Double(Arc2D.PIE); double radius = plotArea.getHeight(); double halfX = plotArea.getWidth() / 2; double diameter = 2 * radius; shape.setFrame(plotArea.getMinX() + halfX - radius, plotArea.getMinY() - radius, diameter, diameter); radius = Math.toDegrees(Math.asin(halfX / radius)); shape.setAngleStart(270 - radius); shape.setAngleExtent(2 * radius); Area s = new Area(shape); if ((rotate != null) && (angle != 0)) { /// we have rotation houston, please spin me getTransform().setToRotation(angle, rotate.getX(), rotate.getY()); s.transform(getTransform()); } defaultDisplay(g2, s); }
/** * Draws the needle. * * @param g2 the graphics device. * @param plotArea the plot area. * @param rotate the rotation point. * @param angle the angle. */ protected void drawNeedle(Graphics2D g2, Rectangle2D plotArea, Point2D rotate, double angle) { Arc2D shape = new Arc2D.Double(Arc2D.PIE); double radius = plotArea.getHeight(); double halfX = plotArea.getWidth() / 2; double diameter = 2 * radius; shape.setFrame(plotArea.getMinX() + halfX - radius , plotArea.getMinY() - radius, diameter, diameter); radius = Math.toDegrees(Math.asin(halfX / radius)); shape.setAngleStart(270 - radius); shape.setAngleExtent(2 * radius); Area s = new Area(shape); if ((rotate != null) && (angle != 0)) { /// we have rotation houston, please spin me getTransform().setToRotation(angle, rotate.getX(), rotate.getY()); s.transform(getTransform()); } defaultDisplay(g2, s); }
BACK.setFrame(IMAGE_WIDTH * 0.1074766355, IMAGE_HEIGHT * 0.1074766355, IMAGE_WIDTH * 0.785046729, IMAGE_HEIGHT * 0.785046729); BACK.setAngleStart(START_ANGLE + 2); BACK.setAngleExtent(ANGLE_EXTEND - 5); FRONT.setFrame(IMAGE_WIDTH * 0.1121495327, IMAGE_HEIGHT * 0.1121495327, IMAGE_WIDTH * 0.7803738318, IMAGE_HEIGHT * 0.7803738318); FRONT.setAngleStart(START_ANGLE); FRONT.setAngleExtent(ANGLE_EXTEND);
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final java.awt.geom.Area SECTION = new java.awt.geom.Area(OUTER_ARC);
private void createRadialShapeOfMeasureValuesArea() { if (bounds.width > 1 && bounds.height > 1 && Double.compare(getMinMeasuredValue(), getMaxMeasuredValue()) != 0) { final double ANGLE_STEP = Math.toDegrees(getGaugeType().ANGLE_RANGE) / (getMaxValue() - getMinValue()); final double RADIUS = bounds.width * 0.35f - bounds.height * 0.04f; final double FREE_AREA = bounds.width / 2.0 - RADIUS; ((Arc2D) radialShapeOfMeasuredValues).setFrame(new Rectangle2D.Double(bounds.x + FREE_AREA, bounds.y + FREE_AREA, 2 * RADIUS, 2 * RADIUS)); ((Arc2D) radialShapeOfMeasuredValues).setAngleStart(getGaugeType().ORIGIN_CORRECTION - (getMinMeasuredValue() * ANGLE_STEP) + (getMinValue() * ANGLE_STEP)); ((Arc2D) radialShapeOfMeasuredValues).setAngleExtent(-(getMaxMeasuredValue() - getMinMeasuredValue()) * ANGLE_STEP); ((Arc2D) radialShapeOfMeasuredValues).setArcType(Arc2D.PIE); } }
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final java.awt.geom.Area SECTION = new java.awt.geom.Area(OUTER_ARC);
private void createRadialShapeOfMeasureValuesArea() { if (bounds.width > 1 && bounds.height > 1 && Double.compare(getMinMeasuredValue(), getMaxMeasuredValue()) != 0) { final double ANGLE_STEP = Math.toDegrees(getAngleRange()) / (getMaxValue() - getMinValue()); final double RADIUS = bounds.width * 0.35f - bounds.height * 0.04f; final double FREE_AREA = bounds.width / 2.0 - RADIUS; ((Arc2D) radialShapeOfMeasuredValues).setFrame(new Rectangle2D.Double(bounds.x + FREE_AREA, bounds.y + FREE_AREA, 2 * RADIUS, 2 * RADIUS)); ((Arc2D) radialShapeOfMeasuredValues).setAngleStart(getOriginCorrection() - (getMinMeasuredValue() * ANGLE_STEP) + (getMinValue() * ANGLE_STEP)); ((Arc2D) radialShapeOfMeasuredValues).setAngleExtent(-(getMaxMeasuredValue() - getMinMeasuredValue()) * ANGLE_STEP); ((Arc2D) radialShapeOfMeasuredValues).setArcType(Arc2D.PIE); } }
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final java.awt.geom.Area SECTION = new Area(OUTER_ARC);
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final java.awt.geom.Area SECTION = new Area(OUTER_ARC);
AREA.setFrame(bImage.getMinX() + FREE_AREA, bImage.getMinY() + FREE_AREA, 2 * RADIUS, 2 * RADIUS); AREA.setAngleStart(ANGLE_START); AREA.setAngleExtent(ANGLE_EXTEND);
AREA.setFrame(bImage.getMinX() + FREE_AREA, bImage.getMinY() + FREE_AREA, 2 * RADIUS, 2 * RADIUS); AREA.setAngleStart(ANGLE_START); AREA.setAngleExtent(ANGLE_EXTEND);
OUTER_ARC.setFrame(SECTION_OFFSET.getX(), SECTION_OFFSET.getY(), 4 * OUTER_RADIUS, 4 * OUTER_RADIUS); OUTER_ARC.setAngleStart(startAngle); OUTER_ARC.setAngleExtent(stopAngle - startAngle); final Area SECTION = new Area(OUTER_ARC);
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final Area SECTION = new Area(OUTER_ARC);
ARC.setFrame(AREA_OFFSET.getX(), AREA_OFFSET.getY(), 4 * RADIUS, 4 * RADIUS); ARC.setAngleStart(startAngle); ARC.setAngleExtent(stopAngle - startAngle); tmpArea.setFilledArea(ARC);
ARC.setFrame(AREA_OFFSET.getX(), AREA_OFFSET.getY(), 4 * RADIUS, 4 * RADIUS); ARC.setAngleStart(startAngle); ARC.setAngleExtent(stopAngle - startAngle); tmpArea.setFilledArea(ARC);
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final java.awt.geom.Area SECTION = new java.awt.geom.Area(OUTER_ARC);
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final Area SECTION = new Area(OUTER_ARC);
OUTER_ARC.setFrame(bImage.getMinX() + FREE_AREA_OUTER_RADIUS, bImage.getMinY() + FREE_AREA_OUTER_RADIUS, 2 * OUTER_RADIUS, 2 * OUTER_RADIUS); OUTER_ARC.setAngleStart(ANGLE_START); OUTER_ARC.setAngleExtent(ANGLE_EXTEND); final java.awt.geom.Area SECTION = new java.awt.geom.Area(OUTER_ARC);
scanArc.setAngleExtent(0); scanArc.setFrame(-100, -100, 1, 1);