在Java Processing 3.x中,如何在图像前面获取对象?
嗨,我有一个问题,我不能把椭圆放在地图上。相反,椭圆加载一秒钟,然后贴图继续加载。我在下面添加了代码,看看是否有人能帮上忙在Java Processing 3.x中,如何在图像前面获取对象?,java,image-processing,processing,Java,Image Processing,Processing,嗨,我有一个问题,我不能把椭圆放在地图上。相反,椭圆加载一秒钟,然后贴图继续加载。我在下面添加了代码,看看是否有人能帮上忙 PImage map; float zoom = 1; float posX = 0; float posY = 0; void setup() { size (800, 800, P3D); loadData(); map = loadImage("uk-admin.jpg"); } void draw () { backgro
PImage map;
float zoom = 1;
float posX = 0;
float posY = 0;
void setup() {
size (800, 800, P3D);
loadData();
map = loadImage("uk-admin.jpg");
}
void draw () {
background (0);
translate(posX,posY);
scale(zoom);
image(map, 0,0, width, height);
camera(width/2, height/2, (height/2) / tan(PI*30.0 / 180.0),width/2.0, height/2.0 , 0, 0, 1, 0);
}
Table table;
void loadData() {
table = loadTable("data.csv", "header");
for (int i = 0; i < table.getRowCount(); i++) {
TableRow row = table.getRow(i);
String city = row.getString("City");
int year1991 = row.getInt("1991");
int year2001 = row.getInt("2001");
int year2011 = row.getInt("2011");
float lat = row.getFloat("latitude");
float lon = row.getFloat("longitude");
lat = map(lat, 90.0, -90.0, 0, height);
lon = map(lon, -180.0, 180.0, 0, width);
fill(255);
stroke(10);
ellipse(lon, lat, 30, 30);
}}
PImage地图;
浮动缩放=1;
浮点posX=0;
浮点posY=0;
无效设置(){
尺寸(800800,P3D);
loadData();
map=loadImage(“uk admin.jpg”);
}
无效提款(){
背景(0);
翻译(posX,posY);
缩放(缩放);
图像(地图,0,0,宽度,高度);
摄像机(宽/2,高/2,(高/2)/tan(PI*30.0/180.0),宽/2.0,高/2.0,0,0,1,0);
}
表格;
void loadData(){
table=loadTable(“data.csv”、“header”);
对于(int i=0;i
您需要在draw()
循环中调用loadData()
。现在的情况是,你在第一帧绘制椭圆,然后在每一帧之后在上面绘制图像
在处理过程中,运行一次
setup()
块,然后显示画布的当前状态,然后运行draw()
块,然后显示画布,然后运行draw()
,然后显示,依此类推。因此,当您在setup()
中绘制一个椭圆(或一组椭圆),然后在draw()
中在该椭圆上绘制一些东西时,它只显示第一帧的椭圆。您需要在draw()
循环中调用loadData()
。现在的情况是,你在第一帧绘制椭圆,然后在每一帧之后在上面绘制图像
在处理过程中,运行一次
setup()
块,然后显示画布的当前状态,然后运行draw()
块,然后显示画布,然后运行draw()
,然后显示,依此类推。因此,当您在setup()
中绘制一个椭圆(或一组椭圆),然后在draw()
中在该椭圆上绘制一些东西时,它只显示第一帧的椭圆。谢谢您,这很有效@马尔布罗利,我很高兴这有帮助!你能把我的答案标记为已被接受,以便其他人知道它已经解决了吗?谢谢谢谢你,这很有效@马尔布罗利,我很高兴这有帮助!你能把我的答案标记为已被接受,以便其他人知道它已经解决了吗?谢谢