Java Code Examples for java.awt.BasicStroke#JOIN_BEVEL
The following examples show how to use
java.awt.BasicStroke#JOIN_BEVEL .
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: SWTGraphics2D.java From SIMVA-SoS with Apache License 2.0 | 6 votes |
/** * Returns the SWT line join corresponding to the specified AWT line join. * * @param awtLineJoin the AWT line join. * * @return The SWT line join. */ private int toSwtLineJoin(int awtLineJoin) { if (awtLineJoin == BasicStroke.JOIN_BEVEL) { return SWT.JOIN_BEVEL; } else if (awtLineJoin == BasicStroke.JOIN_MITER) { return SWT.JOIN_MITER; } else if (awtLineJoin == BasicStroke.JOIN_ROUND) { return SWT.JOIN_ROUND; } else { throw new IllegalArgumentException("AWT LineJoin " + awtLineJoin + " not recognised"); } }
Example 2
Source File: XChartSelectionOverlay.java From netbeans with Apache License 2.0 | 6 votes |
private void initDefaultValues() { setRenderingOptimized(true); Color systemSelection = Utils.getSystemSelection(); setLineStroke(new BasicStroke(1)); setLinePaint(systemSelection); setFillPaint(new Color(systemSelection.getRed(), systemSelection.getGreen(), systemSelection.getBlue(), 80)); oddPerfStroke = new BasicStroke(1, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0, new float[] { 6, 6 }, 6); evenPerfStroke = new BasicStroke(1, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0, new float[] { 6, 6 }, 0); setLineMode(true, true, true, true); }
Example 3
Source File: SwingSet2.java From beautyeye with Apache License 2.0 | 6 votes |
public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) { // g.drawLine(x,y, widthheight); // draw top // g.drawLine(x,y, x,height-1); // draw left // g.drawLine(width-1,y, width-1,height-1); // draw right //** 绘制border的底线 //虚线样式 Stroke oldStroke = ((Graphics2D)g).getStroke(); Stroke sroke = new BasicStroke(1, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0, new float[]{1, 2}, 0);//实线,空白 ((Graphics2D)g).setStroke(sroke); //底边上(浅灰色) g.setColor(new Color(200,200,200)); g.drawLine(x,height-2, width-1,height-2); // draw bottom1 //底边下(白色):绘制一条白色虚线的目的是与上面的灰线产生较强对比度从而形成立体效果 //,本L&F实现中因与Panel的底色对比度不够强烈而立体感不明显(颜色越深的底色最终效果越明显) g.setColor(Color.white); g.drawLine(x,height-1, width-1,height-1);//draw bottom2 ((Graphics2D)g).setStroke(oldStroke); }
Example 4
Source File: FXGraphics2D.java From buffer_bci with GNU General Public License v3.0 | 5 votes |
/** * Maps a line join code from AWT to the corresponding JavaFX * StrokeLineJoin enum value. * * @param c the line join code. * * @return A JavaFX line join value. */ private StrokeLineJoin awtToJavaFXLineJoin(int j) { if (j == BasicStroke.JOIN_BEVEL) { return StrokeLineJoin.BEVEL; } else if (j == BasicStroke.JOIN_MITER) { return StrokeLineJoin.MITER; } else if (j == BasicStroke.JOIN_ROUND) { return StrokeLineJoin.ROUND; } else { throw new IllegalArgumentException("Unrecognised join code: " + j); } }
Example 5
Source File: DashStrokeTest.java From openjdk-jdk9 with GNU General Public License v2.0 | 5 votes |
public static void main(String[] args) { GeneralPath shape = new GeneralPath(); int[] pointTypes = {0, 0, 1, 1, 0, 1, 1, 0}; double[] xpoints = {428, 420, 400, 400, 400, 400, 420, 733}; double[] ypoints = {180, 180, 180, 160, 30, 10, 10, 10}; shape.moveTo(xpoints[0], ypoints[0]); for (int i = 1; i < pointTypes.length; i++) { if (pointTypes[i] == 1 && i < pointTypes.length - 1) { shape.quadTo(xpoints[i], ypoints[i], xpoints[i + 1], ypoints[i + 1]); } else { shape.lineTo(xpoints[i], ypoints[i]); } } BufferedImage image = new BufferedImage(1000, 1000, BufferedImage.TYPE_INT_ARGB); Graphics2D g2 = image.createGraphics(); Color color = new Color(124, 0, 124, 255); g2.setColor(color); Stroke stroke = new BasicStroke(1.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 10.0f, new float[] {9, 6}, 0.0f); g2.setStroke(stroke); g2.draw(shape); }
Example 6
Source File: TimelineSelectionOverlay.java From visualvm with GNU General Public License v2.0 | 5 votes |
private void initDefaultValues() { sMarkPaint = new Color(120, 120, 120); sOddPerfPaint = new Color(120, 120, 120); sEvenPerfPaint = Color.WHITE; hMarkPaint = new Color(80, 80, 80); hOddPerfPaint = Color.BLACK; hEvenPerfPaint = Color.WHITE; markStroke = new BasicStroke(2.8f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND); oddPerfStroke = new BasicStroke(1f, BasicStroke.CAP_SQUARE, BasicStroke.JOIN_BEVEL, 0, new float[] { 1.0f, 3.0f }, 0); evenPerfStroke = new BasicStroke(1f, BasicStroke.CAP_SQUARE, BasicStroke.JOIN_BEVEL, 0, new float[] { 1.0f, 3.0f }, 2); selectionExtent = 3; }
Example 7
Source File: DashZeroWidth.java From TencentKona-8 with GNU General Public License v2.0 | 5 votes |
private static void draw(final Image img) { float[] dashes = {10.0f, 10.0f}; BasicStroke bs = new BasicStroke(0.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 10.0f, dashes, 0.0f); Graphics2D g = (Graphics2D) img.getGraphics(); g.setColor(Color.WHITE); g.fillRect(0, 0, 200, 40); Line2D line = new Line2D.Double(20, 20, 180, 20); g.setColor(Color.BLACK); g.setStroke(bs); g.draw(line); g.dispose(); }
Example 8
Source File: WPrinterJob.java From openjdk-8 with GNU General Public License v2.0 | 5 votes |
protected boolean selectStylePen(int cap, int join, float width, Color color) { long endCap; long lineJoin; float[] rgb = color.getRGBColorComponents(null); switch(cap) { case BasicStroke.CAP_BUTT: endCap = PS_ENDCAP_FLAT; break; case BasicStroke.CAP_ROUND: endCap = PS_ENDCAP_ROUND; break; default: case BasicStroke.CAP_SQUARE: endCap = PS_ENDCAP_SQUARE; break; } switch(join) { case BasicStroke.JOIN_BEVEL:lineJoin = PS_JOIN_BEVEL; break; default: case BasicStroke.JOIN_MITER:lineJoin = PS_JOIN_MITER; break; case BasicStroke.JOIN_ROUND:lineJoin = PS_JOIN_ROUND; break; } return (selectStylePen(getPrintDC(), endCap, lineJoin, width, (int) (rgb[0] * MAX_WCOLOR), (int) (rgb[1] * MAX_WCOLOR), (int) (rgb[2] * MAX_WCOLOR))); }
Example 9
Source File: WPrinterJob.java From jdk8u-dev-jdk with GNU General Public License v2.0 | 5 votes |
protected boolean selectStylePen(int cap, int join, float width, Color color) { long endCap; long lineJoin; float[] rgb = color.getRGBColorComponents(null); switch(cap) { case BasicStroke.CAP_BUTT: endCap = PS_ENDCAP_FLAT; break; case BasicStroke.CAP_ROUND: endCap = PS_ENDCAP_ROUND; break; default: case BasicStroke.CAP_SQUARE: endCap = PS_ENDCAP_SQUARE; break; } switch(join) { case BasicStroke.JOIN_BEVEL:lineJoin = PS_JOIN_BEVEL; break; default: case BasicStroke.JOIN_MITER:lineJoin = PS_JOIN_MITER; break; case BasicStroke.JOIN_ROUND:lineJoin = PS_JOIN_ROUND; break; } return (selectStylePen(getPrintDC(), endCap, lineJoin, width, (int) (rgb[0] * MAX_WCOLOR), (int) (rgb[1] * MAX_WCOLOR), (int) (rgb[2] * MAX_WCOLOR))); }
Example 10
Source File: StyleUtilities.java From hortonmachine with GNU General Public License v3.0 | 5 votes |
/** * Convert a sld line join definition to the java awt value. * * @param sldJoin the sld join string. * @return the awt value. */ public static int sld2awtJoin( String sldJoin ) { if (sldJoin.equals(lineJoinNames[1])) { return BasicStroke.JOIN_BEVEL; } else if (sldJoin.equals("") || sldJoin.equals(lineJoinNames[2])) { return BasicStroke.JOIN_MITER; } else if (sldJoin.equals(lineJoinNames[3])) { return BasicStroke.JOIN_ROUND; } else { throw new IllegalArgumentException("unsupported line join"); } }
Example 11
Source File: FXGraphics2D.java From buffer_bci with GNU General Public License v3.0 | 5 votes |
/** * Maps a line join code from AWT to the corresponding JavaFX * StrokeLineJoin enum value. * * @param c the line join code. * * @return A JavaFX line join value. */ private StrokeLineJoin awtToJavaFXLineJoin(int j) { if (j == BasicStroke.JOIN_BEVEL) { return StrokeLineJoin.BEVEL; } else if (j == BasicStroke.JOIN_MITER) { return StrokeLineJoin.MITER; } else if (j == BasicStroke.JOIN_ROUND) { return StrokeLineJoin.ROUND; } else { throw new IllegalArgumentException("Unrecognised join code: " + j); } }
Example 12
Source File: FXGraphics2D.java From ECG-Viewer with GNU General Public License v2.0 | 5 votes |
/** * Maps a line join code from AWT to the corresponding JavaFX * StrokeLineJoin enum value. * * @param c the line join code. * * @return A JavaFX line join value. */ private StrokeLineJoin awtToJavaFXLineJoin(int j) { if (j == BasicStroke.JOIN_BEVEL) { return StrokeLineJoin.BEVEL; } else if (j == BasicStroke.JOIN_MITER) { return StrokeLineJoin.MITER; } else if (j == BasicStroke.JOIN_ROUND) { return StrokeLineJoin.ROUND; } else { throw new IllegalArgumentException("Unrecognised join code: " + j); } }
Example 13
Source File: DialPointer.java From ECG-Viewer with GNU General Public License v2.0 | 5 votes |
/** * Creates a new instance. * * @param datasetIndex the dataset index. */ public Pin(int datasetIndex) { super(datasetIndex); this.paint = Color.red; this.stroke = new BasicStroke(3.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_BEVEL); }
Example 14
Source File: JStrokeChooserDialog.java From mzmine2 with GNU General Public License v2.0 | 5 votes |
public int getJoinSelection() { String s = getComboJoin().getSelectedItem().toString(); if (s.equals("Bevel")) return BasicStroke.JOIN_BEVEL; else if (s.equals("Miter")) return BasicStroke.JOIN_MITER; else return BasicStroke.JOIN_ROUND; }
Example 15
Source File: DashZeroWidth.java From jdk8u_jdk with GNU General Public License v2.0 | 5 votes |
private static void draw(final Image img) { float[] dashes = {10.0f, 10.0f}; BasicStroke bs = new BasicStroke(0.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 10.0f, dashes, 0.0f); Graphics2D g = (Graphics2D) img.getGraphics(); g.setColor(Color.WHITE); g.fillRect(0, 0, 200, 40); Line2D line = new Line2D.Double(20, 20, 180, 20); g.setColor(Color.BLACK); g.setStroke(bs); g.draw(line); g.dispose(); }
Example 16
Source File: BrushStroke.java From pumpernickel with MIT License | 4 votes |
public Shape createStrokedShape(Shape p) { if (thinStrokes == null) { thinStrokes = new BasicStroke[100]; for (int a = 0; a < thinStrokes.length; a++) { float f = .15f + (2.05f - .15f) * (a) / (thinStrokes.length); thinStrokes[a] = new BasicStroke(f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 10); } } GeneralPath path = new GeneralPath(); Random r = new Random(randomSeed); float h = thickness * thickness; int thicknessMax = Math.min(thinStrokes.length, (int) (thinStrokes.length * h + thinStrokes.length * .2f)); int thicknessMin = (int) (thinStrokes.length * h / 2f); GeneralPath thisLayer = new GeneralPath(Path2D.WIND_NON_ZERO); GeneralPathWriter writer = new GeneralPathWriter(thisLayer); for (int a = 0; a < layers; a++) { writer.reset(); float k1 = a * width / (layers - 1f); float k2 = k1 - width / 2; InsetPathWriter insetWriter; if (k2 > 0) { insetWriter = new InsetPathWriter(writer, Math.abs(k2), theta); } else { insetWriter = new InsetPathWriter(writer, Math.abs(k2), (float) (Math.PI + theta)); } insetWriter.write(p); MeasuredShape[] measuredLayers = MeasuredShape .getSubpaths(thisLayer); float minStreakDistance = (4 + 10 * thickness) / 1f; float maxStreakDistance = (40 + 10 * thickness) / 1f; float k3 = Math.abs(k2); float minGapDistance = (4 + 10 * k3) / 1f; float maxGapDistance = (40 + 10 * k3) / 1f; for (int b = 0; b < measuredLayers.length; b++) { r.setSeed(randomSeed + 1000 * a + 10000 * b); float x = 0; if (a != layers / 2) { float k4 = Math.abs(k2 / width); x = (maxGapDistance - minGapDistance) * r.nextFloat() + k4 * (.3f * r.nextFloat() + .7f) * minGapDistance; } boolean first = true; while (x < measuredLayers[b].getOriginalDistance()) { float streakDistance = minStreakDistance + (maxStreakDistance - minStreakDistance) * r.nextFloat(); float gapDistance; if (first) { first = false; gapDistance = (.2f + .8f * r.nextFloat()) * minGapDistance + (maxGapDistance - minGapDistance) * r.nextFloat(); } else { gapDistance = minGapDistance + (maxGapDistance - minGapDistance) * r.nextFloat(); } if (x + streakDistance > measuredLayers[b] .getOriginalDistance()) { float z = 0; if (a != layers / 2) z = (maxGapDistance - minGapDistance) * r.nextFloat(); streakDistance = measuredLayers[b].getOriginalDistance() - x - z; } if (streakDistance > 0) { GeneralPath p2 = measuredLayers[b].getShape( x / measuredLayers[b].getClosedDistance(), streakDistance / measuredLayers[b] .getClosedDistance()); path.append( thinStrokes[r .nextInt(thicknessMax - thicknessMin) + thicknessMin].createStrokedShape(p2), false); } x = x + (streakDistance + gapDistance); } } } return path; }
Example 17
Source File: SVGGraphics2D.java From jfreesvg with GNU General Public License v3.0 | 4 votes |
/** * Returns a stroke style string based on the current stroke and * alpha settings. * * @return A stroke style string. */ private String strokeStyle() { double strokeWidth = 1.0f; String strokeCap = DEFAULT_STROKE_CAP; String strokeJoin = DEFAULT_STROKE_JOIN; float miterLimit = DEFAULT_MITER_LIMIT; float[] dashArray = new float[0]; if (this.stroke instanceof BasicStroke) { BasicStroke bs = (BasicStroke) this.stroke; strokeWidth = bs.getLineWidth() > 0.0 ? bs.getLineWidth() : this.zeroStrokeWidth; switch (bs.getEndCap()) { case BasicStroke.CAP_ROUND: strokeCap = "round"; break; case BasicStroke.CAP_SQUARE: strokeCap = "square"; break; case BasicStroke.CAP_BUTT: default: // already set to "butt" } switch (bs.getLineJoin()) { case BasicStroke.JOIN_BEVEL: strokeJoin = "bevel"; break; case BasicStroke.JOIN_ROUND: strokeJoin = "round"; break; case BasicStroke.JOIN_MITER: default: // already set to "miter" } miterLimit = bs.getMiterLimit(); dashArray = bs.getDashArray(); } StringBuilder b = new StringBuilder(); b.append("stroke-width: ").append(strokeWidth).append(";"); b.append("stroke: ").append(svgColorStr()).append(";"); b.append("stroke-opacity: ").append(getColorAlpha() * getAlpha()) .append(";"); if (!strokeCap.equals(DEFAULT_STROKE_CAP)) { b.append("stroke-linecap: ").append(strokeCap).append(";"); } if (!strokeJoin.equals(DEFAULT_STROKE_JOIN)) { b.append("stroke-linejoin: ").append(strokeJoin).append(";"); } if (Math.abs(DEFAULT_MITER_LIMIT - miterLimit) < 0.001) { b.append("stroke-miterlimit: ").append(geomDP(miterLimit)); } if (dashArray != null && dashArray.length != 0) { b.append("stroke-dasharray: "); for (int i = 0; i < dashArray.length; i++) { if (i != 0) b.append(", "); b.append(dashArray[i]); } b.append(";"); } if (this.checkStrokeControlHint) { Object hint = getRenderingHint(RenderingHints.KEY_STROKE_CONTROL); if (RenderingHints.VALUE_STROKE_NORMALIZE.equals(hint) && !this.shapeRendering.equals("crispEdges")) { b.append("shape-rendering:crispEdges;"); } if (RenderingHints.VALUE_STROKE_PURE.equals(hint) && !this.shapeRendering.equals("geometricPrecision")) { b.append("shape-rendering:geometricPrecision;"); } } return b.toString(); }
Example 18
Source File: BEToolBarSeparatorUI.java From beautyeye with Apache License 2.0 | 4 votes |
public void paint( Graphics g, JComponent c ) { boolean vertical = ((JSeparator)c).getOrientation() == SwingConstants.VERTICAL; Dimension size = c.getSize(); //虚线样式 Stroke oldStroke = ((Graphics2D)g).getStroke(); Stroke sroke = new BasicStroke(1, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0, new float[]{2, 2}, 0);//实线,空白 ((Graphics2D)g).setStroke(sroke);// Color temp = g.getColor(); UIDefaults table = UIManager.getLookAndFeelDefaults(); Color shadow = table.getColor("ToolBar.shadow"); Color highlight = table.getColor("ToolBar.highlight"); // TODO BUG_001:不知何故,垂直分隔条并不能像水平分隔条一样,拥有默认设置的new Dimension(6, 6) // 而只有new Dimension(1, ...),而当它floating时却能正常表现(只能绘出hilight而不能绘出shadow) //,有待深入研究,垂直的分隔条则不会有此种情况 if (vertical) { int x = (size.width / 2) - 1; //* 当BUG_001存在时,暂时使用以下代码解决:把本该显示hilight的 //* 线条用shadow颜色绘制,最大可能保证ui的正常展现 // g.setColor(shadow); // g.drawLine(x, 2, x, size.height - 2); g.setColor(shadow);//highlight); g.drawLine(x + 1, 2, x + 1, size.height - 2); //* 当BUG_001不存在时,应该使用以下代码 // g.setColor(shadow); // g.drawLine(x, 2, x, size.height - 2); // g.setColor(highlight); // g.drawLine(x + 1, 2, x + 1, size.height - 2); } else { int y = (size.height / 2) - 1; g.setColor(shadow); g.drawLine(2, y, size.width - 2, y); g.setColor(highlight); g.drawLine(2, y + 1, size.width - 2, y + 1); } g.setColor(temp); // ((Graphics2D)g).setStroke(oldStroke); }
Example 19
Source File: ScreenMarkerCreationOverlay.java From plugins with GNU General Public License v3.0 | 4 votes |
private Stroke createStripedStroke(int thickness) { return new BasicStroke(thickness, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0, new float[]{9}, 0); }
Example 20
Source File: StrategyMapBackgroundImageTest.java From bamboobsc with Apache License 2.0 | 2 votes |
public static void main(String args[]) throws Exception { int width = 800, height = 600; // TYPE_INT_ARGB specifies the image format: 8-bit RGBA packed // into integer pixels BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Graphics2D g2 = bi.createGraphics(); g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); int fontLeft = 3; int fontAddY = 150; int fontNowY = 80; int lineAddY = 60; // Financial Font font = new Font("", Font.BOLD, 14); g2.setFont(font); String message = "Financial"; // 原本純白的底 //g2.setColor(Color.WHITE); //g2.fillRect(0, 0, width, height); // 填滿 grid 圖片的底 BufferedImage bg = ImageIO.read( new File("/home/git/bamboobsc/gsbsc-web/WebContent/images/s-map-bg-grid.png") ); for (int y=0; y<height; y+=bg.getHeight()) { for (int x=0; x<width; x+=bg.getWidth()) { g2.drawImage(bg, x, y, null); } } g2.setPaint( new Color(64, 64, 64) ); g2.drawString(message, fontLeft, fontNowY); Stroke dashed = new BasicStroke(2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0, new float[]{9}, 0); g2.setStroke(dashed); g2.drawLine(0, fontNowY+lineAddY, width, fontNowY+lineAddY); fontNowY = fontNowY + fontAddY; // Customer message = "Customer"; g2.drawString(message, fontLeft, fontNowY); g2.setStroke(dashed); g2.drawLine(0, fontNowY+lineAddY, width, fontNowY+lineAddY); fontNowY = fontNowY + fontAddY; // Internal business processes message = "Internal business processes"; g2.drawString(message, fontLeft, fontNowY); g2.setStroke(dashed); g2.drawLine(0, fontNowY+lineAddY, width, fontNowY+lineAddY); fontNowY = fontNowY + fontAddY; // Learning and growth message = "Learning and growth"; g2.drawString(message, fontLeft, fontNowY); g2.setStroke(dashed); g2.drawLine(0, fontNowY+lineAddY, width, fontNowY+lineAddY); fontNowY = fontNowY + fontAddY; ImageIO.write(bi, "PNG", new File("/tmp/ex/strategy-map-background-"+System.currentTimeMillis()+".png")); }