Tworzenie instrukcji modelu Technic za pomocą LEGO Digital Designer i instrumentów pokrewnych należy moim zdaniem do czynności bardzo męczących lub praktycznie niewykonalnych, mam doświadczenie, że LDD gubi się w proponowaniu instrukcji nawet dla niewielkich modeli Technic (jeżeli są odpowiednio skomplikowane), proponując niewłaściwą kolejność dokładanych części. W związku z tym wypracowałem schemat postępowania pozwalający na zrobienie instrukcji w jednym pliku pdf ze zdjęć, uzupełniając kroki instrukcji spisem potrzebnych klocków.
Do tworzenia instrukcji używam TeX-a, programu znanego matematykom i osobom zajmującym się dziedzinami pokrewnymi. Program został stworzony z myślą o łatwym wpisywaniu wszelakich wyrażeń matematycznych i ich zgrabnym wyglądzie. W związku z tym tworzenie pliku pdf polega na napisaniu dokumentu tekstowego (z rozszerzeniem .tex) i poddaniu go kompilacji, czyli zinterpretowaniu i przetworzeniu do formatu pdf. Dzięki temu można napisać z klawiatury:
Kod: Zaznacz cały
$$\frac{\pi\left(r+h\right)^3}{\sqrt{a^2+b^2}} \approx
\left\{\begin{array}{l}
1 \\
-1 \\
\end{array}\right.$$
Ostatnia ewentualność jest kamieniem węgielnym do tworzenia instrukcji. Dzięki temu po przygotowaniu zdjęć i miniaturowych rysunków klocków całą resztę wpisuję z klawiatury, obficie korzystając ze skrótów CTRL+C, CTRL+V. W efekcie dostaję gotowy plik tekstowy, następnie tylko klikam w przycisk „kompiluj” i pojawia się gotowy plik pdf. Prześledźmy kolejne składowe czynności.
Rysunki klocków
Skoro tworzę z LEGO Technic, nie używam wielu kolorów i wielu kształtów, faktycznie sięgam po kilkaset różnych części, uwzględniając kształt i kolor. W związku z tym musiałem jednorazowo przygotować folder z miniaturami posiadanych klocków, uzupełniam go w trakcie kupowania klocka o nowym kształcie lub kolorze. Z pomocą przyszedł portal rebrickable, w którym mogłem utworzyć szachownicę miniaturek posiadanych klocków, potem tylko trzeba było z tego powycinać pojedyncze miniaturki. Folder z miniaturkami wygląda następująco (powiększenie po kliknięciu). W folderze mam 859 miniaturek oraz folder Instruction. Wymyślałem krótkie i łatwe do zapamiętania nazwy, często odwołujące się do powszechnego nazewnictwa (np. b1x1 to brick 1x1, p2x4 to plate o podanych wymiarach, a5 to oś o długości pięciu studów), czasem nawiązujące do kształtu (np. widziane na zrzucie ekranu łączniki), a rzadko, z braku lepszych rozwiązań, powstawała abstrakcyjna grupa nazw (np. x2, x3, x5, x7, x9, x11, x13, x15 to belki Technic, a y2, y3, y4, y5 to płaskie belki Technic z wejściami na oś na końcach). Końcówkę nazwy stanowi kolor klocka. Teraz jedynie przy rzadszych klockach muszę sprawdzać nazwę.
Zdjęcia kroków instrukcji
Ten etap wygląda tak samo bez względu na rodzaj instrukcji wykorzystującej fotografię. Na jednolitym tle powstaje model, najczęściej z oddzielnych modułów, przy czym moduły też wymagają często od kilku do kilkudziesięciu kroków. Wypracowałem sobie standard z dwoma zdjęciami w formacie 4:3 na stronie instrukcji, więc każde zdjęcie przycinam do takiego formatu. Gdy zdjęcia mam przygotowane, przepuszczam je przez program do zmniejszania wymiarów, co sprawia, że przed stworzeniem instrukcji wymiary wszystkich są jednolite np. 800x600 lub 700x525. Dzięki temu zdjęcia mają mniejszy rozmiar od pierwotnych oraz akceptowalną ostrość. Jednolite wymiary pozwalają także panować mi nad rozmiarem końcowym instrukcji. Wszystkie obrobione zdjęcia kroków instrukcji gromadzę we wspomnianym folderze Instruction.
Plik wsadowy
Plik tekstowy o rozszerzeniu .tex zapisuję w folderze Instruction. Jak to z programowaniem bywa, potrzeba kilku linijek wstępu:
Kod: Zaznacz cały
% --translate-file=cp1250pl
\documentclass[a4paper,12pt]{amsart}
\usepackage[a4paper,left=1cm,right=1cm,top=1cm,bottom=1cm]{geometry}
\usepackage[cp1250]{inputenc}
\usepackage[OT4]{fontenc}
\usepackage{multicol}
\usepackage{graphicx}
\usepackage{wasysym}
\usepackage{amssymb}
Kod: Zaznacz cały
\newcounter{stepno}
Kod: Zaznacz cały
\begin{document}
\setcounter{stepno}{1}
\begin{center}
\Large
\textbf{LEGO minifig in a scale of 15:1} (part 1)
\medskip
\normalsize
\texttt{--pg--}
\medskip
(Piotr Gurdek)
\bigskip
\end{center}
\bigskip
Kod: Zaznacz cały
\begin{figure}[htb]
\centering
\includegraphics[width=0.4\textwidth]{zz2}
\end{figure}
Kod: Zaznacz cały
Here are some useful pages in the first part.
\begin{itemize}
\item a head: page \pageref{page-head},
\item a neck: page \pageref{page-neck},
\item a mechanism: page \pageref{page-mech},
\item the left leg: page \pageref{page-legleft},
\item the right leg: page \pageref{page-legright}.
\end{itemize}
\newpage
Kod: Zaznacz cały
\label{page-head}
\noindent\textbf{STEP \arabic{stepno}}.
\addtocounter{stepno}{1}
Kod: Zaznacz cały
\begin{figure}[htb]
\centering
\textbf{15x}\includegraphics[scale=0.55]{../pp-black}
\textbf{6x}\includegraphics[scale=0.55]{../ppp-blue}
\textbf{1x}\includegraphics[scale=0.55]{../x3-yellow}
\textbf{1x}\includegraphics[scale=0.55]{../x5-yellow}
\textbf{3x}\includegraphics[scale=0.55]{../x5-lbg}
\textbf{2x}\includegraphics[scale=0.55]{../x13-lbg}
\textbf{1x}\includegraphics[scale=0.55]{../f5x7-lbg} \\
\textbf{1x}\includegraphics[scale=0.55]{../panel5x11-yellow}
\end{figure}
\begin{figure}[htb]
\centering
\includegraphics[width=0.6\textwidth]{m1}
\end{figure}
Na tej samej stronie pojawia się jeszcze zdjęcie m2.jpg, w kroku drugim nie dokłada się żadnych nowych części.
Kod: Zaznacz cały
\noindent\textbf{STEP \arabic{stepno}}.
\addtocounter{stepno}{1}
\begin{figure}[htb]
\centering
\includegraphics[width=0.6\textwidth]{m2}
\end{figure}
\newpage
Kod: Zaznacz cały
\newpage
\noindent\textbf{STEP \arabic{stepno}}.
\addtocounter{stepno}{1}
\begin{figure}[htb]
\centering
\includegraphics[width=0.6\textwidth]{o76}
\end{figure}
\end{document}
Kod: Zaznacz cały
\noindent\textbf{STEP \arabic{stepno}}.
\addtocounter{stepno}{1}
\begin{figure}[htb]
\centering
\textbf{1x}\includegraphics[scale=0.55]{../pp-black}
\textbf{1x}\includegraphics[scale=0.55]{../ppp-blue}
\textbf{1x}\includegraphics[scale=0.55]{../ap-blue}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\textbf{1x}\includegraphics[scale=0.55]{../}
\end{figure}
\begin{figure}[htb]
\centering
\includegraphics[width=0.6\textwidth]{}
\end{figure}
\noindent\textbf{STEP \arabic{stepno}}.
\addtocounter{stepno}{1}
\begin{figure}[htb]
\centering
\includegraphics[width=0.6\textwidth]{}
\end{figure}
Zliczanie części
Wspomniałem, że przy każdym rysunku zliczam dokładane części, uważnie przeglądając zrobione zdjęcie. Skoro sensownie zrobiona instrukcja wymaga sumarycznej liczby części każdego rodzaju i koloru, trzeba te liczby dodać do siebie. Tu z pomocą przychodzi na stałe przygotowany arkusz Excela, w którym w kolejnych kolumnach wpisuję kolejne liczebności klocków z kroków, czasem łącząc kilka kroków w jeden, bo wnoszą mało nowych części. Lewy górny róg arkusza wygląda następująco: Drugi arkusz w tym pliku Excela jest przygotowany tak, aby szybko stał się spisem .csv według standardu rebrickable.
Wszystko, co do tej pory napisałem, brzmi strasznie, aczkolwiek są to programy dobrze przeze mnie znane. Wykonanie instrukcji modelu z tysiąca elementów zajęłoby mi kilkanaście godzin intensywnej pracy, czyli dwa dni, biorąc pod uwagę ograniczony czas robienia zdjęć ze względu dobre oświetlenie światłem dziennym. Jak się chwilę zastanowię, czas poświęcony na instrukcję stanowi 2-5% całkowitego czasu pracy nad modelem.
Próba generalna
Po wykonaniu wszystkich opisanych czynności następuje czas na próbę generalną, czyli rozłożenie modelu na posegregowane klocki i złożenie według instrukcji. Przed złożeniem sprawdzam, czy liczebność większości typów klocków się zgadza (nie liczę jedynie dwóch najliczniejszych pinów, według mojej nomenklatury pp-black i ppp-blue). Jeżeli są różnice, notuję i zwracam szczególną uwagę podczas składania. Budując model, nie spieszę się, sprawdzam skład dokładanych klocków, poprawiam rzadkie błędy w liczbie elementów, naprawiając pomyłki w plikach, uzupełniam niektóre zdjęcia ramkami, strzałkami lub komentarzem. Po złożeniu i sprawdzeniu instrukcja jest gotowa.
Dlaczego?
Folder z instrukcjami (oraz profil na rebrickable) jest taką wirtualną półką ze zrobionymi MOC-ami. Dzięki temu model nie ginie, a klocków używam po raz kolejny, co jest ogromną zaletą, bo pozwala na posiadanie niewielkiej liczby klocków. W praktyce dysponuję około 18 tysiącami części (większości klocków z dzieciństwa nie używam, po dorzuceniu tych nieużywanych byłoby w sumie 20000 części, więc niewiele więcej). Należy również nadmienić, że około 6000 stanowią piny zajmujące niewiele miejsca. Przypuszczam, że kolekcja jest niewielka jak na członka LUGPol-u, a budować się da.