Dengan semangat yang sama dengan pertanyaan ini , misi Anda adalah membuat logo yang paling cantik di paling banyak 1K kode.
Aturan:
Paling banyak 1K kode (inklusif), tidak ada data eksternal.
Jawaban dengan kemenangan terbanyak menang.
Selamat bersenang-senang!
popularity-contest
chubakueno
sumber
sumber
Jawaban:
SVG
1kB? Kemewahan. Saya bahkan dapat mencetak hasil cetakan dengan cantik daripada menghapus semua spasi yang tidak perlu. (Lekukan itu, tentu saja, menggunakan tab, yang dikonversi oleh Markdown menjadi spasi, jadi itu sebabnya jumlah char mungkin tampak lebih tinggi dari 977 yang sebenarnya. Menghapus spasi yang tidak perlu akan menurunkannya ke 861).
Tumpang tindih ditangani dengan benar dengan menggambar cincin di satu arah, kemudian menerapkan klip dan menggambar di arah lain. Warna dan rasio diekstraksi dari dokumen resmi yang karena alasan tertentu menggunakan kurva Bézier daripada lingkaran.
sumber
Javascript (inti) - 1000 pada titik. - WebKit (Chrome)
Bermain dengan kanvas.
Tidak yakin apakah ini 1024 atau 1000
K
untuk, tetapi berhasil menurunkannya ke1000982940: DHanya cocok untuk browser WebKit. Chrome OK. Firefox berantakan. Mungkin bisa membuatnya lintas browser.
Kode:
940: Menjatuhkan pembungkusnya
onload
dan mengandalkan skrip yang dimasukkan di akhirbody
tag + alignment bug dan perbaikan Firefox.Biola:
http://jsfiddle.net/Ifnak/XSBLg/embedded/result/http://jsfiddle.net/Ifnak/4fSWm/5/embedded/result/
Banyak di Firefox serta Chrome, tetapi agak berat pada sumber daya di FF. Menggunakan
requestAnimationFrame()
sedikit membantu, tetapi tidak cukup.Perhatikan bahwa salju terletak di bagian bawah, sehingga gulir ke bawah untuk melihat pertumbuhan yang lambat. Awalnya ada beberapa overpainting di tanah, tetapi tidak bisa membuatnya masuk ke 1024 chr.
Hasil (screencast GIF'ed kualitas rendah):
sumber
Mathematica
Dari jawaban saya di bagian Tanya Jawab Mathematica.SE :
Sunting: Di versi 10 gaya pencahayaan default berubah; untuk membuat grafik di atas, Anda harus menambahkan Opsi
Lighting -> "Classic"
keGraphics3D
.Bermain lebih jauh dengan pencahayaan untuk menghasilkan efek dua dimensi yang datar:
Untuk Oliver yang mengatakan hasil pertama saya adalah "terlalu 3D-ish" di sini adalah rendering 2D yang sebenarnya melalui kode jVincent dengan refactoring saya, juga dari utas terkait:
sumber
Ruby, 321
Sedihnya, kepala negara tertentu tampaknya menjadi subjek utama dari sebagian besar berita Olimpiade sejauh ini. Jadi, inilah logo freestyle saya (maskot?) Untuk Olimpiade 2014.
Output: (Cadangkan dan juling. Maaf untuk rendering primitif tapi dia tidak layak.)
sumber
Bash + ImageMagick
Output sampel:
sumber
FreePascal
Olimpiade Musim Dingin? Bagaimana dengan beberapa kepingan salju fraktal daripada cincin biasa.
Rekursi untuk cabang tengah cukup jelas: (dx, dy) = 0,5 (dx, dy). Cabang kiri dan kanan didasarkan pada rotasi dengan perkalian matriks:
x = x cos (a) - y sin (a)
y = x sin (a) + y cos (a)
1/4 = 0,5 cos (60) dan 7/16 adalah perkiraan yang baik dari 0,5 sin (60).
. .
sumber
Jawa
Mirip dengan jawaban SVG saya, tetapi
Perhatikan bahwa saya belum mencoba untuk bermain golf, meskipun ada kemungkinan beberapa trik menarik (seperti
-57*~dir
bukannya57*(1+dir)
. Ada di 923 karakter, tetapi golf turun ke 624 dengan mudah.sumber
Commodore 64 BASIC
Sekali lagi, jawaban C64, tapi kali ini saya diizinkan menggunakan sprite ! Yay!
Saya ingat jika Anda ingin menggunakan sprite, Anda akan memulai program Anda dengan banyak
DATA
pernyataan yang membosankan . Untuk menentukan pola sprite monokromatik "resolusi tinggi" (24x21 piksel), Anda memerlukan 63 byte. Sebenarnya ada editor sprite online yang menghitung DATA untuk Anda, jadi:Saya juga membutuhkan DATA lagi untuk warna dan posisi. Saya hanya menyalinnya dari jawaban saya terhadap pertanyaan Logo Olimpiade asli :
Kemudian, Anda biasanya mengatur
V=53248
. Ini53248
pasti nomor penting, karena saya masih mengingatnya 25 tahun kemudian :) Ternyata itu adalah alamat dasar VIC-II (Pengendali Antarmuka Video):Lalu saya membaca pola sprite ke dalam memori mulai dari alamat
832
. Rasanya aneh hanya menulis ke lokasi memori, tidak mengalokasikan, tidaknew
, tidak seperti itu :) Alamat awal harus kelipatan 64.Saya akan menggunakan pola yang sama untuk semua sprite.
C
adalah kode warna,X
danY
posisi horizontal dan vertikal dari lingkaran.Diperlukan beberapa lagi
POKE
:V+0
,V+2
,V+4
, Dll ... adalah lokasi horisontal masing-masing sprite, sementaraV+1
,V+3
,V+5
... vertikal. Warna sprite mulai dari registerV+39
:Pointer data sprite dimulai pada
2040
, dan sejak data dimulai832
, kita mendapatkan832/64
=13
, jadi:Untuk menghidupkan sprite, saya mengatur bit
0-4
registerV+21
. Saya juga mengubah latar belakang menjadi putih, sehingga kita bisa melihat lingkaran biru.Itu dia!
sumber
V+23
untuk tinggi ganda, danV+29
untuk lebar ganda. (bit #x untuk sprite #x).LaTeX / TikZ
Ukuran: 876 byte (12 baris, baris dengan 72 karakter dan ujung baris)
Ukuran: 817 byte dalam satu baris dan dengan dua optimasi:
tikz
kelasstandalone
, lihat komentar Wheat Wizard.soft=blank
dapat disingkat dengan mendefinisikan gayab
.LaTeX / TikZ (versi dapat dibaca)
Versi yang lebih panjang berikut ini mungkin lebih mudah dimengerti.
Tumpang tindih cincin ditangani dengan menggambar cincin dengan segmen kosong terlebih dahulu. Kemudian pada tahap selanjutnya, cincin-cincin itu digambar lagi, tetapi kali ini bagian-bagian yang kosong terisi dan bagian-bagian cincin yang sudah ditarik lainnya tetap tidak tersentuh. Karena itu kliping tidak digunakan sama sekali.
Cincin dengan margin putih digambar lingkaran dengan garis ganda. Daerah antara garis diisi dengan warna cincin dan garis ganda tipis membentuk margin putih luar dan dalam.
Warna dan dimensi diambil dari deskripsi halaman PDF dari halaman 5 dokumen resmi (lihat jawaban Peter Tayler).
sumber
\documentclass[tikz]{standalone}
berkat tip ini .b
untuk menghindari panjangblank=soft
yang digunakan empat kali.C ++ 1024 byte
Diperbarui: Sekarang dengan antialiasing. Kode telah agak dihapus dari golf sementara masih pas dengan (tepatnya) 1K.
Tidak menggunakan fungsi pustaka apa pun kecuali fungsi ostream untuk menulis file output.
Menghasilkan file .ppm:
sumber
R, 70 karakter
Menggunakan statistik CRAN-R.
sumber
GLSL
Saya merasa agak terlambat ke pesta, tapi mungkin saya bisa menebusnya dengan pengiriman GLSL pertama di situs ini. Ini dimaksudkan untuk digunakan sebagai shader fragmen untuk primitif pengisian layar, dan mengharapkan resolusi viewport di
iResolution
seragam.Warna dan posisi "dipinjam" dari pengajuan Peter Taylor . Saya harus mempersingkat beberapa nama variabel untuk mendapatkan di bawah 1024 karakter, tetapi saya harap itu masih dapat dibaca.
Lihat di Shadertoy (jika browser Anda mendukung WebGL).
sumber
Mathematica
Saya telah mengganti jawaban asli saya dengan yang menarik pada daerah dan persimpangan mereka. Ukuran kode adalah 973 byte, tidak ditandai.
Wilayah 1-5 adalah cincinnya. Cincin memiliki jari-jari dalam 2,5 unit; radius luar adalah 3 unit. Rasio rasio dalam ke luar, dan logika umum dari pendekatan dapat ditemukan di sini .
Mengapa kita tidak bisa begitu saja mencetak 5 cincin tanpa memperhitungkan lapisan.
Jika kita memplot cincin ini secara langsung, mereka tidak saling terkait. Perhatikan bahwa cincin kuning terletak di atas cincin biru dan hitam; cincin hijau terletak di atas cincin hitam dan merah.
Membalik warna di 4 persimpangan cincin.
Wilayah 6, 8, 10 dan 12 adalah persegi panjang yang berfungsi untuk menentukan persimpangan dua cincin mana yang menjadi fokus.
Wilayah 7, 9, 11, dan 13 adalah "ring overlaps" di mana cincin di bagian bawah harus di atas.
Persimpangan mana yang warnanya terbalik?
Berikut ini menyoroti wilayah persimpangan di mana warna "terbalik". Ini dicapai dengan mengubah
BoundaryStyle
daerah 7, 9, 11, dan 13 menjadiWhite
.sumber
Javascript (three.js) - 910 byte
Diberikan elemen html, fungsi ini akan membuat cincin sebagai objek 3D dan kemudian membuat gambar diam ke elemen. Bekerja di browser yang mendukung WebGL. BIOLA
sumber
cat (10 byte)
Itu sangat singkat sehingga situs web menolak untuk mengunggahnya sampai saya menambahkan deskripsi ini. Logo tersebut mewakili Olimpiade.
sumber
C ++ w / SFML (1003 termasuk spasi putih)
Tidak kecil oleh imajinasi, tetapi tetap sese-belum-terbaca mungkin dan masih di bawah 1k.
Sunting: Warna yang diperbarui berdasarkan pada pengajuan SVG @Peter Taylor.
sumber
Delphi
Hasil
sumber
membuat solusi berdasarkan Java Swing GUI UltraGolfed edition (696 charas)
Semi-terkompresi: (971)
sumber
POWERSHELL, 869
kode dan keluaran dalam tangkapan layar
sumber
SpecBAS
Setiap cincin terdiri dari lingkaran dalam / luar, kemudian diisi banjir.
Harus menemukan persimpangan secara manual dan mengisinya secara individual (sehingga Anda masih dapat melihat beberapa garis di antara mereka).
sumber