0
Java2Dを使用して単純な3D家を描くにはどうすればよいですか?私は単純な3D図面のように見えるように家の側壁を描きたい。Java2Dを使用して3Dハウスを描画しますか?
// House.java
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GradientPaint;
import java.awt.geom.Rectangle2D;
public class House extends Canvas{
House(){
setSize(800,600);
}
public void paint(Graphics g){
// house - foundation
g.setColor(new Color(0xCDBE70));
g.fillRect(148,500,304,50);
// house - front
g.setColor(new Color(0xFFEC8B));
g.fillRect(150,350,300,150);
// house - side
}
}
//ShowHouse.java
import java.awt.Frame;
import java.awt.AWTEvent;
import java.awt.event.WindowEvent;
public class ShowHouse extends Frame{
public static void main(String arg[]){
new ShowHouse();
}
ShowHouse(){
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
setLocation(250,50);
House canvas = new House();
add(canvas);
pack();
setVisible(true);
}
public void processWindowEvent(WindowEvent event){
if(event.getID() == WindowEvent.WINDOW_CLOSING)
System.exit(0);
}
}
http://en.wikipedia.org/wiki/Axonometric_projection、http://en.wi kipedia.org/wiki/Perspective_projection#Perspective_projection –
+1ありがとうございます。面白い読書。私は、軸索投影法で描かれたオブジェクトの限界が、観察者に近づいたり遠ざかったりするにつれて大きくないか小さく見えないということを知らなかった。 – Anthony
私は等角投影を見ています。私は一般的なパスまたはdrawLineの使用を避けようとしていました。その代わりに、3D効果を与えるために矩形とポリゴンをグループ化しようとしていました。 – Anthony