자바 회전 행렬로 선 그리기
1947 단어 Java
지정된 각도로 회전했습니다.
코드 여기 있습니다.
선을 사용하여 쉽게 볼 수 있습니다.
좌표만 그리면
((Graphics2D) g).
draw(new Line2D.Double(ox,oy,ox + x2, oy + y2));
부분
((Graphics2D) g).
draw(new Line2D.Double(ox + x2, oy + y2,ox + x2, oy + y2));
로 변경하십시오.
turn.java
import javax.swing.*;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Insets;
import java.awt.geom.Line2D;
import java.awt.Color;
import java.awt.Component;
public class turn extends JPanel{
int r = 100;
int ox = 200,oy = 200;
double x2,y2;
public static void main(String[] args){
JFrame frame = new JFrame();
turn app = new turn();
frame.getContentPane().add(app);
frame.setDefaultCloseOperation
(JFrame.EXIT_ON_CLOSE);
frame.setBounds(10, 10, 400, 400);
frame.setTitle("回転行列使用");
frame.setVisible(true);
}
public void paintComponent(Graphics g){
g.setColor(Color.blue);
g.drawLine(200,0 , 200, 400);
//中央ラインy
g.drawLine(0,200 , 400, 200);
//中央ラインx
turn(g,100);
}
public void turn(Graphics g ,int s){
for(int i = 0;i <= 12; i ++){//12分割
g.setColor(Color.red);//色を赤に
double k = Math.toRadians(30 * i);
//radianに変換
x2 = r * Math.cos(k);//x座標
y2 = r * Math.sin(k);//y座標
/*線の描画、上の座標位置まで
中央から回転させた線を描画する*/
((Graphics2D) g).
draw(new Line2D.Double(ox,oy,ox + x2, oy + y2));
}
}
}
개발 환경Mac OSX version 10.10.5
실행 방법
Eclipse를 사용하여 가져오고 실행하십시오.
Reference
이 문제에 관하여(자바 회전 행렬로 선 그리기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/satosho31/items/021c01609671e9099027텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)