Difference between revisions of "Team:NYU Shanghai/Code"

Line 858: Line 858:
 
  <br><span></span> }
 
  <br><span></span> }
  
<span></span><span></span><br><br>for (x=0; x<w; x++) {
+
<br><br><span></span><span></span>for (x=0; x<w; x++) {
<span></span><span></span><span></span><br>rsum=gsum=bsum=0;
+
<br><span></span><span></span><span></span>rsum=gsum=bsum=0;
<span></span><span></span><span></span><br>yp=-radius*w;
+
<br><br><span></span><span></span><span></span>yp=-radius*w;
<span></span><span></span><span></span><br>for (i=-radius; i<=radius; i++) {
+
<br><span></span><span></span><span></span>for (i=-radius; i<=radius; i++) {
<span></span><span></span><span></span><span></span><br>yi=max(0, yp)+x;
+
<br><span></span><span></span><span></span><span></span>yi=max(0, yp)+x;
<span></span><span></span><span></span><span></span><br>rsum+=r[yi];
+
<br><span></span><span></span><span></span><span></span>rsum+=r[yi];
<span></span><span></span><span></span><span></span><br>gsum+=g[yi];
+
<br><span></span><span></span><span></span><span></span>gsum+=g[yi];
<span></span><span></span><span></span><span></span><br>bsum+=b[yi];
+
<br><span></span><span></span><span></span><span></span>bsum+=b[yi];
<span></span><span></span><span></span><span></span><br>yp+=w;
+
<br><span></span><span></span><span></span><span></span>yp+=w;
<span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span>}
<span></span><span></span><span></span><br>yi=x;
+
<br><span></span><span></span><span></span>yi=x;
<span></span><span></span><span></span><br>for (y=0; y<h; y++) {
+
<br><span></span><span></span><span></span>for (y=0; y<h; y++) {
<span></span><span></span><span></span><span></span><br>pix[yi]=0xff000000 | (dv[rsum]<<16) | (dv[gsum]<<8) | dv[bsum];
+
<br><span></span><span></span><span></span><span></span>pix[yi]=0xff000000 | (dv[rsum]<<16) | (dv[gsum]<<8) | dv[bsum];
<span></span><span></span><span></span><span></span><br>if (x==0) {
+
<br><span></span><span></span><span></span><span></span>if (x==0) {
<span></span><span></span><span></span><span></span><span></span><br>vmin[y]=min(y+radius+1, hm)*w;
+
<br><span></span><span></span><span></span><span></span><span></span>vmin[y]=min(y+radius+1, hm)*w;
<span></span><span></span><span></span><span></span><span></span><br>vmax[y]=max(y-radius, 0)*w;
+
<br><span></span><span></span><span></span><span></span><span></span>vmax[y]=max(y-radius, 0)*w;
<span></span><span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span><span></span>}
<span></span><span></span><span></span><span></span><br>p1=x+vmin[y];
+
<br><span></span><span></span><span></span><span></span>p1=x+vmin[y];
<span></span><span></span><span></span><span></span><br>p2=x+vmax[y];
+
<br><span></span><span></span><span></span><span></span>p2=x+vmax[y];
  
<span></span><span></span><span></span><span></span><br><br>rsum+=r[p1]-r[p2];
+
<br><br><span></span><span></span><span></span><span></span>\rsum+=r[p1]-r[p2];
<span></span><span></span><span></span><span></span><br>gsum+=g[p1]-g[p2];
+
<br><span></span><span></span><span></span><span></span>gsum+=g[p1]-g[p2];
<span></span><span></span><span></span><span></span><br>bsum+=b[p1]-b[p2];
+
<br><span></span><span></span><span></span><span></span>bsum+=b[p1]-b[p2];
  
<span></span><span></span><span></span><span></span><br><br>yi+=w;
+
<br><br><span></span><span></span><span></span><span></span>yi+=w;
<span></span><span></span><span></span><br>}
+
<br><span></span><span></span><span></span>}
<span></span><span></span><br>}
+
<br><span></span><span></span>}
<span></span><br>}
+
<br><span></span>}
  
 
<br><br><span></span>void save_blob() {
 
<br><br><span></span>void save_blob() {

Revision as of 15:03, 18 September 2015

Code