Gambar Tanda Perkiraan Uni Eropa

11

Spesifikasi tanda "perkiraan" yang digunakan oleh Petunjuk Uni Eropa (U + 212e dalam Unicode, yang mungkin tidak Anda cetak untuk tantangan ini) cukup tepat.

Spesifikasi tanda perkiraan Uni Eropa

Untuk menyalin beberapa batasan dari pertanyaan ini : Render simbol ke file atau layar menggunakan vektor atau grafik raster. Jika output Anda dirasterisasi, gambar Anda harus memiliki dimensi 264 piksel × 240 piksel atau lebih. Garis bantu atau indikator panjang lainnya tidak boleh ditarik.

LAMBANG
sumber
9
Cukup tepat, tapi masih agak tidak jelas. Apa sebenarnya adalah 0,085, 0,013, dan 0,025pengukuran? Apakah 0,846diagonal di tengah dimaksudkan untuk melewati episentrum elips yang dibentuk oleh bagian luar 1dan 0,9?
AdmBorkBork
1
Bukan simbol yang sama, tapi saya pikir ini cukup dekat untuk dianggap sebagai dup: codegolf.stackexchange.com/questions/26689/… . Saya tidak menggunakan palu dup saya.
Digital Trauma
@TimmyD 0,025 adalah ketebalan palang, yang memanjang +/- 0,0125 di kedua sisi pusat elips, daripada duduk di atas garis tengah. (Saya membalikkan simbol dan memeriksa.) 0,013 adalah jari-jari sudut (harus mudah menemukan pusat lingkaran sudut). 0,085 juga jari-jari sudut (sedikit bantuan dalam menemukan koordinat y dari lingkaran sudut akan menyenangkan.)
Level River St
1
Lebih menarik jika Anda menghindari menggunakan huruf 'E', 'n', 'g', 'l', 'a', 'd' ...
Comintern

Jawaban:

15

VBA, 587 560 byte

Sub S(a,b,c,d,e,f)
Set v=ActiveSheet.Shapes.AddShape(a,b,c,d,e)
v.Fill.ForeColor.RGB=f
v.Line.Visible=0
If a=5 Then v.Adjustments(1)=.5
End Sub
Sub U():p=91.5:w=-1
S 1,0,0,500,450,w
S 9,0,0,500,450,0
S 9,38.5,13.5,423,423,w
S 1,36,120,29,210,0
S 1,65,80,26.5,290,0
S 1,435,120,29,105,0
S 1,408.5,80,26.5,145,0
q=212.25:S 1,9,q,480,19,0
S 5,p,205.75,317,13,w
S 1,405,231.25,95,131.5,w
r=14.5:S 1,p,70.5,r,30,0
q=85:S 9,p,59.6,q,q,w
S 1,p,349.5,r,30,0
S 9,p,305.4,q,q,w
S 1,395,70.5,r,30,0
S 9,323.5,59.6,q,q,w
q=231.25:S 1,p,q,6.5,6.5,0
S 9,p,q,13,13,w
End Sub

Aktifkan makro U. Pada dasarnya banyak bentuk gambar. Bentuk 1 adalah persegi panjang, 5 persegi panjang bulat dan 9 adalah oval. Output adalah 500 lebar dengan tinggi 450.

masukkan deskripsi gambar di sini

Sunting : menambahkan persegi panjang bulat (dengan penyesuaian untuk mengubah ujungnya menjadi setengah lingkaran) untuk menghasilkan sudut yang terpancar di atas bilah dengan satu bentuk gambar.

Joffan
sumber
Excel dipinjamkan - Anda benar-benar menaruh banyak pekerjaan di dalamnya! Anda dapat menjatuhkan 2byte dengan mengubah Sub U()keSub U
Taylor Scott
Actuallly, Anda bisa berjalan turun ini untuk 535 byte dengan membuat perubahan funtuk Optional f=0dan menghapus 0 f panggilan, menghapus ruang di a=5 Then, bergerak subrutin ke codepane worksheet dan menghapus ActiveSheet.panggilan (ini berarti bahwa U kemudian disebut sebagai Sheet1.U) dan menghapus ()inSub U()
Taylor Scott
3

Haml + Sass, 20 + 722 = 742 byte

Saya yakin ini bisa bermain golf lebih banyak, tapi saya cukup senang dengannya. Demo di CodePen .

Catatan: Karena margin default, ini membutuhkan jendela browser setidaknya 1.000-beberapa piksel.

Haml

#u
#v
 #w
 #x
 #y
#z

Kelancangan

$w: 1000px
$h: 900px
$a: 183px
$b: 25px
$p: 85px
$q: 13px
$d: 846px
$e: $w - 2*$a
$f: 143px
$s: 50%
$t: $p/5.5
=d($w:$w,$h:$h)
 width: $w
 height: $h
=m($c)
 background-color: $c
=k
 +m(#000)
 position: absolute
 content: ''
=l
 +k
 +m(#fff)
=o($o:$p)
 +d($o,$p)
=r($a)
 border-radius: $a
*
 +k
html,body
 +l
 position: relative
#u
 +d
 clip-path: ellipse($s $s)
#v
 +d($e)
 left: $a
 clip-path: circle(($d/2) at $s $s)
#v::before,#v::after
 +l
 +d($e,($h -$b)/2)
 +r($q)
#v::after
 bottom: 0
#w,#x
 +o($t)
 top: $f
#w::before,#x::before,#y::before
 +l
 +o
 +r($s 0)
#x,#x::before
 right: 0
#x::before
 +r(0 $s 0 0)
#y
 +o($t)
 bottom: $f
 z-index: 9
#y::before
 +r(0 0 0 $s)
#z
 +l
 +d($s,267px)
 top: ($h+$b)/2
 right: 0
Yordania
sumber
3

GLSL + shadertoy.com, 349 345 344 byte

#define F float
void mainImage(out vec4 R,vec2 C){F S=min(iResolution.x,iResolution.y/0.9);vec2 p=C/vec2(0.5,0.45)/S-1.;F A=0.94-length(p*vec2(1.22,1));F H=min(min(-p.y-0.025,p.y+0.551),p.x);F B=max(length(p)-1.,min(abs(p.y)-0.025,max(A,H)));F D=max(min(p.x,-p.y),max(-A,0.634-abs(p.x)));R=vec4(vec3(max(H,min(B*D*64.-0.01,min(B,D)))*S/3.),1);}

Dapat diuji dengan menempelkan kode pada halaman ini: https://www.shadertoy.com/new

Output (saat ukuran layar 1440 * 900):

masukkan deskripsi gambar di sini

Nama tampilan
sumber
Tidak yakin tentang sudut Anda di ujung bilah pusat di sana, mereka tidak terlihat benar.
Joffan
Mungkin mereka seharusnya memiliki "ukuran" yang sedikit berbeda, saya tidak benar-benar mengerti ukuran apa yang seharusnya, jadi kira-kira dengan mata
Nama Tampilan
1
Mereka harus busur melingkar dengan jari-jari 0,013 (x lebar penuh gambar).
Joffan