设置图像而不是java标准椭圆Java处理

时间:2017-12-03 17:49:05

标签: java processing

我正在尝试使用处理创建一个太阳系,但我一直试图设置图像而不是使用java标准椭圆图像。 我是在学校开始的,它是围绕另一个椭圆旋转的椭圆。

  package processing;

import processing.core.PApplet;
import processing.core.PImage;

public class SolarSystem extends PApplet{
    PImage background;
    Pianets earth;
    public void settings() {
        size(650,500);
    }
    public void setup() {

        background = loadImage("C:\\background\\bg.jpg");
        earth = new Pianets(this, width/2,height/2,40, 200, 0);

    }

    public void draw() {
        background(background);
        earth.showEarth();
        earth.rotateEarth(0.007f);

    }

    public static void main(String[] args) {
        PApplet.main("processing.SolarSystem");

    }

}

行星类

package processing;

import processing.core.PApplet;

public class Pianets {
    PApplet vis;
    float x0,y0; //centre
    float diam;
    float r; //distance from the centre
    float alpha; //rotation angle

    public Pianeti(PApplet applet, float x, float y, float diam,float r, float alpha){
        vis = applet;
        this.x0=x;
        this.y0=y;
        this.diam=diam;
        this.r=r;
        this.alpha=alpha;
    }

    void rotateEarth(float deltaAlpha){
        alpha +=deltaAlpha;

    }

    void showEarth(){
        //drawing the body of object at the centre
        vis.ellipse(x0, y0, diam, diam);
        float x = x0 + r*vis.cos(alpha);
        float y = y0 + r*vis.sin(alpha);

        vis.ellipse(x,y,diam,diam);
    }

我在地球和太阳的油漆上创建了两个图像,但我不知道如何设置图像。

1 个答案:

答案 0 :(得分:0)

通过查看the Processing reference可以最好地回答这样的问题。 图片部分列出了用于加载图像文件的loadImage()函数,以及用于绘制图像文件的image()函数。请阅读这些。

你也应该养成breaking your problem down into smaller pieces的习惯。例如,不要发布整个项目(这与现在加载图像无关),而是尝试创建一个只显示单个图像的较小示例程序。在继续前进之前要完美地工作。然后,如果您对某些事情感到困惑,可以发布MCVE以及特定的技术问题。

无耻的自我推销:我在Processing available here中写了一个关于图像的教程。