Coloured_Voronoi_2D.png(333 × 333 پکسل، فائل کا حجم: 23 کلوبائٹ، MIME قسم: image/png)

یہ فائل ویکی ذخائر کی ہے اور دیگر منصوبوں کے زیر استعمال ہوسکتی ہے۔ فائل کے صفحہ تعارف پر موجود تعارف ذیل میں موجود ہے۔

Transferred from en.wikipedia to Commons by Maksim.

فائل کی تفصیلات کا اصل صفحہ یہاں تھا۔ درج ذیل تمام صارفین en.wikipedia کے ہیں۔

Coloured 2D Voronoi diagram, made by me.

GNU head آپ کو آزاد سافٹ ویئر فاؤنڈیشن کی جانب سے شائع کردہ جی این یو آزاد مسوداتی اجازت نامہ کی شرائط استعمال کے تحت اس دستاویز کو نقل، تقسیم اور/ یا ترمیم کرنے کی اجازت دی جاتی ہے۔ اس اجازت نامہ کی ایک نقل 'جی این یو آزاد مسوداتی اجازت نامہ کے عنوان سے میسر ہے۔
w:en:Creative Commons
انتساب یکساں شراکت
اس ملف کا لائسنس Creative Commons Attribution-Share Alike 3.0 Unported کے تحط ہے۔
آپ آزاد ہیں:
  • شیئر کرنے – کام کو نقل، تقسیم یا منتقل کرنے کے لیے
  • ریمکس کے لیے – کام منبطق کرنے کے لیے
مندرجہ ذیل شرائط کے تحت:
  • انتساب – آپ کو اس کام کا انتساب مصنف یا اجازت دہندہ کے بتائے گئے طریقہ کے مطابق دینا ہوگا (تاہم یہ انتساب اس طرح نہیں ہونا چاہیے کہ اسے دیکھ کر ایسا محسوس ہو کہ اصل مصنف یا اجازت دہندہ آپ کے یا آپ کے ذریعہ اس کام کے استعمال کرنے کے حامی ہیں)۔
  • یکساں شراکت – اگر آپ اس کام میں کوئی تبدیلی یا ترمیم کرتے ہیں یا اس کام پر مبنی کچھ نیا بناتے ہیں تو اسے بھی آپ اسی یا اس جیسے کسی اجازت نامے کے تحت شائع کر سکتے ہیں۔
This licensing tag was added to this file as part of the GFDL licensing update.
GNU head

This work is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version. This work is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See version 2 and version 3 of the GNU General Public License for more details.


#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <time.h>

#define PI 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825
#define PI2 (PI*2)
#define SQ2 1.414213562373095048801688724209698078569671875376948073176679737990732478462
#define FI 1.618033988749894848204586834365638117720309179805762862135448622705260462818902449707207204

#define SX 666
#define SY 666
#define NPT 100
#define RSD 666
#define V3D 0
/*
#define SX 666
#define SY 666
#define NPT 1000
#define RSD 1923879
#define V3D 1
*/

#define BPL ((SX*3+3)&~3)

void seedr(unsigned int);
unsigned int rnd();
unsigned int rndm(unsigned int);

unsigned char bhdr[54]={
0x42, 0x4D, 0x36, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00,
0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x00, 0x18, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00};

unsigned char po[BPL];

double gr[SY][SX][3];

void drawit();

int main(int a, char **b) {
  FILE *o;
  int x, y, c;
  double t;
  unsigned char *p;

  srand(time(0));
  drawit();
  
  p=bhdr+2; *p++=x=54+BPL*SY; *p++=x>>=8; *p++=x>>=8; *p=x>>=8;
  p=bhdr+18; *p++=x=SX; *p++=x>>=8; *p++=x>>=8; *p++=x>>=8;
  *p++=x=SY; *p++=x>>=8; *p++=x>>=8; *p=x>>=8;

  if(!(o=fopen("voronoi.bmp", "wb"))) {
    fclose(o);
    printf("Couldn't open output file.\n");
    return(0);
  }
  
  fwrite(bhdr, 54, 1, o);

  for(x=SX*3;x<BPL;++x) po[x]=0;
  
  for(y=SY-1;~y;--y) {
    for(x=0,p=po;x<SX;++x) for(c=2;~c;--c) *p++=(t=gr[y][x][c])<=0?0:(t>=1?255:t*255);
    fwrite(po, BPL, 1, o);
  }

  fclose(o);
  return(0);
}

int ptx[NPT], pty[NPT], ptz[NPT];
double ptc[NPT][3];

void drawit() {
  int x, y, c, n, bn, dx, dy, dz;
  unsigned int m, p;
  seedr(RSD);
  for(n=0;n<NPT;++n) {
    ptx[n]=rndm(SX); pty[n]=rndm(SX); ptz[n]=(!!V3D)*(rndm(SX)-SX/2);
    for(c=0;c<3;++c) ptc[n][c]=rnd()/(double)~0u;
  }
  for(y=0;y<SY;++y) for(x=0;x<SY;++x) {
    for(n=0,m=~0;n<NPT;++n) {
      dx=x-ptx[n]; dy=y-pty[n]; dz=-ptz[n]; p=dx*dx+dy*dy+dz*dz;
      if(p<m) { m=p; bn=n; }
    }
    for(c=0;c<3;++c) gr[y][x][c]=ptc[bn][c];
  }
  if(!V3D)
    for(n=0;n<NPT;++n)
      for(y=-1+!pty[n];y<=1-(pty[n]==SY-1);++y)
        for(x=-1+!ptx[n];x<=1-(ptx[n]==SX-1);++x)
          for(c=0;c<3;++c)
            gr[pty[n]+y][ptx[n]+x][c]=0;
}

unsigned int rseeda[624];
int rseedu;

void seedr(unsigned int s) {
  int n;
  rseedu=624; rseeda[0]=s; for(n=1;n<624;++n) rseeda[n]=s*=69069u;
}

#define TEMPBLAH(x,y,z) { v=(rseeda[x]&0x80000000)|(rseeda[y]&0x7fffffff);\
                          rseeda[x]=rseeda[z]^(v>>1)^(0x9908b0df&(0-(v&1)));}
void gennewr() {
  int n;
  unsigned int v;
  for(n=0;n<227;++n) TEMPBLAH(n, n+1, n+397);
  for(;n<623;++n) TEMPBLAH(n, n+1, n-227);
  TEMPBLAH(623, 0, 396);
  rseedu=0;
}
#undef TEMPBLAH

unsigned int rnd() {
  if(rseedu>=624) gennewr();
  unsigned int v=rseeda[rseedu++];
  v^=v>>11;
  v^=(v<<7)&0x9d2c5680;
  v^=(v<<15)&0xefc60000;
  v^=v>>18;
  return(v);
}

unsigned int rndm(unsigned int m) {
  unsigned int v, c=(0u-m)/m;
  while((v=rnd())/m>c);
  return(v%m);
}

ja:画像:Coloured Voronoi 2D.png

date/time username edit summary
18:11, 7 September 2005 en:User:Ja seed (+ja)
12:04, 25 January 2005 en:User:Voinic (char *p -> unsigned char *p;)
20:18, 14 October 2004 en:User:Cyp (+Image generator source code, made by me)
20:16, 14 October 2004 en:User:Cyp (Coloured 2D Voronoi diagram, made by me. {{GFDL}})

اولین اپلوڈ کا نوشتہ

Legend: (cur) = this is the current file, (del) = delete this old version, (rev) = revert to this old version.

Click on date to download the file or see the image uploaded on that date.

  • (del) (cur) 20:16, 14 October 2004 . . en:User:Cyp Cyp ( en:User_talk:Cyp Talk) . . 333x333 (23852 bytes) (Coloured 2D Voronoi diagram, made by me. { { GFDL } })

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

عکاسی

media type انگریزی

image/png

checksum انگریزی

55df23967ec8bb3261fa1654ba1db3afabc5e87b

طریق تعیین: SHA-1 انگریزی

data size انگریزی

23,852 لکمہ

333 عکصر

333 عکصر

فائل کا تاریخچہ

کسی خاص وقت یا تاریخ میں یہ فائل کیسی نظر آتی تھی، اسے دیکھنے کے لیے اس وقت/تاریخ پر کلک کریں۔

تاریخ/وقتتھمب نیلابعادصارفتبصرہ
رائج الوقت19:49، 20 مارچ 2006ءمورخہ 19:49، 20 مارچ 2006ء کا تھمب نیل333 × 333 (23 کلوبائٹ)MaksimLa bildo estas kopiita de wikipedia:en. La originala priskribo estas: Coloured 2D Voronoi diagram, made by me. {{GFDL}} //{{GPL}}<pre> #include <stdio.h> #include <math.h> #include <stdlib.h> #include <time.h> #define PI 3.1415926535897932384626433832

اس فائل سے مربوط کوئی صفحہ موجود نہیں ہے۔

فائل کا عالمی استعمال

میٹا ڈیٹا