Java Code Examples for java.awt.Graphics2D#drawLine()

The following examples show how to use java.awt.Graphics2D#drawLine() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: GraphPane.java    From Girinoscope with Apache License 2.0 6 votes vote down vote up
private void paintWaitDurationRule(Graphics2D g) {
    g.setColor(WAIT_DURATION_COLOR);
    Point point = toGraphArea(waitDuration, vMax);
    Stroke defaultStroke = g.getStroke();
    g.setStroke(DOTTED);
    g.drawLine(point.x, point.y, point.x, point.y + graphArea.height);
    g.setStroke(defaultStroke);

    Graphics2D gg = (Graphics2D) g.create();
    gg.translate(point.x, point.y);
    gg.rotate(Math.PI / 4);
    if (grabbedRule == Rule.WAIT_DURATION_RULE) {
        gg.fill3DRect(-4, -4, 9, 9, true);
    } else {
        gg.fill3DRect(-3, -3, 7, 7, true);
    }
}
 
Example 2
Source File: BEPopupMenuSeparatorUI.java    From beautyeye with Apache License 2.0 6 votes vote down vote up
/**
	 * 以水平方向绘制分隔线样式.
	 *
	 * @param g2 the g2
	 * @param c the c
	 * @param w the w
	 * @param h the h
	 */
	private void drawHorizonal(Graphics2D g2,JComponent c,int w,int h)
	{
		//** 绘制border的底线
		//虚线样式
		Stroke oldStroke = g2.getStroke();
		Stroke sroke = new BasicStroke(1, BasicStroke.CAP_BUTT,
				BasicStroke.JOIN_BEVEL, 0, new float[]{2, 2}, 0);//实线,空白
		g2.setStroke(sroke);
		//底边上(浅灰色)
//		g2.setColor(new Color(180,180,180));
		g2.setColor(c.getForeground());
		g2.drawLine(0,h-2, w-1,h-2); // draw bottom1
		//底边下(白色):绘制一条白色虚线的目的是与上面的灰线产生较强对比度从而形成立体效果
		//,本L&F实现中因与Panel的底色对比度不够强烈而立体感不明显(颜色越深的底色最终效果越明显)
//		g2.setColor(Color.white);
		g2.setColor(c.getBackground());
		g2.drawLine(0,h-1, w-1,h-1);//draw bottom2
		
		g2.setStroke(oldStroke);
	}
 
Example 3
Source File: Line.java    From chipster with MIT License 6 votes vote down vote up
/**
 * 
 * @param g 
 * @param width 
 * @param height 
 */
public void draw(Graphics g, int width, int height, PaintMode notUsed) {
	
	//Disable drawing lines very near camera, because it causes strange effects.
	//Value of 1.5 was found with visual experiment, so feel free to modify it.
    if (Math.abs(projectedCoords[0][0]) > 1.5 || 
            Math.abs(projectedCoords[0][1]) > 1.5 ||
            this.hidden) {
        return;
    }
    
    g.setColor(color);
    deviceCoords[0][0] = (int)((projectedCoords[0][0] + 0.5) * width);
    deviceCoords[0][1] = (int)((projectedCoords[0][1] + 0.5) * height);
    deviceCoords[1][0] = (int)((projectedCoords[1][0] + 0.5) * width);
    deviceCoords[1][1] = (int)((projectedCoords[1][1] + 0.5) * height);
    
    Graphics2D g2 = (Graphics2D)g;
    g2.setStroke(new BasicStroke(thickness));        
    g2.drawLine(deviceCoords[0][0], deviceCoords[0][1], 
            deviceCoords[1][0], deviceCoords[1][1]);    
}
 
Example 4
Source File: ClearIcon.java    From settlers-remake with MIT License 6 votes vote down vote up
@Override
public void paintIcon(Component c, Graphics g1, int x, int y) {
	Graphics2D g = (Graphics2D) g1;
	g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
			RenderingHints.VALUE_ANTIALIAS_ON);
	g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
			RenderingHints.VALUE_INTERPOLATION_BILINEAR);

	Stroke oldStroke = g.getStroke();

	if (hover) {
		g.setColor(Color.GRAY);
	} else {
		g.setColor(Color.LIGHT_GRAY);
	}
	g.setStroke(new BasicStroke(3, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
	g.fillOval(x + 2, y + 2, 18, 18);
	g.setColor(Color.WHITE);
	g.drawLine(x + 6, y + 6, x + 15, y + 15);
	g.drawLine(x + 15, y + 6, x + 6, y + 15);

	g.setStroke(oldStroke);
}
 
Example 5
Source File: Diagrama.java    From brModelo with GNU General Public License v3.0 6 votes vote down vote up
/**
 * Mostra a área de impressão no diagrama
 *
 * @param g
 * @param wdt largura
 * @param ht altura
 */
public void PaintAI(Graphics2D g, int wdt, int ht) {
    Paint bkppaint = g.getPaint();
    g.setColor(new Color(221, 221, 221));
    int w = wdt;
    while (w < getWidth()) {
        g.drawLine(w, 1, w, getHeight() - 1);
        w += wdt;
    }
    int h = ht;
    while (h < getHeight()) {
        g.drawLine(1, h, getWidth() - 1, h);
        h += ht;
    }
    g.setPaint(bkppaint);
}
 
Example 6
Source File: Font2DTest.java    From jdk8u-jdk with GNU General Public License v2.0 6 votes vote down vote up
public ChoiceV2Renderer(ChoiceV2 choice) {
    BufferedImage yes =
        new BufferedImage(10, 10, BufferedImage.TYPE_INT_ARGB);
    Graphics2D g = yes.createGraphics();
    g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                       RenderingHints.VALUE_ANTIALIAS_ON);
    g.setColor(Color.BLUE);
    g.drawLine(0, 5, 3, 10);
    g.drawLine(1, 5, 4, 10);
    g.drawLine(3, 10, 10, 0);
    g.drawLine(4, 9, 9, 0);
    g.dispose();
    BufferedImage blank =
        new BufferedImage(10, 10, BufferedImage.TYPE_INT_ARGB);
    yesImage = new ImageIcon(yes);
    blankImage = new ImageIcon(blank);
    this.choice = choice;
}
 
Example 7
Source File: CubicBSpline.java    From ensemble-clustering with MIT License 5 votes vote down vote up
public void draw (Graphics2D g, double zeroX, double zeroY, double pixelsPerUnit, int pointsToDraw) {
    Point lastP = null;
    for (int i=0; i<pointsToDraw; ++i) {
        double t = i * 1.0 / pointsToDraw;
        Vector v = getPoint(t);
        Point p = new Point((int) Math.round((v.coord(0)-zeroX)*pixelsPerUnit),
                            (int) Math.round((zeroY-v.coord(1))*pixelsPerUnit));
        if (null != lastP) g.drawLine(lastP.x, lastP.y, p.x, p.y);
        lastP = p;
    }
}
 
Example 8
Source File: FontPanel.java    From jdk8u60 with GNU General Public License v2.0 5 votes vote down vote up
private void drawGrid( Graphics2D g2 ) {
    int totalGridWidth = numCharAcross * gridWidth;
    int totalGridHeight = numCharDown * gridHeight;

    g2.setColor( Color.black );
    for ( int i = 0; i < numCharDown + 1; i++ )
      g2.drawLine( canvasInset_X, i * gridHeight + canvasInset_Y,
                   canvasInset_X + totalGridWidth, i * gridHeight + canvasInset_Y );
    for ( int i = 0; i < numCharAcross + 1; i++ )
      g2.drawLine( i * gridWidth + canvasInset_X, canvasInset_Y,
                   i * gridWidth + canvasInset_X, canvasInset_Y + totalGridHeight );
}
 
Example 9
Source File: Plot.java    From simple-java-plot with MIT License 5 votes vote down vote up
private void drawLine(Graphics2D g, int ix1, int iy1, int ix2, int iy2) {
	if (opts.line != Line.NONE) {
		g.setColor(opts.seriesColor);
		setStroke(g);
		g.drawLine(ix1, iy1, ix2, iy2);
	}
}
 
Example 10
Source File: ShapeDebugFrame.java    From rcrs-server with BSD 3-Clause "New" or "Revised" License 5 votes vote down vote up
@Override
public Shape paint(Graphics2D g, ScreenTransform transform) {
    if (lines.isEmpty()) {
        return null;
    }
    if (thick) {
        g.setStroke(THICK_STROKE);
    }
    else {
        g.setStroke(THIN_STROKE);
    }
    g.setColor(colour);
    Path2D result = new Path2D.Double();
    for (Line2D line : lines) {
        Point2D start = line.getOrigin();
        Point2D end = line.getEndPoint();
        int x1 = transform.xToScreen(start.getX());
        int y1 = transform.yToScreen(start.getY());
        int x2 = transform.xToScreen(end.getX());
        int y2 = transform.yToScreen(end.getY());
        g.drawLine(x1, y1, x2, y2);
        if (arrow) {
            DrawingTools.drawArrowHeads(x1, y1, x2, y2, g);
        }
        result.moveTo(x1, y1);
        result.lineTo(x2, y2);
        //                Logger.debug("Painting line " + name + " (" + line + ") from " + x1 + ", " + y1 + " -> " + x2 + ", " + y2);
    }
    return g.getStroke().createStrokedShape(result);
}
 
Example 11
Source File: FontPanel.java    From dragonwell8_jdk with GNU General Public License v2.0 5 votes vote down vote up
private void drawGrid( Graphics2D g2 ) {
    int totalGridWidth = numCharAcross * gridWidth;
    int totalGridHeight = numCharDown * gridHeight;

    g2.setColor( Color.black );
    for ( int i = 0; i < numCharDown + 1; i++ )
      g2.drawLine( canvasInset_X, i * gridHeight + canvasInset_Y,
                   canvasInset_X + totalGridWidth, i * gridHeight + canvasInset_Y );
    for ( int i = 0; i < numCharAcross + 1; i++ )
      g2.drawLine( i * gridWidth + canvasInset_X, canvasInset_Y,
                   i * gridWidth + canvasInset_X, canvasInset_Y + totalGridHeight );
}
 
Example 12
Source File: Draw.java    From MeteoInfo with GNU Lesser General Public License v3.0 5 votes vote down vote up
/**
 * Get hatch style image
 *
 * @param style Hatch style
 * @param size
 * @param stripeColor Stripe color
 * @param backColor Background color
 * @return Hatch style image
 */
public static BufferedImage getHatchImage(HatchStyle style, int size, Color stripeColor, Color backColor) {
    BufferedImage bi = new BufferedImage(size, size, BufferedImage.TYPE_INT_ARGB);
    Graphics2D g2 = bi.createGraphics();
    int alpha = backColor.getAlpha();
    if (alpha > 0) {
        g2.setColor(backColor);
        g2.fillRect(0, 0, size, size);
    }
    g2.setColor(stripeColor);
    switch (style) {
        case HORIZONTAL:
            g2.drawLine(0, size / 2, size, size / 2);
            break;
        case VERTICAL:
            g2.drawLine(size / 2, 0, size / 2, size);
            break;
        case FORWARD_DIAGONAL:
            g2.drawLine(0, 0, size, size);
            break;
        case BACKWARD_DIAGONAL:
            //g2.drawLine(size, 0, 0, size);
            g2.draw(new Line2D.Float(0, size, size, 0));
            break;
        case CROSS:
            g2.drawLine(0, size / 2, size, size / 2);
            g2.drawLine(size / 2, 0, size / 2, size);
            break;
        case DIAGONAL_CROSS:
            g2.drawLine(0, 0, size, size);
            g2.drawLine(0, size, size, 0);
            break;
        case DOT:
            g2.fill(new Ellipse2D.Float(size / 2, size / 2, 2, 2));
            break;
    }
    return bi;
}
 
Example 13
Source File: TitlePaneMaximizeButtonPainter.java    From seaglass with Apache License 2.0 5 votes vote down vote up
/**
 * Paint the background of the button using the specified colors.
 *
 * @param g      the Graphics2D context to paint with.
 * @param c      the component.
 * @param width  the width of the component.
 * @param height the height of the component.
 * @param colors the color set to use to paint the button.
 */
private void paintBackground(Graphics2D g, JComponent c, int width, int height, ButtonColors colors) {
    g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF);
    g.setColor(colors.top);
    g.drawLine(0, 0, width - 2, 0);
    g.setColor(colors.left);
    g.drawLine(0, 1, 0, height - 3);
    g.setColor(colors.edge);
    g.drawLine(width - 1, 0, width - 1, height - 2);
    g.drawLine(0, height - 2, width - 2, height - 2);
    g.setColor(colors.shadow);
    g.drawLine(0, height - 1, width - 1, height - 1);
    g.setColor(colors.interior);
    g.fillRect(1, 1, width - 1, height - 2);
}
 
Example 14
Source File: AffineTransformMode.java    From TrakEM2 with GNU General Public License v3.0 5 votes vote down vote up
private void draw(final Graphics2D g, final int fx, final int fy, final int x, final int y) {
	g.setColor(Color.white);
	g.drawLine(fx, fy, x, y);
	g.fillOval(x -4, y -4, 9, 9);
	g.setColor(Color.black);
	g.drawOval(x -2, y -2, 5, 5);
}
 
Example 15
Source File: Plot.java    From phoebus with Eclipse Public License 1.0 5 votes vote down vote up
/** Draw the {@link PlotMarker}s
 *  @param gc Graphics context
 */
private void drawPlotMarkers(final Graphics2D gc)
{
    final int y0 = plot_area.getBounds().y;
    final int y1 = y0 + plot_area.getBounds().height;
    final Stroke old_stroke = gc.getStroke();
    gc.setStroke(AxisPart.TICK_STROKE);
    for (PlotMarker<XTYPE> marker : plot_markers)
    {
        gc.setColor(GraphicsUtils.convert(marker.getColor()));
        final int x = x_axis.getScreenCoord(marker.getPosition());
        gc.drawLine(x, y0, x, y1);
    }
    gc.setStroke(old_stroke);
}
 
Example 16
Source File: ElementTrail.java    From osp with GNU General Public License v3.0 5 votes vote down vote up
void draw(Graphics2D _g2, int _index) {
  TrailPoint point = points[_index];
  Color theColor = getDrawingPanel3D().projectColor(getRealStyle().getLineColor(), point.getDistance());
  _g2.setStroke(getRealStyle().getLineStroke());
  _g2.setColor(theColor);
  if((_index==0)||!point.connected) {
    _g2.drawLine((int) point.pixel[0], (int) point.pixel[1], (int) point.pixel[0], (int) point.pixel[1]);
  } else {
    TrailPoint pointPrev = points[_index-1];
    _g2.drawLine((int) point.pixel[0], (int) point.pixel[1], (int) pointPrev.pixel[0], (int) pointPrev.pixel[1]);
  }
}
 
Example 17
Source File: ViolinBoxPlot.java    From systemsgenetics with GNU General Public License v3.0 4 votes vote down vote up
public void drawBoxPlot(Graphics2D g2d, int x, int y, int width, int height, double[] vals, double minValue, double maxValue, boolean drawOutliers) {

        double median = JSci.maths.ArrayMath.percentile(vals, 0.50d);
        double q1 = JSci.maths.ArrayMath.percentile(vals, 0.25d);
        double q3 = JSci.maths.ArrayMath.percentile(vals, 0.75d);
        double iqr = q3 - q1;

        //Draw median:
        int posY = y + height - (int) Math.round((double) height * (median - minValue) / (maxValue - minValue));
        g2d.setStroke(new java.awt.BasicStroke(2.0f, java.awt.BasicStroke.CAP_BUTT, java.awt.BasicStroke.JOIN_ROUND));
        g2d.drawLine(x, posY, x + width, posY);
        //Draw IQR:
        int posY1 = y + height - (int) Math.round((double) height * (q3 - minValue) / (maxValue - minValue));
        int posY2 = y + height - (int) Math.round((double) height * (q1 - minValue) / (maxValue - minValue));
        g2d.setStroke(new java.awt.BasicStroke(1.0f, java.awt.BasicStroke.CAP_BUTT, java.awt.BasicStroke.JOIN_ROUND));
        g2d.drawRect(x, posY1, width, posY2 - posY1);

        //Draw whiskers:
        double whiskerTop = q3 + 1.5d * iqr;
        double whiskerBottom = q1 - 1.5d * iqr;
        double max = Primitives.max(vals);
        double min = Primitives.min(vals);
        if (min > whiskerBottom) {
            whiskerBottom = min;
        }
        if (max < whiskerTop) {
            whiskerTop = max;
        }
        posY = y + height - (int) Math.round((double) height * (whiskerTop - minValue) / (maxValue - minValue));
        g2d.setStroke(new BasicStroke(1.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 2.0f, new float[]{2.0f}, 0.0f));
        g2d.drawLine(x + width / 2, posY, x + width / 2, posY1);
        g2d.setStroke(new java.awt.BasicStroke(1.0f, java.awt.BasicStroke.CAP_BUTT, java.awt.BasicStroke.JOIN_ROUND));
        g2d.drawLine(x + width / 2 - 5, posY, x + width / 2 + 5, posY);
        posY = y + height - (int) Math.round((double) height * (whiskerBottom - minValue) / (maxValue - minValue));
        g2d.setStroke(new BasicStroke(1.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 2.0f, new float[]{2.0f}, 0.0f));
        g2d.drawLine(x + width / 2, posY2, x + width / 2, posY);
        g2d.setStroke(new java.awt.BasicStroke(1.0f, java.awt.BasicStroke.CAP_BUTT, java.awt.BasicStroke.JOIN_ROUND));
        g2d.drawLine(x + width / 2 - 5, posY, x + width / 2 + 5, posY);

        //Draw outliers:
        if (drawOutliers) {
            java.awt.AlphaComposite alphaComposite10 = java.awt.AlphaComposite.getInstance(java.awt.AlphaComposite.SRC_OVER, 0.10f);
            g2d.setComposite(alphaComposite10);
            for (int v = 0; v < vals.length; v++) {
                if (vals[v] > whiskerTop || vals[v] < whiskerBottom) {
                    posY = y + height - (int) Math.round((double) height * (vals[v] - minValue) / (maxValue - minValue));
                    g2d.drawOval(x + width / 2 - 2, posY - 2, 5, 5);
                }
            }
        }
    }
 
Example 18
Source File: MultiGradientTest.java    From openjdk-8 with GNU General Public License v2.0 4 votes vote down vote up
public void paintComponent(Graphics g) {
    Graphics2D g2d = (Graphics2D)g.create();

    int w = getWidth();
    int h = getHeight();
    g2d.setColor(Color.black);
    g2d.fillRect(0, 0, w, h);

    g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                         antialiasHint);
    g2d.setRenderingHint(RenderingHints.KEY_RENDERING,
                         renderHint);

    g2d.transform(transform);
    g2d.setPaint(paint);

    switch (shapeType) {
    default:
    case RECT:
        g2d.fillRect(0, 0, w, h);
        break;

    case ELLIPSE:
        g2d.fillOval(0, 0, w, h);
        break;

    case MULTIPLE:
        g2d.fillRect(0, 0, w/2, h/2);
        g2d.fillOval(w/2, 0, w/2, h/2);
        g2d.drawOval(0, h/2, w/2, h/2);
        g2d.drawLine(0, h/2, w/2, h);
        g2d.drawLine(0, h, w/2, h/2);
        Polygon p = new Polygon();
        p.addPoint(w/2, h);
        p.addPoint(w, h);
        p.addPoint(3*w/4, h/2);
        g2d.fillPolygon(p);
        break;
    }

    switch (paintType) {
    default:
    case BASIC:
    case LINEAR:
        g2d.setColor(Color.white);
        g2d.fillRect(startX-1, startY-1, 2, 2);
        g2d.drawString("1", startX, startY + 12);
        g2d.fillRect(endX-1, endY-1, 2, 2);
        g2d.drawString("2", endX, endY + 12);
        break;

    case RADIAL:
        g2d.setColor(Color.white);
        g2d.fillRect(ctrX-1, ctrY-1, 2, 2);
        g2d.drawString("C", ctrX, ctrY + 12);
        g2d.fillRect(focusX-1, focusY-1, 2, 2);
        g2d.drawString("F", focusX, focusY + 12);
        break;
    }

    g2d.dispose();
}
 
Example 19
Source File: MultiGradientTest.java    From TencentKona-8 with GNU General Public License v2.0 4 votes vote down vote up
public void paintComponent(Graphics g) {
    Graphics2D g2d = (Graphics2D)g.create();

    int w = getWidth();
    int h = getHeight();
    g2d.setColor(Color.black);
    g2d.fillRect(0, 0, w, h);

    g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                         antialiasHint);
    g2d.setRenderingHint(RenderingHints.KEY_RENDERING,
                         renderHint);

    g2d.transform(transform);
    g2d.setPaint(paint);

    switch (shapeType) {
    default:
    case RECT:
        g2d.fillRect(0, 0, w, h);
        break;

    case ELLIPSE:
        g2d.fillOval(0, 0, w, h);
        break;

    case MULTIPLE:
        g2d.fillRect(0, 0, w/2, h/2);
        g2d.fillOval(w/2, 0, w/2, h/2);
        g2d.drawOval(0, h/2, w/2, h/2);
        g2d.drawLine(0, h/2, w/2, h);
        g2d.drawLine(0, h, w/2, h/2);
        Polygon p = new Polygon();
        p.addPoint(w/2, h);
        p.addPoint(w, h);
        p.addPoint(3*w/4, h/2);
        g2d.fillPolygon(p);
        break;
    }

    switch (paintType) {
    default:
    case BASIC:
    case LINEAR:
        g2d.setColor(Color.white);
        g2d.fillRect(startX-1, startY-1, 2, 2);
        g2d.drawString("1", startX, startY + 12);
        g2d.fillRect(endX-1, endY-1, 2, 2);
        g2d.drawString("2", endX, endY + 12);
        break;

    case RADIAL:
        g2d.setColor(Color.white);
        g2d.fillRect(ctrX-1, ctrY-1, 2, 2);
        g2d.drawString("C", ctrX, ctrY + 12);
        g2d.fillRect(focusX-1, focusY-1, 2, 2);
        g2d.drawString("F", focusX, focusY + 12);
        break;
    }

    g2d.dispose();
}
 
Example 20
Source File: TickmarksRenderer.java    From energy2d with GNU Lesser General Public License v3.0 4 votes vote down vote up
void render(View2D c, Graphics2D g) {

        if (!c.isVisible())
            return;

        Font oldFont = g.getFont();
        Stroke oldStroke = g.getStroke();

        int w = c.getWidth();
        int h = c.getHeight();

        g.setStroke(stroke);
        g.setFont(smallFont);
        int k;
        for (int i = 1; i < nx; i++) {
            k = Math.round(i * w / nx);
            g.setColor(c.getContrastColor(k, h - 12));
            if (i % 10 == 0) {
                g.drawLine(k, h, k, h - 10);
                if (dx < 0.001) {
                    centerString(FORMAT_SCIENTIFIC_NOTATION.format(xmin + i * dx), g, k, h - 12);
                } else {
                    centerString(FORMAT_DECIMAL.format(xmin + i * dx), g, k, h - 12);
                }
            } else {
                g.drawLine(k, h, k, h - 5);
            }
        }
        g.setColor(c.getContrastColor(w - 10, h - 12));
        centerString(unit, g, w - 10, h - 12);
        for (int i = 1; i < ny; i++) {
            k = Math.round((1f - (float) i / (float) ny) * h);
            g.setColor(c.getContrastColor(15, k + 3));
            if (i % 10 == 0) {
                g.drawLine(0, k, 10, k);
                if (dy < 0.001) {
                    centerString(FORMAT_SCIENTIFIC_NOTATION.format(ymin + i * dy), g, 25, k + 3);
                } else {
                    centerString(FORMAT_DECIMAL.format(ymin + i * dy), g, 15, k + 3);
                }
            } else {
                g.drawLine(0, k, 5, k);
            }
        }
        g.setColor(c.getContrastColor(15, 10));
        centerString(unit, g, 15, 10);

        g.setStroke(oldStroke);
        g.setFont(oldFont);

    }