Eh!
Problem z nami, Kanadyjczykami, polega na tym, że czasami po długim dniu polowań na łosie i naprawy tam zapominamy, jak wracamy do naszych kabin! Czy nie byłoby wspaniale, gdyby nasz poręczny laptop (który zawsze był po naszej stronie) miał jakiś sposób, aby skierować nas do domu? Cóż, od dawna mówiono, że jeśli wyświetlasz kompas na swoim komputerze, będzie najjaśniejszy, gdy wskaże północ. Chciałbym to przetestować, ale potrzebuję kompaktowego programu, który zabiorę ze sobą na następną podróż, ponieważ mój dysk twardy jest już wypełniony przepisami na syrop klonowy (i te NIE MOGĄ iść). Twoim zadaniem jest zaprojektowanie programu, który po uruchomieniu zapisuje lub wyświetla obraz następującej róży kompasu:
Litery mogą mieć inną czcionkę. Pamiętaj, że najmniej jest najlepsze, więc wygrywa najmniejsza liczba bajtów!
Dane techniczne
Zabarwienie
- Jasnofioletowy: # 9999FF
- Szary: # E5E5E5
Długości i kąty
- Kąt
a
= 45 ° - Kąt
b
= 90 ° - Długość
c
= 250 jednostek - Długość
d
= 200 jednostek - Długość
e
= 40 jednostek - Długość
f
= 45 jednostek
Wyjaśnienia
- Tekst może być dowolną odpowiednią czcionką, w stosownych przypadkach oznacza, że jest czytelny dla przeciętnego, wykształconego człowieka.
- Tekst musi znajdować się w odległości 3 jednostek od kolców w najbliższym punkcie, nie może dotykać róży i musi być ustawiony pionowo
- Jeśli linia jest rysowana od środka róży, przez punkt końcowy kolca i dalej, powinna przecinać środek tekstu z dokładnością do +/- 2 jednostek (tekst musi być wyśrodkowany wzdłuż osi
a
, gdziea
rozciąga się od środka strony, przez koniec piku i dalej) - Każda postać musi mieć co najmniej 15 jednostek na 15 jednostek i mieć stosunek x / y lub y / x nie większy niż 2: 1 (brak rozciągania - czytelność)
- Nie należy rysować przyciemnionego koła przechodzącego przez dłuższe kolce i tekst znajdujący się najbliżej środka obrazu odniesienia.
- Obraz musi być kwadratowy i mieć co najmniej 400 na 400 pikseli
- Skompresowany obraz w źródle jest niedozwolony
- Jednostka musi mieć co najmniej 1 piksel
źródło
Odpowiedzi:
HTML + CSS, 487 + 189 = 676
Róża kompasu jest zbudowana z granic CSS przy użyciu techniki trójkąta i kilku podstawowych przekształceń. Litery mają właśnie ustalone pozycje, więc okazało się, że są dość długie: /
Poniższy fragment kodu jest skalowany w dół, dzięki czemu wszystko pasuje. Możesz sprawdzić JSFiddle tutaj . Ponadto nie jestem pewien, jak dobrze litery będą się układać w różnych przeglądarkach (z różnymi czcionkami, domyślnymi stylami itp.).
źródło
Przetwarzanie 2 - 636
Szybkie rozwiązanie, które rysuje wszystkie trójkąty za pomocą metody trójkąta przetwarzania, a następnie umieszcza litery na ich końcach.
możesz uzyskać przetwarzanie tutaj
źródło
PHP, 628 bajtów
dodano kilka podziałów liniowych dla wygody.
Uruchom z
-r
. Tworzy plikn.png
z obrazem; jednostka ma 2 piksele.Muszę przyznać, że próbowałem znaleźć błędy dla wiatrów metodą prób i błędów i prawdopodobnie są one nieco wyłączone. Wkrótce wykona obliczenia; ale obiecuję: nie zmienią liczby bajtów.
Dobrze się bawiłem, odkrywając teraz swoją trignonometrię i walcząc z
imagecopy
... co za maminsynka!w golfa: niewiele sztuczek; ale ci nieliczni wiele zaoszczędzili:
Nie liczyłem nawet przed zamianą nazw funkcji.
+
operatorem macierzy dała 42 bajty.awaria
źródło
R,
877850813Podejrzewam, że jest dużo miejsca na grę w golfa, ale chciałem dostać coś, by sprawdzić, czy uda mi się spełnić zasady.
Edycja: Straciłem kilka porządków wokół tworzenia wielokąta, zyskałem kilka konturów usuwania
To daje następujący obraz png
Trochę wyjaśnienia tego, co robię
źródło
Mathematica, 347 bajtów
Pregolfed:
N
iE
(podstawa dziennika naturalnego) są wbudowane w Mathematica, ale gdy tekst E staje się stylizowany na małą czcionkę, którą widzisz na obrazie, ale problem nie do końca mówi, że możemy użyć tylko jednej czcionki dla całego tekstu. Jeśli tak jest to wymóg następnie zastąpićE
z"E"
i zdobyć dwa bajty.Sqrt[2]
w Mathematica można stylizować na dwa znaki, więc jeśli policzymy każdySqrt[2]
jako dwa znaki, to mój nowy bajt będzie miał 339 zamiast 349.Poniższy obraz został utworzony.
źródło