mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-05-31 11:44:36 +00:00
135 lines
4.3 KiB
Java
135 lines
4.3 KiB
Java
package com.jpexs.graphics;
|
|
|
|
import java.awt.BasicStroke;
|
|
import java.awt.Color;
|
|
import java.awt.Graphics;
|
|
import java.awt.Graphics2D;
|
|
import java.awt.geom.GeneralPath;
|
|
import java.awt.geom.Point2D;
|
|
import javax.swing.JFrame;
|
|
import javax.swing.JPanel;
|
|
|
|
/**
|
|
*
|
|
* @author JPEXS
|
|
*/
|
|
public class StrokeTest extends JFrame {
|
|
|
|
public StrokeTest() {
|
|
setDefaultCloseOperation(EXIT_ON_CLOSE);
|
|
setContentPane(new JPanel() {
|
|
@Override
|
|
protected void paintComponent(Graphics g) {
|
|
super.paintComponent(g);
|
|
|
|
float miterLimit = 3f;//9.6f;
|
|
Graphics2D g2d = (Graphics2D)g;
|
|
GeneralPath p = new GeneralPath();
|
|
ExtendedBasicStroke ebs = new ExtendedBasicStroke(30,
|
|
ExtendedBasicStroke.CAP_BUTT,
|
|
ExtendedBasicStroke.JOIN_MITER_CLIP,
|
|
miterLimit);
|
|
g2d.setStroke(ebs);
|
|
g2d.setPaint(Color.RED);
|
|
/*path = new GeneralPath();
|
|
path.moveTo(10, 10);
|
|
path.lineTo(30, 200);
|
|
path.lineTo(50, 10);
|
|
g2d.draw(path);
|
|
|
|
|
|
path = new GeneralPath();
|
|
path.moveTo(10, 300+200);
|
|
path.lineTo(30, 300+10);
|
|
path.lineTo(50, 300+200);
|
|
g2d.draw(path);
|
|
|
|
path = new GeneralPath();
|
|
path.moveTo(50, 600+200);
|
|
path.lineTo(30, 600+10);
|
|
path.lineTo(10, 600+200);
|
|
g2d.draw(path);
|
|
|
|
path = new GeneralPath();
|
|
path.moveTo(200, 300);
|
|
path.lineTo(200+190, 300+20);
|
|
path.lineTo(200, 300+40);
|
|
g2d.draw(path);*/
|
|
|
|
double zoom=1;
|
|
GeneralPath path = new GeneralPath();
|
|
path.moveTo(5+15 * zoom, 15*zoom);
|
|
path.lineTo(5+45*zoom, 185*zoom);
|
|
path.lineTo(5+85*zoom, 15*zoom);
|
|
g2d.draw(path);
|
|
|
|
/*p.moveTo(730.0,435.0);
|
|
p.quadTo(730.0,582.0,523.0,702.0);
|
|
p.quadTo(315.0,822.0,35.0,822.0);
|
|
p.quadTo(-306.0,822.0,-535.0,589.0);
|
|
p.quadTo(-764.0,356.0,-764.0,4.0);
|
|
p.quadTo(-764.0,-349.0,-542.0,-585.0);
|
|
p.quadTo(-320.0,-821.0,12.0,-821.0);
|
|
p.quadTo(332.0,-821.0,548.0,-599.0);
|
|
p.quadTo(764.0,-375.0,764.0,-57.0);
|
|
p.quadTo(764.0,46.0,717.0,88.0);
|
|
p.quadTo(669.0,130.0,535.0,130.0);
|
|
p.lineTo(-290.0,130.0);
|
|
p.quadTo(-275.0,257.0,-184.0,332.0);
|
|
p.quadTo(-92.0,406.0,59.0,406.0);
|
|
p.quadTo(190.0,406.0,349.0,331.0);
|
|
p.quadTo(508.0,256.0,545.0,256.0);
|
|
p.quadTo(629.0,256.0,679.0,306.0);
|
|
p.quadTo(730.0,356.0,730.0,435.0);*/
|
|
/*p.moveTo(220.0,-368.0);
|
|
p.quadTo(132.0,-446.0,15.0,-446.0);
|
|
p.quadTo(-103.0,-446.0,-186.0,-373.0);*/
|
|
/*p.moveTo(-186.0,-373.0);//navic
|
|
p.quadTo(-269.0,-300.0,-295.0,-172.0);
|
|
p.lineTo(314.0,-172.0);
|
|
//p.quadTo(314.0,-274.0,220.0,-368.0);
|
|
p.closePath();
|
|
g2d.setTransform(new AffineTransform());
|
|
g2d.translate(500, 500);
|
|
//g2d.scale(0.8, 0.8);
|
|
g2d.draw(p);*/
|
|
|
|
|
|
/*g2d.setStroke(new BasicStroke(30,
|
|
BasicStroke.CAP_ROUND,
|
|
BasicStroke.JOIN_MITER,
|
|
miterLimit));
|
|
*/
|
|
g2d.setStroke(new BasicStroke(1));
|
|
g2d.setColor(Color.BLACK);
|
|
g2d.drawLine(5, 229, 200, 229);
|
|
|
|
/*path = new GeneralPath();
|
|
path.moveTo(200+10, 10);
|
|
path.lineTo(200+30, 200);
|
|
path.lineTo(200+50, 10);
|
|
g2d.draw(path);
|
|
*/
|
|
/*for(Point2D po:ebs.testPoints){
|
|
drawPoint(g2d, po);
|
|
}*/
|
|
|
|
}
|
|
|
|
private void drawPoint(Graphics2D g, Point2D p){
|
|
g.setColor(Color.GREEN);
|
|
int width = 5;
|
|
g.drawRect((int)p.getX() - width/2, (int)p.getY() - width/2, width, width);
|
|
}
|
|
|
|
});
|
|
setSize(800, 800);
|
|
}
|
|
|
|
|
|
|
|
public static void main(String[] args) {
|
|
new StrokeTest().setVisible(true);
|
|
}
|
|
}
|