到老師的github下載颱風雲圖
把圖匯入
顯示圖片:
//week_05_1_cwa_typhoon_images PImage img = loadImage("TWI_IR1_CR_800-2024-10-02-08-00.jpg"); size(800, 800); background(img);
記得把老師給的list.txt加進來//week_05_2_cwa_typhoon_array_loadStrings int N = 299;//有299張圖 PImage [] imgs = new PImage[299]; void setup() { size(800, 800); String [] filenames = loadStrings("list.txt"); for (int i=0; i<N; i++) {//把每一張圖都讀進來 imgs[i] = loadImage(filenames[i]); } } void draw() { int i = frameCount%N; background(imgs[i]); }
結合上禮拜的程式碼讓他可以拖曳和縮放//week05_03_cwa_typhoon_2750 PImage img; void setup(){ size(500, 500); img = loadImage("LCC_VIS_TRGB_2750-2024-10-02-07-40.jpg"); } float s = 1.0, x=0, y=0; float realX = 0, realY = 0; void draw(){ background(255); translate(x, y); scale(s); image(img, 0 , 0); } void mouseDragged(){ // void mouseDragged() x += mouseX - pmouseX; y += mouseY - pmouseY; } void mouseWheel(MouseEvent e){ realX = (mouseX - x) / s; //地圖上, 真的座標 realY = (mouseY - y) / s; //地圖上, 真的座標 float oldS = s; if(e.getCount()<0) s *=1.1; else s *= 0.9; x = x + realX*oldS - realX*s; y = y + realY*oldS - realY*s; }
可以拖曳//week05_04_pendulum_mouseDragged void setup(){ size(400, 600); } float x = 200, y = 300; void draw(){ background(255); line(200, 100, x, y); ellipse(x, y, 30, 30); } void mouseDragged(){ x = mouseX; y = mouseY; }
劃出x軸y軸
//week05_05_pendulum_cos_sin_draw_line void setup(){ size(400, 600); } float x = 200, y = 300; void draw(){ background(255); stroke(0); line(200, 100, x, y); ellipse(x, y, 30, 30); stroke(255, 0, 0); line(x, y, x, y+100); PVector d = new PVector(x-200, y-100).normalize(); PVector d2 = new PVector(0, 1); float g = PVector.dot(d, d2); d.mult(100*g); stroke(0, 255, 0); line(x, y, x+d.x, y+d.y); } void mouseDragged(){ x = mouseX; y = mouseY; }
用05的程式碼把綠色加上去//week05_07_pendulum_PVector_normalize_dot_mult void setup(){ size(400, 600); } float x = 200, y = 300; void draw(){ background(255); stroke(0); line(200, 100, x, y); ellipse(x, y, 30, 30); stroke(255, 0, 0); line(x, y, x, y+100); PVector d = new PVector(x-200, y-100).normalize(); PVector d2 = new PVector(0, 1); float g = PVector.dot(d, d2); d.mult(100*g); stroke(0, 255, 0); line(x, y, x+d.x, y+d.y); PVector N = new PVector(d.y, -d.x).normalize(); N.mult(100*sin(acos(g))); stroke(0, 0, 255); line(x, y, x+N.x, y+N.y); } void mouseDragged(){ x = mouseX; y = mouseY; }
還沒完成//week05_08_pendulum_not_OK_PVector_sub_velocity void setup(){ size(400, 600); } float x = 200, y = 300; void draw(){ background(255); stroke(0); line(200, 100, x, y); ellipse(x, y, 30, 30); stroke(255, 0, 0); line(x, y, x, y+100); PVector d = new PVector(x-200, y-100).normalize(); PVector d2 = new PVector(0, 1); float g = PVector.dot(d, d2); d.mult(100*g); stroke(0, 255, 0); line(x, y, x+d.x, y+d.y); PVector N = PVector.sub(d2.mult(100), d); stroke(0, 0, 255); line(x, y, x+N.x, y+N.y); x += N.x / 1000; y += N.y / 1000; x+= v.x; y+= v.y; } PVector v = new PVector(); void mouseDragged(){ x = mouseX; y = mouseY; }
沒有留言:
張貼留言