public void draw() { for (int i = 1; i < _points.size(); i++) { // Line segment = new Line(x1, y1, x2, y2); Line segment = new Line(0, 0, 30, 40); segment.draw(); } }
public void draw(GL gl, double xpos, double ypos, double rot) { if (gl != null) { gl.glLoadIdentity(); gl.glTranslated(xpos, ypos, 0); gl.glRotated(rot + rotoffset, 0, 0, 1); for (Line l : lines) { l.draw(gl, 0, 0); } // gl.glFlush(); } }
public static void main(String[] args) { Point point1 = new Point(10, 15); Point point2 = new Point(20, 30); Point point3 = new Point(40, 50); Line line1 = new Line(point3, point2); Rectangle r = new Rectangle(point1, 10, 20); line1.draw(); }
/** * @see org.newdawn.slick.BasicGame#render(org.newdawn.slick.GameContainer, * org.newdawn.slick.Graphics) */ public void render(GameContainer container, Graphics g) { g.drawString("left shift down: " + lshift, 100, 240); g.drawString("right shift down: " + rshift, 100, 260); g.drawString("space down: " + space, 100, 280); g.setColor(Color.white); g.drawString(message, 10, 50); g.drawString("" + container.getInput().getMouseY(), 10, 400); g.drawString( "Use the primary gamepad to control the blob, and hit a gamepad button to change the color", 10, 90); for (int i = 0; i < lines.size(); i++) { Line line = (Line) lines.get(i); line.draw(g); } g.setColor(cols[index]); g.fillOval((int) x, (int) y, 50, 50); g.setColor(Color.yellow); g.fillRect(50, 200 + ypos, 40, 40); }
/** * Draw the lines list to the applet * * @param g Applet to draw on * @param drawSettings override the draw color, texture (and other settings). Draw whole object in * the given color if != null */ public void drawLines(PGraphics g, DrawSettings drawSettings) { for (Line line : lines) { line.draw(g, drawSettings); } }
@Override public void draw(MapGraphicContext context) { // Initialize ILayer graticule = context.getLayer(); GraticuleStyle style = GraticuleStyle.getStyle(graticule); // Ensure CRS? if (graticule instanceof Layer) { // Initialize CRS? if (style.isInitCRS()) { // Only initialize once style.setInitCRS(false); // Apply CRS from context GraticuleCRSConfigurator.apply((Layer) graticule, context.getCRS()); } else if (mismatch(graticule, style)) { // Apply CRS from GraticuleCRSConfigurator.apply((Layer) graticule, style.getCRS()); } } // Sanity checks if (MAX_SCALE < context.getMap().getViewportModel().getScaleDenominator()) { graticule.setStatus(ILayer.ERROR); graticule.setStatusMessage(Messages.GraticuleGraphic_Maximum_Scale + MAX_SCALE); return; } Unit<?> unit = CRSUtilities.getUnit(graticule.getCRS().getCoordinateSystem()); if (!SI.METER.equals(unit)) { graticule.setStatus(ILayer.ERROR); graticule.setStatusMessage(Messages.GraticuleGraphic_Illegal_CRS); return; } final IWorkbench workbench = PlatformUI.getWorkbench(); if (workbench == null) return; // Start working on layer graticule.setStatus(ILayer.WORKING); graticule.setStatusMessage(null); // Get display to work on final Display display = workbench.getDisplay(); // Set styles Font plain = GraticuleStyle.getFontStyle(context).getFont(); Font bold = plain.deriveFont(Font.BOLD); // Initialize the graphics handle ViewportGraphics g = context.getGraphics(); // Set font size g.setFont(bold); // Get bounds of viewport ReferencedEnvelope bounds = context.getViewportModel().getBounds(); try { // Get square size limited to minimum size of 100 pixels double size = size(context, unit, 100); // Sanity check if (size < 100) return; // Convert square size to pixels int sx = (int) (size / context.getViewportModel().getPixelSize().x); int sy = (int) (size / context.getViewportModel().getPixelSize().y); // Make transform from Graticule to map CRS MathTransform transform = CRS.findMathTransform(graticule.getCRS(), context.getCRS(), false); // Transform bounds into Graticule CRS bounds = bounds.transform(graticule.getCRS(), true); // Get squares inside bounds SimpleFeatureIterator it = squares(bounds, size); // Draw one squares at the time (only top and left lines are drawn) while (it.hasNext()) { // Initialize states int i = 0; Point current = null; // Initialize lines List<Line> lines = new ArrayList<Line>(2); List<Label> labels = new ArrayList<Label>(2); // Get next geometry Geometry geom = (Geometry) it.next().getDefaultGeometry(); // Get coordinates in graticule CRS Coordinate[] coords = geom.getCoordinates(); // Get x-coordinate label from upper left corner String tx = getLabel(coords[0].x, size, unit, style); // Get y-coordinate label from lower left corner String ty = getLabel(coords[2].y, size, unit, style); // Insert gap with label? boolean vgap = isGap(tx, unit, style); boolean hgap = isGap(ty, unit, style); // Transform coordinates into Map CRS coords = JTS.transform(geom, transform).getCoordinates(); // Create lines and labels for this square for (Coordinate c : coords) { // Build paths switch (i) { case 1: // ----------------------- // Vertical line // ----------------------- // Create line path current = vert( display, g, sy, style.getLineWidth(), current, context.worldToPixel(c), hgap, vgap, lines); // Add xx label? if (hgap) { labels.add(new Label(current, tx, vgap ? bold : plain)); current = context.worldToPixel(c); } break; case 2: // ----------------------- // Horizontal line // ----------------------- // Create line path current = horz( display, g, sx, style.getLineWidth(), current, context.worldToPixel(c), vgap, hgap, lines); // Add yy label? if (vgap) { labels.add(new Label(current, ty, hgap ? bold : plain)); current = context.worldToPixel(c); } break; default: current = context.worldToPixel(c); break; } i++; } // Draw lines for (Line line : lines) line.draw(g, style); // Draw labels? if (style.isShowLabels()) for (Label label : labels) label.draw(g, style); } // // Get lower left corner coordinates // int x = llc.x; // int y = llc.y; // // // Print borders // g.setColor(lc); // g.setStroke(ViewportGraphics.LINE_SOLID, 5); // // // Inner rectangle // g.drawRect(x + d + l, y + d + l, w - 2 * (d + l), h - 2 * (d + l)); // // // Make white border // g.setColor(Color.WHITE); // // // Left // g.drawRect(x, y, d, h); // g.fillRect(x, y, d, h); // // // Bottom // g.drawRect(x, y, w, d); // g.fillRect(x, y, w, d); // // // Right // g.drawRect(x + w - d, y, d, h); // g.fillRect(x + w - d, y, d, h); // // // Top // g.drawRect(x, y + h - d, w, d); // g.fillRect(x, y + h - d, w, d); } catch (IOException ex) { MapGraphicPlugin.log(Messages.GraticuleGraphic_Error, ex); } catch (FactoryException ex) { MapGraphicPlugin.log(Messages.GraticuleGraphic_Error, ex); } catch (MismatchedDimensionException ex) { MapGraphicPlugin.log(Messages.GraticuleGraphic_Error, ex); } catch (TransformException ex) { MapGraphicPlugin.log(Messages.GraticuleGraphic_Error, ex); } // Finished working on layer graticule.setStatus(ILayer.DONE); }