Selamat sore,
Tujuan Anda adalah, dengan jumlah byte kode sumber yang paling sedikit, membuat ulang setiap lukisan 'Komposisi' Piet Mondrian (misalnya, Komposisi # 10 ).
Rekreasi dapat menggunakan warna yang sebenarnya, atau menggantinya dengan warna yang sesuai dari Palet Warna Default Windows 16.
Rekreasi Anda dapat ditampilkan dalam PNG, BMP atau NetPBM, baik ke file atau ke STDOUT, atau langsung ke layar.
Rekreasi Anda harus memiliki resolusi 512x512 atau lebih tinggi.
Rekreasi Anda tidak boleh mengakses internet. Jika program Anda membutuhkan file data, maka ukurannya akan ditambahkan ke ukuran sumber Anda.
Skor Anda akan menjadi ukuran file sumber Anda dalam byte.
Silakan sebutkan entri Anda yang melukis yang Anda buat ulang, dan berikan tautan ke aslinya dan gambar rekreasi Anda.
Semoga berhasil.
sumber
Jawaban:
Tikz, 175 byte
Komposisi III dalam Hitam dan Putih , 175 byte
Verifikasi di Blogosphere
Ini mungkin salah satu karya Mondrian yang paling minimalis dan saya terkejut belum ada yang menemukannya. Namun ini tidak terlalu menarik sehingga saya telah memasukkan beberapa lukisan lain dalam jawaban saya.
Penjelasan
Ada sedikit pembungkus yang terkait dengan setiap jawaban tikz. Pembungkusnya adalah:
Setelah Anda melewati pembungkusnya, ada beberapa
\def
pernyataan yang menyimpan byte tetapi sayangnya mengaburkan kodenya:Jika kita melakukan semua penggantian yang tepat, kode kita akan terlihat seperti:
Bit pertama adalah
\clip
dan sangat penting, tetapi kami akan melewatinya untuk sementara waktu.Sekarang kita menggambar garis pertama pada kanvas kosong, garis ini agak tebal sehingga kita gunakan
[line width=2mm]
untuk mengatur ketebalan2mm
:Ini menghubungkan beberapa node dan menghasilkan bentuk ini:
Selanjutnya kita
\draw
melakukan stroke kedua, namun stroke ini lebih tipis sehingga kita harus mengatur ketebalan garis menjadi1mm
:Sekarang lukisan kami terlihat seperti:
Ini dekat dengan aslinya tetapi tidak cukup, jadi di sinilah
\clip
perannya. Kami menggunakan\clip
untuk menghapus semua garis tambahan dari kanvas kami dan mengatur kanvas ke ukuran yang benar. Dengan ukuran kanvas kita mendapatkan gambar:Komposisi Dengan Patch Kuning , 214 byte
Evaluasilah di CyberSpace
Penjelasan yang akan datang
Komposisi II dalam Biru dan Kuning , 225 byte
Nilai itu melalui Webbernetz!
Penjelasan yang akan datang
Komposisi B (No. 2) dalam warna Merah , 232 byte
Coba saja di internet!
Penjelasan
Pertama di sini adalah kode dengan jeda baris dimasukkan untuk membuatnya lebih mudah dibaca:
Perintah pertama yang menarik adalah
Ini menggambar kotak merah dengan garis hitam. Untuk sudut kiri atas lukisan.
Kami kemudian menggambar dua lagi persegi panjang dengan interior putih dan garis hitam untuk membuat pola kotak pada lukisan
Kami kemudian menarik garis tipis
Dan potong gambar ke ukuran yang tepat
Komposisi II dalam Merah, Biru dan Kuning , 251 byte
Uji di World Wide Web!
Penjelasan
Pertama saya akan menyisipkan beberapa baris untuk membuat kode saya dapat dibaca
Baris pertama yang penting adalah:
Ini menggambar bentuk berikut:
Bentuk aneh ini adalah persegi panjang kuning di sudut kanan bawah dan dua garis yang tidak ada tepi persegi panjang berwarna. Selanjutnya kita masukkan kotak merah dan menutupi garis-garis ekstra yang dibuat oleh bentuk terakhir:
Ini terlihat seperti:
Sekarang kita masukkan kotak biru kita:
Sekarang semua yang tersisa adalah untuk memotong semua bagian gambar yang tidak perlu menggunakan a
\clip
Komposisi II , 308 byte
Lihatlah di Informasi-Super-Highway
Penjelasan yang akan datang
sumber
Mathematica
202287 byte.Hanya untuk bersenang-senang! 330 byte: Mondrian dengan "Boogie Woogie" dalam Judulnya
Pengajuan Aktual [287 byte]
\[SpanFromLeft]
dan ekspresi serupa memakan kira-kira 85 byte. Dalam matematika, setiap ungkapan memiliki simbol satu karakter khusus.Output di sebelah kiri; foto Piet Mondrian, Komposisi Merah Biru Kuning di sebelah kanan.
sumber
Ruby, 112 (111) karakter
Piet Mondrian - komposisi dalam B (No.II) dengan Merah
produksi saya di sebelah kiri, referensi yang ditingkatkan di sebelah kanan.
Warnanya dapat sedikit diubah - hingga presisi 1/9 - tanpa kehilangan skor dengan mengubah nilai maksimal dalam PPM. Saya telah memilih pendekatan "warna Win16 yang cocok". 8/9 putih mungkin lebih dekat dengan warna asli kanvas, tetapi 9/9 lebih dekat dengan niat penulis.
Satu karakter dapat disimpan jika kita ganti"1 0 0 "
dengan(w+b+b)
(# F00 red). Saya percaya itu dianggap "cukup dekat"mengajukan versi ouptut (bukan golf)
sumber
"0 "
->b
w="2 "
menjadiw="2 "*9
danb
juga.ppm
file dan buka di editor gambarSmileBASIC,
27741892 byteBroadway Boogie Woogie
Setiap "garis" dalam gambar disimpan dalam format ini:
Semua angka disimpan sebagai
CHR$(number+32)
, warna disimpan sebagai satu karakter;w
,y
,r
, Ataub
, dan arah disimpan sebagai|
atau-
Persegi panjang tambahan hanya disimpan sebagai:
Di jalan yang sama.
sumber
SVG - 455
480- Komposisi Mondrian II dalam Merah, Biru, dan KuningJika Anda dapat menanamkan Javascript ke SVG dan membuatnya dinamis, ini adalah bahasa pemrograman. Ergo, ini adalah program. Ternyata jika ada
x
atauy
tidak ada SVG di SVG maka defaultnyared
adalah 0. Juga lebih pendek dari#f00
!Cukup dicetak:
sumber
SmileBASIC, 67 byte
Saya memilih yang mudah: Komposisi III dalam Hitam Putih
Untungnya halaman grafis SB persis 512x512 piksel, tetapi tidak semua akan pas di layar 400x240 jadi saya tidak bisa mendapatkan tangkapan layar dengan mudah.
Dijelaskan:
sumber
Memproses,
15.44715.44115.439 byteBrute force, dan saya belum berhasil menemukan cara untuk menghapus fungsi draw.
Kesalahan dalam mesin pengolah utama, saya pikir karena itu terlalu besar dari b64. Anda bisa mengujinya sini .
JS fiddles memangkasnya menjadi 100 * 100px. Base64 saya berfungsi, tetapi lingkungan online tidak. :(
sumber
PImage x=loadImage(i);
gantinyadata:;base64
berfungsi dengan baikLove2D, 4956 + 395 + 1 = 5351 byte
File Data disimpan DI SINI
Keluaran:
Asli:
Penjelasan
Encoder.
Ini hanya skrip yang saya gunakan untuk menyandikan gambar. Gif bekerja lebih padat, tapi saya tidak tertantang untuk menampilkan gif.
Sebagian besar bersaing untuk mendapatkan hadiah. Mungkin ada cara yang lebih baik untuk melakukan ini, tapi saya pikir akan menarik untuk mencoba menggunakan palet sederhana dan menjalankan decoding panjang.
EDIT: Gambar input disederhanakan, sedikit kurang akurat, tetapi besarnya lebih kecil byte.
sumber