diff --git a/locales/en/simulator.json b/locales/en/simulator.json index f13d5965..7b0343fc 100644 --- a/locales/en/simulator.json +++ b/locales/en/simulator.json @@ -271,7 +271,7 @@ "imageDetectionWarning": "This tool does not support image detection.", "lambert": "Lambertian", "lengthUnitInfo": "The unit of length used in this simulator (except for wavelengths) is an arbitrary unit, which can be interpreted as any physical unit (e.g. millimeters) as long as it is consistent throughout the simulation. If the unit appears too small or too large, please adjust Settings -> Length Scale.", - "nonSimulateColorsWarning": "This tool only works when \"Simulate Color\" is on.", + "nonSimulateColorsWarning": "This tool only works when \"Simulate Colors\" is on.", "random": "Random", "wavelength": "Wavelength" } @@ -286,8 +286,8 @@ "title": "Grid Size" }, "language": { - "title": "Language", - "lowFraction": "This language is only {{fraction}} translated. You can help complete it [on Weblate](/weblate)." + "lowFraction": "This language is only {{fraction}} translated. You can help complete it [on Weblate](/weblate).", + "title": "Language" }, "layoutAids": { "lockObjs": "Lock Objects", diff --git a/locales/pl/modules.json b/locales/pl/modules.json index 91cb0d88..b886d2c4 100644 --- a/locales/pl/modules.json +++ b/locales/pl/modules.json @@ -63,6 +63,8 @@ }, "moduleTutorial": { "basics": { + "createModule": "Obecnie sugerowany sposób tworzenia modułu polega na tym, aby najpierw utworzyć pusty moduł za pomocą edytora JSON, utworzyć kilka obiektów za pomocą edytora scen wizualnych, a następnie wyciąć i wkleić obiekty z `objs` do `modules.ModuleName.objs` za pomocą edytora JSON.", + "demodulize": "Jeśli wybierzesz obiekt modułu, na pasku obiektów znajdziesz przycisk \"Demodułuj\". Kliknięcie go \"rozwinie\" obiekt modułu na jego części składowe, a `objs` będzie teraz zawierać wszystkie cztery teksty. Ta operacja nie jest odwracalna (ale oczywiście można kliknąć \"cofnij\").", "lookAtExample": "Spójrzmy na pierwszy przykład modułu.", "lookAtJson": "Powinny być widoczne cztery linie tekstu. Patrząc na edytor JSON, zobaczysz, że pierwsze dwa znajdują się bezpośrednio w tablicy `objs` najwyższego poziomu, jak zwykle, ale dwa ostatnie znajdują się w `modules.ExampleModule.objs`.", "moduleDef": "`Moduł` to słownik, w którym kluczem jest nazwa modułu (w tym przypadku `ExampleModule`), a wartością definicja tego modułu. W szczególności tablica `modules.ExampleModule.objs` opisuje (szablon) obiektów w tym module, co różni się od najwyższego poziomu `objs`, który opisuje obiekty w scenie.", @@ -70,6 +72,11 @@ "putToScene": "Aby umieścić obiekty w ramach modułu na scenie, potrzebujemy \"obiektu modułu\" w tablicy najwyższego poziomu `objs`, którym w tym przykładzie jest `objs[2]`, którego typem jest `ModuleObj` i którego właściwością `module` jest nazwa modułu.", "title": "Podstawy modułu" }, + "controlPoints": { + "coordinatesOfControlPoints": "Tutaj `modules.ModuleName.numPoints` definiuje liczbę punktów kontrolnych. Współrzędne punktów kontrolnych to (`x_1`, `y_1`), (`x_2`, `y_2`), itd. i są używane w taki sam sposób jak parametry w `modules.ExampleModule.objs`, jak opisano w poprzedniej sekcji. Należy zauważyć, że indeks zaczyna się od 1.", + "lookAtExample": "Aby obiekt modułu był przeciągalny, musimy sparametryzować obiekty w module za pomocą zestawu punktów kontrolnych. Spójrzmy na przykład", + "title": "Dodawanie punktów kontrolnych" + }, "jsonEditor": { "currentlyNoVisual": "Ta aplikacja nie posiada obecnie wizualnego interfejsu do tworzenia modułów, dlatego musisz bezpośrednio edytować plik JSON sceny.", "enableJsonEditor": "Możesz włączyć wbudowany edytor JSON, klikając rozwijaną listę \"ustawienia\" w prawym górnym rogu aplikacji, a następnie zaznaczając \"Pokaż edytor JSON\". Edytor kodu powinien pojawić się po lewej stronie aplikacji, z kodem JSON bieżącej sceny. Upewnij się, że masz wystarczająco duży ekran, ponieważ ta funkcja nie działa dobrze na urządzeniach mobilnych.", @@ -83,6 +90,13 @@ "description": "Ten poradnik poprowadzi Cię przez podstawy tworzenia niestandardowego modułu, który można wykonać w całości w aplikacji internetowej, bez potrzeby korzystania z zewnętrznego środowiska programistycznego.", "moduleIntroduction": "Funkcja \"Moduł\" w Symulacji Promieni optycznych umożliwia tworzenie modułowych kombinacji obiektów z niestandardowymi parametrami, niestandardowymi punktami kontrolnymi i tablicami obiektów. Funkcja ta rozszerza możliwości tego symulatora poprzez łączenie, specjalizację lub reparametryzację obiektów utworzonych przez istniejące narzędzia w celu stworzenia nowych narzędzi. Na przykład moduł `CircleSource` (patrz Narzędzia -> Inne -> Importuj moduły) łączy szereg źródeł punktowych utworzonych przez istniejące narzędzie \"Źródło punktowe (<360°)\" wzdłuż okręgu, aby utworzyć narzędzie \"Źródło kołowe\", które nie istniało w symulatorze. Moduł `FresnelLens` specjalizuje narzędzie \"Szkła-> Równanie niestandardowe\", dzięki czemu równanie reprezentuje określoną krzywą soczewki Fresnela sparametryzowaną przez liczbę pierścieni, tworząc w ten sposób wyspecjalizowane narzędzie \"Soczewka Fresnela\", które również nie istniało wcześniej. Oprócz tworzenia nowych narzędzi, funkcja ta może również sprawić, że niektóre demonstracje optyki będą bardziej interaktywne. Na przykład, przeciągając trzeci punkt kontrolny modułu `BeamExpander`, można bezpośrednio zobaczyć, jak położenie wspólnego ogniska dwóch soczewek wpływa na szerokość wiązki, bez konieczności indywidualnego dostosowywania ogniskowych każdej z nich." }, + "parameters": { + "equationSyntax": "W tablicy `modules.ExampleModule.objs`, dowolne wartości mogą być wyrażone za pomocą tych parametrów. W ciągu znaków (takim jak właściwość `text` etykiety `TextLabel`), równania zmiennych są otoczone parą znaków odwrotnego apostrofu. W przypadku parametrów liczbowych (takich jak właściwość `fontSize` etykiety `TextLabel`), należy utworzyć ciąg znaków, aby można było użyć w nim formatu odwrotnego apostrofu, więc każde równanie jest otoczone parą znaków odwrotnego apostrofu i parą cudzysłowów. Równanie jest obliczane za pomocą math.js ([syntax](/mathjs/syntax)). Zobacz tam dostępną składnię i funkcje, których można użyć w równaniach.", + "lookAtExample": "Obiekty w module można zdefiniować za pomocą zestawu parametrów. Przyjrzyjmy się prostemu przykładowi", + "paramsArray": "Tutaj `modules.ModuleName.params` jest tablicą ciągów `\"name=start:step:end:default\"` definiującą nazwę zmiennych i zakres suwaków. Suwaki pojawiają się na pasku obiektów, gdy obiekt modułu jest zaznaczony.", + "title": "Dodawanie parametrów", + "valueStorage": "Rzeczywiste wartości parametrów są przechowywane we właściwości `params` obiektu modułu, który, w przeciwieństwie do definicji modułu, może być bezpośrednio edytowany przez edytor scen za pomocą suwaka." + }, "title": "Poradnik tworzenia modułów" }, "modulesPage": { diff --git a/locales/pl/simulator.json b/locales/pl/simulator.json index 933a24f4..2363a1a3 100644 --- a/locales/pl/simulator.json +++ b/locales/pl/simulator.json @@ -180,12 +180,18 @@ "Fperp": "F⊥: Szybkość przepływu pędu prostopadłego w (B/s)/c.", "P": "P: Szybkość przepływu energii (strumień) w B/s (patrz poniżej).", "irradiance": "Irradiancja w wyeksportowanym pliku CSV jest wyrażona w (B/s)/L.", - "length": "L jest arbitralną jednostką długości używaną w tym symulatorze." + "length": "L jest arbitralną jednostką długości używaną w tym symulatorze.", + "s": "Bezwymiarowy czynnik s to \"Skala jasności\" wyświetlana w Ustawienia -> Pokaż okno stanu, która jest równa 1, gdy \"Gęstość promieni\" przekracza pewien próg, a jeśli nie, to jest proporcjonalna do \"Gęstości promieni\".", + "truncation": "Jeżeli niektóre promienie ulegną obcięciu w nieskończonej serii wewnętrznych odbić, całkowite obcięcie jest przedstawiane jako oszacowanie błędu." }, "irradMap": "Mapa irradiancji" }, "DiffractionGrating": { - "customBrightness": "Niestandardowa jasność" + "customBrightness": "Niestandardowa jasność", + "customBrightnessInfo": "Gdy jest włączona, jasność promieni dyfrakcyjnych jest dostosowywana przez tablicę liczb odpowiadającą m = 0, 1, -1, 2, -2, …. Liczba ta ma być znormalizowana do jasności promienia padającego. Wartości nieznajdujące się w tablicy są ustawiane na 0. Na przykład „1, 0,5, 0,5” oznacza, że promień m=0 ma taką samą jasność jak promień padający, promienie m=1 i m=-1 mają połowę jasności, a wszystkie pozostałe promienie są ignorowane.", + "lineDensity": "Linie/{{lengthUnit}}", + "mirrored": "Odbiciowa", + "slitRatio": "Szerokość szczeliny / odstęp linii" }, "Drawing": { "finishDrawing": "Zakończ rysowanie" @@ -215,8 +221,12 @@ "backArrow": "Strzałka do tyłu" }, "ModuleObj": { + "demodulize": "Demodułuj", "module": "Moduł" }, + "Ruler": { + "scaleInterval": "Odstęp skali" + }, "SphericalLens": { "defBy": { "focalDistances": "Ogniskowe", @@ -225,11 +235,25 @@ }, "TextLabel": { "alignment": "Wyrównanie", + "alignments": { + "center": "Środek", + "left": "Lewa", + "right": "Prawa" + }, "angle": "Kąt", "font": "Czcionka", "fontSize": "Rozmiar czcionki", "fontStyle": "Styl", - "smallCaps": "Małe litery" + "fontStyles": { + "bold": "Pogrubiona", + "boldItalic": "Kursywa pogrubiona", + "boldOblique": "Pochyła pogrubiona", + "italic": "Kursywa", + "normal": "Normalna", + "oblique": "Pochyła" + }, + "smallCaps": "Małe litery", + "textHere": "Tekst tutaj" }, "common": { "brightness": "Jasność", @@ -247,6 +271,7 @@ "imageDetectionWarning": "To narzędzie nie obsługuje wykrywania obrazów.", "lambert": "Lambertowskie", "lengthUnitInfo": "Jednostka długości używana w tym symulatorze ( oprócz długości fali) jest jednostką arbitralną, która może być interpretowana jako dowolna jednostka fizyczna (np. milimetry), o ile jest spójna w całej symulacji. Jeśli jednostka wydaje się zbyt mała lub zbyt duża, należy ją skorygować w Ustawienia -> Skala długości.", + "nonSimulateColorsWarning": "To narzędzie działa tylko wtedy, gdy \"Symuluj kolory\" jest włączone.", "random": "Losowo", "wavelength": "Długość fali" } @@ -254,6 +279,7 @@ "settings": { "advancedHelp": "Aby uzyskać zaawansowaną pomoc, zobacz ikonę pomocy w prawym dolnym rogu.", "autoSyncUrl": { + "description": "Jeśli włączone, adres URL będzie aktualizowany automatycznie wraz z bieżącą sceną, więc nie trzeba ręcznie zapisywać sceny. Aby ustawić tytuł, użyj Plik -> Zapisz -> Zmień nazwę.", "title": "Automatyczna synchronizacja URL" }, "gridSize": { @@ -269,7 +295,14 @@ "snapToGrid": "Przyciągaj do siatki", "title": "Opcje układu" }, + "lengthScale": { + "description": "Jeśli domyślna jednostka długości jest zbyt mała lub zbyt duża, aby modelować system fizyczny, gdy jest interpretowana jako zwykła jednostka fizyczna (np. milimetry), współczynnik ten może być użyty do skalowania wyglądu (np. szerokości linii) w scenie.", + "title": "Skala długości" + }, "more": "Więcej", + "observerSize": { + "title": "Rozmiar obserwatora" + }, "rayDensity": { "description": "Określa liczbę promieni emitowanych przez belki i źródła punktowe. Ma to również wpływ na dokładność wykrywania obrazu i renderowania kolorów.", "title": "Gęstość promieni" @@ -278,8 +311,13 @@ "description": "Określa, czy wyświetlać wyskakujące okienka pomocy po najechaniu kursorem na przyciski. (Załaduj ponownie stronę, aby zastosować.)", "title": "Pokaż okienka pomocy" }, + "showJsonEditor": { + "description": "Pokaż edytor kodu dla reprezentacji JSON sceny, który jest potrzebny podczas tworzenia niestandardowego modułu (patrz Narzędzia -> Inne -> Importuj moduły -> Twórz własne moduły).", + "title": "Pokaż edytor JSON" + }, "showStatusBox": { - "title": "Pokaż okno stanu" + "description": "Wyświetla pole stanu, które zawiera współrzędne myszy, informacje o parametrach i obciętą jasność (całkowitą jasność promieni obciętych w nieskończonej serii wewnętrznych odbić).", + "title": "Pokaż pole stanu" }, "title": "Ustawienia", "zoom": { @@ -287,10 +325,16 @@ } }, "statusBox": { - "brightnessScale": "Skala jasności" + "brightnessScale": "Skala jasności", + "forceStopped": "Wymuszone zatrzymanie.", + "mouseCoordinates": "Współrzędne myszy", + "rayCount": "Liczba promieni", + "timeElapsed": "Czas, który upłynął", + "totalTruncation": "Obcięta jasność" }, "welcome": { "instruction": "Aby dodać komponent optyczny, zaznacz narzędzie i kliknij puste miejsce.\nAby załadować przykład, [przejdź do strony Galerii](/gallery).", + "loading": "Ładowanie sceny z adresu URL... Proszę czekać.", "title": "Witamy w symulacji promieni optycznych" } } diff --git a/locales/zh-CN/simulator.json b/locales/zh-CN/simulator.json index 56da0d4f..8eefe44c 100644 --- a/locales/zh-CN/simulator.json +++ b/locales/zh-CN/simulator.json @@ -59,8 +59,8 @@ "title": "键盘快速键" }, "runLocally": { - "title": "在本地运行", - "description": "要在您自己的计算机上运行本项目(与在线版本无关),请参阅[此指南](/run-locally)。" + "description": "要在您自己的计算机上运行本项目(与在线版本无关),请参阅[此指南](/run-locally)。", + "title": "在本地运行" } }, "processing": "处理中……按此处以终止。" @@ -286,8 +286,8 @@ "title": "网格大小" }, "language": { - "title": "语言", - "lowFraction": "此语言翻译完成率仅 {{fraction}}。您可以[在 Weblate 上](/weblate)帮助完成翻译。" + "lowFraction": "此语言翻译完成率仅 {{fraction}}。您可以[在 Weblate 上](/weblate)帮助完成翻译。", + "title": "语言" }, "layoutAids": { "lockObjs": "锁定物件", diff --git a/locales/zh-TW/simulator.json b/locales/zh-TW/simulator.json index fac98f1f..acbae6cf 100644 --- a/locales/zh-TW/simulator.json +++ b/locales/zh-TW/simulator.json @@ -59,8 +59,8 @@ "title": "鍵盤快速鍵" }, "runLocally": { - "title": "在本機執行", - "description": "若要在您自己的電腦上執行本專案(獨立於線上版本),請參閱[此指南](/run-locally)。" + "description": "若要在您自己的電腦上執行本專案(獨立於線上版本),請參閱[此指南](/run-locally)。", + "title": "在本機執行" } }, "processing": "處理中……按此處以終止。" @@ -286,8 +286,8 @@ "title": "格線大小" }, "language": { - "title": "語言", - "lowFraction": "此語言翻譯完成率僅 {{fraction}}。您可以[在 Weblate 上](/weblate)協助完成翻譯。" + "lowFraction": "此語言翻譯完成率僅 {{fraction}}。您可以[在 Weblate 上](/weblate)協助完成翻譯。", + "title": "語言" }, "layoutAids": { "lockObjs": "鎖定物件",