javaの図形なのですが
javaの図形なのですが、結果が球の形にそってぐるぐるっと
リンゴの皮むきのような感じの線になるはずなのですが動かない、
というよりもどこを修正すればいいのか見当もつかずさまよっています。正直、助けていただきたいです。
たぶん抜けてるところがあるはずなんですが、何が抜けてて何を入れれば良いかわからないので教えてほしいです。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ui {public static void main(String[] args) {
JFrame jf = new JFrame("ui");
MyCanvas mc = new MyCanvas();
mc.setPreferredSize(new Dimension(700,700));
jf.getContentPane().add(mc);
jf.pack();
jf.setVisible(true);
}
}
class MyCanvas extends JPanel {
static double [][] p = {
{ここに数値を入れるのですが多いので投稿できないので省きます}
};
double _xa = 30;
double _ya = 40;
int doX, doY;
public void paintComponent( Graphics g ) {
super.paintComponent(g);
setBackground(Color.black);
g.setColor(Color.white);
disp_3Dobj(_xa, _ya, getWidth()/2, getHeight()/2, g);(
}
void disp_3Dobj(double xa, double ya, int px, int py, Graphics g) {
int [] p2d;
int n = p[0].length;
for (int i = 0; i < n; i++) {
}
}
int [] get2Dpos(double x, double y, double z, double xa, double ya, int px, int py) {
final double D2Rad = Math.PI/180.0;
double a = xa*D2Rad, b = ya*D2Rad;
double x1, y1, zt;
double sinA = Math.sin(a), sinB = Math.sin(b);
double cosA = Math.cos(a), cosB = Math.cos(b);
int [] pos = new int[2];
x1 = x*cosB + z*sinB;
zt = -x*sinB + z*cosB;
y1 = y*cosA - zt*sinA;
pos[0] = px+(int)Math.rint(x1);
pos[1] = py-(int)Math.rint(y1);
return pos;}}
お礼
どうやら、変数の使い方が悪かったようです; 説明不足ですみません、 おかげさまで完成いたしました! ありがとうございました