Sunday, April 13, 2014

Base of Computer Graphics using Ms. Excel - Euro's Flag

Assalamualaikum warahmatullah. Konbanwa mina! Latepost. Ini dia sesi chalenge yang akan menguji sedikit kemampuan analitik kita dan tentu saja memanfaatkan matematika dalam membuat Bendera Uni Eropa.
Berikut merupakan salah satu ide yang akan saya paparkan. Ide ini saya temukan 2 tahun yang lalu saat saya mendapat tugas dari Dosen master saya, yang terhormat Bapak Dewa Gede Parta, BSCS.

ide:

  • Bendera Euro terdiri dari kumpulan gambar bintang yang posisinya sama dengan sudut segi-10
  • ada dua bangun yang akan dianalisis yaitu gambar bintang dan segi-10
  • sudut segi-10 merupakan titik tengah bintang
  • rumus segi-10 adalah R.cos(pi()/2+i.2.pi()/10-{0,pi()/2}) dimana i dimulai dari 0,1,...,10
  • rumus bintang dapat dilihat pada postingan sebelumnya tentang Bintang
dengan pseudo code diperoleh:
for (i <-- 0 to 10)
     do [rumus segi-10]
     for (j<--0 to 10)
           do [rumus bintang]
     end for
end for


karena Ms. Excel hanya menyediakan Row() untuk interval, maka kita harus mengupayakan agar i dan j dapat diwakili sekaligus oleh Row().

Berikut ini merupakan Rumus untuk membuat Bendera Euro dan hasilnya :

  1. Blok A1:B144
  2. masukkan rumus fx =MOD(MOD(INT(INT(MOD(ROW()-1;12)/11));2)+1;2)*(4*COS(PI()/2+INT((ROW()-1)/12)*2*PI()/12-{0\1}*PI()/2)+MOD(MOD(INT(INT(MOD(ROW()-1;12)/11));2)+1;2)*((MOD(ROW();2)*COS(PI()/2+MOD(ROW()-1;12)*2*PI()/10-{0\1}*PI()/2)+MOD(ROW()+1;2)*(SIN(PI()/10)/SIN(7*PI()/10))*COS(PI()/2+PI()/5+(MOD(ROW()-1;12)-1)*2*PI()/10-{0\1}*PI()/2))))
  3. insert scatter with line and markers
hasilnya sebagai berikut:




1 comments: