「java线段平滑」多段线平滑
本篇文章给大家谈谈java线段平滑,以及多段线平滑对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java 如何在jpanel上画垂直线、水平线、平行线?
定义一个类继承JPanel类,重写 JPanel 的 paint 方法,使用 Graphics 绘制线段,如下代码:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
class MyPanel extends JPanel {
@Override
public void paint(Graphics g) {
super.paint(g);
g.setColor(Color.RED);
for (int i = 0; i 10; i++) {
g.drawLine(10, 10 + i * 20, this.getWidth() - 10, 10 + i * 20);
}
for (int i = 0; i 10; i++) {
g.drawLine(10 + i * 20, 10, 10 + i * 20, this.getHeight() - 10);
}
}
}
public class App extends JFrame {
public App() {
this.setSize(400, 400);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
MyPanel panel = new MyPanel();
this.add(panel, BorderLayout.CENTER);
}
public static void main(String[] args) {
new App().setVisible(true);
}
}
运行结果:
如何平滑部署JavaWeb项目,让客户端不掉线
1. Java Web应用需要改造成无状态的。
2. 用户Session数据一定不要保存在Java应用中,重启或者crash都会导致会话失效。
3. 常见的用户Session存储使用Memcached集群,Redis有点大材小用了。
4. 反向代理是用户请求的第一站,推荐nginx。
5. 应用部署的第一步就是关流量,保证没有请求到需要重新部署的服务实例上。
一个关于JAVA绘制线段的问题.
import java.awt.*;
import java.io.*;
import java.util.ArrayList;
import javax.swing.*;
public class Draw {
@SuppressWarnings("unchecked") //去掉泛型的警告信息
public static void main(String[] args )throws Exception {
File file=new File("data.txt");
FileReader fr=new FileReader(file);
BufferedReader br=new BufferedReader(fr);
String str="";
JFrame f=new JFrame("画线段");
MyCanvas p=new MyCanvas();
//不知道你的屏多大,所以直接取屏幕分辨率的大小了
p.setPreferredSize(Toolkit.getDefaultToolkit().getScreenSize());
f.add(p,BorderLayout.CENTER);
f.pack();
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ArrayListint[] array=new ArrayList();
//把每行数字转为数组加入ArrayList
while((str=br.readLine())!=null){
//文件中的数字是用空格分的吧
String[] temp=str.split(" ");
int[] i=new int[temp.length];
int n=0;
for(String s:temp){
i[n++]=Integer.parseInt(s);
}
array.add(i);
}
p.setMyCanvas(array);//把array传给画图对象
p.repaint();//开始画图
}
}
class MyCanvas extends JPanel{
ArrayListint[] array;
public void setMyCanvas(ArrayListint[] array){
this.array=array;
}
public void paint(Graphics g){
for(int[] i:array){
g.setColor(new Color(i[4],i[5],i[6]));
g.drawLine(i[0],i[1],i[2],i[3]);
}
}
}
我也初学,写的比较笨,而且不够健壮,没有考虑文本文件中格式不对的问题。另外,因为不知道怎么处理paint方法每次画线会覆盖之前图像的问题,就把所以数据放入了集合里,最后一起画出来的。参考一下吧,测试通过了。把你的data.txt和这个程序放一个文件夹里就行。
ps:楼上的“我是王志伟”比我强多了,写的代码水平比我的好很多,只是有个语句应该用while他写成if了,另外他的格式在粘贴的时候自动换行了,用的时候需要调整一下。我也得学习一下,呵呵。
java线段平滑的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于多段线平滑、java线段平滑的信息别忘了在本站进行查找喔。
发布于:2022-11-30,除非注明,否则均为
原创文章,转载请注明出处。