示例#1
0
 public MyLine(Line2D.Double l, int indexPointA, int indexPointB, int cost)
 {
     this.cost        = cost;
     this.indexPointA = indexPointA;
     this.indexPointB = indexPointB;
     this.l           = l;
 }
示例#2
0
        /**
         * @see Graphics#drawPolyline(int[], int[], int)
         */
        public void drawPolyline(int[] x, int[] y, int nPoints)
        {
            Line2D line = new Line2D.Double(x[0], y[0], x[0], y[0]);

            for (int i = 1; i < nPoints; i++)
            {
                line.setLine(line.getX2(), line.getY2(), x[i], y[i]);
                draw(line);
            }
        }
 public override AxisState draw(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, RectangleEdge edge, PlotRenderingInfo plotState)
 {
   AxisState axisState = base.draw(g2, cursor, plotArea, dataArea, edge, plotState);
   if (this.isAdvanceLineVisible())
   {
     double num = this.valueToJava2D(this.getRange().getUpperBound(), dataArea, edge);
     Line2D.Double @double = (Line2D.Double) null;
     g2.setStroke(this.getAdvanceLineStroke());
     g2.setPaint(this.getAdvanceLinePaint());
     if (edge == RectangleEdge.__\u003C\u003ELEFT)
       @double = new Line2D.Double(cursor, num, cursor + ((RectangularShape) dataArea).getWidth(), num);
     else if (edge == RectangleEdge.__\u003C\u003ERIGHT)
       @double = new Line2D.Double(cursor - ((RectangularShape) dataArea).getWidth(), num, cursor, num);
     else if (edge == RectangleEdge.__\u003C\u003ETOP)
       @double = new Line2D.Double(num, cursor + ((RectangularShape) dataArea).getHeight(), num, cursor);
     else if (edge == RectangleEdge.__\u003C\u003EBOTTOM)
       @double = new Line2D.Double(num, cursor, num, cursor - ((RectangularShape) dataArea).getHeight());
     g2.draw((Shape) @double);
   }
   return axisState;
 }
 protected internal override AxisState drawTickMarksAndLabels(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, RectangleEdge edge)
 {
   this.internalMarkerWhenTicksOverlap = false;
   AxisState axisState = base.drawTickMarksAndLabels(g2, cursor, plotArea, dataArea, edge);
   if (!this.internalMarkerWhenTicksOverlap)
     return axisState;
   double num1 = (double) this.getTickMarkOutsideLength();
   FontMetrics fontMetrics = ((Graphics) g2).getFontMetrics(this.getTickLabelFont());
   double num2 = !this.isVerticalTickLabels() ? (double) fontMetrics.getHeight() : (double) fontMetrics.getMaxAdvance();
   double num3 = 0.0;
   if (this.isTickMarksVisible())
   {
     float num4 = (float) this.valueToJava2D(this.getRange().getUpperBound(), dataArea, edge);
     Line2D.Double @double = (Line2D.Double) null;
     g2.setStroke(this.getTickMarkStroke());
     g2.setPaint(this.getTickMarkPaint());
     if (edge == RectangleEdge.__\u003C\u003ELEFT)
       @double = new Line2D.Double(cursor - num2, (double) num4, cursor + num3, (double) num4);
     else if (edge == RectangleEdge.__\u003C\u003ERIGHT)
       @double = new Line2D.Double(cursor + num2, (double) num4, cursor - num3, (double) num4);
     else if (edge == RectangleEdge.__\u003C\u003ETOP)
       @double = new Line2D.Double((double) num4, cursor - num2, (double) num4, cursor + num3);
     else if (edge == RectangleEdge.__\u003C\u003EBOTTOM)
       @double = new Line2D.Double((double) num4, cursor + num2, (double) num4, cursor - num3);
     g2.draw((Shape) @double);
   }
   return axisState;
 }
示例#5
0
 public virtual void paintComponent(Graphics g)
 {
   Graphics2D graphics2D = (Graphics2D) g;
   graphics2D.setRenderingHint((RenderingHints.Key) RenderingHints.KEY_ANTIALIASING, (object) RenderingHints.VALUE_ANTIALIAS_OFF);
   Dimension size = ((Component) this).getSize();
   Insets insets = this.getInsets();
   double num1 = size.getWidth() - (double) insets.left - (double) insets.right;
   double num2 = size.getHeight() - (double) insets.top - (double) insets.bottom;
   graphics2D.setStroke((Stroke) new BasicStroke(1f));
   double num3 = (double) insets.top;
   double num4 = num3 + num2;
   double num5 = (double) insets.left;
   Line2D.Double @double = new Line2D.Double();
   int izV = 0;
   for (; num5 <= (double) insets.left + num1; ++num5)
   {
     ++izV;
     ((Line2D) @double).setLine(num5, num3, num5, num4);
     graphics2D.setPaint((Paint) this.palette.getColor(izV));
     graphics2D.draw((Shape) @double);
   }
 }
示例#6
0
        /**
         * @see Graphics#drawLine(int, int, int, int)
         */
        public void drawLine(int x1, int y1, int x2, int y2)
        {
            Line2D line = new Line2D.Double((double)x1, (double)y1, (double)x2, (double)y2);

            draw(line);
        }
示例#7
0
 public virtual void paintComponent(Graphics g)
 {
   Graphics2D graphics2D = (Graphics2D) g;
   graphics2D.setRenderingHint((RenderingHints.Key) RenderingHints.KEY_ANTIALIASING, (object) RenderingHints.VALUE_ANTIALIAS_ON);
   Dimension size = ((Component) this).getSize();
   Insets insets = this.getInsets();
   double num1 = (double) insets.left;
   double num2 = (double) insets.top;
   double num3 = size.getWidth() - (double) insets.left - (double) insets.right;
   double num4 = size.getHeight() - (double) insets.top - (double) insets.bottom;
   Point2D.Double double1 = new Point2D.Double(num1 + 6.0, num2 + num4 / 2.0);
   Point2D.Double double2 = new Point2D.Double(num1 + num3 - 6.0, num2 + num4 / 2.0);
   Ellipse2D.Double double3 = new Ellipse2D.Double(((Point2D) double1).getX() - 5.0, ((Point2D) double1).getY() - 5.0, 10.0, 10.0);
   Ellipse2D.Double double4 = new Ellipse2D.Double(((Point2D) double2).getX() - 6.0, ((Point2D) double2).getY() - 5.0, 10.0, 10.0);
   graphics2D.draw((Shape) double3);
   graphics2D.fill((Shape) double3);
   graphics2D.draw((Shape) double4);
   graphics2D.fill((Shape) double4);
   Line2D.Double double5 = new Line2D.Double((Point2D) double1, (Point2D) double2);
   if (this.stroke == null)
     return;
   graphics2D.setStroke(this.stroke);
   graphics2D.draw((Shape) double5);
 }
示例#8
0
 public override void draw(Graphics2D g2, DialPlot plot, Rectangle2D frame, Rectangle2D view)
 {
   g2.setPaint((Paint) Color.blue);
   g2.setStroke((Stroke) new BasicStroke(1f));
   Rectangle2D rectangle2D1 = DialPlot.rectangleByRadius(frame, this.radius, this.radius);
   Rectangle2D rectangle2D2 = DialPlot.rectangleByRadius(frame, this.widthRadius, this.widthRadius);
   double d = plot.getValue(this.datasetIndex);
   double num = plot.getScaleForDataset(this.datasetIndex).valueToAngle(d);
   Point2D endPoint1 = ((Arc2D) new Arc2D.Double(rectangle2D1, num, 0.0, 0)).getEndPoint();
   Arc2D.Double double1 = new Arc2D.Double(rectangle2D2, num - 90.0, 180.0, 0);
   Point2D startPoint1 = ((Arc2D) double1).getStartPoint();
   Point2D endPoint2 = ((Arc2D) double1).getEndPoint();
   Point2D startPoint2 = ((Arc2D) new Arc2D.Double(rectangle2D2, num - 180.0, 0.0, 0)).getStartPoint();
   GeneralPath generalPath = new GeneralPath();
   ((Path2D.Float) generalPath).moveTo((float) endPoint1.getX(), (float) endPoint1.getY());
   ((Path2D.Float) generalPath).lineTo((float) startPoint1.getX(), (float) startPoint1.getY());
   ((Path2D.Float) generalPath).lineTo((float) startPoint2.getX(), (float) startPoint2.getY());
   ((Path2D.Float) generalPath).lineTo((float) endPoint2.getX(), (float) endPoint2.getY());
   ((Path2D) generalPath).closePath();
   g2.setPaint(this.fillPaint);
   g2.fill((Shape) generalPath);
   g2.setPaint(this.outlinePaint);
   Line2D.Double double2 = new Line2D.Double(((RectangularShape) frame).getCenterX(), ((RectangularShape) frame).getCenterY(), endPoint1.getX(), endPoint1.getY());
   g2.draw((Shape) double2);
   ((Line2D) double2).setLine(startPoint1, endPoint2);
   g2.draw((Shape) double2);
   ((Line2D) double2).setLine(endPoint2, endPoint1);
   g2.draw((Shape) double2);
   ((Line2D) double2).setLine(startPoint1, endPoint1);
   g2.draw((Shape) double2);
   ((Line2D) double2).setLine(startPoint1, startPoint2);
   g2.draw((Shape) double2);
   ((Line2D) double2).setLine(endPoint2, startPoint2);
   g2.draw((Shape) double2);
 }
示例#9
0
 public override void draw(Graphics2D g2, DialPlot plot, Rectangle2D frame, Rectangle2D view)
 {
   g2.setPaint(this.paint);
   g2.setStroke(this.stroke);
   Rectangle2D rectangle2D = DialPlot.rectangleByRadius(frame, this.radius, this.radius);
   double d = plot.getValue(this.datasetIndex);
   double num = plot.getScaleForDataset(this.datasetIndex).valueToAngle(d);
   Point2D endPoint = ((Arc2D) new Arc2D.Double(rectangle2D, num, 0.0, 0)).getEndPoint();
   Line2D.Double @double = new Line2D.Double(((RectangularShape) frame).getCenterX(), ((RectangularShape) frame).getCenterY(), endPoint.getX(), endPoint.getY());
   g2.draw((Shape) @double);
 }
示例#10
0
 public override void drawItem(Graphics2D g2, XYItemRendererState state, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
 {
   if (pass == 0 && dataset is IntervalXYDataset && this.getItemVisible(series, item))
   {
     IntervalXYDataset ntervalXyDataset = (IntervalXYDataset) dataset;
     PlotOrientation orientation = plot.getOrientation();
     if (this.drawXError)
     {
       double startXvalue = ntervalXyDataset.getStartXValue(series, item);
       double endXvalue = ntervalXyDataset.getEndXValue(series, item);
       double yvalue = ntervalXyDataset.getYValue(series, item);
       RectangleEdge domainAxisEdge = plot.getDomainAxisEdge();
       double num1 = domainAxis.valueToJava2D(startXvalue, dataArea, domainAxisEdge);
       double num2 = domainAxis.valueToJava2D(endXvalue, dataArea, domainAxisEdge);
       double num3 = rangeAxis.valueToJava2D(yvalue, dataArea, plot.getRangeAxisEdge());
       double num4 = this.capLength / 2.0;
       Line2D.Double double1;
       Line2D.Double double2;
       Line2D.Double double3;
       if (orientation == PlotOrientation.__\u003C\u003EVERTICAL)
       {
         double1 = new Line2D.Double(num1, num3, num2, num3);
         double2 = new Line2D.Double(num1, num3 - num4, num1, num3 + num4);
         double3 = new Line2D.Double(num2, num3 - num4, num2, num3 + num4);
       }
       else
       {
         double1 = new Line2D.Double(num3, num1, num3, num2);
         double2 = new Line2D.Double(num3 - num4, num1, num3 + num4, num1);
         double3 = new Line2D.Double(num3 - num4, num2, num3 + num4, num2);
       }
       if (this.errorPaint != null)
         g2.setPaint(this.errorPaint);
       else
         g2.setPaint(this.getItemPaint(series, item));
       if (this.errorStroke != null)
         g2.setStroke(this.errorStroke);
       else
         g2.setStroke(this.getItemStroke(series, item));
       g2.draw((Shape) double1);
       g2.draw((Shape) double2);
       g2.draw((Shape) double3);
     }
     if (this.drawYError)
     {
       double startYvalue = ntervalXyDataset.getStartYValue(series, item);
       double endYvalue = ntervalXyDataset.getEndYValue(series, item);
       double xvalue = ntervalXyDataset.getXValue(series, item);
       RectangleEdge rangeAxisEdge = plot.getRangeAxisEdge();
       double num1 = rangeAxis.valueToJava2D(startYvalue, dataArea, rangeAxisEdge);
       double num2 = rangeAxis.valueToJava2D(endYvalue, dataArea, rangeAxisEdge);
       double num3 = domainAxis.valueToJava2D(xvalue, dataArea, plot.getDomainAxisEdge());
       double num4 = this.capLength / 2.0;
       Line2D.Double double1;
       Line2D.Double double2;
       Line2D.Double double3;
       if (orientation == PlotOrientation.__\u003C\u003EVERTICAL)
       {
         double1 = new Line2D.Double(num3, num1, num3, num2);
         double2 = new Line2D.Double(num3 - num4, num1, num3 + num4, num1);
         double3 = new Line2D.Double(num3 - num4, num2, num3 + num4, num2);
       }
       else
       {
         double1 = new Line2D.Double(num1, num3, num2, num3);
         double2 = new Line2D.Double(num1, num3 - num4, num1, num3 + num4);
         double3 = new Line2D.Double(num2, num3 - num4, num2, num3 + num4);
       }
       if (this.errorPaint != null)
         g2.setPaint(this.errorPaint);
       else
         g2.setPaint(this.getItemPaint(series, item));
       if (this.errorStroke != null)
         g2.setStroke(this.errorStroke);
       else
         g2.setStroke(this.getItemStroke(series, item));
       g2.draw((Shape) double1);
       g2.draw((Shape) double2);
       g2.draw((Shape) double3);
     }
   }
   base.drawItem(g2, state, dataArea, info, plot, domainAxis, rangeAxis, dataset, series, item, crosshairState, pass);
 }