From b123d4e202f558a33ef580e7e6802c8b47297c8f Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 10 Aug 2019 18:50:21 +0300 Subject: [PATCH] - translation files updated for the new strings (Google Translate) --- FlatCAMApp.py | 2 +- README.md | 1 + locale/de/LC_MESSAGES/strings.mo | Bin 311729 -> 314169 bytes locale/de/LC_MESSAGES/strings.po | 1191 ++++++++++++++------------ locale/en/LC_MESSAGES/strings.mo | Bin 290725 -> 293009 bytes locale/en/LC_MESSAGES/strings.po | 1219 ++++++++++++++------------ locale/es/LC_MESSAGES/strings.mo | Bin 257646 -> 260035 bytes locale/es/LC_MESSAGES/strings.po | 1187 +++++++++++++------------ locale/pt_BR/LC_MESSAGES/strings.mo | Bin 304652 -> 307140 bytes locale/pt_BR/LC_MESSAGES/strings.po | 1235 ++++++++++++++------------- locale/ro/LC_MESSAGES/strings.mo | Bin 310094 -> 312557 bytes locale/ro/LC_MESSAGES/strings.po | 1193 ++++++++++++++------------ locale/ru/LC_MESSAGES/strings.mo | Bin 380413 -> 383451 bytes locale/ru/LC_MESSAGES/strings.po | 1183 +++++++++++++------------ locale_template/strings.pot | 1165 +++++++++++++------------ 15 files changed, 4514 insertions(+), 3862 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index 09498b16..e27996d2 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -97,7 +97,7 @@ class App(QtCore.QObject): # Version and VERSION DATE ########### # #################################### version = 8.93 - version_date = "2019/08/31" + version_date = "2019/08/10" beta = True # current date now diff --git a/README.md b/README.md index cecca249..4e386d68 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@ CAD program, and create G-Code for Isolation routing. - fixed bug that did not asked the user to save the preferences after importing a new set of preferences, after the user is trying to close the Preferences tab window - added new feature in NCC Tool: now another object can be used as reference for the area extent to be cleared of copper - fixed issue in the latest feature in NCC Tool: now it works also with reference objects made out of LineStrings (tool 'Path' in Geometry Editor) +- translation files updated for the new strings (Google Translate) 7.09.2019 diff --git a/locale/de/LC_MESSAGES/strings.mo b/locale/de/LC_MESSAGES/strings.mo index 230e20ce6f848c7588ff23d4c0152667b331c50e..529aacf58d51d63fa7ff86c8e35f1a14c7d7067e 100644 GIT binary patch delta 43394 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 WPtOML{aw+S6GkEUiEZ)=t$zctJhle_ delta 41204 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 diff --git a/locale/de/LC_MESSAGES/strings.po b/locale/de/LC_MESSAGES/strings.po index cebf61a3..9e638eed 100644 --- a/locale/de/LC_MESSAGES/strings.po +++ b/locale/de/LC_MESSAGES/strings.po @@ -1,8 +1,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-08-06 10:37+0300\n" -"PO-Revision-Date: 2019-08-06 10:38+0300\n" +"POT-Creation-Date: 2019-08-10 18:17+0300\n" +"PO-Revision-Date: 2019-08-10 18:22+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: de\n" @@ -17,13 +17,13 @@ msgstr "" "X-Poedit-SearchPathExcluded-1: doc\n" "X-Poedit-SearchPathExcluded-2: tests\n" -#: FlatCAMApp.py:940 +#: FlatCAMApp.py:942 msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" "[ERROR] Die Sprachdateien konnten nicht gefunden werden. Die App-" "Zeichenfolgen fehlen." -#: FlatCAMApp.py:1854 +#: FlatCAMApp.py:1856 msgid "" "(Type help to get started)\n" "\n" @@ -31,26 +31,26 @@ msgstr "" "(Geben Sie help ein, um zu beginnen.)\n" "\n" -#: FlatCAMApp.py:2042 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:2044 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 #: flatcamTools/ToolPcbWizard.py:296 flatcamTools/ToolPcbWizard.py:319 msgid "Open cancelled." msgstr "Geöffnet storniert." -#: FlatCAMApp.py:2056 +#: FlatCAMApp.py:2058 msgid "Open Config file failed." msgstr "Open Config-Datei ist fehlgeschlagen." -#: FlatCAMApp.py:2070 +#: FlatCAMApp.py:2072 msgid "Open Script file failed." msgstr "Open Script-Datei ist fehlgeschlagen." -#: FlatCAMApp.py:2276 +#: FlatCAMApp.py:2278 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Wählen Sie ein zu bearbeitendes Geometrie-, Gerber- oder " "Excellon-Objekt aus." -#: FlatCAMApp.py:2286 +#: FlatCAMApp.py:2288 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -60,105 +60,115 @@ msgstr "" "Multi-Geo-Geometrie ist nicht möglich.\n" "Bearbeiten Sie jeweils nur eine Geometrie." -#: FlatCAMApp.py:2341 +#: FlatCAMApp.py:2343 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editor ist aktiviert ..." -#: FlatCAMApp.py:2359 +#: FlatCAMApp.py:2361 msgid "Do you want to save the edited object?" msgstr "Möchten Sie das bearbeitete Objekt speichern?" -#: FlatCAMApp.py:2360 flatcamGUI/FlatCAMGUI.py:1632 +#: FlatCAMApp.py:2362 flatcamGUI/FlatCAMGUI.py:1632 msgid "Close Editor" msgstr "Editor schließen" -#: FlatCAMApp.py:2363 FlatCAMApp.py:3474 FlatCAMApp.py:5306 FlatCAMApp.py:6179 +#: FlatCAMApp.py:2365 FlatCAMApp.py:3481 FlatCAMApp.py:5316 FlatCAMApp.py:6194 #: FlatCAMTranslation.py:96 FlatCAMTranslation.py:169 #: flatcamGUI/FlatCAMGUI.py:3756 msgid "Yes" msgstr "Ja" -#: FlatCAMApp.py:2364 FlatCAMApp.py:3475 FlatCAMApp.py:5307 FlatCAMApp.py:6180 +#: FlatCAMApp.py:2366 FlatCAMApp.py:3482 FlatCAMApp.py:5317 FlatCAMApp.py:6195 #: FlatCAMTranslation.py:97 FlatCAMTranslation.py:170 #: flatcamGUI/FlatCAMGUI.py:3757 msgid "No" msgstr "Nein" -#: FlatCAMApp.py:2365 FlatCAMApp.py:3476 FlatCAMApp.py:3907 FlatCAMApp.py:6181 +#: FlatCAMApp.py:2367 FlatCAMApp.py:3483 FlatCAMApp.py:3914 FlatCAMApp.py:6196 msgid "Cancel" msgstr "Kündigen" -#: FlatCAMApp.py:2392 +#: FlatCAMApp.py:2394 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Das Objekt ist nach der Bearbeitung leer." -#: FlatCAMApp.py:2414 FlatCAMApp.py:2433 FlatCAMApp.py:2445 +#: FlatCAMApp.py:2416 FlatCAMApp.py:2435 FlatCAMApp.py:2447 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Wählen Sie ein Gerber-, Geometrie- oder Excellon-Objekt zum " "Aktualisieren aus." -#: FlatCAMApp.py:2417 +#: FlatCAMApp.py:2419 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s wird aktualisiert und kehrt zur App zurück ..." -#: FlatCAMApp.py:2782 +#: FlatCAMApp.py:2784 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:2794 +#: FlatCAMApp.py:2796 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Fehler beim Parsen der Standarddatei." -#: FlatCAMApp.py:2815 FlatCAMApp.py:2819 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2821 msgid "Import FlatCAM Preferences" msgstr "FlatCAM-Voreinstellungen importieren" -#: FlatCAMApp.py:2825 +#: FlatCAMApp.py:2827 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Import der FlatCAM-Einstellungen wurde abgebrochen." -#: FlatCAMApp.py:2833 FlatCAMApp.py:2887 FlatCAMApp.py:3353 +#: FlatCAMApp.py:2835 FlatCAMApp.py:2894 FlatCAMApp.py:3360 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:2841 FlatCAMApp.py:3362 +#: FlatCAMApp.py:2843 FlatCAMApp.py:3369 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Fehler beim Parsen der Standarddatei." -#: FlatCAMApp.py:2844 +#: FlatCAMApp.py:2847 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Importierte Standardwerte aus %s" -#: FlatCAMApp.py:2859 FlatCAMApp.py:2864 +#: FlatCAMApp.py:2862 FlatCAMApp.py:2867 msgid "Export FlatCAM Preferences" msgstr "FlatCAM-Voreinstellungen exportieren" -#: FlatCAMApp.py:2871 +#: FlatCAMApp.py:2874 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Export der FlatCAM-Einstellungen wurde abgebrochen." -#: FlatCAMApp.py:2906 FlatCAMApp.py:3407 +#: FlatCAMApp.py:2882 FlatCAMApp.py:4683 FlatCAMApp.py:7131 FlatCAMApp.py:7241 +#: FlatCAMApp.py:7362 FlatCAMApp.py:7417 FlatCAMApp.py:7525 FlatCAMApp.py:7648 +#: FlatCAMObj.py:5812 flatcamTools/ToolSolderPaste.py:1400 +msgid "" +"[WARNING] Permission denied, saving not possible.\n" +"Most likely another app is holding the file open and not accessible." +msgstr "" +"[WARNING] Berechtigung verweigert, Speichern nicht möglich.\n" +"Wahrscheinlich hält eine andere App die Datei offen und ist nicht zugänglich." + +#: FlatCAMApp.py:2913 FlatCAMApp.py:3414 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Fehler beim Schreiben der Standardwerte in die Datei." -#: FlatCAMApp.py:2966 +#: FlatCAMApp.py:2973 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" "[ERROR_NOTCL] Fehler beim Öffnen der zuletzt geöffneten Datei zum Schreiben." -#: FlatCAMApp.py:2976 +#: FlatCAMApp.py:2983 msgid "[ERROR_NOTCL] Failed to open recent projects file for writing." msgstr "" "[ERROR_NOTCL] Fehler beim Öffnen der letzten Projektdatei zum Schreiben." -#: FlatCAMApp.py:3053 camlib.py:4469 +#: FlatCAMApp.py:3060 camlib.py:4471 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:3054 +#: FlatCAMApp.py:3061 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -167,11 +177,11 @@ msgstr "" "Objekt ({kind}) gescheitert weil: {error} \n" "\n" -#: FlatCAMApp.py:3074 +#: FlatCAMApp.py:3081 msgid "Converting units to " msgstr "Einheiten in umrechnen " -#: FlatCAMApp.py:3153 FlatCAMApp.py:3156 FlatCAMApp.py:3159 FlatCAMApp.py:3162 +#: FlatCAMApp.py:3160 FlatCAMApp.py:3163 FlatCAMApp.py:3166 FlatCAMApp.py:3169 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" "" -#: FlatCAMApp.py:3258 +#: FlatCAMApp.py:3265 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -203,36 +213,36 @@ msgstr "" "org/jpcgt/flatcam/src/Beta/\">hier.
DOWNLOAD-Bereich hier.
" -#: FlatCAMApp.py:3291 +#: FlatCAMApp.py:3298 msgid "Close" msgstr "Schließen" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5315 +#: FlatCAMApp.py:3418 FlatCAMApp.py:5325 msgid "[success] Defaults saved." msgstr "[success] Standardeinstellungen gespeichert." -#: FlatCAMApp.py:3432 +#: FlatCAMApp.py:3439 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Factory-Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:3441 +#: FlatCAMApp.py:3448 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Fehler beim Parsen der Werksvorgaben-Datei." -#: FlatCAMApp.py:3455 +#: FlatCAMApp.py:3462 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL] Fehler beim Schreiben der Werkseinstellungen in die Datei." -#: FlatCAMApp.py:3459 +#: FlatCAMApp.py:3466 msgid "Factory defaults saved." msgstr "Werkseinstellungen gespeichert." -#: FlatCAMApp.py:3464 flatcamGUI/FlatCAMGUI.py:3132 +#: FlatCAMApp.py:3471 flatcamGUI/FlatCAMGUI.py:3132 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Anwendung speichert das Projekt. Warten Sie mal ..." -#: FlatCAMApp.py:3469 FlatCAMTranslation.py:164 +#: FlatCAMApp.py:3476 FlatCAMTranslation.py:164 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -240,11 +250,11 @@ msgstr "" "In FlatCAM wurden Dateien / Objekte geändert.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:3472 FlatCAMApp.py:6177 FlatCAMTranslation.py:167 +#: FlatCAMApp.py:3479 FlatCAMApp.py:6192 FlatCAMTranslation.py:167 msgid "Save changes" msgstr "Änderungen speichern" -#: FlatCAMApp.py:3539 +#: FlatCAMApp.py:3546 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -262,46 +272,46 @@ msgstr "" "und das Ergebnis entspricht möglicherweise nicht dem, was erwartet wurde.\n" "Überprüfen Sie den generierten GCODE." -#: FlatCAMApp.py:3580 +#: FlatCAMApp.py:3587 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Gescheitert. Die Verbindung von Excellon funktioniert nur bei " "Excellon-Objekten." -#: FlatCAMApp.py:3602 +#: FlatCAMApp.py:3609 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Gescheitert. Das Gerber-Verbinden funktioniert nur bei Gerber-" "Objekten." -#: FlatCAMApp.py:3617 FlatCAMApp.py:3642 +#: FlatCAMApp.py:3624 FlatCAMApp.py:3649 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Gescheitert. Wählen Sie ein Geometrieobjekt aus und versuchen " "Sie es erneut." -#: FlatCAMApp.py:3621 FlatCAMApp.py:3646 +#: FlatCAMApp.py:3628 FlatCAMApp.py:3653 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Erwartete eine FlatCAMGeometry, bekam % s" -#: FlatCAMApp.py:3634 +#: FlatCAMApp.py:3641 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Ein Geometrieobjekt wurde in den MultiGeo-Typ konvertiert." -#: FlatCAMApp.py:3660 +#: FlatCAMApp.py:3667 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Ein Geometrieobjekt wurde in den SingleGeo-Typ konvertiert." -#: FlatCAMApp.py:3901 +#: FlatCAMApp.py:3908 msgid "Toggle Units" msgstr "Einheiten umschalten" -#: FlatCAMApp.py:3903 +#: FlatCAMApp.py:3910 msgid "Change project units ..." msgstr " Projekteinheiten ändern ... " -#: FlatCAMApp.py:3904 +#: FlatCAMApp.py:3911 msgid "" "Changing the units of the project causes all geometrical properties of all " "objects to be scaled accordingly.\n" @@ -311,43 +321,43 @@ msgstr "" "Eigenschaften aller Objekte entsprechend skaliert.\n" "Fortsetzen?" -#: FlatCAMApp.py:3906 FlatCAMApp.py:4756 FlatCAMApp.py:6456 FlatCAMApp.py:6469 -#: FlatCAMApp.py:6709 FlatCAMApp.py:6719 +#: FlatCAMApp.py:3913 FlatCAMApp.py:4766 FlatCAMApp.py:6471 FlatCAMApp.py:6484 +#: FlatCAMApp.py:6724 FlatCAMApp.py:6734 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3954 +#: FlatCAMApp.py:3961 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Einheiten in umgerechnet %s" -#: FlatCAMApp.py:3965 +#: FlatCAMApp.py:3972 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Einheitenumrechnung abgebrochen." -#: FlatCAMApp.py:4625 +#: FlatCAMApp.py:4632 msgid "Open file" msgstr "Datei öffnen" -#: FlatCAMApp.py:4656 FlatCAMApp.py:4661 +#: FlatCAMApp.py:4663 FlatCAMApp.py:4668 msgid "Export G-Code ..." msgstr "G-Code exportieren ..." -#: FlatCAMApp.py:4664 +#: FlatCAMApp.py:4671 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Exportcode wurde abgebrochen." -#: FlatCAMApp.py:4674 +#: FlatCAMApp.py:4680 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Keine solche Datei oder Ordner" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4691 #, python-format msgid "Saved to: %s" msgstr "Gespeichert in: %s" -#: FlatCAMApp.py:4744 FlatCAMApp.py:4777 FlatCAMApp.py:4788 FlatCAMApp.py:4799 -#: flatcamTools/ToolNonCopperClear.py:490 flatcamTools/ToolSolderPaste.py:767 +#: FlatCAMApp.py:4754 FlatCAMApp.py:4787 FlatCAMApp.py:4798 FlatCAMApp.py:4809 +#: flatcamTools/ToolNonCopperClear.py:563 flatcamTools/ToolSolderPaste.py:767 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." @@ -355,12 +365,12 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie einen Werkzeugdurchmesser mit einem Wert " "ungleich Null im Float-Format ein." -#: FlatCAMApp.py:4749 FlatCAMApp.py:4782 FlatCAMApp.py:4793 FlatCAMApp.py:4804 +#: FlatCAMApp.py:4759 FlatCAMApp.py:4792 FlatCAMApp.py:4803 FlatCAMApp.py:4814 #: flatcamGUI/FlatCAMGUI.py:3027 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Addierwerkzeug abgebrochen ..." -#: FlatCAMApp.py:4752 +#: FlatCAMApp.py:4762 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -369,35 +379,35 @@ msgstr "" "ist.\n" "Gehen Sie zu Einstellungen -> Allgemein - Erweiterte Optionen anzeigen." -#: FlatCAMApp.py:4864 +#: FlatCAMApp.py:4874 msgid "Object(s) deleted ..." msgstr "Objekt (e) gelöscht ..." -#: FlatCAMApp.py:4868 +#: FlatCAMApp.py:4878 msgid "Failed. No object(s) selected..." msgstr "Gescheitert. Kein Objekt ausgewählt ..." -#: FlatCAMApp.py:4870 +#: FlatCAMApp.py:4880 msgid "Save the work in Editor and try again ..." msgstr "Speichern Sie die Arbeit im Editor und versuchen Sie es erneut ..." -#: FlatCAMApp.py:4904 +#: FlatCAMApp.py:4914 msgid "Click to set the origin ..." msgstr "Klicken Sie hier, um den Ursprung festzulegen ..." -#: FlatCAMApp.py:4916 +#: FlatCAMApp.py:4926 msgid "Jump to ..." msgstr "Springen zu ..." -#: FlatCAMApp.py:4917 +#: FlatCAMApp.py:4927 msgid "Enter the coordinates in format X,Y:" msgstr "Geben Sie die Koordinaten im Format X, Y ein:" -#: FlatCAMApp.py:4924 +#: FlatCAMApp.py:4934 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" -#: FlatCAMApp.py:4942 flatcamEditors/FlatCAMExcEditor.py:2321 +#: FlatCAMApp.py:4952 flatcamEditors/FlatCAMExcEditor.py:2321 #: flatcamEditors/FlatCAMExcEditor.py:2328 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -411,25 +421,25 @@ msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" msgid "[success] Done." msgstr "[success] Erledigt." -#: FlatCAMApp.py:5074 FlatCAMApp.py:5141 +#: FlatCAMApp.py:5084 FlatCAMApp.py:5151 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Es ist kein Objekt ausgewählt. Wählen Sie ein Objekt und " "versuchen Sie es erneut." -#: FlatCAMApp.py:5182 +#: FlatCAMApp.py:5192 msgid "[success] Origin set ..." msgstr "[success] Ursprung gesetzt ..." -#: FlatCAMApp.py:5201 flatcamGUI/GUIElements.py:1375 +#: FlatCAMApp.py:5211 flatcamGUI/GUIElements.py:1375 msgid "Preferences" msgstr "Einstellungen" -#: FlatCAMApp.py:5267 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] Preferences edited but not saved." msgstr "[WARNING_NOTCL] Einstellungen bearbeitet, aber nicht gespeichert." -#: FlatCAMApp.py:5301 +#: FlatCAMApp.py:5311 msgid "" "One or more values are changed.\n" "Do you want to save the Preferences?" @@ -437,81 +447,81 @@ msgstr "" "Ein oder mehrere Werte werden geändert.\n" "Möchten Sie die Einstellungen speichern?" -#: FlatCAMApp.py:5303 flatcamGUI/FlatCAMGUI.py:953 +#: FlatCAMApp.py:5313 flatcamGUI/FlatCAMGUI.py:953 msgid "Save Preferences" msgstr "Voreinstell. speech." -#: FlatCAMApp.py:5330 +#: FlatCAMApp.py:5340 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der Y-Achse zu kippen." -#: FlatCAMApp.py:5355 +#: FlatCAMApp.py:5365 msgid "[success] Flip on Y axis done." msgstr "[success] Y-Achse umdrehen fertig." -#: FlatCAMApp.py:5357 FlatCAMApp.py:5397 +#: FlatCAMApp.py:5367 FlatCAMApp.py:5407 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5498 flatcamTools/ToolTransform.py:747 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Aufgrund von %s wurde die Flip-Aktion nicht ausgeführt." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der X-Achse zu kippen." -#: FlatCAMApp.py:5395 +#: FlatCAMApp.py:5405 msgid "[success] Flip on X axis done." msgstr "[success] Dreh auf der X-Achse fertig." -#: FlatCAMApp.py:5410 +#: FlatCAMApp.py:5420 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Kein Objekt zum Drehen ausgewählt." -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Transform" msgstr "Verwandeln" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Enter the Angle value:" msgstr "Geben Sie den Winkelwert ein:" -#: FlatCAMApp.py:5443 +#: FlatCAMApp.py:5453 msgid "[success] Rotation done." msgstr "[success] Rotation erfolgt." -#: FlatCAMApp.py:5445 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5455 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5427 flatcamTools/ToolTransform.py:676 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" "[ERROR_NOTCL] Aufgrund von %s wurde keine Rotationsbewegung ausgeführt." -#: FlatCAMApp.py:5456 +#: FlatCAMApp.py:5466 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der X-Achse " "ausgewählt." -#: FlatCAMApp.py:5477 +#: FlatCAMApp.py:5487 msgid "[success] Skew on X axis done." msgstr "[success] Neigung auf der X-Achse fertig." -#: FlatCAMApp.py:5487 +#: FlatCAMApp.py:5497 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der Y-Achse " "ausgewählt." -#: FlatCAMApp.py:5508 +#: FlatCAMApp.py:5518 msgid "[success] Skew on Y axis done." msgstr "[success] Neigung auf der Y-Achse fertig." -#: FlatCAMApp.py:5558 +#: FlatCAMApp.py:5568 msgid "Grid On/Off" msgstr "Raster ein/aus" -#: FlatCAMApp.py:5571 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5581 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2424 #: flatcamEditors/FlatCAMGrbEditor.py:5016 flatcamGUI/ObjectUI.py:989 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:207 @@ -521,7 +531,7 @@ msgstr "Raster ein/aus" msgid "Add" msgstr "Hinzufügen" -#: FlatCAMApp.py:5572 FlatCAMObj.py:3361 +#: FlatCAMApp.py:5582 FlatCAMObj.py:3349 #: flatcamEditors/FlatCAMGrbEditor.py:2429 flatcamGUI/FlatCAMGUI.py:523 #: flatcamGUI/FlatCAMGUI.py:723 flatcamGUI/FlatCAMGUI.py:1630 #: flatcamGUI/FlatCAMGUI.py:1970 flatcamGUI/ObjectUI.py:1005 @@ -530,15 +540,15 @@ msgstr "Hinzufügen" msgid "Delete" msgstr "Löschen" -#: FlatCAMApp.py:5585 +#: FlatCAMApp.py:5595 msgid "New Grid ..." msgstr "Neues Raster ..." -#: FlatCAMApp.py:5586 +#: FlatCAMApp.py:5596 msgid "Enter a Grid Value:" msgstr "Geben Sie einen Rasterwert ein:" -#: FlatCAMApp.py:5594 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5604 FlatCAMApp.py:5631 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -546,56 +556,56 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie im Float-Format einen Rasterwert mit einem " "Wert ungleich Null ein." -#: FlatCAMApp.py:5600 +#: FlatCAMApp.py:5610 msgid "[success] New Grid added ..." msgstr "[success] Neues Netz hinzugefügt ..." -#: FlatCAMApp.py:5603 +#: FlatCAMApp.py:5613 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Netz existiert bereits ..." -#: FlatCAMApp.py:5606 +#: FlatCAMApp.py:5616 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Neues Netz wurde abgebrochen ..." -#: FlatCAMApp.py:5628 +#: FlatCAMApp.py:5638 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Rasterwert existiert nicht ..." -#: FlatCAMApp.py:5631 +#: FlatCAMApp.py:5641 msgid "[success] Grid Value deleted ..." msgstr "[success] Rasterwert gelöscht ..." -#: FlatCAMApp.py:5634 +#: FlatCAMApp.py:5644 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Rasterwert löschen abgebrochen ..." -#: FlatCAMApp.py:5640 +#: FlatCAMApp.py:5650 msgid "Key Shortcut List" msgstr "Tastenkürzel Liste" -#: FlatCAMApp.py:5673 +#: FlatCAMApp.py:5683 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Kein Objekt zum Kopieren des Namens ausgewählt" -#: FlatCAMApp.py:5677 +#: FlatCAMApp.py:5687 msgid "Name copied on clipboard ..." msgstr "Name in Zwischenablage kopiert ..." -#: FlatCAMApp.py:5719 flatcamEditors/FlatCAMGrbEditor.py:4012 +#: FlatCAMApp.py:5728 flatcamEditors/FlatCAMGrbEditor.py:4012 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Koordinaten in die Zwischenablage kopiert." -#: FlatCAMApp.py:5975 FlatCAMApp.py:5978 FlatCAMApp.py:5981 FlatCAMApp.py:5984 -#: FlatCAMApp.py:5999 FlatCAMApp.py:6002 FlatCAMApp.py:6005 FlatCAMApp.py:6008 -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 FlatCAMApp.py:6054 FlatCAMApp.py:6057 +#: FlatCAMApp.py:5984 FlatCAMApp.py:5987 FlatCAMApp.py:5990 FlatCAMApp.py:5993 +#: FlatCAMApp.py:6008 FlatCAMApp.py:6011 FlatCAMApp.py:6014 FlatCAMApp.py:6017 +#: FlatCAMApp.py:6057 FlatCAMApp.py:6060 FlatCAMApp.py:6063 FlatCAMApp.py:6066 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} ausgewählt" -#: FlatCAMApp.py:6174 +#: FlatCAMApp.py:6189 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -605,112 +615,112 @@ msgstr "" "Wenn Sie ein neues Projekt erstellen, werden diese gelöscht.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:6195 +#: FlatCAMApp.py:6210 msgid "[success] New Project created..." msgstr "[success] Neues Projekt erstellt ..." -#: FlatCAMApp.py:6315 FlatCAMApp.py:6318 flatcamGUI/FlatCAMGUI.py:604 +#: FlatCAMApp.py:6330 FlatCAMApp.py:6333 flatcamGUI/FlatCAMGUI.py:604 #: flatcamGUI/FlatCAMGUI.py:1849 msgid "Open Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:6323 +#: FlatCAMApp.py:6338 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Offener Gerber abgebrochen." -#: FlatCAMApp.py:6344 FlatCAMApp.py:6347 flatcamGUI/FlatCAMGUI.py:605 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6362 flatcamGUI/FlatCAMGUI.py:605 #: flatcamGUI/FlatCAMGUI.py:1850 msgid "Open Excellon" msgstr "Excellon öffnen" -#: FlatCAMApp.py:6352 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Offener Excellon abgebrochen." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6389 FlatCAMApp.py:6392 msgid "Open G-Code" msgstr "G-Code öffnen" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6397 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Geöffneter G-Code wurde abgebrochen." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6415 FlatCAMApp.py:6418 msgid "Open Project" msgstr "Offenes Projekt" -#: FlatCAMApp.py:6411 +#: FlatCAMApp.py:6426 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Projekt abbrechen abgebrochen." -#: FlatCAMApp.py:6430 FlatCAMApp.py:6433 +#: FlatCAMApp.py:6445 FlatCAMApp.py:6448 msgid "Open Configuration File" msgstr "Offene Einstellungsdatei" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6452 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Offene Konfiguration abgebrochen." -#: FlatCAMApp.py:6452 FlatCAMApp.py:6705 FlatCAMApp.py:8951 FlatCAMApp.py:8971 -#: FlatCAMApp.py:8992 FlatCAMApp.py:9014 +#: FlatCAMApp.py:6467 FlatCAMApp.py:6720 FlatCAMApp.py:9000 FlatCAMApp.py:9020 +#: FlatCAMApp.py:9041 FlatCAMApp.py:9063 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt" -#: FlatCAMApp.py:6453 FlatCAMApp.py:6706 +#: FlatCAMApp.py:6468 FlatCAMApp.py:6721 msgid "Please Select a Geometry object to export" msgstr "Bitte wählen Sie ein Geometrieobjekt zum Exportieren aus" -#: FlatCAMApp.py:6466 +#: FlatCAMApp.py:6481 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Es können nur Geometrie-, Gerber- und CNCJob-Objekte verwendet " "werden." -#: FlatCAMApp.py:6479 FlatCAMApp.py:6483 +#: FlatCAMApp.py:6494 FlatCAMApp.py:6498 msgid "Export SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6488 +#: FlatCAMApp.py:6503 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG abgebrochen." -#: FlatCAMApp.py:6507 +#: FlatCAMApp.py:6522 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Daten müssen ein 3D-Array mit der letzten Dimension 3 oder 4 " "sein" -#: FlatCAMApp.py:6513 FlatCAMApp.py:6517 +#: FlatCAMApp.py:6528 FlatCAMApp.py:6532 msgid "Export PNG Image" msgstr "PNG-Bild exportieren" -#: FlatCAMApp.py:6522 +#: FlatCAMApp.py:6537 msgid "Export PNG cancelled." msgstr "Export PNG abgebrochen." -#: FlatCAMApp.py:6541 +#: FlatCAMApp.py:6556 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6546 FlatCAMApp.py:6669 +#: FlatCAMApp.py:6561 FlatCAMApp.py:6684 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Gerber-Objekte können als Gerber-Dateien " "gespeichert werden ..." -#: FlatCAMApp.py:6558 +#: FlatCAMApp.py:6573 msgid "Save Gerber source file" msgstr "Gerber-Quelldatei speichern" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6578 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Gerber Quelldatei speichern abgebrochen." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6597 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -718,22 +728,22 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt Bitte wählen Sie ein Excellon-Objekt " "zum Exportieren aus." -#: FlatCAMApp.py:6587 FlatCAMApp.py:6628 +#: FlatCAMApp.py:6602 FlatCAMApp.py:6643 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Excellon-Objekte können als Excellon-" "Dateien gespeichert werden ..." -#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 +#: FlatCAMApp.py:6610 FlatCAMApp.py:6614 msgid "Save Excellon source file" msgstr "Speichern Sie die Excellon-Quelldatei" -#: FlatCAMApp.py:6604 +#: FlatCAMApp.py:6619 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Speichern der Excellon-Quelldatei abgebrochen." -#: FlatCAMApp.py:6623 +#: FlatCAMApp.py:6638 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -741,70 +751,70 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Excellon-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6636 FlatCAMApp.py:6640 +#: FlatCAMApp.py:6651 FlatCAMApp.py:6655 msgid "Export Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:6645 +#: FlatCAMApp.py:6660 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon wurde abgebrochen." -#: FlatCAMApp.py:6664 +#: FlatCAMApp.py:6679 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6677 FlatCAMApp.py:6681 +#: FlatCAMApp.py:6692 FlatCAMApp.py:6696 msgid "Export Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:6686 +#: FlatCAMApp.py:6701 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber abgebrochen." -#: FlatCAMApp.py:6716 +#: FlatCAMApp.py:6731 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Es können nur Geometrieobjekte verwendet werden." -#: FlatCAMApp.py:6730 FlatCAMApp.py:6734 +#: FlatCAMApp.py:6745 FlatCAMApp.py:6749 msgid "Export DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:6740 +#: FlatCAMApp.py:6755 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF wurde abgebrochen." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6763 +#: FlatCAMApp.py:6775 FlatCAMApp.py:6778 msgid "Import SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:6772 +#: FlatCAMApp.py:6787 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG abgebrochen." -#: FlatCAMApp.py:6791 FlatCAMApp.py:6795 +#: FlatCAMApp.py:6806 FlatCAMApp.py:6810 msgid "Import DXF" msgstr "Importieren Sie DXF" -#: FlatCAMApp.py:6804 +#: FlatCAMApp.py:6819 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6822 +#: FlatCAMApp.py:6837 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6842 +#: FlatCAMApp.py:6857 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Wählen Sie eine Gerber- oder Excellon-Datei aus, um die " "Quelldatei anzuzeigen." -#: FlatCAMApp.py:6849 +#: FlatCAMApp.py:6864 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -812,25 +822,25 @@ msgstr "" "[WARNING_NOTCL] Es gibt kein ausgewähltes Objekt, für das man seinen " "Quelldateien sehen kann." -#: FlatCAMApp.py:6857 +#: FlatCAMApp.py:6872 msgid "Source Editor" msgstr "Quelleditor" -#: FlatCAMApp.py:6867 +#: FlatCAMApp.py:6882 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6879 FlatCAMApp.py:8024 FlatCAMObj.py:5677 +#: FlatCAMApp.py:6894 FlatCAMApp.py:8073 FlatCAMObj.py:5593 #: flatcamTools/ToolSolderPaste.py:1284 msgid "Code Editor" msgstr "Code-Editor" -#: FlatCAMApp.py:6891 +#: FlatCAMApp.py:6906 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6894 +#: FlatCAMApp.py:6909 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -874,98 +884,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6917 FlatCAMApp.py:6920 +#: FlatCAMApp.py:6932 FlatCAMApp.py:6935 msgid "Open TCL script" msgstr "Öffnen Sie das TCL-Skript" -#: FlatCAMApp.py:6928 +#: FlatCAMApp.py:6943 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL-Skript wurde abgebrochen." -#: FlatCAMApp.py:6940 +#: FlatCAMApp.py:6955 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6966 FlatCAMApp.py:6969 +#: FlatCAMApp.py:6981 FlatCAMApp.py:6984 msgid "Run TCL script" msgstr "Führen Sie das TCL-Skript aus" -#: FlatCAMApp.py:6977 +#: FlatCAMApp.py:6992 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Das TCL-Skript wird abgebrochen." -#: FlatCAMApp.py:7029 FlatCAMApp.py:7033 +#: FlatCAMApp.py:7044 FlatCAMApp.py:7048 msgid "Save Project As ..." msgstr "Projekt speichern als ..." -#: FlatCAMApp.py:7030 +#: FlatCAMApp.py:7045 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Projekt_{date}" -#: FlatCAMApp.py:7038 +#: FlatCAMApp.py:7053 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Projekt speichern abgebrochen" -#: FlatCAMApp.py:7083 +#: FlatCAMApp.py:7098 msgid "Exporting SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:7117 FlatCAMApp.py:7223 FlatCAMApp.py:7338 +#: FlatCAMApp.py:7138 FlatCAMApp.py:7249 FlatCAMApp.py:7370 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG-Datei in exportiert %s" -#: FlatCAMApp.py:7148 FlatCAMApp.py:7269 +#: FlatCAMApp.py:7169 FlatCAMApp.py:7295 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Kein Objektfeld. Stattdessen verwenden %s" -#: FlatCAMApp.py:7226 FlatCAMApp.py:7341 +#: FlatCAMApp.py:7252 FlatCAMApp.py:7373 msgid "Generating Film ... Please wait." msgstr "Film wird erstellt ... Bitte warten Sie." -#: FlatCAMApp.py:7489 +#: FlatCAMApp.py:7532 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon-Datei nach exportiert %s" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7539 msgid "Exporting Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:7501 FlatCAMApp.py:7508 +#: FlatCAMApp.py:7544 FlatCAMApp.py:7551 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Excellon-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7655 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber-Datei in exportiert %s" -#: FlatCAMApp.py:7613 +#: FlatCAMApp.py:7662 msgid "Exporting Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:7618 FlatCAMApp.py:7625 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7674 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Gerber-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7665 +#: FlatCAMApp.py:7714 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF-Datei in exportiert %s" -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7720 msgid "Exporting DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:7676 FlatCAMApp.py:7683 +#: FlatCAMApp.py:7725 FlatCAMApp.py:7732 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[WARNING_NOTCL] DXF-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7703 FlatCAMApp.py:7745 FlatCAMApp.py:7789 +#: FlatCAMApp.py:7752 FlatCAMApp.py:7794 FlatCAMApp.py:7838 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -973,98 +983,99 @@ msgstr "" "[ERROR_NOTCL] Nicht unterstützte Art wird als Parameter ausgewählt. Nur " "Geometrie und Gerber werden unterstützt" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7762 msgid "Importing SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:7724 FlatCAMApp.py:7766 FlatCAMApp.py:7809 FlatCAMApp.py:7886 -#: FlatCAMApp.py:7947 FlatCAMApp.py:8010 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7773 FlatCAMApp.py:7815 FlatCAMApp.py:7858 FlatCAMApp.py:7935 +#: FlatCAMApp.py:7996 FlatCAMApp.py:8059 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Geöffnet: %s" -#: FlatCAMApp.py:7755 +#: FlatCAMApp.py:7804 msgid "Importing DXF" msgstr "DXF importieren" -#: FlatCAMApp.py:7797 +#: FlatCAMApp.py:7846 msgid "Importing Image" msgstr "Bild importieren" -#: FlatCAMApp.py:7838 FlatCAMApp.py:7840 +#: FlatCAMApp.py:7887 FlatCAMApp.py:7889 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Datei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7843 +#: FlatCAMApp.py:7892 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Fehler beim Parsen der Datei: {name}. {error}" -#: FlatCAMApp.py:7850 flatcamEditors/FlatCAMGrbEditor.py:3832 +#: FlatCAMApp.py:7899 FlatCAMObj.py:4296 +#: flatcamEditors/FlatCAMGrbEditor.py:3832 msgid "[ERROR] An internal error has occurred. See shell.\n" msgstr "[ERROR] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7859 +#: FlatCAMApp.py:7908 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Objekt ist keine Gerber-Datei oder leer. Abbruch der " "Objekterstellung" -#: FlatCAMApp.py:7867 +#: FlatCAMApp.py:7916 msgid "Opening Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:7877 +#: FlatCAMApp.py:7926 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Gerber öffnen ist fehlgeschlagen. Wahrscheinlich keine Gerber-" "Datei." -#: FlatCAMApp.py:7910 flatcamTools/ToolPcbWizard.py:418 +#: FlatCAMApp.py:7959 flatcamTools/ToolPcbWizard.py:418 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Dies ist keine Excellon-Datei." -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7962 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Kann Datei nicht öffnen: %s" -#: FlatCAMApp.py:7918 flatcamTools/ToolPcbWizard.py:427 +#: FlatCAMApp.py:7967 flatcamTools/ToolPcbWizard.py:427 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7931 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7980 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:440 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Keine Geometrie in der Datei gefunden: %s" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7983 msgid "Opening Excellon." msgstr "Eröffnung Excellon." -#: FlatCAMApp.py:7940 +#: FlatCAMApp.py:7989 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Die Excellon-Datei konnte nicht geöffnet werden. " "Wahrscheinlich keine Excellon-Datei." -#: FlatCAMApp.py:7977 +#: FlatCAMApp.py:8026 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Gescheitert zu öffnen %s" -#: FlatCAMApp.py:7987 +#: FlatCAMApp.py:8036 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Dies ist kein GCODE" -#: FlatCAMApp.py:7993 +#: FlatCAMApp.py:8042 msgid "Opening G-Code." msgstr "G-Code öffnen." -#: FlatCAMApp.py:8001 +#: FlatCAMApp.py:8050 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -1075,26 +1086,26 @@ msgstr "" "Der Versuch, ein FlatCAM-CNCJob-Objekt aus einer G-Code-Datei zu erstellen, " "ist während der Verarbeitung fehlgeschlagen" -#: FlatCAMApp.py:8041 +#: FlatCAMApp.py:8090 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Fehler beim Öffnen der Konfigurationsdatei: %s" -#: FlatCAMApp.py:8067 FlatCAMApp.py:8084 +#: FlatCAMApp.py:8116 FlatCAMApp.py:8133 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Projektdatei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:8107 +#: FlatCAMApp.py:8156 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Projekt geladen von: %s" -#: FlatCAMApp.py:8213 +#: FlatCAMApp.py:8262 msgid "Available commands:\n" msgstr "Verfügbare Befehle:\n" -#: FlatCAMApp.py:8215 +#: FlatCAMApp.py:8264 msgid "" "\n" "\n" @@ -1106,38 +1117,38 @@ msgstr "" "Geben Sie help für die Verwendung ein.\n" "Beispiel: help open_gerber" -#: FlatCAMApp.py:8365 +#: FlatCAMApp.py:8414 msgid "Shows list of commands." msgstr "Zeigt eine Liste von Befehlen an." -#: FlatCAMApp.py:8422 +#: FlatCAMApp.py:8471 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Fehler beim Laden der letzten Elementliste." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8478 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" "[ERROR_NOTCL] Liste der letzten Artikel konnte nicht analysiert werden." -#: FlatCAMApp.py:8439 +#: FlatCAMApp.py:8488 msgid "[ERROR_NOTCL] Failed to load recent projects item list." msgstr "[ERROR_NOTCL] Fehler beim Laden der Artikelliste der letzten Projekte." -#: FlatCAMApp.py:8446 +#: FlatCAMApp.py:8495 msgid "[ERROR_NOTCL] Failed to parse recent project item list." msgstr "" "[ERROR_NOTCL] Fehler beim Analysieren der Liste der zuletzt verwendeten " "Projektelemente." -#: FlatCAMApp.py:8505 FlatCAMApp.py:8528 +#: FlatCAMApp.py:8554 FlatCAMApp.py:8577 msgid "Clear Recent files" msgstr "Letzte Dateien löschen" -#: FlatCAMApp.py:8545 flatcamGUI/FlatCAMGUI.py:970 +#: FlatCAMApp.py:8594 flatcamGUI/FlatCAMGUI.py:970 msgid "Shortcut Key List" msgstr " Liste der Tastenkombinationen " -#: FlatCAMApp.py:8552 +#: FlatCAMApp.py:8601 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1237,27 +1248,27 @@ msgstr "" "strong> oder über eine eigene Tastenkombination: F3. " "

" -#: FlatCAMApp.py:8659 +#: FlatCAMApp.py:8708 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Fehler bei der Suche nach der neuesten Version. Konnte keine " "Verbindung herstellen." -#: FlatCAMApp.py:8666 +#: FlatCAMApp.py:8715 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Informationen zur neuesten Version konnten nicht analysiert " "werden." -#: FlatCAMApp.py:8676 +#: FlatCAMApp.py:8725 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM ist auf dem neuesten Version!" -#: FlatCAMApp.py:8681 +#: FlatCAMApp.py:8730 msgid "Newer Version Available" msgstr "Neuere Version verfügbar" -#: FlatCAMApp.py:8682 +#: FlatCAMApp.py:8731 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1265,58 +1276,58 @@ msgstr "" "Es gibt eine neuere Version von FlatCAM zum Download:\n" "\n" -#: FlatCAMApp.py:8684 +#: FlatCAMApp.py:8733 msgid "info" msgstr "Info" -#: FlatCAMApp.py:8703 +#: FlatCAMApp.py:8752 msgid "[success] All plots disabled." msgstr "[success] Alle Diagramme sind deaktiviert." -#: FlatCAMApp.py:8709 +#: FlatCAMApp.py:8758 msgid "[success] All non selected plots disabled." msgstr "[success] Alle nicht ausgewählten Diagramme sind deaktiviert." -#: FlatCAMApp.py:8715 +#: FlatCAMApp.py:8764 msgid "[success] All plots enabled." msgstr "[success] Alle Diagramme aktiviert." -#: FlatCAMApp.py:8721 +#: FlatCAMApp.py:8770 msgid "[success] Selected plots enabled..." msgstr "[success] Ausgewählte Grundstücke aktiviert ..." -#: FlatCAMApp.py:8729 +#: FlatCAMApp.py:8778 msgid "[success] Selected plots disabled..." msgstr "[success] Ausgewählte Grundstücke deaktiviert ..." -#: FlatCAMApp.py:8739 FlatCAMApp.py:8766 FlatCAMApp.py:8783 +#: FlatCAMApp.py:8788 FlatCAMApp.py:8815 FlatCAMApp.py:8832 msgid "Working ..." msgstr "Arbeiten ..." -#: FlatCAMApp.py:8820 +#: FlatCAMApp.py:8869 msgid "Saving FlatCAM Project" msgstr "FlatCAM-Projekt speichern" -#: FlatCAMApp.py:8841 FlatCAMApp.py:8872 +#: FlatCAMApp.py:8890 FlatCAMApp.py:8921 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Projekt gespeichert in: %s" -#: FlatCAMApp.py:8859 +#: FlatCAMApp.py:8908 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Fehler beim Überprüfen der Projektdatei:%s. Versuchen Sie es " "erneut zu speichern." -#: FlatCAMApp.py:8866 +#: FlatCAMApp.py:8915 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Die gespeicherte Projektdatei konnte nicht analysiert werden:" "%s. Versuchen Sie es erneut zu speichern." -#: FlatCAMApp.py:8874 +#: FlatCAMApp.py:8923 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1328,79 +1339,80 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name geändert von {old} zu {new}" -#: FlatCAMObj.py:555 FlatCAMObj.py:2095 FlatCAMObj.py:3366 FlatCAMObj.py:5570 +#: FlatCAMObj.py:558 FlatCAMObj.py:2098 FlatCAMObj.py:3354 FlatCAMObj.py:5486 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:567 FlatCAMObj.py:2111 FlatCAMObj.py:3388 FlatCAMObj.py:5576 +#: FlatCAMObj.py:570 FlatCAMObj.py:2114 FlatCAMObj.py:3376 FlatCAMObj.py:5492 msgid "Advanced" msgstr "Erweitert" -#: FlatCAMObj.py:920 FlatCAMObj.py:1018 +#: FlatCAMObj.py:923 FlatCAMObj.py:1021 msgid "[ERROR_NOTCL] Isolation geometry could not be generated." msgstr "[ERROR_NOTCL] Isolationsgeometrie konnte nicht generiert werden." -#: FlatCAMObj.py:957 FlatCAMObj.py:3061 FlatCAMObj.py:3323 FlatCAMObj.py:3632 +#: FlatCAMObj.py:960 FlatCAMObj.py:3049 FlatCAMObj.py:3311 FlatCAMObj.py:3589 msgid "Rough" msgstr "Rau" -#: FlatCAMObj.py:975 FlatCAMObj.py:1034 +#: FlatCAMObj.py:978 FlatCAMObj.py:1037 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Isolationsgeometrie erstellt: %s" -#: FlatCAMObj.py:1213 +#: FlatCAMObj.py:1216 msgid "Plotting Apertures" msgstr "Plotten Apertures" -#: FlatCAMObj.py:1936 flatcamEditors/FlatCAMExcEditor.py:1369 +#: FlatCAMObj.py:1939 flatcamEditors/FlatCAMExcEditor.py:1369 msgid "Total Drills" msgstr "Bohrungen insgesamt" -#: FlatCAMObj.py:1962 flatcamEditors/FlatCAMExcEditor.py:1401 +#: FlatCAMObj.py:1965 flatcamEditors/FlatCAMExcEditor.py:1401 msgid "Total Slots" msgstr "Schlitz insgesamt" -#: FlatCAMObj.py:2169 FlatCAMObj.py:3440 FlatCAMObj.py:3771 FlatCAMObj.py:3962 -#: FlatCAMObj.py:3975 FlatCAMObj.py:4095 FlatCAMObj.py:4511 FlatCAMObj.py:4747 -#: FlatCAMObj.py:5151 flatcamEditors/FlatCAMExcEditor.py:1475 +#: FlatCAMObj.py:2172 FlatCAMObj.py:3427 FlatCAMObj.py:3717 FlatCAMObj.py:3904 +#: FlatCAMObj.py:3915 FlatCAMObj.py:4033 FlatCAMObj.py:4438 FlatCAMObj.py:4664 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1475 #: flatcamTools/ToolCalculators.py:304 flatcamTools/ToolCalculators.py:315 #: flatcamTools/ToolCalculators.py:327 flatcamTools/ToolCalculators.py:342 #: flatcamTools/ToolCalculators.py:355 flatcamTools/ToolCalculators.py:369 #: flatcamTools/ToolCalculators.py:380 flatcamTools/ToolCalculators.py:391 #: flatcamTools/ToolCalculators.py:402 flatcamTools/ToolFilm.py:241 -#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:481 -#: flatcamTools/ToolNonCopperClear.py:553 -#: flatcamTools/ToolNonCopperClear.py:630 -#: flatcamTools/ToolNonCopperClear.py:647 flatcamTools/ToolPaint.py:537 -#: flatcamTools/ToolPaint.py:609 flatcamTools/ToolPaint.py:746 -#: flatcamTools/ToolPaint.py:846 flatcamTools/ToolPaint.py:1000 -#: flatcamTools/ToolPanelize.py:387 flatcamTools/ToolPanelize.py:399 -#: flatcamTools/ToolPanelize.py:412 flatcamTools/ToolPanelize.py:425 -#: flatcamTools/ToolPanelize.py:437 flatcamTools/ToolPanelize.py:448 -#: flatcamTools/ToolSolderPaste.py:758 flatcamTools/ToolSolderPaste.py:830 +#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:554 +#: flatcamTools/ToolNonCopperClear.py:626 +#: flatcamTools/ToolNonCopperClear.py:703 +#: flatcamTools/ToolNonCopperClear.py:720 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolPaint.py:615 flatcamTools/ToolPaint.py:752 +#: flatcamTools/ToolPaint.py:925 flatcamTools/ToolPaint.py:1079 +#: flatcamTools/ToolPaint.py:1379 flatcamTools/ToolPanelize.py:387 +#: flatcamTools/ToolPanelize.py:399 flatcamTools/ToolPanelize.py:412 +#: flatcamTools/ToolPanelize.py:425 flatcamTools/ToolPanelize.py:437 +#: flatcamTools/ToolPanelize.py:448 flatcamTools/ToolSolderPaste.py:758 +#: flatcamTools/ToolSolderPaste.py:830 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Falsches Wertformat eingegeben, eine Zahl verwenden." -#: FlatCAMObj.py:2393 FlatCAMObj.py:2485 FlatCAMObj.py:2608 +#: FlatCAMObj.py:2396 FlatCAMObj.py:2488 FlatCAMObj.py:2611 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Bitte wählen Sie ein oder mehrere Werkzeuge aus der Liste aus " "und versuchen Sie es erneut." -#: FlatCAMObj.py:2400 +#: FlatCAMObj.py:2403 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Das Fräswerkzeug für BOHRER ist größer als die Lochgröße. " "Abgebrochen." -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Tool_nr" msgstr "Werkzeugnummer" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 #: flatcamEditors/FlatCAMExcEditor.py:820 #: flatcamEditors/FlatCAMExcEditor.py:2021 flatcamGUI/ObjectUI.py:553 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1408,22 +1420,22 @@ msgstr "Werkzeugnummer" msgid "Diameter" msgstr "Durchmesser" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Drills_Nr" msgstr "Bohrnummer" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Slots_Nr" msgstr "Schlitznummer" -#: FlatCAMObj.py:2495 +#: FlatCAMObj.py:2498 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Das Fräswerkzeug für SCHLITZ ist größer als die Lochgröße. " "Abgebrochen." -#: FlatCAMObj.py:2670 FlatCAMObj.py:4400 FlatCAMObj.py:4615 FlatCAMObj.py:4926 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4331 FlatCAMObj.py:4537 FlatCAMObj.py:4843 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1431,7 +1443,7 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"z_pdepth\"] oder self." "options [\"z_pdepth\"]" -#: FlatCAMObj.py:2682 FlatCAMObj.py:4412 FlatCAMObj.py:4627 FlatCAMObj.py:4938 +#: FlatCAMObj.py:2682 FlatCAMObj.py:4341 FlatCAMObj.py:4547 FlatCAMObj.py:4853 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1439,12 +1451,12 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"feedrate_probe\"] " "oder self.options [\"feedrate_probe\"]" -#: FlatCAMObj.py:2714 FlatCAMObj.py:4814 FlatCAMObj.py:4819 FlatCAMObj.py:4969 +#: FlatCAMObj.py:2712 FlatCAMObj.py:4733 FlatCAMObj.py:4738 FlatCAMObj.py:4885 msgid "Generating CNC Code" msgstr "CNC-Code generieren" -#: FlatCAMObj.py:2740 FlatCAMObj.py:5111 camlib.py:5179 camlib.py:5638 -#: camlib.py:5901 +#: FlatCAMObj.py:2737 FlatCAMObj.py:5027 camlib.py:5181 camlib.py:5640 +#: camlib.py:5903 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1454,58 +1466,58 @@ msgstr "" "muss das Format (x, y) haben.\n" "Aber jetzt gibt es nur einen Wert, nicht zwei." -#: FlatCAMObj.py:3061 FlatCAMObj.py:4017 FlatCAMObj.py:4018 FlatCAMObj.py:4027 +#: FlatCAMObj.py:3049 FlatCAMObj.py:3956 FlatCAMObj.py:3957 FlatCAMObj.py:3966 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:3061 +#: FlatCAMObj.py:3049 msgid "Finish" msgstr "Oberfläche" -#: FlatCAMObj.py:3359 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 +#: FlatCAMObj.py:3347 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 #: flatcamGUI/FlatCAMGUI.py:1629 flatcamGUI/FlatCAMGUI.py:1968 #: flatcamGUI/ObjectUI.py:997 msgid "Copy" msgstr "Kopieren" -#: FlatCAMObj.py:3602 +#: FlatCAMObj.py:3559 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Bitte geben Sie den gewünschten Werkzeugdurchmesser im Real-" "Format ein." -#: FlatCAMObj.py:3677 +#: FlatCAMObj.py:3633 msgid "[success] Tool added in Tool Table." msgstr "[success] Werkzeug in der Werkzeugtabelle hinzugefügt." -#: FlatCAMObj.py:3682 +#: FlatCAMObj.py:3636 msgid "[WARNING_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[WARNING_NOTCL] Standardwerkzeug hinzugefügt Falsches Wertformat eingegeben." -#: FlatCAMObj.py:3716 FlatCAMObj.py:3726 +#: FlatCAMObj.py:3668 FlatCAMObj.py:3676 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Kopieren aus." -#: FlatCAMObj.py:3755 +#: FlatCAMObj.py:3703 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Das Werkzeug wurde in die Werkzeugtabelle kopiert." -#: FlatCAMObj.py:3788 +#: FlatCAMObj.py:3732 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Das Werkzeug wurde in der Werkzeugtabelle bearbeitet." -#: FlatCAMObj.py:3817 FlatCAMObj.py:3825 +#: FlatCAMObj.py:3760 FlatCAMObj.py:3768 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Löschen aus." -#: FlatCAMObj.py:3847 +#: FlatCAMObj.py:3790 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Werkzeug wurde in der Werkzeugtabelle gelöscht." -#: FlatCAMObj.py:4281 +#: FlatCAMObj.py:4219 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1513,28 +1525,24 @@ msgstr "" "[WARNING_NOTCL] Diese Geometrie kann nicht verarbeitet werden, da es sich um " "%s Geometrie handelt." -#: FlatCAMObj.py:4298 +#: FlatCAMObj.py:4235 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werkzeug Dia-Wertformat eingegeben, verwenden Sie " "eine Zahl." -#: FlatCAMObj.py:4325 +#: FlatCAMObj.py:4260 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Gescheitert. Kein Werkzeug in der Werkzeugtabelle " "ausgewählt ..." -#: FlatCAMObj.py:4362 flatcamEditors/FlatCAMExcEditor.py:2078 -msgid "[ERROR] An internal error has ocurred. See shell.\n" -msgstr "[ERROR] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" - -#: FlatCAMObj.py:4363 +#: FlatCAMObj.py:4297 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4520 FlatCAMObj.py:4754 +#: FlatCAMObj.py:4444 FlatCAMObj.py:4670 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1543,22 +1551,22 @@ msgstr "" "jedoch kein Wert angegeben.\n" "Fügen Sie einen Werkzeugversatz hinzu oder ändern Sie den Versatztyp." -#: FlatCAMObj.py:4639 flatcamTools/ToolSolderPaste.py:1112 +#: FlatCAMObj.py:4557 flatcamTools/ToolSolderPaste.py:1112 #: flatcamTools/ToolSolderPaste.py:1168 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Abgebrochen. Leere Datei, es hat keine Geometrie ..." -#: FlatCAMObj.py:5002 FlatCAMObj.py:5011 camlib.py:3360 camlib.py:3369 +#: FlatCAMObj.py:4918 FlatCAMObj.py:4927 camlib.py:3362 camlib.py:3371 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Der Skalierungsfaktor muss eine Zahl sein: Ganzzahl oder " "Fließkommazahl." -#: FlatCAMObj.py:5048 +#: FlatCAMObj.py:4964 msgid "[success] Geometry Scale done." msgstr "[success] Geometrie Skalierung fertig." -#: FlatCAMObj.py:5065 camlib.py:3438 +#: FlatCAMObj.py:4981 camlib.py:3440 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1566,29 +1574,29 @@ msgstr "" "[ERROR_NOTCL] Ein (x, y) Wertepaar wird benötigt. Wahrscheinlich haben Sie " "im Feld Offset nur einen Wert eingegeben." -#: FlatCAMObj.py:5084 +#: FlatCAMObj.py:5000 msgid "[success] Geometry Offset done." msgstr "[success] Geometrie Offset fertig." -#: FlatCAMObj.py:5638 FlatCAMObj.py:5643 flatcamTools/ToolSolderPaste.py:1368 +#: FlatCAMObj.py:5554 FlatCAMObj.py:5559 flatcamTools/ToolSolderPaste.py:1368 msgid "Export Machine Code ..." msgstr "Maschinencode exportieren ..." -#: FlatCAMObj.py:5649 flatcamTools/ToolSolderPaste.py:1371 +#: FlatCAMObj.py:5565 flatcamTools/ToolSolderPaste.py:1371 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5666 +#: FlatCAMObj.py:5582 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Maschinencode-Datei gespeichert in: %s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5604 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5721 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1597,11 +1605,11 @@ msgstr "" "[WARNING_NOTCL] Dieses CNC-Auftrag Objekt kann nicht verarbeitet werden, da " "es sich um ein %s CNC-Auftrag Objekt handelt." -#: FlatCAMObj.py:5858 +#: FlatCAMObj.py:5774 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-Code hat keinen Einheitencode: entweder G20 oder G21" -#: FlatCAMObj.py:5871 +#: FlatCAMObj.py:5787 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1609,17 +1617,17 @@ msgstr "" "[ERROR_NOTCL] Abgebrochen. Der benutzerdefinierte Code zum Ändern des " "Werkzeugs ist aktiviert, aber er ist leer." -#: FlatCAMObj.py:5878 +#: FlatCAMObj.py:5794 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] Der Werkzeugwechsel-G-Code wurde durch einen benutzerdefinierten " "Code ersetzt." -#: FlatCAMObj.py:5893 flatcamTools/ToolSolderPaste.py:1397 +#: FlatCAMObj.py:5808 flatcamTools/ToolSolderPaste.py:1397 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Keine solche Datei oder Ordner" -#: FlatCAMObj.py:5913 FlatCAMObj.py:5925 +#: FlatCAMObj.py:5832 FlatCAMObj.py:5844 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1627,7 +1635,7 @@ msgstr "" "[WARNING_NOTCL] Die verwendete Postprozessor-Datei muss im Namen enthalten " "sein: 'toolchange_custom'" -#: FlatCAMObj.py:5931 +#: FlatCAMObj.py:5850 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Es gibt keine Postprozessor-Datei." @@ -1659,42 +1667,42 @@ msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "" "[ERROR_NOTCL] self.solid_geometry ist weder BaseGeometry noch eine Liste." -#: camlib.py:1402 +#: camlib.py:1404 msgid "[success] Object was mirrored ..." msgstr "[success] Objekt wurde gespiegelt ..." -#: camlib.py:1404 +#: camlib.py:1406 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" msgstr "[ERROR_NOTCL] Spiegelung fehlgeschlagen Kein Objekt ausgewählt" -#: camlib.py:1440 +#: camlib.py:1442 msgid "[success] Object was rotated ..." msgstr "[success] Objekt wurde gedreht ..." -#: camlib.py:1442 +#: camlib.py:1444 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" msgstr "[ERROR_NOTCL] Fehler beim Drehen. Kein Objekt ausgewählt" -#: camlib.py:1476 +#: camlib.py:1478 msgid "[success] Object was skewed ..." msgstr "[success] Objekt war schief ..." -#: camlib.py:1478 +#: camlib.py:1480 msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Fehler beim Neigen Kein Objekt ausgewählt" -#: camlib.py:2740 camlib.py:2825 +#: camlib.py:2742 camlib.py:2827 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Koordinaten fehlen, Zeile wird ignoriert: %s" -#: camlib.py:2741 camlib.py:2826 +#: camlib.py:2743 camlib.py:2828 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" "[WARNING_NOTCL] Die GERBER-Datei könnte CORRUPT sein. Überprüfen Sie die " "Datei !!!" -#: camlib.py:2790 +#: camlib.py:2792 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1703,7 +1711,7 @@ msgstr "" "[ERROR] Region hat nicht genug Punkte. Die Datei wird verarbeitet, es treten " "jedoch Parserfehler auf. Linien Nummer: %s" -#: camlib.py:3182 +#: camlib.py:3184 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1712,32 +1720,32 @@ msgstr "" "[ERROR] Gerber Parser ERROR.\n" "%s:" -#: camlib.py:3406 +#: camlib.py:3408 msgid "[success] Gerber Scale done." msgstr "[success] Gerber-Skalierung abgeschlossen." -#: camlib.py:3471 +#: camlib.py:3473 msgid "[success] Gerber Offset done." msgstr "[success] Gerber Offset fertig." -#: camlib.py:3525 +#: camlib.py:3527 msgid "[success] Gerber Mirror done." msgstr "[success] Gerber Mirror fertig." -#: camlib.py:3571 +#: camlib.py:3573 msgid "[success] Gerber Skew done." msgstr "[success] Gerber-Versatz fertig." -#: camlib.py:3609 +#: camlib.py:3611 msgid "[success] Gerber Rotate done." msgstr "[success] Gerber drehen fertig." -#: camlib.py:3890 +#: camlib.py:3892 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] Dies ist die GCODE-Marke: %s" -#: camlib.py:4005 +#: camlib.py:4007 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1754,7 +1762,7 @@ msgstr "" "Der Benutzer muss das resultierende Excellon-Objekt bearbeiten und die " "Durchmesser ändern, um die tatsächlichen Durchmesser widerzuspiegeln." -#: camlib.py:4470 +#: camlib.py:4472 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1763,7 +1771,7 @@ msgstr "" "[ERROR] Fehler beim Excellon-Parser.\n" "Parsing fehlgeschlagen. Zeile {l_nr}: {line}\n" -#: camlib.py:4549 +#: camlib.py:4551 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1773,12 +1781,12 @@ msgstr "" "da kein Werkzeug zugeordnet wurde.\n" "Überprüfen Sie den resultierenden GCode." -#: camlib.py:5088 +#: camlib.py:5090 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] Es gibt keinen solchen Parameter: %s" -#: camlib.py:5158 +#: camlib.py:5160 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1793,7 +1801,7 @@ msgstr "" "einen negativen Wert. \n" "Überprüfen Sie den resultierenden CNC-Code (Gcode usw.)." -#: camlib.py:5165 camlib.py:5661 camlib.py:5924 +#: camlib.py:5167 camlib.py:5663 camlib.py:5926 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" @@ -1801,15 +1809,15 @@ msgstr "" "[WARNING] Der Parameter Cut Z ist Null. Es wird kein Schnitt ausgeführt, da " "die %s Datei übersprungen wird" -#: camlib.py:5394 camlib.py:5491 camlib.py:5549 +#: camlib.py:5396 camlib.py:5493 camlib.py:5551 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] Die geladene Excellon-Datei hat keine Bohrer ..." -#: camlib.py:5496 +#: camlib.py:5498 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Falscher Optimierungstyp ausgewählt." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5651 camlib.py:5914 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1817,7 +1825,7 @@ msgstr "" "[ERROR_NOTCL] Der Parameter Cut_Z ist None oder Null. Höchstwahrscheinlich " "eine schlechte Kombination anderer Parameter." -#: camlib.py:5654 camlib.py:5917 +#: camlib.py:5656 camlib.py:5919 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1832,11 +1840,11 @@ msgstr "" "einen negativen Wert. \n" "Überprüfen Sie den resultierenden CNC-Code (Gcode usw.)." -#: camlib.py:5666 camlib.py:5929 +#: camlib.py:5668 camlib.py:5931 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] Der Parameter für den Travel Z ist Kein oder Null." -#: camlib.py:5670 camlib.py:5933 +#: camlib.py:5672 camlib.py:5935 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1850,7 +1858,7 @@ msgstr "" "einen Tippfehler handelt, konvertiert die App den Wert in einen positiven " "Wert. Überprüfen Sie den resultierenden CNC-Code (Gcode usw.)." -#: camlib.py:5677 camlib.py:5940 +#: camlib.py:5679 camlib.py:5942 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" @@ -1858,12 +1866,12 @@ msgstr "" "[WARNING] Der Parameter Z-Weg ist Null. Dies ist gefährlich, da die %s Datei " "übersprungen wird" -#: camlib.py:5807 +#: camlib.py:5809 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR] Eine Geometrie erwartet,%s erhalten" -#: camlib.py:5813 +#: camlib.py:5815 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1871,7 +1879,7 @@ msgstr "" "[ERROR_NOTCL] Der Versuch, einen CNC-Auftrag aus einem Geometrieobjekt ohne " "solid_geometry zu generieren." -#: camlib.py:5852 +#: camlib.py:5854 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1881,7 +1889,7 @@ msgstr "" "current_geometry zu verwenden.\n" "Erhöhen Sie den Wert (im Modul) und versuchen Sie es erneut." -#: camlib.py:6064 +#: camlib.py:6066 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" "[ERROR_NOTCL] In der SolderPaste-Geometrie sind keine Werkzeugdaten " @@ -2232,6 +2240,10 @@ msgstr "" "[ERROR_NOTCL] Die Datei enthält keine Werkzeugdefinitionen. Abbruch der " "Excellon-Erstellung." +#: flatcamEditors/FlatCAMExcEditor.py:2078 +msgid "[ERROR] An internal error has ocurred. See shell.\n" +msgstr "[ERROR] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" + #: flatcamEditors/FlatCAMExcEditor.py:2084 msgid "Creating Excellon." msgstr "Excellon erstellen." @@ -2334,12 +2346,12 @@ msgstr "Werkzeug" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4080 #: flatcamGUI/FlatCAMGUI.py:5189 flatcamGUI/FlatCAMGUI.py:5623 -#: flatcamGUI/FlatCAMGUI.py:5900 flatcamGUI/FlatCAMGUI.py:6055 +#: flatcamGUI/FlatCAMGUI.py:5913 flatcamGUI/FlatCAMGUI.py:6068 #: flatcamGUI/ObjectUI.py:259 msgid "Tool dia:" msgstr "Werkzeugdurchmesser:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6057 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6070 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2348,7 +2360,7 @@ msgstr "" "in der Operation verwendet werden." #: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5806 -#: flatcamGUI/FlatCAMGUI.py:6066 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamGUI/FlatCAMGUI.py:6079 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Überlappungsrate:" @@ -2383,13 +2395,13 @@ msgstr "" "wegen zu vieler Wege." #: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5822 -#: flatcamGUI/FlatCAMGUI.py:5923 flatcamGUI/FlatCAMGUI.py:6076 +#: flatcamGUI/FlatCAMGUI.py:5936 flatcamGUI/FlatCAMGUI.py:6089 #: flatcamTools/ToolCutOut.py:101 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Marge:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6078 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6091 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2401,12 +2413,12 @@ msgstr "" "gemalt werden." #: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5831 -#: flatcamGUI/FlatCAMGUI.py:6087 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamGUI/FlatCAMGUI.py:6100 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Methode:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6089 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6102 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." @@ -2415,31 +2427,31 @@ msgstr "" "Schritt nach innen.
Samenbasiert: Aus dem Samen heraus." #: flatcamEditors/FlatCAMGeoEditor.py:480 flatcamGUI/FlatCAMGUI.py:5840 -#: flatcamGUI/FlatCAMGUI.py:6095 flatcamTools/ToolNonCopperClear.py:199 +#: flatcamGUI/FlatCAMGUI.py:6108 flatcamTools/ToolNonCopperClear.py:199 #: flatcamTools/ToolPaint.py:197 msgid "Standard" msgstr "Standard" #: flatcamEditors/FlatCAMGeoEditor.py:481 flatcamGUI/FlatCAMGUI.py:5841 -#: flatcamGUI/FlatCAMGUI.py:6096 flatcamTools/ToolNonCopperClear.py:200 +#: flatcamGUI/FlatCAMGUI.py:6109 flatcamTools/ToolNonCopperClear.py:200 #: flatcamTools/ToolPaint.py:198 msgid "Seed-based" msgstr "Samenbasiert" #: flatcamEditors/FlatCAMGeoEditor.py:482 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6097 flatcamTools/ToolNonCopperClear.py:201 +#: flatcamGUI/FlatCAMGUI.py:6110 flatcamTools/ToolNonCopperClear.py:201 #: flatcamTools/ToolPaint.py:199 msgid "Straight lines" msgstr "Gerade Linien" #: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5847 -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamGUI/FlatCAMGUI.py:6115 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Verbinden:" #: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5849 -#: flatcamGUI/FlatCAMGUI.py:6104 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2449,13 +2461,13 @@ msgstr "" "Segmente, um Werkzeuglifte zu minimieren." #: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5856 -#: flatcamGUI/FlatCAMGUI.py:6112 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamGUI/FlatCAMGUI.py:6125 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Kontur:" #: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5858 -#: flatcamGUI/FlatCAMGUI.py:6114 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamGUI/FlatCAMGUI.py:6127 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2470,7 +2482,7 @@ msgstr "Malen" #: flatcamEditors/FlatCAMGeoEditor.py:527 flatcamGUI/FlatCAMGUI.py:639 #: flatcamGUI/FlatCAMGUI.py:1883 flatcamGUI/ObjectUI.py:1320 -#: flatcamTools/ToolPaint.py:340 +#: flatcamTools/ToolPaint.py:343 msgid "Paint Tool" msgstr "Werkzeug Malen" @@ -2507,7 +2519,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2707 #: flatcamEditors/FlatCAMGeoEditor.py:2733 #: flatcamEditors/FlatCAMGeoEditor.py:2759 -#: flatcamTools/ToolNonCopperClear.py:817 flatcamTools/ToolProperties.py:104 +#: flatcamTools/ToolNonCopperClear.py:916 flatcamTools/ToolProperties.py:104 msgid "Tools" msgstr "Werkzeuge" @@ -2671,7 +2683,7 @@ msgid "Scale Y" msgstr "Maßstab Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6461 +#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6474 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Verknüpfung" @@ -2686,7 +2698,7 @@ msgstr "" "Verwenden des Skalierungsfaktors X für beide Achsen." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6482 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Skalenreferenz" @@ -4613,7 +4625,7 @@ msgid "&Cutout Tool" msgstr "Ausschnittwerkzeug" #: flatcamGUI/FlatCAMGUI.py:638 flatcamGUI/FlatCAMGUI.py:1882 -#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:285 +#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:336 msgid "NCC Tool" msgstr "NCC Werkzeug" @@ -6213,8 +6225,8 @@ msgid "Replace With" msgstr "Ersetzen mit" #: flatcamGUI/FlatCAMGUI.py:1667 flatcamGUI/FlatCAMGUI.py:5556 -#: flatcamGUI/FlatCAMGUI.py:6129 flatcamGUI/ObjectUI.py:1369 -#: flatcamTools/ToolPaint.py:248 +#: flatcamGUI/FlatCAMGUI.py:6143 flatcamGUI/ObjectUI.py:1369 +#: flatcamTools/ToolPaint.py:249 msgid "All" msgstr "Alles" @@ -6972,7 +6984,7 @@ msgstr "" "äußeren Polygonen." #: flatcamGUI/FlatCAMGUI.py:4082 flatcamGUI/FlatCAMGUI.py:4761 -#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/ObjectUI.py:785 +#: flatcamGUI/FlatCAMGUI.py:5915 flatcamGUI/ObjectUI.py:785 #: flatcamGUI/ObjectUI.py:801 msgid "Diameter of the cutting tool." msgstr "Durchmesser des Schneidewerkzeugs." @@ -7238,10 +7250,10 @@ msgstr "TZ" #: flatcamGUI/FlatCAMGUI.py:4352 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/FlatCAMGUI.py:5496 flatcamGUI/FlatCAMGUI.py:5788 -#: flatcamGUI/FlatCAMGUI.py:5889 flatcamGUI/FlatCAMGUI.py:5983 -#: flatcamGUI/FlatCAMGUI.py:6042 flatcamGUI/FlatCAMGUI.py:6145 -#: flatcamGUI/FlatCAMGUI.py:6206 flatcamGUI/FlatCAMGUI.py:6405 -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/FlatCAMGUI.py:5996 +#: flatcamGUI/FlatCAMGUI.py:6055 flatcamGUI/FlatCAMGUI.py:6158 +#: flatcamGUI/FlatCAMGUI.py:6219 flatcamGUI/FlatCAMGUI.py:6418 +#: flatcamGUI/FlatCAMGUI.py:6545 msgid "Parameters:" msgstr "Parameter:" @@ -7481,7 +7493,7 @@ msgstr "" "für dieses Bohrobjekt." #: flatcamGUI/FlatCAMGUI.py:4635 flatcamGUI/FlatCAMGUI.py:5222 -#: flatcamGUI/FlatCAMGUI.py:6341 flatcamGUI/ObjectUI.py:592 +#: flatcamGUI/FlatCAMGUI.py:6354 flatcamGUI/ObjectUI.py:592 #: flatcamGUI/ObjectUI.py:1068 flatcamTools/ToolCalculators.py:106 msgid "Cut Z:" msgstr "Schnitt Z:" @@ -8381,7 +8393,7 @@ msgstr "" msgid "NCC Tool Options" msgstr "NCC-Tooloptionen" -#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6543 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6556 msgid "Tools dia:" msgstr "Werkzeug durchmesser:" @@ -8450,11 +8462,38 @@ msgstr "" "konnte nicht mit dem vorherigen Tool gelöscht werden.\n" "Wenn nicht aktiviert, verwenden Sie den Standardalgorithmus." -#: flatcamGUI/FlatCAMGUI.py:5886 +#: flatcamGUI/FlatCAMGUI.py:5879 flatcamTools/ToolNonCopperClear.py:239 +msgid "Itself" +msgstr "Selbst" + +#: flatcamGUI/FlatCAMGUI.py:5880 flatcamGUI/FlatCAMGUI.py:6031 +#: flatcamTools/ToolDblSided.py:132 flatcamTools/ToolNonCopperClear.py:240 +msgid "Box" +msgstr "Box" + +#: flatcamGUI/FlatCAMGUI.py:5881 flatcamTools/ToolNonCopperClear.py:241 +msgid "Reference:" +msgstr "Referenz:" + +#: flatcamGUI/FlatCAMGUI.py:5883 +msgid "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." +msgstr "" +"Bei Auswahl der Option \"Selbst\" wird der nicht kupferhaltige Clearing-" +"Bereich festgelegt\n" +"basiert auf dem Objekt, das kupferfrei ist.\n" +"  Wenn Sie die Option \"Box\" auswählen, wird kein Kupfer in der Box " +"gelöscht\n" +"angegeben durch ein anderes Objekt als das kupfergelöschte." + +#: flatcamGUI/FlatCAMGUI.py:5899 msgid "Cutout Tool Options" msgstr "Ausschnittwerkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:5891 flatcamGUI/ObjectUI.py:399 +#: flatcamGUI/FlatCAMGUI.py:5904 flatcamGUI/ObjectUI.py:399 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8464,11 +8503,11 @@ msgstr "" "die PCB und trennen Sie es von\n" "das ursprüngliche Brett." -#: flatcamGUI/FlatCAMGUI.py:5909 flatcamTools/ToolCutOut.py:77 +#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:77 msgid "Obj kind:" msgstr "Obj Art:" -#: flatcamGUI/FlatCAMGUI.py:5911 flatcamTools/ToolCutOut.py:79 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:79 msgid "" "Choice of what kind the object we want to cutout is.
- Single: " "contain a single PCB Gerber outline object.
- Panel: a panel PCB " @@ -8480,16 +8519,16 @@ msgstr "" "Ein Panel-PCB-Gerber Objekt, das gemacht wird\n" "aus vielen einzelnen PCB-Konturen." -#: flatcamGUI/FlatCAMGUI.py:5918 flatcamGUI/FlatCAMGUI.py:6128 +#: flatcamGUI/FlatCAMGUI.py:5931 flatcamGUI/FlatCAMGUI.py:6141 #: flatcamTools/ToolCutOut.py:85 flatcamTools/ToolPaint.py:247 msgid "Single" msgstr "Einzehln" -#: flatcamGUI/FlatCAMGUI.py:5919 flatcamTools/ToolCutOut.py:86 +#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:86 msgid "Panel" msgstr "Platte" -#: flatcamGUI/FlatCAMGUI.py:5925 +#: flatcamGUI/FlatCAMGUI.py:5938 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -8497,11 +8536,11 @@ msgstr "" "Entfernung von Objekten bei denen\n" "den Ausschnitt zeichnen." -#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:111 +#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:111 msgid "Gap size:" msgstr "Spaltgröße:" -#: flatcamGUI/FlatCAMGUI.py:5934 +#: flatcamGUI/FlatCAMGUI.py:5947 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8511,11 +8550,11 @@ msgstr "" "das wird bleiben, um das zu halten\n" "Board an Ort und Stelle." -#: flatcamGUI/FlatCAMGUI.py:5942 flatcamTools/ToolCutOut.py:149 +#: flatcamGUI/FlatCAMGUI.py:5955 flatcamTools/ToolCutOut.py:149 msgid "Gaps:" msgstr "Spalt:" -#: flatcamGUI/FlatCAMGUI.py:5944 +#: flatcamGUI/FlatCAMGUI.py:5957 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8537,19 +8576,19 @@ msgstr "" "- 2 tb \t- 2 * oben + 2 * unten\n" "- 8 \t- 2 * links + 2 * rechts + 2 * oben + 2 * unten" -#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolCutOut.py:130 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolCutOut.py:130 msgid "Convex Sh.:" msgstr "Konvexe Form .:" -#: flatcamGUI/FlatCAMGUI.py:5967 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "Create a convex shape surrounding the entire PCB." msgstr "Erstellen Sie eine konvexe Form, die die gesamte Leiterplatte umgibt." -#: flatcamGUI/FlatCAMGUI.py:5980 +#: flatcamGUI/FlatCAMGUI.py:5993 msgid "2Sided Tool Options" msgstr "2Seitige Werkzeugoptionen" -#: flatcamGUI/FlatCAMGUI.py:5985 +#: flatcamGUI/FlatCAMGUI.py:5998 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8557,36 +8596,32 @@ msgstr "" "Ein Werkzeug, das beim Erstellen eines doppelseitigen Dokuments hilft\n" "PCB mit Ausrichtungslöchern." -#: flatcamGUI/FlatCAMGUI.py:5995 flatcamTools/ToolDblSided.py:234 +#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:234 msgid "Drill diam.:" msgstr "Bohrdurchmesser:" -#: flatcamGUI/FlatCAMGUI.py:5997 flatcamTools/ToolDblSided.py:225 +#: flatcamGUI/FlatCAMGUI.py:6010 flatcamTools/ToolDblSided.py:225 #: flatcamTools/ToolDblSided.py:236 msgid "Diameter of the drill for the alignment holes." msgstr "Durchmesser des Bohrers für die Ausrichtungslöcher." -#: flatcamGUI/FlatCAMGUI.py:6006 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Spiegelachse:" -#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:6021 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Vertikal spiegeln (X) oder horizontal (Y)." -#: flatcamGUI/FlatCAMGUI.py:6017 flatcamTools/ToolDblSided.py:131 +#: flatcamGUI/FlatCAMGUI.py:6030 flatcamTools/ToolDblSided.py:131 msgid "Point" msgstr "Punkt" -#: flatcamGUI/FlatCAMGUI.py:6018 flatcamTools/ToolDblSided.py:132 -msgid "Box" -msgstr "Box" - -#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:6032 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Achsenreferenz:" -#: flatcamGUI/FlatCAMGUI.py:6021 +#: flatcamGUI/FlatCAMGUI.py:6034 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8596,11 +8631,11 @@ msgstr "" "ein angegebenes Feld (in einem Geometrieobjekt) in\n" "die Mitte." -#: flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamGUI/FlatCAMGUI.py:6050 msgid "Paint Tool Options" msgstr "Paint werkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6044 flatcamGUI/ObjectUI.py:1311 +#: flatcamGUI/FlatCAMGUI.py:6057 flatcamGUI/ObjectUI.py:1311 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8612,7 +8647,7 @@ msgstr "" "alles Kupfer). Du wirst gefragt\n" "Klicken Sie auf das gewünschte Polygon." -#: flatcamGUI/FlatCAMGUI.py:6068 +#: flatcamGUI/FlatCAMGUI.py:6081 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8620,19 +8655,23 @@ msgstr "" "Wie viel (Bruchteil) des Werkzeugs\n" "Breite, um jeden Werkzeugdurchgang zu überlappen." -#: flatcamGUI/FlatCAMGUI.py:6122 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6135 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Auswahl:" -#: flatcamGUI/FlatCAMGUI.py:6124 +#: flatcamGUI/FlatCAMGUI.py:6137 msgid "How to select the polygons to paint." msgstr "So wählen Sie die Polygone zum Malen aus." -#: flatcamGUI/FlatCAMGUI.py:6142 +#: flatcamGUI/FlatCAMGUI.py:6142 flatcamTools/ToolPaint.py:248 +msgid "Area" +msgstr "Bereich" + +#: flatcamGUI/FlatCAMGUI.py:6155 msgid "Film Tool Options" msgstr "Filmwerkzeugoptionen" -#: flatcamGUI/FlatCAMGUI.py:6147 +#: flatcamGUI/FlatCAMGUI.py:6160 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8642,11 +8681,11 @@ msgstr "" "FlatCAM-Objekt\n" "Die Datei wird im SVG-Format gespeichert." -#: flatcamGUI/FlatCAMGUI.py:6158 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Filmtyp:" -#: flatcamGUI/FlatCAMGUI.py:6160 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8662,11 +8701,11 @@ msgstr "" "mit weiß auf einer schwarzen leinwand.\n" "Das Filmformat ist SVG." -#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6184 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Rand:" -#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8686,11 +8725,11 @@ msgstr "" "weiße Farbe wie der Rest und die mit der verwechseln kann\n" "Umgebung, wenn nicht für diese Grenze." -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Skalierungshub:" -#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8702,11 +8741,11 @@ msgstr "" "dünner ist.\n" "Daher können die Feinheiten von diesem Parameter stärker beeinflusst werden." -#: flatcamGUI/FlatCAMGUI.py:6203 +#: flatcamGUI/FlatCAMGUI.py:6216 msgid "Panelize Tool Options" msgstr "Panelize Werkzeugoptionen" -#: flatcamGUI/FlatCAMGUI.py:6208 +#: flatcamGUI/FlatCAMGUI.py:6221 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8716,11 +8755,11 @@ msgstr "" "Jedes Element ist eine Kopie des Quellobjekts\n" "in einem X-Abstand, Y-Abstand voneinander." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6232 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Abstandspalten:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6234 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8728,11 +8767,11 @@ msgstr "" "Abstand zwischen den Spalten des gewünschten Bereichs.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6229 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6242 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Abstand Reihen:" -#: flatcamGUI/FlatCAMGUI.py:6231 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6244 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8740,35 +8779,35 @@ msgstr "" "Abstand zwischen den Reihen des gewünschten Feldes.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6252 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Säulen:" -#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6254 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Anzahl der Spalten des gewünschten Bereichs" -#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6261 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Reihen:" -#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6263 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Anzahl der Zeilen des gewünschten Panels" -#: flatcamGUI/FlatCAMGUI.py:6256 flatcamTools/ToolPanelize.py:181 +#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:181 msgid "Gerber" msgstr "Gerber" -#: flatcamGUI/FlatCAMGUI.py:6257 flatcamTools/ToolPanelize.py:182 +#: flatcamGUI/FlatCAMGUI.py:6270 flatcamTools/ToolPanelize.py:182 msgid "Geo" msgstr "Geo" -#: flatcamGUI/FlatCAMGUI.py:6258 +#: flatcamGUI/FlatCAMGUI.py:6271 msgid "Panel Type:" msgstr "Panel-Typ:" -#: flatcamGUI/FlatCAMGUI.py:6260 +#: flatcamGUI/FlatCAMGUI.py:6273 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8778,11 +8817,11 @@ msgstr "" "- Gerber\n" "- Geometrie" -#: flatcamGUI/FlatCAMGUI.py:6269 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "Constrain within:" msgstr "Beschränkung innerhalb:" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6284 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8796,11 +8835,11 @@ msgstr "" "Das letzte Panel enthält so viele Spalten und Zeilen wie\n" "Sie passen vollständig in den ausgewählten Bereich." -#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6293 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Breite (DX):" -#: flatcamGUI/FlatCAMGUI.py:6282 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6295 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8808,11 +8847,11 @@ msgstr "" "Die Breite (DX), in die das Panel passen muss.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6289 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6302 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Höhe (DY):" -#: flatcamGUI/FlatCAMGUI.py:6291 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6304 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8820,15 +8859,15 @@ msgstr "" "Die Höhe (DY), in die die Platte passen muss.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6305 +#: flatcamGUI/FlatCAMGUI.py:6318 msgid "Calculators Tool Options" msgstr "Rechner-Tool-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6308 +#: flatcamGUI/FlatCAMGUI.py:6321 msgid "V-Shape Tool Calculator:" msgstr " V-Shape-Werkzeug Rechner: " -#: flatcamGUI/FlatCAMGUI.py:6310 +#: flatcamGUI/FlatCAMGUI.py:6323 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8839,11 +8878,11 @@ msgstr "" "mit dem Spitzendurchmesser, Spitzenwinkel und\n" "Schnitttiefe als Parameter." -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:92 +#: flatcamGUI/FlatCAMGUI.py:6334 flatcamTools/ToolCalculators.py:92 msgid "Tip Diameter:" msgstr "Spitzendurchmesser" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6336 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8851,11 +8890,11 @@ msgstr "" "Dies ist der Werkzeugspitzendurchmesser.\n" "Es wird vom Hersteller angegeben." -#: flatcamGUI/FlatCAMGUI.py:6331 +#: flatcamGUI/FlatCAMGUI.py:6344 msgid "Tip angle:" msgstr "Spitzenwinkel:" -#: flatcamGUI/FlatCAMGUI.py:6333 +#: flatcamGUI/FlatCAMGUI.py:6346 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8863,7 +8902,7 @@ msgstr "" "Dies ist der Winkel an der Spitze des Werkzeugs.\n" "Es wird vom Hersteller angegeben." -#: flatcamGUI/FlatCAMGUI.py:6343 +#: flatcamGUI/FlatCAMGUI.py:6356 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8871,11 +8910,11 @@ msgstr "" "Dies ist die Tiefe zum Schneiden in Material.\n" "Im CNCJob-Objekt ist dies der Parameter CutZ." -#: flatcamGUI/FlatCAMGUI.py:6350 +#: flatcamGUI/FlatCAMGUI.py:6363 msgid "ElectroPlating Calculator:" msgstr " Galvano-Rechner: " -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:148 +#: flatcamGUI/FlatCAMGUI.py:6365 flatcamTools/ToolCalculators.py:148 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8886,27 +8925,27 @@ msgstr "" "unter Verwendung einer Methode wie Grahit-Tinte oder Calcium-Hypophosphit-" "Tinte oder Palladiumchlorid." -#: flatcamGUI/FlatCAMGUI.py:6362 flatcamTools/ToolCalculators.py:157 +#: flatcamGUI/FlatCAMGUI.py:6375 flatcamTools/ToolCalculators.py:157 msgid "Board Length:" msgstr "PCB Länge:" -#: flatcamGUI/FlatCAMGUI.py:6364 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:161 msgid "This is the board length. In centimeters." msgstr "Dies ist die Boardlänge. In Zentimeter" -#: flatcamGUI/FlatCAMGUI.py:6370 flatcamTools/ToolCalculators.py:163 +#: flatcamGUI/FlatCAMGUI.py:6383 flatcamTools/ToolCalculators.py:163 msgid "Board Width:" msgstr "PCB Breite:" -#: flatcamGUI/FlatCAMGUI.py:6372 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6385 flatcamTools/ToolCalculators.py:167 msgid "This is the board width.In centimeters." msgstr "Dies ist die Breite der Platte in Zentimetern." -#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:169 +#: flatcamGUI/FlatCAMGUI.py:6390 flatcamTools/ToolCalculators.py:169 msgid "Current Density:" msgstr "Stromdichte:" -#: flatcamGUI/FlatCAMGUI.py:6380 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6393 flatcamTools/ToolCalculators.py:173 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8914,11 +8953,11 @@ msgstr "" "Stromdichte durch die Platine.\n" "In Ampere pro Quadratfuß ASF." -#: flatcamGUI/FlatCAMGUI.py:6386 flatcamTools/ToolCalculators.py:176 +#: flatcamGUI/FlatCAMGUI.py:6399 flatcamTools/ToolCalculators.py:176 msgid "Copper Growth:" msgstr "Kupferwachstum:" -#: flatcamGUI/FlatCAMGUI.py:6389 flatcamTools/ToolCalculators.py:180 +#: flatcamGUI/FlatCAMGUI.py:6402 flatcamTools/ToolCalculators.py:180 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8926,11 +8965,11 @@ msgstr "" "Wie dick soll das Kupferwachstum sein.\n" "In Mikrometern" -#: flatcamGUI/FlatCAMGUI.py:6402 +#: flatcamGUI/FlatCAMGUI.py:6415 msgid "Transform Tool Options" msgstr "Umwandlungswerkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6407 +#: flatcamGUI/FlatCAMGUI.py:6420 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8938,47 +8977,47 @@ msgstr "" "Verschiedene Transformationen, die angewendet werden können\n" "auf einem FlatCAM-Objekt." -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6430 msgid "Rotate Angle:" msgstr "Winkel drehen:" -#: flatcamGUI/FlatCAMGUI.py:6419 +#: flatcamGUI/FlatCAMGUI.py:6432 msgid "Angle for rotation. In degrees." msgstr "Drehwinkel. In grad." -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Skew_X angle:" msgstr "Neigungswinkel X:" -#: flatcamGUI/FlatCAMGUI.py:6428 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Winkel für Neigung / Scherung auf der X-Achse. In grad." -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Skew_Y angle:" msgstr "Neigungswinkel Y:" -#: flatcamGUI/FlatCAMGUI.py:6437 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Winkel für Neigung / Scherung auf der Y-Achse. In grad." -#: flatcamGUI/FlatCAMGUI.py:6444 +#: flatcamGUI/FlatCAMGUI.py:6457 msgid "Scale_X factor:" msgstr "Skalierung des X-Faktors:" -#: flatcamGUI/FlatCAMGUI.py:6446 +#: flatcamGUI/FlatCAMGUI.py:6459 msgid "Factor for scaling on X axis." msgstr "Faktor für die Skalierung auf der X-Achse." -#: flatcamGUI/FlatCAMGUI.py:6453 +#: flatcamGUI/FlatCAMGUI.py:6466 msgid "Scale_Y factor:" msgstr "Skalierung des Y-Faktors:" -#: flatcamGUI/FlatCAMGUI.py:6455 +#: flatcamGUI/FlatCAMGUI.py:6468 msgid "Factor for scaling on Y axis." msgstr "Faktor für die Skalierung auf der Y-Achse." -#: flatcamGUI/FlatCAMGUI.py:6463 +#: flatcamGUI/FlatCAMGUI.py:6476 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8986,7 +9025,7 @@ msgstr "" "Skalieren Sie die ausgewählten Objekte\n" "Verwenden des Skalierungsfaktors X für beide Achsen." -#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6484 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8998,27 +9037,27 @@ msgstr "" "und die Mitte der größten Begrenzungsbox\n" "der ausgewählten Objekte, wenn sie nicht markiert sind." -#: flatcamGUI/FlatCAMGUI.py:6480 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "Offset_X val:" msgstr "Offset X Wert:" -#: flatcamGUI/FlatCAMGUI.py:6482 +#: flatcamGUI/FlatCAMGUI.py:6495 msgid "Distance to offset on X axis. In current units." msgstr "Abstand zum Offset auf der X-Achse. In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6489 +#: flatcamGUI/FlatCAMGUI.py:6502 msgid "Offset_Y val:" msgstr "Offset Y-Wert:" -#: flatcamGUI/FlatCAMGUI.py:6491 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Distance to offset on Y axis. In current units." msgstr "Abstand zum Offset auf der Y-Achse. In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6497 +#: flatcamGUI/FlatCAMGUI.py:6510 msgid "Mirror Reference" msgstr "Spiegelreferenz" -#: flatcamGUI/FlatCAMGUI.py:6499 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -9041,11 +9080,11 @@ msgstr "" "Oder geben Sie die Koordinaten im Format (x, y) in ein\n" "Punkt-Eingabefeld und klicken Sie auf X (Y) drehen" -#: flatcamGUI/FlatCAMGUI.py:6510 +#: flatcamGUI/FlatCAMGUI.py:6523 msgid " Mirror Ref. Point:" msgstr "Spiegelref. Punkt:" -#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6525 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -9056,11 +9095,11 @@ msgstr "" "Das 'x' in (x, y) wird verwendet, wenn Sie bei X und\n" "Das 'y' in (x, y) wird verwendet, wenn Flip auf Y und verwendet wird" -#: flatcamGUI/FlatCAMGUI.py:6529 +#: flatcamGUI/FlatCAMGUI.py:6542 msgid "SolderPaste Tool Options" msgstr "Lötpaste-Werkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6534 +#: flatcamGUI/FlatCAMGUI.py:6547 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -9068,49 +9107,49 @@ msgstr "" "Ein Werkzeug zum Erstellen von GCode für die Ausgabe\n" "Lotpaste auf eine Leiterplatte." -#: flatcamGUI/FlatCAMGUI.py:6545 +#: flatcamGUI/FlatCAMGUI.py:6558 msgid "Diameters of nozzle tools, separated by ','" msgstr "Durchmesser der Düsenwerkzeuge, getrennt durch ','" -#: flatcamGUI/FlatCAMGUI.py:6552 +#: flatcamGUI/FlatCAMGUI.py:6565 msgid "New Nozzle Dia:" msgstr " Neuer Düsendurchmesser: " -#: flatcamGUI/FlatCAMGUI.py:6554 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" "Durchmesser für das neue Düsenwerkzeug, das in die Werkzeugtabelle eingefügt " "werden soll" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6575 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Z Dosierbeginn:" -#: flatcamGUI/FlatCAMGUI.py:6564 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "Die Höhe (Z) bei der Lotpastendosierung." -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6584 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Z-Abgabe:" -#: flatcamGUI/FlatCAMGUI.py:6573 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "Die Höhe (Z) bei der Lotpastendosierung." -#: flatcamGUI/FlatCAMGUI.py:6580 flatcamTools/ToolSolderPaste.py:182 +#: flatcamGUI/FlatCAMGUI.py:6593 flatcamTools/ToolSolderPaste.py:182 msgid "Z Dispense Stop:" msgstr "Z Abgabestopp:" -#: flatcamGUI/FlatCAMGUI.py:6582 flatcamTools/ToolSolderPaste.py:184 +#: flatcamGUI/FlatCAMGUI.py:6595 flatcamTools/ToolSolderPaste.py:184 msgid "The height (Z) when solder paste dispensing stops." msgstr "Die Höhe (Z) bei der Lotpastendosierung stoppt." -#: flatcamGUI/FlatCAMGUI.py:6589 flatcamTools/ToolSolderPaste.py:190 +#: flatcamGUI/FlatCAMGUI.py:6602 flatcamTools/ToolSolderPaste.py:190 msgid "Z Travel:" msgstr "Z Reise:" -#: flatcamGUI/FlatCAMGUI.py:6591 flatcamTools/ToolSolderPaste.py:192 +#: flatcamGUI/FlatCAMGUI.py:6604 flatcamTools/ToolSolderPaste.py:192 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -9118,19 +9157,19 @@ msgstr "" "Die Höhe (Z) für den Weg zwischen Pads\n" "(ohne Lotpaste zu dosieren)." -#: flatcamGUI/FlatCAMGUI.py:6599 flatcamTools/ToolSolderPaste.py:199 +#: flatcamGUI/FlatCAMGUI.py:6612 flatcamTools/ToolSolderPaste.py:199 msgid "Z Toolchange:" msgstr "Z Werkzeugwechsel:" -#: flatcamGUI/FlatCAMGUI.py:6601 flatcamTools/ToolSolderPaste.py:201 +#: flatcamGUI/FlatCAMGUI.py:6614 flatcamTools/ToolSolderPaste.py:201 msgid "The height (Z) for tool (nozzle) change." msgstr "Die Höhe (Z) für Werkzeug (Düse) ändert sich." -#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:207 +#: flatcamGUI/FlatCAMGUI.py:6621 flatcamTools/ToolSolderPaste.py:207 msgid "XY Toolchange:" msgstr "XY-Werkzeugwechsel:" -#: flatcamGUI/FlatCAMGUI.py:6610 flatcamTools/ToolSolderPaste.py:209 +#: flatcamGUI/FlatCAMGUI.py:6623 flatcamTools/ToolSolderPaste.py:209 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -9138,19 +9177,19 @@ msgstr "" "Die X, Y-Position für Werkzeug (Düse) ändert sich.\n" "Das Format ist (x, y), wobei x und y reelle Zahlen sind." -#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:216 +#: flatcamGUI/FlatCAMGUI.py:6631 flatcamTools/ToolSolderPaste.py:216 msgid "Feedrate X-Y:" msgstr "Vorschub X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6620 flatcamTools/ToolSolderPaste.py:218 +#: flatcamGUI/FlatCAMGUI.py:6633 flatcamTools/ToolSolderPaste.py:218 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Vorschub (Geschwindigkeit) während der Bewegung auf der X-Y-Ebene." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:224 +#: flatcamGUI/FlatCAMGUI.py:6640 flatcamTools/ToolSolderPaste.py:224 msgid "Feedrate Z:" msgstr "Vorschub Z:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:226 +#: flatcamGUI/FlatCAMGUI.py:6642 flatcamTools/ToolSolderPaste.py:226 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." @@ -9158,11 +9197,11 @@ msgstr "" "Vorschub (Geschwindigkeit) bei vertikaler Bewegung\n" "(auf der Z-Ebene)." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:233 +#: flatcamGUI/FlatCAMGUI.py:6650 flatcamTools/ToolSolderPaste.py:233 msgid "Feedrate Z Dispense:" msgstr "Vorschub Z Dosierung:" -#: flatcamGUI/FlatCAMGUI.py:6639 +#: flatcamGUI/FlatCAMGUI.py:6652 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -9170,11 +9209,11 @@ msgstr "" "Vorschub (Geschwindigkeit) bei vertikaler Aufwärtsbewegung\n" "in Ausgabeposition (in der Z-Ebene)." -#: flatcamGUI/FlatCAMGUI.py:6647 flatcamTools/ToolSolderPaste.py:242 +#: flatcamGUI/FlatCAMGUI.py:6660 flatcamTools/ToolSolderPaste.py:242 msgid "Spindle Speed FWD:" msgstr "Spindeldrehzahl FWD:" -#: flatcamGUI/FlatCAMGUI.py:6649 flatcamTools/ToolSolderPaste.py:244 +#: flatcamGUI/FlatCAMGUI.py:6662 flatcamTools/ToolSolderPaste.py:244 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -9182,19 +9221,19 @@ msgstr "" "Die Spendergeschwindigkeit beim Schieben der Lötpaste\n" "durch die Spenderdüse." -#: flatcamGUI/FlatCAMGUI.py:6657 flatcamTools/ToolSolderPaste.py:251 +#: flatcamGUI/FlatCAMGUI.py:6670 flatcamTools/ToolSolderPaste.py:251 msgid "Dwell FWD:" msgstr "Verweilzeit FWD:" -#: flatcamGUI/FlatCAMGUI.py:6659 flatcamTools/ToolSolderPaste.py:253 +#: flatcamGUI/FlatCAMGUI.py:6672 flatcamTools/ToolSolderPaste.py:253 msgid "Pause after solder dispensing." msgstr "Pause nach dem Löten." -#: flatcamGUI/FlatCAMGUI.py:6666 flatcamTools/ToolSolderPaste.py:259 +#: flatcamGUI/FlatCAMGUI.py:6679 flatcamTools/ToolSolderPaste.py:259 msgid "Spindle Speed REV:" msgstr "Spindeldrehzahl REV:" -#: flatcamGUI/FlatCAMGUI.py:6668 flatcamTools/ToolSolderPaste.py:261 +#: flatcamGUI/FlatCAMGUI.py:6681 flatcamTools/ToolSolderPaste.py:261 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -9202,11 +9241,11 @@ msgstr "" "Die Spendergeschwindigkeit beim Einfahren der Lötpaste\n" "durch die Spenderdüse." -#: flatcamGUI/FlatCAMGUI.py:6676 flatcamTools/ToolSolderPaste.py:268 +#: flatcamGUI/FlatCAMGUI.py:6689 flatcamTools/ToolSolderPaste.py:268 msgid "Dwell REV:" msgstr "Verweilen REV:" -#: flatcamGUI/FlatCAMGUI.py:6678 flatcamTools/ToolSolderPaste.py:270 +#: flatcamGUI/FlatCAMGUI.py:6691 flatcamTools/ToolSolderPaste.py:270 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -9214,23 +9253,23 @@ msgstr "" "Pause nachdem Lotpastendispenser eingefahren wurde,\n" "das Druckgleichgewicht zu ermöglichen." -#: flatcamGUI/FlatCAMGUI.py:6685 flatcamTools/ToolSolderPaste.py:276 +#: flatcamGUI/FlatCAMGUI.py:6698 flatcamTools/ToolSolderPaste.py:276 msgid "PostProcessors:" msgstr "Postprozessoren:" -#: flatcamGUI/FlatCAMGUI.py:6687 flatcamTools/ToolSolderPaste.py:278 +#: flatcamGUI/FlatCAMGUI.py:6700 flatcamTools/ToolSolderPaste.py:278 msgid "Files that control the GCode generation." msgstr "Dateien, die die GCode-Generierung steuern." -#: flatcamGUI/FlatCAMGUI.py:6717 flatcamGUI/FlatCAMGUI.py:6723 +#: flatcamGUI/FlatCAMGUI.py:6730 flatcamGUI/FlatCAMGUI.py:6736 msgid "Idle." msgstr "Untätig" -#: flatcamGUI/FlatCAMGUI.py:6747 +#: flatcamGUI/FlatCAMGUI.py:6760 msgid "Application started ..." msgstr "Bewerbung gestartet ..." -#: flatcamGUI/FlatCAMGUI.py:6748 +#: flatcamGUI/FlatCAMGUI.py:6761 msgid "Hello!" msgstr "Hello!" @@ -9437,7 +9476,7 @@ msgstr "" msgid "Clear N-copper:" msgstr " N-Kupfer löschen: " -#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:240 +#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:285 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -10516,7 +10555,9 @@ msgstr "" "das Geometrieobjekt, das als Ausschnittsgeometrie verwendet wird." #: flatcamTools/ToolCutOut.py:358 flatcamTools/ToolCutOut.py:552 -#: flatcamTools/ToolNonCopperClear.py:669 flatcamTools/ToolPaint.py:768 +#: flatcamTools/ToolNonCopperClear.py:743 +#: flatcamTools/ToolNonCopperClear.py:751 +#: flatcamTools/ToolNonCopperClear.py:759 flatcamTools/ToolPaint.py:774 #: flatcamTools/ToolPanelize.py:353 flatcamTools/ToolPanelize.py:368 #: flatcamTools/ToolSub.py:239 flatcamTools/ToolSub.py:252 #: flatcamTools/ToolSub.py:432 flatcamTools/ToolSub.py:445 @@ -10588,7 +10629,7 @@ msgstr "" msgid "[success] Any form CutOut operation finished." msgstr "[success] Jede Form CutOut-Operation ist abgeschlossen." -#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:772 +#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:778 #: flatcamTools/ToolPanelize.py:359 #, python-format msgid "[ERROR_NOTCL] Object not found: %s" @@ -10734,15 +10775,15 @@ msgstr "" "Klicken Sie mit der linken Maustaste auf die Leinwand oder geben Sie die " "Koordinaten manuell ein." -#: flatcamTools/ToolDblSided.py:182 +#: flatcamTools/ToolDblSided.py:182 flatcamTools/ToolNonCopperClear.py:260 msgid "Gerber Reference Box Object" msgstr "Gerber Referenzfeldobjekt" -#: flatcamTools/ToolDblSided.py:183 +#: flatcamTools/ToolDblSided.py:183 flatcamTools/ToolNonCopperClear.py:261 msgid "Excellon Reference Box Object" msgstr "Excellon Reference Referenzfeldobjekt" -#: flatcamTools/ToolDblSided.py:184 +#: flatcamTools/ToolDblSided.py:184 flatcamTools/ToolNonCopperClear.py:262 msgid "Geometry Reference Box Object" msgstr "Geometrie-Referenzfeldobjekt" @@ -11373,32 +11414,67 @@ msgstr "" "kein kupfer mehr zum löschen oder es gibt keine werkzeuge mehr.\n" "Wenn nicht aktiviert, verwenden Sie den Standardalgorithmus." -#: flatcamTools/ToolNonCopperClear.py:238 +#: flatcamTools/ToolNonCopperClear.py:243 +msgid "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." +msgstr "" +"- \"Selbst\": der nicht kupferhaltige Clearing-Umfang\n" +"basiert auf dem Objekt, das kupferfrei ist.\n" +" - 'Box': Löscht nicht kupferhaltige Daten innerhalb der Box\n" +"angegeben durch das Objekt in der Ref. ausgewählt. Objektkombinationsfeld." + +#: flatcamTools/ToolNonCopperClear.py:254 +msgid "Ref. Type:" +msgstr "Ref. Typ:" + +#: flatcamTools/ToolNonCopperClear.py:256 +msgid "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." +msgstr "" +"Der Typ des FlatCAM-Objekts, das als nicht aus Kupfer stammende Clearing-" +"Referenz verwendet werden soll.\n" +"Es kann Gerber, Excellon oder Geometry sein." + +#: flatcamTools/ToolNonCopperClear.py:267 +msgid "Ref. Object:" +msgstr "Ref. Objekt:" + +#: flatcamTools/ToolNonCopperClear.py:269 +msgid "The FlatCAM object to be used as non copper clearing reference." +msgstr "" +"Das FlatCAM-Objekt, das als Nicht-Kupfer-Clearing-Referenz verwendet werden " +"soll." + +#: flatcamTools/ToolNonCopperClear.py:283 msgid "Generate Geometry" msgstr "Geometrie erzeugen" -#: flatcamTools/ToolNonCopperClear.py:486 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolNonCopperClear.py:559 flatcamTools/ToolPaint.py:549 #: flatcamTools/ToolSolderPaste.py:763 msgid "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." msgstr "" "[WARNING_NOTCL] Bitte geben Sie einen hinzuzufügenden Werkzeugdurchmesser im " "Float-Format an." -#: flatcamTools/ToolNonCopperClear.py:515 flatcamTools/ToolPaint.py:567 +#: flatcamTools/ToolNonCopperClear.py:588 flatcamTools/ToolPaint.py:573 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "" "[WARNING_NOTCL] Das Hinzufügen des Tools wurde abgebrochen. Werkzeug bereits " "in der Werkzeugtabelle." -#: flatcamTools/ToolNonCopperClear.py:520 flatcamTools/ToolPaint.py:572 +#: flatcamTools/ToolNonCopperClear.py:593 flatcamTools/ToolPaint.py:578 msgid "[success] New tool added to Tool Table." msgstr "[success] Neues Werkzeug zur Werkzeugtabelle hinzugefügt." -#: flatcamTools/ToolNonCopperClear.py:562 flatcamTools/ToolPaint.py:617 +#: flatcamTools/ToolNonCopperClear.py:635 flatcamTools/ToolPaint.py:623 msgid "[success] Tool from Tool Table was edited." msgstr "[success] Werkzeug aus Werkzeugtabelle wurde bearbeitet." -#: flatcamTools/ToolNonCopperClear.py:573 flatcamTools/ToolPaint.py:628 +#: flatcamTools/ToolNonCopperClear.py:646 flatcamTools/ToolPaint.py:634 #: flatcamTools/ToolSolderPaste.py:850 msgid "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " @@ -11407,48 +11483,55 @@ msgstr "" "[WARNING_NOTCL] Bearbeitung abgebrochen. Neuer Durchmesserwert befindet sich " "bereits in der Werkzeugtabelle." -#: flatcamTools/ToolNonCopperClear.py:613 flatcamTools/ToolPaint.py:727 +#: flatcamTools/ToolNonCopperClear.py:686 flatcamTools/ToolPaint.py:733 msgid "[WARNING_NOTCL] Delete failed. Select a tool to delete." msgstr "" "[WARNING_NOTCL] Löschen fehlgeschlagen. Wählen Sie ein Werkzeug zum Löschen " "aus." -#: flatcamTools/ToolNonCopperClear.py:618 flatcamTools/ToolPaint.py:732 +#: flatcamTools/ToolNonCopperClear.py:691 flatcamTools/ToolPaint.py:738 msgid "[success] Tool(s) deleted from Tool Table." msgstr "[success] Werkzeug(e) aus der Werkzeugtabelle gelöscht." -#: flatcamTools/ToolNonCopperClear.py:636 flatcamTools/ToolPaint.py:751 +#: flatcamTools/ToolNonCopperClear.py:709 flatcamTools/ToolPaint.py:757 msgid "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " msgstr "" "[ERROR_NOTCL] Der Überlappungswert muss zwischen 0 (einschließlich) und 1 " "(exklusiv) liegen." -#: flatcamTools/ToolNonCopperClear.py:677 -msgid "[ERROR_NOTCL] No Gerber file available." -msgstr "[ERROR_NOTCL] Keine Gerber-Datei verfügbar." +#: flatcamTools/ToolNonCopperClear.py:772 +msgid "[ERROR_NOTCL] No object available." +msgstr "[ERROR_NOTCL] Kein Objekt vorhanden." -#: flatcamTools/ToolNonCopperClear.py:715 -#: flatcamTools/ToolNonCopperClear.py:837 +#: flatcamTools/ToolNonCopperClear.py:781 +msgid "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." +msgstr "" +"[ERROR_NOTCL] Die Ausdehnung des nicht kupferhaltigen Bereichs konnte nicht " +"gelöscht werden." + +#: flatcamTools/ToolNonCopperClear.py:814 +#: flatcamTools/ToolNonCopperClear.py:936 msgid "Clearing Non-Copper areas." msgstr "Nicht kupferne Bereiche entfernen." -#: flatcamTools/ToolNonCopperClear.py:733 +#: flatcamTools/ToolNonCopperClear.py:832 #, python-format msgid "[success] Non-Copper Clearing with ToolDia = %s started." msgstr "" "[success] Nicht-Kupfer-Clearing mit Werkzeugdurchmesser = %s gestartet." -#: flatcamTools/ToolNonCopperClear.py:802 +#: flatcamTools/ToolNonCopperClear.py:901 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" -#: flatcamTools/ToolNonCopperClear.py:807 +#: flatcamTools/ToolNonCopperClear.py:906 msgid "[success] NCC Tool finished." msgstr "[success] NCC-Tool fertiggestellt." -#: flatcamTools/ToolNonCopperClear.py:809 +#: flatcamTools/ToolNonCopperClear.py:908 msgid "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." @@ -11456,18 +11539,18 @@ msgstr "" "[WARNING_NOTCL] NCC-Tool fertiggestellt, einige PCB-Funktionen konnten " "jedoch nicht gelöscht werden. Überprüfen Sie das Ergebnis." -#: flatcamTools/ToolNonCopperClear.py:855 +#: flatcamTools/ToolNonCopperClear.py:954 #, python-format msgid "[success] Non-Copper Rest Clearing with ToolDia = %s started." msgstr "" "[success] Nicht-Kupfer-Restklärung mit Werkzeugdurchmesser =%s gestartet." -#: flatcamTools/ToolNonCopperClear.py:953 +#: flatcamTools/ToolNonCopperClear.py:1052 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" -#: flatcamTools/ToolNonCopperClear.py:961 +#: flatcamTools/ToolNonCopperClear.py:1060 msgid "" "[ERROR_NOTCL] NCC Tool finished but could not clear the object with current " "settings." @@ -11591,35 +11674,48 @@ msgstr "" "ausgewählt ist, wird der Paint nach dem Klicken gestartet.
Ein neues " "Geometrieobjekt mit den Werkzeugpfaden wird erstellt." -#: flatcamTools/ToolPaint.py:736 +#: flatcamTools/ToolPaint.py:742 msgid "geometry_on_paint_button" msgstr "geometry_on_paint_button" -#: flatcamTools/ToolPaint.py:755 flatcamTools/ToolPaint.py:791 +#: flatcamTools/ToolPaint.py:761 flatcamTools/ToolPaint.py:797 msgid "[WARNING_NOTCL] Click inside the desired polygon." msgstr "[WARNING_NOTCL] Klicken Sie in das gewünschte Polygon." -#: flatcamTools/ToolPaint.py:778 +#: flatcamTools/ToolPaint.py:784 msgid "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." msgstr "[ERROR_NOTCL] \"Paint\" für MultiGeo-Geometrien nicht möglich ..." -#: flatcamTools/ToolPaint.py:800 flatcamTools/ToolPaint.py:1004 +#: flatcamTools/ToolPaint.py:806 flatcamTools/ToolPaint.py:1083 +#: flatcamTools/ToolPaint.py:1383 msgid "Painting polygon..." msgstr "Polygon malen ..." -#: flatcamTools/ToolPaint.py:853 +#: flatcamTools/ToolPaint.py:825 +msgid "[WARNING_NOTCL] Click the start point of the paint area." +msgstr "[WARNING_NOTCL] Klicken Sie auf den Startpunkt des Malbereichs." + +#: flatcamTools/ToolPaint.py:836 +msgid "[WARNING_NOTCL] Click the end point of the paint area." +msgstr "[WARNING_NOTCL] Klicken Sie auf den Endpunkt des Malbereichs." + +#: flatcamTools/ToolPaint.py:842 +msgid "Done." +msgstr "Gemacht." + +#: flatcamTools/ToolPaint.py:932 msgid "[WARNING] No polygon found." msgstr "[WARNING] Kein Polygon gefunden." -#: flatcamTools/ToolPaint.py:856 +#: flatcamTools/ToolPaint.py:935 msgid "Painting polygon." msgstr "Polygon malen." -#: flatcamTools/ToolPaint.py:898 +#: flatcamTools/ToolPaint.py:977 msgid "[ERROR_NOTCL] Geometry could not be painted completely" msgstr "[ERROR_NOTCL] Geometrie konnte nicht vollständig gezeichnet werden" -#: flatcamTools/ToolPaint.py:924 +#: flatcamTools/ToolPaint.py:1003 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -11630,16 +11726,18 @@ msgstr "" "Kombination von Parametern. Oder eine andere Farbstrategie\n" "%s" -#: flatcamTools/ToolPaint.py:966 +#: flatcamTools/ToolPaint.py:1045 #, python-format msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:972 flatcamTools/ToolPaint.py:1271 +#: flatcamTools/ToolPaint.py:1051 flatcamTools/ToolPaint.py:1350 +#: flatcamTools/ToolPaint.py:1641 msgid "Polygon Paint started ..." msgstr "Polygonfarbe gestartet ..." -#: flatcamTools/ToolPaint.py:1125 flatcamTools/ToolPaint.py:1216 +#: flatcamTools/ToolPaint.py:1204 flatcamTools/ToolPaint.py:1295 +#: flatcamTools/ToolPaint.py:1495 flatcamTools/ToolPaint.py:1586 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11650,7 +11748,7 @@ msgstr "" "Parametern. Oder eine andere Farbmethode\n" "%s" -#: flatcamTools/ToolPaint.py:1149 +#: flatcamTools/ToolPaint.py:1228 flatcamTools/ToolPaint.py:1519 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11662,11 +11760,11 @@ msgstr "" "Geometrie zu groß ist.\n" "Ändern Sie die Malparameter und versuchen Sie es erneut." -#: flatcamTools/ToolPaint.py:1158 +#: flatcamTools/ToolPaint.py:1237 flatcamTools/ToolPaint.py:1528 msgid "[success] Paint All Done." msgstr "[success] 'Paint' Sie alles fertig." -#: flatcamTools/ToolPaint.py:1246 +#: flatcamTools/ToolPaint.py:1325 flatcamTools/ToolPaint.py:1616 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11678,7 +11776,7 @@ msgstr "" "Geometrie zu groß ist.\n" "Ändern Sie die Malparameter und versuchen Sie es erneut." -#: flatcamTools/ToolPaint.py:1255 +#: flatcamTools/ToolPaint.py:1334 flatcamTools/ToolPaint.py:1625 msgid "[success] Paint All with Rest-Machining done." msgstr "[success] Paint All with Rest-Machining erledigt." @@ -12329,7 +12427,7 @@ msgstr "[ERROR] ToolSolderPaste.on_view_gcode() -->%s" msgid "Export GCode ..." msgstr "GCode exportieren ..." -#: flatcamTools/ToolSolderPaste.py:1403 +#: flatcamTools/ToolSolderPaste.py:1407 #, python-format msgid "[success] Solder paste dispenser GCode file saved to: %s" msgstr "[success] GCode-Datei für Lötpastendispenser in gespeichert: %s" @@ -12660,9 +12758,6 @@ msgstr "CNCJob-Objekte können nicht versetzt werden." #~ msgid "M-Color " #~ msgstr "Mehrfarbig" -#~ msgid "Done." -#~ msgstr "Gemacht." - #~ msgid "Click on CENTER ..." #~ msgstr "Klicken Sie auf MITTE ..." diff --git a/locale/en/LC_MESSAGES/strings.mo b/locale/en/LC_MESSAGES/strings.mo index 76e20c5a062069181203a70d13647378c078a959..8d7eee36403ff58065ec716c6b1beebd3863010d 100644 GIT binary patch delta 43242 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 bYp3+_y!L$G&Rb_YZ$102?7a2=_^tl|PCt4j delta 41195 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 q#2}>r1{?-v3Wf$&#un4dx|tN{name}{name}" -#: FlatCAMApp.py:3258 +#: FlatCAMApp.py:3265 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -202,35 +212,35 @@ msgstr "" "a>
DOWNLOAD area here.
" -#: FlatCAMApp.py:3291 +#: FlatCAMApp.py:3298 msgid "Close" msgstr "Close" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5315 +#: FlatCAMApp.py:3418 FlatCAMApp.py:5325 msgid "[success] Defaults saved." msgstr "[success] Defaults saved." -#: FlatCAMApp.py:3432 +#: FlatCAMApp.py:3439 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Could not load factory defaults file." -#: FlatCAMApp.py:3441 +#: FlatCAMApp.py:3448 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Failed to parse factory defaults file." -#: FlatCAMApp.py:3455 +#: FlatCAMApp.py:3462 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Failed to write factory defaults to file." -#: FlatCAMApp.py:3459 +#: FlatCAMApp.py:3466 msgid "Factory defaults saved." msgstr "Factory defaults saved." -#: FlatCAMApp.py:3464 flatcamGUI/FlatCAMGUI.py:3132 +#: FlatCAMApp.py:3471 flatcamGUI/FlatCAMGUI.py:3132 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Application is saving the project. Please wait ..." -#: FlatCAMApp.py:3469 FlatCAMTranslation.py:164 +#: FlatCAMApp.py:3476 FlatCAMTranslation.py:164 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -238,11 +248,11 @@ msgstr "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" -#: FlatCAMApp.py:3472 FlatCAMApp.py:6177 FlatCAMTranslation.py:167 +#: FlatCAMApp.py:3479 FlatCAMApp.py:6192 FlatCAMTranslation.py:167 msgid "Save changes" msgstr "Save changes" -#: FlatCAMApp.py:3539 +#: FlatCAMApp.py:3546 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -258,40 +268,40 @@ msgstr "" "be lost and the result may not be what was expected. \n" "Check the generated GCODE." -#: FlatCAMApp.py:3580 +#: FlatCAMApp.py:3587 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." -#: FlatCAMApp.py:3602 +#: FlatCAMApp.py:3609 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." -#: FlatCAMApp.py:3617 FlatCAMApp.py:3642 +#: FlatCAMApp.py:3624 FlatCAMApp.py:3649 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." -#: FlatCAMApp.py:3621 FlatCAMApp.py:3646 +#: FlatCAMApp.py:3628 FlatCAMApp.py:3653 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" -#: FlatCAMApp.py:3634 +#: FlatCAMApp.py:3641 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] A Geometry object was converted to MultiGeo type." -#: FlatCAMApp.py:3660 +#: FlatCAMApp.py:3667 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] A Geometry object was converted to SingleGeo type." -#: FlatCAMApp.py:3901 +#: FlatCAMApp.py:3908 msgid "Toggle Units" msgstr "Toggle Units" -#: FlatCAMApp.py:3903 +#: FlatCAMApp.py:3910 msgid "Change project units ..." msgstr "Change project units ..." -#: FlatCAMApp.py:3904 +#: FlatCAMApp.py:3911 msgid "" "Changing the units of the project causes all geometrical properties of all " "objects to be scaled accordingly.\n" @@ -301,43 +311,43 @@ msgstr "" "objects to be scaled accordingly.\n" "Continue?" -#: FlatCAMApp.py:3906 FlatCAMApp.py:4756 FlatCAMApp.py:6456 FlatCAMApp.py:6469 -#: FlatCAMApp.py:6709 FlatCAMApp.py:6719 +#: FlatCAMApp.py:3913 FlatCAMApp.py:4766 FlatCAMApp.py:6471 FlatCAMApp.py:6484 +#: FlatCAMApp.py:6724 FlatCAMApp.py:6734 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3954 +#: FlatCAMApp.py:3961 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Converted units to %s" -#: FlatCAMApp.py:3965 +#: FlatCAMApp.py:3972 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Units conversion cancelled." -#: FlatCAMApp.py:4625 +#: FlatCAMApp.py:4632 msgid "Open file" msgstr "Open file" -#: FlatCAMApp.py:4656 FlatCAMApp.py:4661 +#: FlatCAMApp.py:4663 FlatCAMApp.py:4668 msgid "Export G-Code ..." msgstr "Export G-Code ..." -#: FlatCAMApp.py:4664 +#: FlatCAMApp.py:4671 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Export Code cancelled." -#: FlatCAMApp.py:4674 +#: FlatCAMApp.py:4680 msgid "[WARNING] No such file or directory" msgstr "[WARNING] No such file or directory" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4691 #, python-format msgid "Saved to: %s" msgstr "Saved to: %s" -#: FlatCAMApp.py:4744 FlatCAMApp.py:4777 FlatCAMApp.py:4788 FlatCAMApp.py:4799 -#: flatcamTools/ToolNonCopperClear.py:490 flatcamTools/ToolSolderPaste.py:767 +#: FlatCAMApp.py:4754 FlatCAMApp.py:4787 FlatCAMApp.py:4798 FlatCAMApp.py:4809 +#: flatcamTools/ToolNonCopperClear.py:563 flatcamTools/ToolSolderPaste.py:767 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." @@ -345,12 +355,12 @@ msgstr "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." -#: FlatCAMApp.py:4749 FlatCAMApp.py:4782 FlatCAMApp.py:4793 FlatCAMApp.py:4804 +#: FlatCAMApp.py:4759 FlatCAMApp.py:4792 FlatCAMApp.py:4803 FlatCAMApp.py:4814 #: flatcamGUI/FlatCAMGUI.py:3027 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adding Tool cancelled ..." -#: FlatCAMApp.py:4752 +#: FlatCAMApp.py:4762 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -358,35 +368,35 @@ msgstr "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." -#: FlatCAMApp.py:4864 +#: FlatCAMApp.py:4874 msgid "Object(s) deleted ..." msgstr "Object(s) deleted ..." -#: FlatCAMApp.py:4868 +#: FlatCAMApp.py:4878 msgid "Failed. No object(s) selected..." msgstr "Failed. No object(s) selected..." -#: FlatCAMApp.py:4870 +#: FlatCAMApp.py:4880 msgid "Save the work in Editor and try again ..." msgstr "Save the work in Editor and try again ..." -#: FlatCAMApp.py:4904 +#: FlatCAMApp.py:4914 msgid "Click to set the origin ..." msgstr "Click to set the origin ..." -#: FlatCAMApp.py:4916 +#: FlatCAMApp.py:4926 msgid "Jump to ..." msgstr "Jump to ..." -#: FlatCAMApp.py:4917 +#: FlatCAMApp.py:4927 msgid "Enter the coordinates in format X,Y:" msgstr "Enter the coordinates in format X,Y:" -#: FlatCAMApp.py:4924 +#: FlatCAMApp.py:4934 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Wrong coordinates. Enter coordinates in format: X,Y" -#: FlatCAMApp.py:4942 flatcamEditors/FlatCAMExcEditor.py:2321 +#: FlatCAMApp.py:4952 flatcamEditors/FlatCAMExcEditor.py:2321 #: flatcamEditors/FlatCAMExcEditor.py:2328 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -400,23 +410,23 @@ msgstr "Wrong coordinates. Enter coordinates in format: X,Y" msgid "[success] Done." msgstr "[success] Done." -#: FlatCAMApp.py:5074 FlatCAMApp.py:5141 +#: FlatCAMApp.py:5084 FlatCAMApp.py:5151 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] No object is selected. Select an object and try again." -#: FlatCAMApp.py:5182 +#: FlatCAMApp.py:5192 msgid "[success] Origin set ..." msgstr "[success] Origin set ..." -#: FlatCAMApp.py:5201 flatcamGUI/GUIElements.py:1375 +#: FlatCAMApp.py:5211 flatcamGUI/GUIElements.py:1375 msgid "Preferences" msgstr "Preferences" -#: FlatCAMApp.py:5267 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] Preferences edited but not saved." msgstr "[WARNING_NOTCL] Preferences edited but not saved." -#: FlatCAMApp.py:5301 +#: FlatCAMApp.py:5311 msgid "" "One or more values are changed.\n" "Do you want to save the Preferences?" @@ -424,76 +434,76 @@ msgstr "" "One or more values are changed.\n" "Do you want to save the Preferences?" -#: FlatCAMApp.py:5303 flatcamGUI/FlatCAMGUI.py:953 +#: FlatCAMApp.py:5313 flatcamGUI/FlatCAMGUI.py:953 msgid "Save Preferences" msgstr "Save Preferences" -#: FlatCAMApp.py:5330 +#: FlatCAMApp.py:5340 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] No object selected to Flip on Y axis." -#: FlatCAMApp.py:5355 +#: FlatCAMApp.py:5365 msgid "[success] Flip on Y axis done." msgstr "[success] Flip on Y axis done." -#: FlatCAMApp.py:5357 FlatCAMApp.py:5397 +#: FlatCAMApp.py:5367 FlatCAMApp.py:5407 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5498 flatcamTools/ToolTransform.py:747 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Due of %s, Flip action was not executed." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] No object selected to Flip on X axis." -#: FlatCAMApp.py:5395 +#: FlatCAMApp.py:5405 msgid "[success] Flip on X axis done." msgstr "[success] Flip on X axis done." -#: FlatCAMApp.py:5410 +#: FlatCAMApp.py:5420 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] No object selected to Rotate." -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Transform" msgstr "Transform" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Enter the Angle value:" msgstr "Enter the Angle value:" -#: FlatCAMApp.py:5443 +#: FlatCAMApp.py:5453 msgid "[success] Rotation done." msgstr "[success] Rotation done." -#: FlatCAMApp.py:5445 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5455 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5427 flatcamTools/ToolTransform.py:676 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Due of %s, rotation movement was not executed." -#: FlatCAMApp.py:5456 +#: FlatCAMApp.py:5466 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." -#: FlatCAMApp.py:5477 +#: FlatCAMApp.py:5487 msgid "[success] Skew on X axis done." msgstr "[success] Skew on X axis done." -#: FlatCAMApp.py:5487 +#: FlatCAMApp.py:5497 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." -#: FlatCAMApp.py:5508 +#: FlatCAMApp.py:5518 msgid "[success] Skew on Y axis done." msgstr "[success] Skew on Y axis done." -#: FlatCAMApp.py:5558 +#: FlatCAMApp.py:5568 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5571 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5581 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2424 #: flatcamEditors/FlatCAMGrbEditor.py:5016 flatcamGUI/ObjectUI.py:989 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:207 @@ -503,7 +513,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Add" -#: FlatCAMApp.py:5572 FlatCAMObj.py:3361 +#: FlatCAMApp.py:5582 FlatCAMObj.py:3349 #: flatcamEditors/FlatCAMGrbEditor.py:2429 flatcamGUI/FlatCAMGUI.py:523 #: flatcamGUI/FlatCAMGUI.py:723 flatcamGUI/FlatCAMGUI.py:1630 #: flatcamGUI/FlatCAMGUI.py:1970 flatcamGUI/ObjectUI.py:1005 @@ -512,15 +522,15 @@ msgstr "Add" msgid "Delete" msgstr "Delete" -#: FlatCAMApp.py:5585 +#: FlatCAMApp.py:5595 msgid "New Grid ..." msgstr "New Grid ..." -#: FlatCAMApp.py:5586 +#: FlatCAMApp.py:5596 msgid "Enter a Grid Value:" msgstr "Enter a Grid Value:" -#: FlatCAMApp.py:5594 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5604 FlatCAMApp.py:5631 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -528,56 +538,56 @@ msgstr "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." -#: FlatCAMApp.py:5600 +#: FlatCAMApp.py:5610 msgid "[success] New Grid added ..." msgstr "[success] New Grid added ..." -#: FlatCAMApp.py:5603 +#: FlatCAMApp.py:5613 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grid already exists ..." -#: FlatCAMApp.py:5606 +#: FlatCAMApp.py:5616 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adding New Grid cancelled ..." -#: FlatCAMApp.py:5628 +#: FlatCAMApp.py:5638 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Grid Value does not exist ..." -#: FlatCAMApp.py:5631 +#: FlatCAMApp.py:5641 msgid "[success] Grid Value deleted ..." msgstr "[success] Grid Value deleted ..." -#: FlatCAMApp.py:5634 +#: FlatCAMApp.py:5644 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Delete Grid value cancelled ..." -#: FlatCAMApp.py:5640 +#: FlatCAMApp.py:5650 msgid "Key Shortcut List" msgstr "Key Shortcut List" -#: FlatCAMApp.py:5673 +#: FlatCAMApp.py:5683 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] No object selected to copy it's name" -#: FlatCAMApp.py:5677 +#: FlatCAMApp.py:5687 msgid "Name copied on clipboard ..." msgstr "Name copied on clipboard ..." -#: FlatCAMApp.py:5719 flatcamEditors/FlatCAMGrbEditor.py:4012 +#: FlatCAMApp.py:5728 flatcamEditors/FlatCAMGrbEditor.py:4012 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordinates copied to clipboard." -#: FlatCAMApp.py:5975 FlatCAMApp.py:5978 FlatCAMApp.py:5981 FlatCAMApp.py:5984 -#: FlatCAMApp.py:5999 FlatCAMApp.py:6002 FlatCAMApp.py:6005 FlatCAMApp.py:6008 -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 FlatCAMApp.py:6054 FlatCAMApp.py:6057 +#: FlatCAMApp.py:5984 FlatCAMApp.py:5987 FlatCAMApp.py:5990 FlatCAMApp.py:5993 +#: FlatCAMApp.py:6008 FlatCAMApp.py:6011 FlatCAMApp.py:6014 FlatCAMApp.py:6017 +#: FlatCAMApp.py:6057 FlatCAMApp.py:6060 FlatCAMApp.py:6063 FlatCAMApp.py:6066 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selected" -#: FlatCAMApp.py:6174 +#: FlatCAMApp.py:6189 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -587,106 +597,106 @@ msgstr "" "Creating a New project will delete them.\n" "Do you want to Save the project?" -#: FlatCAMApp.py:6195 +#: FlatCAMApp.py:6210 msgid "[success] New Project created..." msgstr "[success] New Project created..." -#: FlatCAMApp.py:6315 FlatCAMApp.py:6318 flatcamGUI/FlatCAMGUI.py:604 +#: FlatCAMApp.py:6330 FlatCAMApp.py:6333 flatcamGUI/FlatCAMGUI.py:604 #: flatcamGUI/FlatCAMGUI.py:1849 msgid "Open Gerber" msgstr "Open Gerber" -#: FlatCAMApp.py:6323 +#: FlatCAMApp.py:6338 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Open Gerber cancelled." -#: FlatCAMApp.py:6344 FlatCAMApp.py:6347 flatcamGUI/FlatCAMGUI.py:605 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6362 flatcamGUI/FlatCAMGUI.py:605 #: flatcamGUI/FlatCAMGUI.py:1850 msgid "Open Excellon" msgstr "Open Excellon" -#: FlatCAMApp.py:6352 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Open Excellon cancelled." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6389 FlatCAMApp.py:6392 msgid "Open G-Code" msgstr "Open G-Code" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6397 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Open G-Code cancelled." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6415 FlatCAMApp.py:6418 msgid "Open Project" msgstr "Open Project" -#: FlatCAMApp.py:6411 +#: FlatCAMApp.py:6426 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Open Project cancelled." -#: FlatCAMApp.py:6430 FlatCAMApp.py:6433 +#: FlatCAMApp.py:6445 FlatCAMApp.py:6448 msgid "Open Configuration File" msgstr "Open Configuration File" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6452 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Open Config cancelled." -#: FlatCAMApp.py:6452 FlatCAMApp.py:6705 FlatCAMApp.py:8951 FlatCAMApp.py:8971 -#: FlatCAMApp.py:8992 FlatCAMApp.py:9014 +#: FlatCAMApp.py:6467 FlatCAMApp.py:6720 FlatCAMApp.py:9000 FlatCAMApp.py:9020 +#: FlatCAMApp.py:9041 FlatCAMApp.py:9063 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] No object selected." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6706 +#: FlatCAMApp.py:6468 FlatCAMApp.py:6721 msgid "Please Select a Geometry object to export" msgstr "Please Select a Geometry object to export" -#: FlatCAMApp.py:6466 +#: FlatCAMApp.py:6481 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." -#: FlatCAMApp.py:6479 FlatCAMApp.py:6483 +#: FlatCAMApp.py:6494 FlatCAMApp.py:6498 msgid "Export SVG" msgstr "Export SVG" -#: FlatCAMApp.py:6488 +#: FlatCAMApp.py:6503 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG cancelled." -#: FlatCAMApp.py:6507 +#: FlatCAMApp.py:6522 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" -#: FlatCAMApp.py:6513 FlatCAMApp.py:6517 +#: FlatCAMApp.py:6528 FlatCAMApp.py:6532 msgid "Export PNG Image" msgstr "Export PNG Image" -#: FlatCAMApp.py:6522 +#: FlatCAMApp.py:6537 msgid "Export PNG cancelled." msgstr "Export PNG cancelled." -#: FlatCAMApp.py:6541 +#: FlatCAMApp.py:6556 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." -#: FlatCAMApp.py:6546 FlatCAMApp.py:6669 +#: FlatCAMApp.py:6561 FlatCAMApp.py:6684 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." -#: FlatCAMApp.py:6558 +#: FlatCAMApp.py:6573 msgid "Save Gerber source file" msgstr "Save Gerber source file" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6578 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Save Gerber source file cancelled." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6597 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -694,21 +704,21 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." -#: FlatCAMApp.py:6587 FlatCAMApp.py:6628 +#: FlatCAMApp.py:6602 FlatCAMApp.py:6643 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." -#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 +#: FlatCAMApp.py:6610 FlatCAMApp.py:6614 msgid "Save Excellon source file" msgstr "Save Excellon source file" -#: FlatCAMApp.py:6604 +#: FlatCAMApp.py:6619 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Saving Excellon source file cancelled." -#: FlatCAMApp.py:6623 +#: FlatCAMApp.py:6638 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -716,94 +726,94 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." -#: FlatCAMApp.py:6636 FlatCAMApp.py:6640 +#: FlatCAMApp.py:6651 FlatCAMApp.py:6655 msgid "Export Excellon" msgstr "Export Excellon" -#: FlatCAMApp.py:6645 +#: FlatCAMApp.py:6660 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon cancelled." -#: FlatCAMApp.py:6664 +#: FlatCAMApp.py:6679 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." -#: FlatCAMApp.py:6677 FlatCAMApp.py:6681 +#: FlatCAMApp.py:6692 FlatCAMApp.py:6696 msgid "Export Gerber" msgstr "Export Gerber" -#: FlatCAMApp.py:6686 +#: FlatCAMApp.py:6701 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber cancelled." -#: FlatCAMApp.py:6716 +#: FlatCAMApp.py:6731 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Only Geometry objects can be used." -#: FlatCAMApp.py:6730 FlatCAMApp.py:6734 +#: FlatCAMApp.py:6745 FlatCAMApp.py:6749 msgid "Export DXF" msgstr "Export DXF" -#: FlatCAMApp.py:6740 +#: FlatCAMApp.py:6755 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF cancelled." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6763 +#: FlatCAMApp.py:6775 FlatCAMApp.py:6778 msgid "Import SVG" msgstr "Import SVG" -#: FlatCAMApp.py:6772 +#: FlatCAMApp.py:6787 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG cancelled." -#: FlatCAMApp.py:6791 FlatCAMApp.py:6795 +#: FlatCAMApp.py:6806 FlatCAMApp.py:6810 msgid "Import DXF" msgstr "Import DXF" -#: FlatCAMApp.py:6804 +#: FlatCAMApp.py:6819 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6822 +#: FlatCAMApp.py:6837 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6842 -msgid "" -"[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." -msgstr "" -"[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." - -#: FlatCAMApp.py:6849 -msgid "" -"[WARNING_NOTCL] There is no selected object for which to see it's source " -"file code." -msgstr "" -"[WARNING_NOTCL] There is no selected object for which to see it's source " -"file code." - #: FlatCAMApp.py:6857 +msgid "" +"[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." +msgstr "" +"[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." + +#: FlatCAMApp.py:6864 +msgid "" +"[WARNING_NOTCL] There is no selected object for which to see it's source " +"file code." +msgstr "" +"[WARNING_NOTCL] There is no selected object for which to see it's source " +"file code." + +#: FlatCAMApp.py:6872 msgid "Source Editor" msgstr "Source Editor" -#: FlatCAMApp.py:6867 +#: FlatCAMApp.py:6882 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6879 FlatCAMApp.py:8024 FlatCAMObj.py:5677 +#: FlatCAMApp.py:6894 FlatCAMApp.py:8073 FlatCAMObj.py:5593 #: flatcamTools/ToolSolderPaste.py:1284 msgid "Code Editor" msgstr "Code Editor" -#: FlatCAMApp.py:6891 +#: FlatCAMApp.py:6906 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6894 +#: FlatCAMApp.py:6909 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -847,98 +857,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6917 FlatCAMApp.py:6920 +#: FlatCAMApp.py:6932 FlatCAMApp.py:6935 msgid "Open TCL script" msgstr "Open TCL script" -#: FlatCAMApp.py:6928 +#: FlatCAMApp.py:6943 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL script cancelled." -#: FlatCAMApp.py:6940 +#: FlatCAMApp.py:6955 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6966 FlatCAMApp.py:6969 +#: FlatCAMApp.py:6981 FlatCAMApp.py:6984 msgid "Run TCL script" msgstr "Run TCL script" -#: FlatCAMApp.py:6977 +#: FlatCAMApp.py:6992 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Run TCL script cancelled." -#: FlatCAMApp.py:7029 FlatCAMApp.py:7033 +#: FlatCAMApp.py:7044 FlatCAMApp.py:7048 msgid "Save Project As ..." msgstr "Save Project As ..." -#: FlatCAMApp.py:7030 +#: FlatCAMApp.py:7045 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:7038 +#: FlatCAMApp.py:7053 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Save Project cancelled." -#: FlatCAMApp.py:7083 +#: FlatCAMApp.py:7098 msgid "Exporting SVG" msgstr "Exporting SVG" -#: FlatCAMApp.py:7117 FlatCAMApp.py:7223 FlatCAMApp.py:7338 +#: FlatCAMApp.py:7138 FlatCAMApp.py:7249 FlatCAMApp.py:7370 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG file exported to %s" -#: FlatCAMApp.py:7148 FlatCAMApp.py:7269 +#: FlatCAMApp.py:7169 FlatCAMApp.py:7295 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] No object Box. Using instead %s" -#: FlatCAMApp.py:7226 FlatCAMApp.py:7341 +#: FlatCAMApp.py:7252 FlatCAMApp.py:7373 msgid "Generating Film ... Please wait." msgstr "Generating Film ... Please wait." -#: FlatCAMApp.py:7489 +#: FlatCAMApp.py:7532 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon file exported to %s" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7539 msgid "Exporting Excellon" msgstr "Exporting Excellon" -#: FlatCAMApp.py:7501 FlatCAMApp.py:7508 +#: FlatCAMApp.py:7544 FlatCAMApp.py:7551 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Could not export Excellon file." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7655 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber file exported to %s" -#: FlatCAMApp.py:7613 +#: FlatCAMApp.py:7662 msgid "Exporting Gerber" msgstr "Exporting Gerber" -#: FlatCAMApp.py:7618 FlatCAMApp.py:7625 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7674 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Could not export Gerber file." -#: FlatCAMApp.py:7665 +#: FlatCAMApp.py:7714 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF file exported to %s" -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7720 msgid "Exporting DXF" msgstr "Exporting DXF" -#: FlatCAMApp.py:7676 FlatCAMApp.py:7683 +#: FlatCAMApp.py:7725 FlatCAMApp.py:7732 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Could not export DXF file." -#: FlatCAMApp.py:7703 FlatCAMApp.py:7745 FlatCAMApp.py:7789 +#: FlatCAMApp.py:7752 FlatCAMApp.py:7794 FlatCAMApp.py:7838 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -946,94 +956,95 @@ msgstr "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7762 msgid "Importing SVG" msgstr "Importing SVG" -#: FlatCAMApp.py:7724 FlatCAMApp.py:7766 FlatCAMApp.py:7809 FlatCAMApp.py:7886 -#: FlatCAMApp.py:7947 FlatCAMApp.py:8010 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7773 FlatCAMApp.py:7815 FlatCAMApp.py:7858 FlatCAMApp.py:7935 +#: FlatCAMApp.py:7996 FlatCAMApp.py:8059 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Opened: %s" -#: FlatCAMApp.py:7755 +#: FlatCAMApp.py:7804 msgid "Importing DXF" msgstr "Importing DXF" -#: FlatCAMApp.py:7797 +#: FlatCAMApp.py:7846 msgid "Importing Image" msgstr "Importing Image" -#: FlatCAMApp.py:7838 FlatCAMApp.py:7840 +#: FlatCAMApp.py:7887 FlatCAMApp.py:7889 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Failed to open file: %s" -#: FlatCAMApp.py:7843 +#: FlatCAMApp.py:7892 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -#: FlatCAMApp.py:7850 flatcamEditors/FlatCAMGrbEditor.py:3832 +#: FlatCAMApp.py:7899 FlatCAMObj.py:4296 +#: flatcamEditors/FlatCAMGrbEditor.py:3832 msgid "[ERROR] An internal error has occurred. See shell.\n" msgstr "[ERROR] An internal error has occurred. See shell.\n" -#: FlatCAMApp.py:7859 +#: FlatCAMApp.py:7908 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." -#: FlatCAMApp.py:7867 +#: FlatCAMApp.py:7916 msgid "Opening Gerber" msgstr "Opening Gerber" -#: FlatCAMApp.py:7877 +#: FlatCAMApp.py:7926 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -#: FlatCAMApp.py:7910 flatcamTools/ToolPcbWizard.py:418 +#: FlatCAMApp.py:7959 flatcamTools/ToolPcbWizard.py:418 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] This is not Excellon file." -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7962 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Cannot open file: %s" -#: FlatCAMApp.py:7918 flatcamTools/ToolPcbWizard.py:427 +#: FlatCAMApp.py:7967 flatcamTools/ToolPcbWizard.py:427 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has occurred. See shell.\n" -#: FlatCAMApp.py:7931 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7980 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:440 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] No geometry found in file: %s" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7983 msgid "Opening Excellon." msgstr "Opening Excellon." -#: FlatCAMApp.py:7940 +#: FlatCAMApp.py:7989 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." -#: FlatCAMApp.py:7977 +#: FlatCAMApp.py:8026 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Failed to open %s" -#: FlatCAMApp.py:7987 +#: FlatCAMApp.py:8036 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] This is not GCODE" -#: FlatCAMApp.py:7993 +#: FlatCAMApp.py:8042 msgid "Opening G-Code." msgstr "Opening G-Code." -#: FlatCAMApp.py:8001 +#: FlatCAMApp.py:8050 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -1043,26 +1054,26 @@ msgstr "" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" -#: FlatCAMApp.py:8041 +#: FlatCAMApp.py:8090 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Failed to open config file: %s" -#: FlatCAMApp.py:8067 FlatCAMApp.py:8084 +#: FlatCAMApp.py:8116 FlatCAMApp.py:8133 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Failed to open project file: %s" -#: FlatCAMApp.py:8107 +#: FlatCAMApp.py:8156 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Project loaded from: %s" -#: FlatCAMApp.py:8213 +#: FlatCAMApp.py:8262 msgid "Available commands:\n" msgstr "Available commands:\n" -#: FlatCAMApp.py:8215 +#: FlatCAMApp.py:8264 msgid "" "\n" "\n" @@ -1074,35 +1085,35 @@ msgstr "" "Type help for usage.\n" " Example: help open_gerber" -#: FlatCAMApp.py:8365 +#: FlatCAMApp.py:8414 msgid "Shows list of commands." msgstr "Shows list of commands." -#: FlatCAMApp.py:8422 +#: FlatCAMApp.py:8471 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Failed to load recent item list." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8478 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Failed to parse recent item list." -#: FlatCAMApp.py:8439 +#: FlatCAMApp.py:8488 msgid "[ERROR_NOTCL] Failed to load recent projects item list." msgstr "[ERROR_NOTCL] Failed to load recent projects item list." -#: FlatCAMApp.py:8446 +#: FlatCAMApp.py:8495 msgid "[ERROR_NOTCL] Failed to parse recent project item list." msgstr "[ERROR_NOTCL] Failed to parse recent project item list." -#: FlatCAMApp.py:8505 FlatCAMApp.py:8528 +#: FlatCAMApp.py:8554 FlatCAMApp.py:8577 msgid "Clear Recent files" msgstr "Clear Recent files" -#: FlatCAMApp.py:8545 flatcamGUI/FlatCAMGUI.py:970 +#: FlatCAMApp.py:8594 flatcamGUI/FlatCAMGUI.py:970 msgid "Shortcut Key List" msgstr "Shortcut Key List" -#: FlatCAMApp.py:8552 +#: FlatCAMApp.py:8601 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1198,23 +1209,23 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8659 +#: FlatCAMApp.py:8708 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "[WARNING_NOTCL] Failed checking for latest version. Could not connect." -#: FlatCAMApp.py:8666 +#: FlatCAMApp.py:8715 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "[ERROR_NOTCL] Could not parse information about latest version." -#: FlatCAMApp.py:8676 +#: FlatCAMApp.py:8725 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM is up to date!" -#: FlatCAMApp.py:8681 +#: FlatCAMApp.py:8730 msgid "Newer Version Available" msgstr "Newer Version Available" -#: FlatCAMApp.py:8682 +#: FlatCAMApp.py:8731 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1222,55 +1233,55 @@ msgstr "" "There is a newer version of FlatCAM available for download:\n" "\n" -#: FlatCAMApp.py:8684 +#: FlatCAMApp.py:8733 msgid "info" msgstr "info" -#: FlatCAMApp.py:8703 +#: FlatCAMApp.py:8752 msgid "[success] All plots disabled." msgstr "[success] All plots disabled." -#: FlatCAMApp.py:8709 +#: FlatCAMApp.py:8758 msgid "[success] All non selected plots disabled." msgstr "[success] All non selected plots disabled." -#: FlatCAMApp.py:8715 +#: FlatCAMApp.py:8764 msgid "[success] All plots enabled." msgstr "[success] All plots enabled." -#: FlatCAMApp.py:8721 +#: FlatCAMApp.py:8770 msgid "[success] Selected plots enabled..." msgstr "[success] Selected plots enabled..." -#: FlatCAMApp.py:8729 +#: FlatCAMApp.py:8778 msgid "[success] Selected plots disabled..." msgstr "[success] Selected plots disabled..." -#: FlatCAMApp.py:8739 FlatCAMApp.py:8766 FlatCAMApp.py:8783 +#: FlatCAMApp.py:8788 FlatCAMApp.py:8815 FlatCAMApp.py:8832 msgid "Working ..." msgstr "Working ..." -#: FlatCAMApp.py:8820 +#: FlatCAMApp.py:8869 msgid "Saving FlatCAM Project" msgstr "Saving FlatCAM Project" -#: FlatCAMApp.py:8841 FlatCAMApp.py:8872 +#: FlatCAMApp.py:8890 FlatCAMApp.py:8921 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Project saved to: %s" -#: FlatCAMApp.py:8859 +#: FlatCAMApp.py:8908 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." -#: FlatCAMApp.py:8866 +#: FlatCAMApp.py:8915 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." -#: FlatCAMApp.py:8874 +#: FlatCAMApp.py:8923 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." @@ -1280,78 +1291,78 @@ msgstr "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name changed from {old} to {new}" -#: FlatCAMObj.py:555 FlatCAMObj.py:2095 FlatCAMObj.py:3366 FlatCAMObj.py:5570 +#: FlatCAMObj.py:558 FlatCAMObj.py:2098 FlatCAMObj.py:3354 FlatCAMObj.py:5486 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:567 FlatCAMObj.py:2111 FlatCAMObj.py:3388 FlatCAMObj.py:5576 +#: FlatCAMObj.py:570 FlatCAMObj.py:2114 FlatCAMObj.py:3376 FlatCAMObj.py:5492 msgid "Advanced" msgstr "Advanced" -#: FlatCAMObj.py:920 FlatCAMObj.py:1018 -#| msgid "[ERROR_NOTCL] Geometry could not be painted completely" +#: FlatCAMObj.py:923 FlatCAMObj.py:1021 msgid "[ERROR_NOTCL] Isolation geometry could not be generated." msgstr "[ERROR_NOTCL] Isolation geometry could not be generated." -#: FlatCAMObj.py:957 FlatCAMObj.py:3061 FlatCAMObj.py:3323 FlatCAMObj.py:3632 +#: FlatCAMObj.py:960 FlatCAMObj.py:3049 FlatCAMObj.py:3311 FlatCAMObj.py:3589 msgid "Rough" msgstr "Rough" -#: FlatCAMObj.py:975 FlatCAMObj.py:1034 +#: FlatCAMObj.py:978 FlatCAMObj.py:1037 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Isolation geometry created: %s" -#: FlatCAMObj.py:1213 +#: FlatCAMObj.py:1216 msgid "Plotting Apertures" msgstr "Plotting Apertures" -#: FlatCAMObj.py:1936 flatcamEditors/FlatCAMExcEditor.py:1369 +#: FlatCAMObj.py:1939 flatcamEditors/FlatCAMExcEditor.py:1369 msgid "Total Drills" msgstr "Total Drills" -#: FlatCAMObj.py:1962 flatcamEditors/FlatCAMExcEditor.py:1401 +#: FlatCAMObj.py:1965 flatcamEditors/FlatCAMExcEditor.py:1401 msgid "Total Slots" msgstr "Total Slots" -#: FlatCAMObj.py:2169 FlatCAMObj.py:3440 FlatCAMObj.py:3771 FlatCAMObj.py:3962 -#: FlatCAMObj.py:3975 FlatCAMObj.py:4095 FlatCAMObj.py:4511 FlatCAMObj.py:4747 -#: FlatCAMObj.py:5151 flatcamEditors/FlatCAMExcEditor.py:1475 +#: FlatCAMObj.py:2172 FlatCAMObj.py:3427 FlatCAMObj.py:3717 FlatCAMObj.py:3904 +#: FlatCAMObj.py:3915 FlatCAMObj.py:4033 FlatCAMObj.py:4438 FlatCAMObj.py:4664 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1475 #: flatcamTools/ToolCalculators.py:304 flatcamTools/ToolCalculators.py:315 #: flatcamTools/ToolCalculators.py:327 flatcamTools/ToolCalculators.py:342 #: flatcamTools/ToolCalculators.py:355 flatcamTools/ToolCalculators.py:369 #: flatcamTools/ToolCalculators.py:380 flatcamTools/ToolCalculators.py:391 #: flatcamTools/ToolCalculators.py:402 flatcamTools/ToolFilm.py:241 -#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:481 -#: flatcamTools/ToolNonCopperClear.py:553 -#: flatcamTools/ToolNonCopperClear.py:630 -#: flatcamTools/ToolNonCopperClear.py:647 flatcamTools/ToolPaint.py:537 -#: flatcamTools/ToolPaint.py:609 flatcamTools/ToolPaint.py:746 -#: flatcamTools/ToolPaint.py:846 flatcamTools/ToolPaint.py:1000 -#: flatcamTools/ToolPanelize.py:387 flatcamTools/ToolPanelize.py:399 -#: flatcamTools/ToolPanelize.py:412 flatcamTools/ToolPanelize.py:425 -#: flatcamTools/ToolPanelize.py:437 flatcamTools/ToolPanelize.py:448 -#: flatcamTools/ToolSolderPaste.py:758 flatcamTools/ToolSolderPaste.py:830 +#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:554 +#: flatcamTools/ToolNonCopperClear.py:626 +#: flatcamTools/ToolNonCopperClear.py:703 +#: flatcamTools/ToolNonCopperClear.py:720 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolPaint.py:615 flatcamTools/ToolPaint.py:752 +#: flatcamTools/ToolPaint.py:925 flatcamTools/ToolPaint.py:1079 +#: flatcamTools/ToolPaint.py:1379 flatcamTools/ToolPanelize.py:387 +#: flatcamTools/ToolPanelize.py:399 flatcamTools/ToolPanelize.py:412 +#: flatcamTools/ToolPanelize.py:425 flatcamTools/ToolPanelize.py:437 +#: flatcamTools/ToolPanelize.py:448 flatcamTools/ToolSolderPaste.py:758 +#: flatcamTools/ToolSolderPaste.py:830 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered, use a number." -#: FlatCAMObj.py:2393 FlatCAMObj.py:2485 FlatCAMObj.py:2608 +#: FlatCAMObj.py:2396 FlatCAMObj.py:2488 FlatCAMObj.py:2611 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." -#: FlatCAMObj.py:2400 +#: FlatCAMObj.py:2403 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Tool_nr" msgstr "Tool_nr" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 #: flatcamEditors/FlatCAMExcEditor.py:820 #: flatcamEditors/FlatCAMExcEditor.py:2021 flatcamGUI/ObjectUI.py:553 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1359,21 +1370,21 @@ msgstr "Tool_nr" msgid "Diameter" msgstr "Diameter" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Drills_Nr" msgstr "Drills_Nr" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Slots_Nr" msgstr "Slots_Nr" -#: FlatCAMObj.py:2495 +#: FlatCAMObj.py:2498 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." -#: FlatCAMObj.py:2670 FlatCAMObj.py:4400 FlatCAMObj.py:4615 FlatCAMObj.py:4926 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4331 FlatCAMObj.py:4537 FlatCAMObj.py:4843 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1381,7 +1392,7 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2682 FlatCAMObj.py:4412 FlatCAMObj.py:4627 FlatCAMObj.py:4938 +#: FlatCAMObj.py:2682 FlatCAMObj.py:4341 FlatCAMObj.py:4547 FlatCAMObj.py:4853 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1389,12 +1400,12 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2714 FlatCAMObj.py:4814 FlatCAMObj.py:4819 FlatCAMObj.py:4969 +#: FlatCAMObj.py:2712 FlatCAMObj.py:4733 FlatCAMObj.py:4738 FlatCAMObj.py:4885 msgid "Generating CNC Code" msgstr "Generating CNC Code" -#: FlatCAMObj.py:2740 FlatCAMObj.py:5111 camlib.py:5179 camlib.py:5638 -#: camlib.py:5901 +#: FlatCAMObj.py:2737 FlatCAMObj.py:5027 camlib.py:5181 camlib.py:5640 +#: camlib.py:5903 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1404,77 +1415,73 @@ msgstr "" "format (x, y) \n" "but now there is only one value, not two. " -#: FlatCAMObj.py:3061 FlatCAMObj.py:4017 FlatCAMObj.py:4018 FlatCAMObj.py:4027 +#: FlatCAMObj.py:3049 FlatCAMObj.py:3956 FlatCAMObj.py:3957 FlatCAMObj.py:3966 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:3061 +#: FlatCAMObj.py:3049 msgid "Finish" msgstr "Finish" -#: FlatCAMObj.py:3359 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 +#: FlatCAMObj.py:3347 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 #: flatcamGUI/FlatCAMGUI.py:1629 flatcamGUI/FlatCAMGUI.py:1968 #: flatcamGUI/ObjectUI.py:997 msgid "Copy" msgstr "Copy" -#: FlatCAMObj.py:3602 +#: FlatCAMObj.py:3559 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." -#: FlatCAMObj.py:3677 +#: FlatCAMObj.py:3633 msgid "[success] Tool added in Tool Table." msgstr "[success] Tool added in Tool Table." -#: FlatCAMObj.py:3682 +#: FlatCAMObj.py:3636 msgid "[WARNING_NOTCL] Default Tool added. Wrong value format entered." msgstr "[WARNING_NOTCL] Default Tool added. Wrong value format entered." -#: FlatCAMObj.py:3716 FlatCAMObj.py:3726 +#: FlatCAMObj.py:3668 FlatCAMObj.py:3676 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Failed. Select a tool to copy." -#: FlatCAMObj.py:3755 +#: FlatCAMObj.py:3703 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Tool was copied in Tool Table." -#: FlatCAMObj.py:3788 +#: FlatCAMObj.py:3732 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Tool was edited in Tool Table." -#: FlatCAMObj.py:3817 FlatCAMObj.py:3825 +#: FlatCAMObj.py:3760 FlatCAMObj.py:3768 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Failed. Select a tool to delete." -#: FlatCAMObj.py:3847 +#: FlatCAMObj.py:3790 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Tool was deleted in Tool Table." -#: FlatCAMObj.py:4281 +#: FlatCAMObj.py:4219 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." -#: FlatCAMObj.py:4298 +#: FlatCAMObj.py:4235 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." -#: FlatCAMObj.py:4325 +#: FlatCAMObj.py:4260 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." -#: FlatCAMObj.py:4362 flatcamEditors/FlatCAMExcEditor.py:2078 -msgid "[ERROR] An internal error has ocurred. See shell.\n" -msgstr "[ERROR] An internal error has ocurred. See shell.\n" - -#: FlatCAMObj.py:4363 +#: FlatCAMObj.py:4297 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4520 FlatCAMObj.py:4754 +#: FlatCAMObj.py:4444 FlatCAMObj.py:4670 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1482,20 +1489,20 @@ msgstr "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." -#: FlatCAMObj.py:4639 flatcamTools/ToolSolderPaste.py:1112 +#: FlatCAMObj.py:4557 flatcamTools/ToolSolderPaste.py:1112 #: flatcamTools/ToolSolderPaste.py:1168 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -#: FlatCAMObj.py:5002 FlatCAMObj.py:5011 camlib.py:3360 camlib.py:3369 +#: FlatCAMObj.py:4918 FlatCAMObj.py:4927 camlib.py:3362 camlib.py:3371 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "[ERROR_NOTCL] Scale factor has to be a number: integer or float." -#: FlatCAMObj.py:5048 +#: FlatCAMObj.py:4964 msgid "[success] Geometry Scale done." msgstr "[success] Geometry Scale done." -#: FlatCAMObj.py:5065 camlib.py:3438 +#: FlatCAMObj.py:4981 camlib.py:3440 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1503,29 +1510,29 @@ msgstr "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." -#: FlatCAMObj.py:5084 +#: FlatCAMObj.py:5000 msgid "[success] Geometry Offset done." msgstr "[success] Geometry Offset done." -#: FlatCAMObj.py:5638 FlatCAMObj.py:5643 flatcamTools/ToolSolderPaste.py:1368 +#: FlatCAMObj.py:5554 FlatCAMObj.py:5559 flatcamTools/ToolSolderPaste.py:1368 msgid "Export Machine Code ..." msgstr "Export Machine Code ..." -#: FlatCAMObj.py:5649 flatcamTools/ToolSolderPaste.py:1371 +#: FlatCAMObj.py:5565 flatcamTools/ToolSolderPaste.py:1371 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5666 +#: FlatCAMObj.py:5582 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Machine Code file saved to: %s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5604 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5721 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1534,11 +1541,11 @@ msgstr "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." -#: FlatCAMObj.py:5858 +#: FlatCAMObj.py:5774 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" -#: FlatCAMObj.py:5871 +#: FlatCAMObj.py:5787 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1546,15 +1553,15 @@ msgstr "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." -#: FlatCAMObj.py:5878 +#: FlatCAMObj.py:5794 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "[success] Toolchange G-code was replaced by a custom code." -#: FlatCAMObj.py:5893 flatcamTools/ToolSolderPaste.py:1397 +#: FlatCAMObj.py:5808 flatcamTools/ToolSolderPaste.py:1397 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] No such file or directory" -#: FlatCAMObj.py:5913 FlatCAMObj.py:5925 +#: FlatCAMObj.py:5832 FlatCAMObj.py:5844 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1562,7 +1569,7 @@ msgstr "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" -#: FlatCAMObj.py:5931 +#: FlatCAMObj.py:5850 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] There is no postprocessor file." @@ -1593,40 +1600,40 @@ msgstr "[ERROR] Cause of error: %s" msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." -#: camlib.py:1402 +#: camlib.py:1404 msgid "[success] Object was mirrored ..." msgstr "[success] Object was mirrored ..." -#: camlib.py:1404 +#: camlib.py:1406 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" msgstr "[ERROR_NOTCL] Failed to mirror. No object selected" -#: camlib.py:1440 +#: camlib.py:1442 msgid "[success] Object was rotated ..." msgstr "[success] Object was rotated ..." -#: camlib.py:1442 +#: camlib.py:1444 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" msgstr "[ERROR_NOTCL] Failed to rotate. No object selected" -#: camlib.py:1476 +#: camlib.py:1478 msgid "[success] Object was skewed ..." msgstr "[success] Object was skewed ..." -#: camlib.py:1478 +#: camlib.py:1480 msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Failed to skew. No object selected" -#: camlib.py:2740 camlib.py:2825 +#: camlib.py:2742 camlib.py:2827 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Coordinates missing, line ignored: %s" -#: camlib.py:2741 camlib.py:2826 +#: camlib.py:2743 camlib.py:2828 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" -#: camlib.py:2790 +#: camlib.py:2792 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1635,7 +1642,7 @@ msgstr "" "[ERROR] Region does not have enough points. File will be processed but there " "are parser errors. Line number: %s" -#: camlib.py:3182 +#: camlib.py:3184 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1644,32 +1651,32 @@ msgstr "" "[ERROR]Gerber Parser ERROR.\n" "%s:" -#: camlib.py:3406 +#: camlib.py:3408 msgid "[success] Gerber Scale done." msgstr "[success] Gerber Scale done." -#: camlib.py:3471 +#: camlib.py:3473 msgid "[success] Gerber Offset done." msgstr "[success] Gerber Offset done." -#: camlib.py:3525 +#: camlib.py:3527 msgid "[success] Gerber Mirror done." msgstr "[success] Gerber Mirror done." -#: camlib.py:3571 +#: camlib.py:3573 msgid "[success] Gerber Skew done." msgstr "[success] Gerber Skew done." -#: camlib.py:3609 +#: camlib.py:3611 msgid "[success] Gerber Rotate done." msgstr "[success] Gerber Rotate done." -#: camlib.py:3890 +#: camlib.py:3892 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] This is GCODE mark: %s" -#: camlib.py:4005 +#: camlib.py:4007 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1686,7 +1693,7 @@ msgstr "" "The user needs to edit the resulting Excellon object and change the " "diameters to reflect the real diameters." -#: camlib.py:4470 +#: camlib.py:4472 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1695,7 +1702,7 @@ msgstr "" "[ERROR] Excellon Parser error.\n" "Parsing Failed. Line {l_nr}: {line}\n" -#: camlib.py:4549 +#: camlib.py:4551 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1705,12 +1712,12 @@ msgstr "" "not having a tool associated.\n" "Check the resulting GCode." -#: camlib.py:5088 +#: camlib.py:5090 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] There is no such parameter: %s" -#: camlib.py:5158 +#: camlib.py:5160 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1724,22 +1731,22 @@ msgstr "" "therefore the app will convert the value to negative. Check the resulting " "CNC code (Gcode etc)." -#: camlib.py:5165 camlib.py:5661 camlib.py:5924 +#: camlib.py:5167 camlib.py:5663 camlib.py:5926 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" -#: camlib.py:5394 camlib.py:5491 camlib.py:5549 +#: camlib.py:5396 camlib.py:5493 camlib.py:5551 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] The loaded Excellon file has no drills ..." -#: camlib.py:5496 +#: camlib.py:5498 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Wrong optimization type selected." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5651 camlib.py:5914 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1747,7 +1754,7 @@ msgstr "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." -#: camlib.py:5654 camlib.py:5917 +#: camlib.py:5656 camlib.py:5919 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1761,11 +1768,11 @@ msgstr "" "therefore the app will convert the value to negative.Check the resulting CNC " "code (Gcode etc)." -#: camlib.py:5666 camlib.py:5929 +#: camlib.py:5668 camlib.py:5931 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] Travel Z parameter is None or zero." -#: camlib.py:5670 camlib.py:5933 +#: camlib.py:5672 camlib.py:5935 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1779,19 +1786,19 @@ msgstr "" "therefore the app will convert the value to positive.Check the resulting CNC " "code (Gcode etc)." -#: camlib.py:5677 camlib.py:5940 +#: camlib.py:5679 camlib.py:5942 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" msgstr "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" -#: camlib.py:5807 +#: camlib.py:5809 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR]Expected a Geometry, got %s" -#: camlib.py:5813 +#: camlib.py:5815 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1799,7 +1806,7 @@ msgstr "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." -#: camlib.py:5852 +#: camlib.py:5854 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1809,7 +1816,7 @@ msgstr "" "current_geometry.\n" "Raise the value (in module) and try again." -#: camlib.py:6064 +#: camlib.py:6066 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." @@ -2148,6 +2155,10 @@ msgstr "" "[ERROR_NOTCL] There are no Tools definitions in the file. Aborting Excellon " "creation." +#: flatcamEditors/FlatCAMExcEditor.py:2078 +msgid "[ERROR] An internal error has ocurred. See shell.\n" +msgstr "[ERROR] An internal error has ocurred. See shell.\n" + #: flatcamEditors/FlatCAMExcEditor.py:2084 msgid "Creating Excellon." msgstr "Creating Excellon." @@ -2249,12 +2260,12 @@ msgstr "Tool" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4080 #: flatcamGUI/FlatCAMGUI.py:5189 flatcamGUI/FlatCAMGUI.py:5623 -#: flatcamGUI/FlatCAMGUI.py:5900 flatcamGUI/FlatCAMGUI.py:6055 +#: flatcamGUI/FlatCAMGUI.py:5913 flatcamGUI/FlatCAMGUI.py:6068 #: flatcamGUI/ObjectUI.py:259 msgid "Tool dia:" msgstr "Tool dia:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6057 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6070 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2263,7 +2274,7 @@ msgstr "" "be used in the operation." #: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5806 -#: flatcamGUI/FlatCAMGUI.py:6066 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamGUI/FlatCAMGUI.py:6079 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Overlap Rate:" @@ -2294,13 +2305,13 @@ msgstr "" "due of too many paths." #: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5822 -#: flatcamGUI/FlatCAMGUI.py:5923 flatcamGUI/FlatCAMGUI.py:6076 +#: flatcamGUI/FlatCAMGUI.py:5936 flatcamGUI/FlatCAMGUI.py:6089 #: flatcamTools/ToolCutOut.py:101 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Margin:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6078 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6091 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2312,12 +2323,12 @@ msgstr "" "be painted." #: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5831 -#: flatcamGUI/FlatCAMGUI.py:6087 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamGUI/FlatCAMGUI.py:6100 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Method:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6089 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6102 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." @@ -2326,31 +2337,31 @@ msgstr "" "
Seed-based: Outwards from seed." #: flatcamEditors/FlatCAMGeoEditor.py:480 flatcamGUI/FlatCAMGUI.py:5840 -#: flatcamGUI/FlatCAMGUI.py:6095 flatcamTools/ToolNonCopperClear.py:199 +#: flatcamGUI/FlatCAMGUI.py:6108 flatcamTools/ToolNonCopperClear.py:199 #: flatcamTools/ToolPaint.py:197 msgid "Standard" msgstr "Standard" #: flatcamEditors/FlatCAMGeoEditor.py:481 flatcamGUI/FlatCAMGUI.py:5841 -#: flatcamGUI/FlatCAMGUI.py:6096 flatcamTools/ToolNonCopperClear.py:200 +#: flatcamGUI/FlatCAMGUI.py:6109 flatcamTools/ToolNonCopperClear.py:200 #: flatcamTools/ToolPaint.py:198 msgid "Seed-based" msgstr "Seed-based" #: flatcamEditors/FlatCAMGeoEditor.py:482 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6097 flatcamTools/ToolNonCopperClear.py:201 +#: flatcamGUI/FlatCAMGUI.py:6110 flatcamTools/ToolNonCopperClear.py:201 #: flatcamTools/ToolPaint.py:199 msgid "Straight lines" msgstr "Straight lines" #: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5847 -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamGUI/FlatCAMGUI.py:6115 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Connect:" #: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5849 -#: flatcamGUI/FlatCAMGUI.py:6104 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2360,13 +2371,13 @@ msgstr "" "segments to minimize tool lifts." #: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5856 -#: flatcamGUI/FlatCAMGUI.py:6112 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamGUI/FlatCAMGUI.py:6125 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Contour:" #: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5858 -#: flatcamGUI/FlatCAMGUI.py:6114 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamGUI/FlatCAMGUI.py:6127 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2381,7 +2392,7 @@ msgstr "Paint" #: flatcamEditors/FlatCAMGeoEditor.py:527 flatcamGUI/FlatCAMGUI.py:639 #: flatcamGUI/FlatCAMGUI.py:1883 flatcamGUI/ObjectUI.py:1320 -#: flatcamTools/ToolPaint.py:340 +#: flatcamTools/ToolPaint.py:343 msgid "Paint Tool" msgstr "Paint Tool" @@ -2417,7 +2428,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2707 #: flatcamEditors/FlatCAMGeoEditor.py:2733 #: flatcamEditors/FlatCAMGeoEditor.py:2759 -#: flatcamTools/ToolNonCopperClear.py:817 flatcamTools/ToolProperties.py:104 +#: flatcamTools/ToolNonCopperClear.py:916 flatcamTools/ToolProperties.py:104 msgid "Tools" msgstr "Tools" @@ -2581,7 +2592,7 @@ msgid "Scale Y" msgstr "Scale Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6461 +#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6474 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Link" @@ -2596,7 +2607,7 @@ msgstr "" "using the Scale Factor X for both axis." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6482 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Scale Reference" @@ -4476,7 +4487,7 @@ msgid "&Cutout Tool" msgstr "&Cutout Tool" #: flatcamGUI/FlatCAMGUI.py:638 flatcamGUI/FlatCAMGUI.py:1882 -#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:285 +#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:336 msgid "NCC Tool" msgstr "NCC Tool" @@ -6066,8 +6077,8 @@ msgid "Replace With" msgstr "Replace With" #: flatcamGUI/FlatCAMGUI.py:1667 flatcamGUI/FlatCAMGUI.py:5556 -#: flatcamGUI/FlatCAMGUI.py:6129 flatcamGUI/ObjectUI.py:1369 -#: flatcamTools/ToolPaint.py:248 +#: flatcamGUI/FlatCAMGUI.py:6143 flatcamGUI/ObjectUI.py:1369 +#: flatcamTools/ToolPaint.py:249 msgid "All" msgstr "All" @@ -6805,7 +6816,7 @@ msgstr "" "toolpaths to cut outside polygons." #: flatcamGUI/FlatCAMGUI.py:4082 flatcamGUI/FlatCAMGUI.py:4761 -#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/ObjectUI.py:785 +#: flatcamGUI/FlatCAMGUI.py:5915 flatcamGUI/ObjectUI.py:785 #: flatcamGUI/ObjectUI.py:801 msgid "Diameter of the cutting tool." msgstr "Diameter of the cutting tool." @@ -7069,10 +7080,10 @@ msgstr "TZ" #: flatcamGUI/FlatCAMGUI.py:4352 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/FlatCAMGUI.py:5496 flatcamGUI/FlatCAMGUI.py:5788 -#: flatcamGUI/FlatCAMGUI.py:5889 flatcamGUI/FlatCAMGUI.py:5983 -#: flatcamGUI/FlatCAMGUI.py:6042 flatcamGUI/FlatCAMGUI.py:6145 -#: flatcamGUI/FlatCAMGUI.py:6206 flatcamGUI/FlatCAMGUI.py:6405 -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/FlatCAMGUI.py:5996 +#: flatcamGUI/FlatCAMGUI.py:6055 flatcamGUI/FlatCAMGUI.py:6158 +#: flatcamGUI/FlatCAMGUI.py:6219 flatcamGUI/FlatCAMGUI.py:6418 +#: flatcamGUI/FlatCAMGUI.py:6545 msgid "Parameters:" msgstr "Parameters:" @@ -7308,7 +7319,7 @@ msgstr "" "for this drill object." #: flatcamGUI/FlatCAMGUI.py:4635 flatcamGUI/FlatCAMGUI.py:5222 -#: flatcamGUI/FlatCAMGUI.py:6341 flatcamGUI/ObjectUI.py:592 +#: flatcamGUI/FlatCAMGUI.py:6354 flatcamGUI/ObjectUI.py:592 #: flatcamGUI/ObjectUI.py:1068 flatcamTools/ToolCalculators.py:106 msgid "Cut Z:" msgstr "Cut Z:" @@ -8198,7 +8209,7 @@ msgstr "dwelltime = time to dwell to allow the spindle to reach it's set RPM" msgid "NCC Tool Options" msgstr "NCC Tool Options" -#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6543 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6556 msgid "Tools dia:" msgstr "Tools dia:" @@ -8263,11 +8274,37 @@ msgstr "" "could not be cleared by previous tool.\n" "If not checked, use the standard algorithm." -#: flatcamGUI/FlatCAMGUI.py:5886 +#: flatcamGUI/FlatCAMGUI.py:5879 flatcamTools/ToolNonCopperClear.py:239 +msgid "Itself" +msgstr "Itself" + +#: flatcamGUI/FlatCAMGUI.py:5880 flatcamGUI/FlatCAMGUI.py:6031 +#: flatcamTools/ToolDblSided.py:132 flatcamTools/ToolNonCopperClear.py:240 +msgid "Box" +msgstr "Box" + +#: flatcamGUI/FlatCAMGUI.py:5881 flatcamTools/ToolNonCopperClear.py:241 +#| msgid "Preferences" +msgid "Reference:" +msgstr "Reference:" + +#: flatcamGUI/FlatCAMGUI.py:5883 +msgid "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." +msgstr "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." + +#: flatcamGUI/FlatCAMGUI.py:5899 msgid "Cutout Tool Options" msgstr "Cutout Tool Options" -#: flatcamGUI/FlatCAMGUI.py:5891 flatcamGUI/ObjectUI.py:399 +#: flatcamGUI/FlatCAMGUI.py:5904 flatcamGUI/ObjectUI.py:399 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8277,11 +8314,11 @@ msgstr "" "the PCB and separate it from\n" "the original board." -#: flatcamGUI/FlatCAMGUI.py:5909 flatcamTools/ToolCutOut.py:77 +#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:77 msgid "Obj kind:" msgstr "Obj kind:" -#: flatcamGUI/FlatCAMGUI.py:5911 flatcamTools/ToolCutOut.py:79 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:79 msgid "" "Choice of what kind the object we want to cutout is.
- Single: " "contain a single PCB Gerber outline object.
- Panel: a panel PCB " @@ -8293,16 +8330,16 @@ msgstr "" "Gerber object, which is made\n" "out of many individual PCB outlines." -#: flatcamGUI/FlatCAMGUI.py:5918 flatcamGUI/FlatCAMGUI.py:6128 +#: flatcamGUI/FlatCAMGUI.py:5931 flatcamGUI/FlatCAMGUI.py:6141 #: flatcamTools/ToolCutOut.py:85 flatcamTools/ToolPaint.py:247 msgid "Single" msgstr "Single" -#: flatcamGUI/FlatCAMGUI.py:5919 flatcamTools/ToolCutOut.py:86 +#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:86 msgid "Panel" msgstr "Panel" -#: flatcamGUI/FlatCAMGUI.py:5925 +#: flatcamGUI/FlatCAMGUI.py:5938 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -8310,11 +8347,11 @@ msgstr "" "Distance from objects at which\n" "to draw the cutout." -#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:111 +#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:111 msgid "Gap size:" msgstr "Gap size:" -#: flatcamGUI/FlatCAMGUI.py:5934 +#: flatcamGUI/FlatCAMGUI.py:5947 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8324,11 +8361,11 @@ msgstr "" "that will remain to hold the\n" "board in place." -#: flatcamGUI/FlatCAMGUI.py:5942 flatcamTools/ToolCutOut.py:149 +#: flatcamGUI/FlatCAMGUI.py:5955 flatcamTools/ToolCutOut.py:149 msgid "Gaps:" msgstr "Gaps:" -#: flatcamGUI/FlatCAMGUI.py:5944 +#: flatcamGUI/FlatCAMGUI.py:5957 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8350,19 +8387,19 @@ msgstr "" "- 2tb - 2*top + 2*bottom\n" "- 8 - 2*left + 2*right +2*top + 2*bottom" -#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolCutOut.py:130 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolCutOut.py:130 msgid "Convex Sh.:" msgstr "Convex Sh.:" -#: flatcamGUI/FlatCAMGUI.py:5967 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "Create a convex shape surrounding the entire PCB." msgstr "Create a convex shape surrounding the entire PCB." -#: flatcamGUI/FlatCAMGUI.py:5980 +#: flatcamGUI/FlatCAMGUI.py:5993 msgid "2Sided Tool Options" msgstr "2Sided Tool Options" -#: flatcamGUI/FlatCAMGUI.py:5985 +#: flatcamGUI/FlatCAMGUI.py:5998 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8370,36 +8407,32 @@ msgstr "" "A tool to help in creating a double sided\n" "PCB using alignment holes." -#: flatcamGUI/FlatCAMGUI.py:5995 flatcamTools/ToolDblSided.py:234 +#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:234 msgid "Drill diam.:" msgstr "Drill diam.:" -#: flatcamGUI/FlatCAMGUI.py:5997 flatcamTools/ToolDblSided.py:225 +#: flatcamGUI/FlatCAMGUI.py:6010 flatcamTools/ToolDblSided.py:225 #: flatcamTools/ToolDblSided.py:236 msgid "Diameter of the drill for the alignment holes." msgstr "Diameter of the drill for the alignment holes." -#: flatcamGUI/FlatCAMGUI.py:6006 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Mirror Axis:" -#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:6021 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Mirror vertically (X) or horizontally (Y)." -#: flatcamGUI/FlatCAMGUI.py:6017 flatcamTools/ToolDblSided.py:131 +#: flatcamGUI/FlatCAMGUI.py:6030 flatcamTools/ToolDblSided.py:131 msgid "Point" msgstr "Point" -#: flatcamGUI/FlatCAMGUI.py:6018 flatcamTools/ToolDblSided.py:132 -msgid "Box" -msgstr "Box" - -#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:6032 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Axis Ref:" -#: flatcamGUI/FlatCAMGUI.py:6021 +#: flatcamGUI/FlatCAMGUI.py:6034 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8409,11 +8442,11 @@ msgstr "" " a specified box (in a Geometry object) in \n" "the middle." -#: flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamGUI/FlatCAMGUI.py:6050 msgid "Paint Tool Options" msgstr "Paint Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6044 flatcamGUI/ObjectUI.py:1311 +#: flatcamGUI/FlatCAMGUI.py:6057 flatcamGUI/ObjectUI.py:1311 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8425,7 +8458,7 @@ msgstr "" "all copper). You will be asked\n" "to click on the desired polygon." -#: flatcamGUI/FlatCAMGUI.py:6068 +#: flatcamGUI/FlatCAMGUI.py:6081 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8433,19 +8466,24 @@ msgstr "" "How much (fraction) of the tool\n" "width to overlap each tool pass." -#: flatcamGUI/FlatCAMGUI.py:6122 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6135 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Selection:" -#: flatcamGUI/FlatCAMGUI.py:6124 +#: flatcamGUI/FlatCAMGUI.py:6137 msgid "How to select the polygons to paint." msgstr "How to select the polygons to paint." -#: flatcamGUI/FlatCAMGUI.py:6142 +#: flatcamGUI/FlatCAMGUI.py:6142 flatcamTools/ToolPaint.py:248 +#| msgid "Mark Area" +msgid "Area" +msgstr "Area" + +#: flatcamGUI/FlatCAMGUI.py:6155 msgid "Film Tool Options" msgstr "Film Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6147 +#: flatcamGUI/FlatCAMGUI.py:6160 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8455,11 +8493,11 @@ msgstr "" "FlatCAM object.\n" "The file is saved in SVG format." -#: flatcamGUI/FlatCAMGUI.py:6158 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Film Type:" -#: flatcamGUI/FlatCAMGUI.py:6160 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8475,11 +8513,11 @@ msgstr "" "with white on a black canvas.\n" "The Film format is SVG." -#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6184 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Border:" -#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8499,11 +8537,11 @@ msgstr "" "white color like the rest and which may confound with the\n" "surroundings if not for this border." -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Scale Stroke:" -#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8515,11 +8553,11 @@ msgstr "" "thinner,\n" "therefore the fine features may be more affected by this parameter." -#: flatcamGUI/FlatCAMGUI.py:6203 +#: flatcamGUI/FlatCAMGUI.py:6216 msgid "Panelize Tool Options" msgstr "Panelize Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6208 +#: flatcamGUI/FlatCAMGUI.py:6221 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8529,11 +8567,11 @@ msgstr "" "each element is a copy of the source object spaced\n" "at a X distance, Y distance of each other." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6232 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Spacing cols:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6234 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8541,11 +8579,11 @@ msgstr "" "Spacing between columns of the desired panel.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6229 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6242 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Spacing rows:" -#: flatcamGUI/FlatCAMGUI.py:6231 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6244 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8553,35 +8591,35 @@ msgstr "" "Spacing between rows of the desired panel.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6252 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Columns:" -#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6254 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Number of columns of the desired panel" -#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6261 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Rows:" -#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6263 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Number of rows of the desired panel" -#: flatcamGUI/FlatCAMGUI.py:6256 flatcamTools/ToolPanelize.py:181 +#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:181 msgid "Gerber" msgstr "Gerber" -#: flatcamGUI/FlatCAMGUI.py:6257 flatcamTools/ToolPanelize.py:182 +#: flatcamGUI/FlatCAMGUI.py:6270 flatcamTools/ToolPanelize.py:182 msgid "Geo" msgstr "Geo" -#: flatcamGUI/FlatCAMGUI.py:6258 +#: flatcamGUI/FlatCAMGUI.py:6271 msgid "Panel Type:" msgstr "Panel Type:" -#: flatcamGUI/FlatCAMGUI.py:6260 +#: flatcamGUI/FlatCAMGUI.py:6273 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8591,11 +8629,11 @@ msgstr "" "- Gerber\n" "- Geometry" -#: flatcamGUI/FlatCAMGUI.py:6269 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "Constrain within:" msgstr "Constrain within:" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6284 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8609,11 +8647,11 @@ msgstr "" "the final panel will have as many columns and rows as\n" "they fit completely within selected area." -#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6293 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Width (DX):" -#: flatcamGUI/FlatCAMGUI.py:6282 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6295 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8621,11 +8659,11 @@ msgstr "" "The width (DX) within which the panel must fit.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6289 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6302 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Height (DY):" -#: flatcamGUI/FlatCAMGUI.py:6291 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6304 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8633,15 +8671,15 @@ msgstr "" "The height (DY)within which the panel must fit.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6305 +#: flatcamGUI/FlatCAMGUI.py:6318 msgid "Calculators Tool Options" msgstr "Calculators Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6308 +#: flatcamGUI/FlatCAMGUI.py:6321 msgid "V-Shape Tool Calculator:" msgstr "V-Shape Tool Calculator:" -#: flatcamGUI/FlatCAMGUI.py:6310 +#: flatcamGUI/FlatCAMGUI.py:6323 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8651,11 +8689,11 @@ msgstr "" "having the tip diameter, tip angle and\n" "depth-of-cut as parameters." -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:92 +#: flatcamGUI/FlatCAMGUI.py:6334 flatcamTools/ToolCalculators.py:92 msgid "Tip Diameter:" msgstr "Tip Diameter:" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6336 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8663,11 +8701,11 @@ msgstr "" "This is the tool tip diameter.\n" "It is specified by manufacturer." -#: flatcamGUI/FlatCAMGUI.py:6331 +#: flatcamGUI/FlatCAMGUI.py:6344 msgid "Tip angle:" msgstr "Tip angle:" -#: flatcamGUI/FlatCAMGUI.py:6333 +#: flatcamGUI/FlatCAMGUI.py:6346 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8675,7 +8713,7 @@ msgstr "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." -#: flatcamGUI/FlatCAMGUI.py:6343 +#: flatcamGUI/FlatCAMGUI.py:6356 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8683,11 +8721,11 @@ msgstr "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." -#: flatcamGUI/FlatCAMGUI.py:6350 +#: flatcamGUI/FlatCAMGUI.py:6363 msgid "ElectroPlating Calculator:" msgstr "ElectroPlating Calculator:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:148 +#: flatcamGUI/FlatCAMGUI.py:6365 flatcamTools/ToolCalculators.py:148 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8697,27 +8735,27 @@ msgstr "" "using a method like grahite ink or calcium hypophosphite ink or palladium " "chloride." -#: flatcamGUI/FlatCAMGUI.py:6362 flatcamTools/ToolCalculators.py:157 +#: flatcamGUI/FlatCAMGUI.py:6375 flatcamTools/ToolCalculators.py:157 msgid "Board Length:" msgstr "Board Length:" -#: flatcamGUI/FlatCAMGUI.py:6364 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:161 msgid "This is the board length. In centimeters." msgstr "This is the board length. In centimeters." -#: flatcamGUI/FlatCAMGUI.py:6370 flatcamTools/ToolCalculators.py:163 +#: flatcamGUI/FlatCAMGUI.py:6383 flatcamTools/ToolCalculators.py:163 msgid "Board Width:" msgstr "Board Width:" -#: flatcamGUI/FlatCAMGUI.py:6372 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6385 flatcamTools/ToolCalculators.py:167 msgid "This is the board width.In centimeters." msgstr "This is the board width.In centimeters." -#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:169 +#: flatcamGUI/FlatCAMGUI.py:6390 flatcamTools/ToolCalculators.py:169 msgid "Current Density:" msgstr "Current Density:" -#: flatcamGUI/FlatCAMGUI.py:6380 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6393 flatcamTools/ToolCalculators.py:173 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8725,11 +8763,11 @@ msgstr "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." -#: flatcamGUI/FlatCAMGUI.py:6386 flatcamTools/ToolCalculators.py:176 +#: flatcamGUI/FlatCAMGUI.py:6399 flatcamTools/ToolCalculators.py:176 msgid "Copper Growth:" msgstr "Copper Growth:" -#: flatcamGUI/FlatCAMGUI.py:6389 flatcamTools/ToolCalculators.py:180 +#: flatcamGUI/FlatCAMGUI.py:6402 flatcamTools/ToolCalculators.py:180 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8737,11 +8775,11 @@ msgstr "" "How thick the copper growth is intended to be.\n" "In microns." -#: flatcamGUI/FlatCAMGUI.py:6402 +#: flatcamGUI/FlatCAMGUI.py:6415 msgid "Transform Tool Options" msgstr "Transform Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6407 +#: flatcamGUI/FlatCAMGUI.py:6420 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8749,47 +8787,47 @@ msgstr "" "Various transformations that can be applied\n" "on a FlatCAM object." -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6430 msgid "Rotate Angle:" msgstr "Rotate Angle:" -#: flatcamGUI/FlatCAMGUI.py:6419 +#: flatcamGUI/FlatCAMGUI.py:6432 msgid "Angle for rotation. In degrees." msgstr "Angle for rotation. In degrees." -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Skew_X angle:" msgstr "Skew_X angle:" -#: flatcamGUI/FlatCAMGUI.py:6428 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Angle for Skew/Shear on X axis. In degrees." -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Skew_Y angle:" msgstr "Skew_Y angle:" -#: flatcamGUI/FlatCAMGUI.py:6437 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Angle for Skew/Shear on Y axis. In degrees." -#: flatcamGUI/FlatCAMGUI.py:6444 +#: flatcamGUI/FlatCAMGUI.py:6457 msgid "Scale_X factor:" msgstr "Scale_X factor:" -#: flatcamGUI/FlatCAMGUI.py:6446 +#: flatcamGUI/FlatCAMGUI.py:6459 msgid "Factor for scaling on X axis." msgstr "Factor for scaling on X axis." -#: flatcamGUI/FlatCAMGUI.py:6453 +#: flatcamGUI/FlatCAMGUI.py:6466 msgid "Scale_Y factor:" msgstr "Scale_Y factor:" -#: flatcamGUI/FlatCAMGUI.py:6455 +#: flatcamGUI/FlatCAMGUI.py:6468 msgid "Factor for scaling on Y axis." msgstr "Factor for scaling on Y axis." -#: flatcamGUI/FlatCAMGUI.py:6463 +#: flatcamGUI/FlatCAMGUI.py:6476 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8797,7 +8835,7 @@ msgstr "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." -#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6484 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8809,27 +8847,27 @@ msgstr "" "and the center of the biggest bounding box\n" "of the selected objects when unchecked." -#: flatcamGUI/FlatCAMGUI.py:6480 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "Offset_X val:" msgstr "Offset_X val:" -#: flatcamGUI/FlatCAMGUI.py:6482 +#: flatcamGUI/FlatCAMGUI.py:6495 msgid "Distance to offset on X axis. In current units." msgstr "Distance to offset on X axis. In current units." -#: flatcamGUI/FlatCAMGUI.py:6489 +#: flatcamGUI/FlatCAMGUI.py:6502 msgid "Offset_Y val:" msgstr "Offset_Y val:" -#: flatcamGUI/FlatCAMGUI.py:6491 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Distance to offset on Y axis. In current units." msgstr "Distance to offset on Y axis. In current units." -#: flatcamGUI/FlatCAMGUI.py:6497 +#: flatcamGUI/FlatCAMGUI.py:6510 msgid "Mirror Reference" msgstr "Mirror Reference" -#: flatcamGUI/FlatCAMGUI.py:6499 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -8851,11 +8889,11 @@ msgstr "" "Or enter the coords in format (x, y) in the\n" "Point Entry field and click Flip on X(Y)" -#: flatcamGUI/FlatCAMGUI.py:6510 +#: flatcamGUI/FlatCAMGUI.py:6523 msgid " Mirror Ref. Point:" msgstr " Mirror Ref. Point:" -#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6525 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -8865,11 +8903,11 @@ msgstr "" "The 'x' in (x, y) will be used when using Flip on X and\n" "the 'y' in (x, y) will be used when using Flip on Y and" -#: flatcamGUI/FlatCAMGUI.py:6529 +#: flatcamGUI/FlatCAMGUI.py:6542 msgid "SolderPaste Tool Options" msgstr "SolderPaste Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6534 +#: flatcamGUI/FlatCAMGUI.py:6547 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -8877,47 +8915,47 @@ msgstr "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." -#: flatcamGUI/FlatCAMGUI.py:6545 +#: flatcamGUI/FlatCAMGUI.py:6558 msgid "Diameters of nozzle tools, separated by ','" msgstr "Diameters of nozzle tools, separated by ','" -#: flatcamGUI/FlatCAMGUI.py:6552 +#: flatcamGUI/FlatCAMGUI.py:6565 msgid "New Nozzle Dia:" msgstr "New Nozzle Dia:" -#: flatcamGUI/FlatCAMGUI.py:6554 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "Diameter for the new Nozzle tool to add in the Tool Table" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6575 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Z Dispense Start:" -#: flatcamGUI/FlatCAMGUI.py:6564 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "The height (Z) when solder paste dispensing starts." -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6584 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Z Dispense:" -#: flatcamGUI/FlatCAMGUI.py:6573 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "The height (Z) when doing solder paste dispensing." -#: flatcamGUI/FlatCAMGUI.py:6580 flatcamTools/ToolSolderPaste.py:182 +#: flatcamGUI/FlatCAMGUI.py:6593 flatcamTools/ToolSolderPaste.py:182 msgid "Z Dispense Stop:" msgstr "Z Dispense Stop:" -#: flatcamGUI/FlatCAMGUI.py:6582 flatcamTools/ToolSolderPaste.py:184 +#: flatcamGUI/FlatCAMGUI.py:6595 flatcamTools/ToolSolderPaste.py:184 msgid "The height (Z) when solder paste dispensing stops." msgstr "The height (Z) when solder paste dispensing stops." -#: flatcamGUI/FlatCAMGUI.py:6589 flatcamTools/ToolSolderPaste.py:190 +#: flatcamGUI/FlatCAMGUI.py:6602 flatcamTools/ToolSolderPaste.py:190 msgid "Z Travel:" msgstr "Z Travel:" -#: flatcamGUI/FlatCAMGUI.py:6591 flatcamTools/ToolSolderPaste.py:192 +#: flatcamGUI/FlatCAMGUI.py:6604 flatcamTools/ToolSolderPaste.py:192 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -8925,19 +8963,19 @@ msgstr "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." -#: flatcamGUI/FlatCAMGUI.py:6599 flatcamTools/ToolSolderPaste.py:199 +#: flatcamGUI/FlatCAMGUI.py:6612 flatcamTools/ToolSolderPaste.py:199 msgid "Z Toolchange:" msgstr "Z Toolchange:" -#: flatcamGUI/FlatCAMGUI.py:6601 flatcamTools/ToolSolderPaste.py:201 +#: flatcamGUI/FlatCAMGUI.py:6614 flatcamTools/ToolSolderPaste.py:201 msgid "The height (Z) for tool (nozzle) change." msgstr "The height (Z) for tool (nozzle) change." -#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:207 +#: flatcamGUI/FlatCAMGUI.py:6621 flatcamTools/ToolSolderPaste.py:207 msgid "XY Toolchange:" msgstr "XY Toolchange:" -#: flatcamGUI/FlatCAMGUI.py:6610 flatcamTools/ToolSolderPaste.py:209 +#: flatcamGUI/FlatCAMGUI.py:6623 flatcamTools/ToolSolderPaste.py:209 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -8945,19 +8983,19 @@ msgstr "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." -#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:216 +#: flatcamGUI/FlatCAMGUI.py:6631 flatcamTools/ToolSolderPaste.py:216 msgid "Feedrate X-Y:" msgstr "Feedrate X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6620 flatcamTools/ToolSolderPaste.py:218 +#: flatcamGUI/FlatCAMGUI.py:6633 flatcamTools/ToolSolderPaste.py:218 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Feedrate (speed) while moving on the X-Y plane." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:224 +#: flatcamGUI/FlatCAMGUI.py:6640 flatcamTools/ToolSolderPaste.py:224 msgid "Feedrate Z:" msgstr "Feedrate Z:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:226 +#: flatcamGUI/FlatCAMGUI.py:6642 flatcamTools/ToolSolderPaste.py:226 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." @@ -8965,11 +9003,11 @@ msgstr "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:233 +#: flatcamGUI/FlatCAMGUI.py:6650 flatcamTools/ToolSolderPaste.py:233 msgid "Feedrate Z Dispense:" msgstr "Feedrate Z Dispense:" -#: flatcamGUI/FlatCAMGUI.py:6639 +#: flatcamGUI/FlatCAMGUI.py:6652 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -8977,11 +9015,11 @@ msgstr "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." -#: flatcamGUI/FlatCAMGUI.py:6647 flatcamTools/ToolSolderPaste.py:242 +#: flatcamGUI/FlatCAMGUI.py:6660 flatcamTools/ToolSolderPaste.py:242 msgid "Spindle Speed FWD:" msgstr "Spindle Speed FWD:" -#: flatcamGUI/FlatCAMGUI.py:6649 flatcamTools/ToolSolderPaste.py:244 +#: flatcamGUI/FlatCAMGUI.py:6662 flatcamTools/ToolSolderPaste.py:244 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -8989,19 +9027,19 @@ msgstr "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." -#: flatcamGUI/FlatCAMGUI.py:6657 flatcamTools/ToolSolderPaste.py:251 +#: flatcamGUI/FlatCAMGUI.py:6670 flatcamTools/ToolSolderPaste.py:251 msgid "Dwell FWD:" msgstr "Dwell FWD:" -#: flatcamGUI/FlatCAMGUI.py:6659 flatcamTools/ToolSolderPaste.py:253 +#: flatcamGUI/FlatCAMGUI.py:6672 flatcamTools/ToolSolderPaste.py:253 msgid "Pause after solder dispensing." msgstr "Pause after solder dispensing." -#: flatcamGUI/FlatCAMGUI.py:6666 flatcamTools/ToolSolderPaste.py:259 +#: flatcamGUI/FlatCAMGUI.py:6679 flatcamTools/ToolSolderPaste.py:259 msgid "Spindle Speed REV:" msgstr "Spindle Speed REV:" -#: flatcamGUI/FlatCAMGUI.py:6668 flatcamTools/ToolSolderPaste.py:261 +#: flatcamGUI/FlatCAMGUI.py:6681 flatcamTools/ToolSolderPaste.py:261 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -9009,11 +9047,11 @@ msgstr "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." -#: flatcamGUI/FlatCAMGUI.py:6676 flatcamTools/ToolSolderPaste.py:268 +#: flatcamGUI/FlatCAMGUI.py:6689 flatcamTools/ToolSolderPaste.py:268 msgid "Dwell REV:" msgstr "Dwell REV:" -#: flatcamGUI/FlatCAMGUI.py:6678 flatcamTools/ToolSolderPaste.py:270 +#: flatcamGUI/FlatCAMGUI.py:6691 flatcamTools/ToolSolderPaste.py:270 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -9021,23 +9059,23 @@ msgstr "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." -#: flatcamGUI/FlatCAMGUI.py:6685 flatcamTools/ToolSolderPaste.py:276 +#: flatcamGUI/FlatCAMGUI.py:6698 flatcamTools/ToolSolderPaste.py:276 msgid "PostProcessors:" msgstr "PostProcessors:" -#: flatcamGUI/FlatCAMGUI.py:6687 flatcamTools/ToolSolderPaste.py:278 +#: flatcamGUI/FlatCAMGUI.py:6700 flatcamTools/ToolSolderPaste.py:278 msgid "Files that control the GCode generation." msgstr "Files that control the GCode generation." -#: flatcamGUI/FlatCAMGUI.py:6717 flatcamGUI/FlatCAMGUI.py:6723 +#: flatcamGUI/FlatCAMGUI.py:6730 flatcamGUI/FlatCAMGUI.py:6736 msgid "Idle." msgstr "Idle." -#: flatcamGUI/FlatCAMGUI.py:6747 +#: flatcamGUI/FlatCAMGUI.py:6760 msgid "Application started ..." msgstr "Application started ..." -#: flatcamGUI/FlatCAMGUI.py:6748 +#: flatcamGUI/FlatCAMGUI.py:6761 msgid "Hello!" msgstr "Hello!" @@ -9242,7 +9280,7 @@ msgstr "" msgid "Clear N-copper:" msgstr "Clear N-copper:" -#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:240 +#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:285 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -10308,7 +10346,9 @@ msgstr "" "the Geometry object used as a cutout geometry." #: flatcamTools/ToolCutOut.py:358 flatcamTools/ToolCutOut.py:552 -#: flatcamTools/ToolNonCopperClear.py:669 flatcamTools/ToolPaint.py:768 +#: flatcamTools/ToolNonCopperClear.py:743 +#: flatcamTools/ToolNonCopperClear.py:751 +#: flatcamTools/ToolNonCopperClear.py:759 flatcamTools/ToolPaint.py:774 #: flatcamTools/ToolPanelize.py:353 flatcamTools/ToolPanelize.py:368 #: flatcamTools/ToolSub.py:239 flatcamTools/ToolSub.py:252 #: flatcamTools/ToolSub.py:432 flatcamTools/ToolSub.py:445 @@ -10374,7 +10414,7 @@ msgstr "" msgid "[success] Any form CutOut operation finished." msgstr "[success] Any form CutOut operation finished." -#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:772 +#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:778 #: flatcamTools/ToolPanelize.py:359 #, python-format msgid "[ERROR_NOTCL] Object not found: %s" @@ -10516,15 +10556,15 @@ msgstr "" "The (x, y) coordinates are captured by pressing SHIFT key\n" "and left mouse button click on canvas or you can enter the coords manually." -#: flatcamTools/ToolDblSided.py:182 +#: flatcamTools/ToolDblSided.py:182 flatcamTools/ToolNonCopperClear.py:260 msgid "Gerber Reference Box Object" msgstr "Gerber Reference Box Object" -#: flatcamTools/ToolDblSided.py:183 +#: flatcamTools/ToolDblSided.py:183 flatcamTools/ToolNonCopperClear.py:261 msgid "Excellon Reference Box Object" msgstr "Excellon Reference Box Object" -#: flatcamTools/ToolDblSided.py:184 +#: flatcamTools/ToolDblSided.py:184 flatcamTools/ToolNonCopperClear.py:262 msgid "Geometry Reference Box Object" msgstr "Geometry Reference Box Object" @@ -11142,28 +11182,65 @@ msgstr "" "no more copper to clear or there are no more tools.\n" "If not checked, use the standard algorithm." -#: flatcamTools/ToolNonCopperClear.py:238 +#: flatcamTools/ToolNonCopperClear.py:243 +msgid "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." +msgstr "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." + +#: flatcamTools/ToolNonCopperClear.py:254 +#| msgid "Panel Type:" +msgid "Ref. Type:" +msgstr "Ref. Type:" + +#: flatcamTools/ToolNonCopperClear.py:256 +#| msgid "" +#| "Specify the type of object to create from the image.\n" +#| "It can be of type: Gerber or Geometry." +msgid "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." +msgstr "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." + +#: flatcamTools/ToolNonCopperClear.py:267 +#| msgid "Object:" +msgid "Ref. Object:" +msgstr "Ref. Object:" + +#: flatcamTools/ToolNonCopperClear.py:269 +msgid "The FlatCAM object to be used as non copper clearing reference." +msgstr "The FlatCAM object to be used as non copper clearing reference." + +#: flatcamTools/ToolNonCopperClear.py:283 msgid "Generate Geometry" msgstr "Generate Geometry" -#: flatcamTools/ToolNonCopperClear.py:486 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolNonCopperClear.py:559 flatcamTools/ToolPaint.py:549 #: flatcamTools/ToolSolderPaste.py:763 msgid "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." msgstr "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." -#: flatcamTools/ToolNonCopperClear.py:515 flatcamTools/ToolPaint.py:567 +#: flatcamTools/ToolNonCopperClear.py:588 flatcamTools/ToolPaint.py:573 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." -#: flatcamTools/ToolNonCopperClear.py:520 flatcamTools/ToolPaint.py:572 +#: flatcamTools/ToolNonCopperClear.py:593 flatcamTools/ToolPaint.py:578 msgid "[success] New tool added to Tool Table." msgstr "[success] New tool added to Tool Table." -#: flatcamTools/ToolNonCopperClear.py:562 flatcamTools/ToolPaint.py:617 +#: flatcamTools/ToolNonCopperClear.py:635 flatcamTools/ToolPaint.py:623 msgid "[success] Tool from Tool Table was edited." msgstr "[success] Tool from Tool Table was edited." -#: flatcamTools/ToolNonCopperClear.py:573 flatcamTools/ToolPaint.py:628 +#: flatcamTools/ToolNonCopperClear.py:646 flatcamTools/ToolPaint.py:634 #: flatcamTools/ToolSolderPaste.py:850 msgid "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " @@ -11172,44 +11249,52 @@ msgstr "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " "Table." -#: flatcamTools/ToolNonCopperClear.py:613 flatcamTools/ToolPaint.py:727 +#: flatcamTools/ToolNonCopperClear.py:686 flatcamTools/ToolPaint.py:733 msgid "[WARNING_NOTCL] Delete failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Delete failed. Select a tool to delete." -#: flatcamTools/ToolNonCopperClear.py:618 flatcamTools/ToolPaint.py:732 +#: flatcamTools/ToolNonCopperClear.py:691 flatcamTools/ToolPaint.py:738 msgid "[success] Tool(s) deleted from Tool Table." msgstr "[success] Tool(s) deleted from Tool Table." -#: flatcamTools/ToolNonCopperClear.py:636 flatcamTools/ToolPaint.py:751 +#: flatcamTools/ToolNonCopperClear.py:709 flatcamTools/ToolPaint.py:757 msgid "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " msgstr "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " -#: flatcamTools/ToolNonCopperClear.py:677 -msgid "[ERROR_NOTCL] No Gerber file available." -msgstr "[ERROR_NOTCL] No Gerber file available." +#: flatcamTools/ToolNonCopperClear.py:772 +#| msgid "[ERROR_NOTCL] No Gerber file available." +msgid "[ERROR_NOTCL] No object available." +msgstr "[ERROR_NOTCL] No object available." -#: flatcamTools/ToolNonCopperClear.py:715 -#: flatcamTools/ToolNonCopperClear.py:837 +#: flatcamTools/ToolNonCopperClear.py:781 +#| msgid "[ERROR_NOTCL] Could not export Gerber file." +msgid "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." +msgstr "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." + +#: flatcamTools/ToolNonCopperClear.py:814 +#: flatcamTools/ToolNonCopperClear.py:936 msgid "Clearing Non-Copper areas." msgstr "Clearing Non-Copper areas." -#: flatcamTools/ToolNonCopperClear.py:733 +#: flatcamTools/ToolNonCopperClear.py:832 #, python-format msgid "[success] Non-Copper Clearing with ToolDia = %s started." msgstr "[success] Non-Copper Clearing with ToolDia = %s started." -#: flatcamTools/ToolNonCopperClear.py:802 +#: flatcamTools/ToolNonCopperClear.py:901 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" -#: flatcamTools/ToolNonCopperClear.py:807 +#: flatcamTools/ToolNonCopperClear.py:906 msgid "[success] NCC Tool finished." msgstr "[success] NCC Tool finished." -#: flatcamTools/ToolNonCopperClear.py:809 +#: flatcamTools/ToolNonCopperClear.py:908 msgid "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." @@ -11217,17 +11302,17 @@ msgstr "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." -#: flatcamTools/ToolNonCopperClear.py:855 +#: flatcamTools/ToolNonCopperClear.py:954 #, python-format msgid "[success] Non-Copper Rest Clearing with ToolDia = %s started." msgstr "[success] Non-Copper Rest Clearing with ToolDia = %s started." -#: flatcamTools/ToolNonCopperClear.py:953 +#: flatcamTools/ToolNonCopperClear.py:1052 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" -#: flatcamTools/ToolNonCopperClear.py:961 +#: flatcamTools/ToolNonCopperClear.py:1060 msgid "" "[ERROR_NOTCL] NCC Tool finished but could not clear the object with current " "settings." @@ -11351,35 +11436,50 @@ msgstr "" "start after click.
A new Geometry object with the tool
paths will be " "created." -#: flatcamTools/ToolPaint.py:736 +#: flatcamTools/ToolPaint.py:742 msgid "geometry_on_paint_button" msgstr "geometry_on_paint_button" -#: flatcamTools/ToolPaint.py:755 flatcamTools/ToolPaint.py:791 +#: flatcamTools/ToolPaint.py:761 flatcamTools/ToolPaint.py:797 msgid "[WARNING_NOTCL] Click inside the desired polygon." msgstr "[WARNING_NOTCL] Click inside the desired polygon." -#: flatcamTools/ToolPaint.py:778 +#: flatcamTools/ToolPaint.py:784 msgid "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." msgstr "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." -#: flatcamTools/ToolPaint.py:800 flatcamTools/ToolPaint.py:1004 +#: flatcamTools/ToolPaint.py:806 flatcamTools/ToolPaint.py:1083 +#: flatcamTools/ToolPaint.py:1383 msgid "Painting polygon..." msgstr "Painting polygon..." -#: flatcamTools/ToolPaint.py:853 +#: flatcamTools/ToolPaint.py:825 +#| msgid "[WARNING_NOTCL] There are no polygons to mark area." +msgid "[WARNING_NOTCL] Click the start point of the paint area." +msgstr "[WARNING_NOTCL] Click the start point of the paint area." + +#: flatcamTools/ToolPaint.py:836 +#| msgid "[WARNING_NOTCL] There are no polygons to mark area." +msgid "[WARNING_NOTCL] Click the end point of the paint area." +msgstr "[WARNING_NOTCL] Click the end point of the paint area." + +#: flatcamTools/ToolPaint.py:842 +msgid "Done." +msgstr "Done." + +#: flatcamTools/ToolPaint.py:932 msgid "[WARNING] No polygon found." msgstr "[WARNING] No polygon found." -#: flatcamTools/ToolPaint.py:856 +#: flatcamTools/ToolPaint.py:935 msgid "Painting polygon." msgstr "Painting polygon." -#: flatcamTools/ToolPaint.py:898 +#: flatcamTools/ToolPaint.py:977 msgid "[ERROR_NOTCL] Geometry could not be painted completely" msgstr "[ERROR_NOTCL] Geometry could not be painted completely" -#: flatcamTools/ToolPaint.py:924 +#: flatcamTools/ToolPaint.py:1003 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -11390,16 +11490,18 @@ msgstr "" "different strategy of paint\n" "%s" -#: flatcamTools/ToolPaint.py:966 +#: flatcamTools/ToolPaint.py:1045 #, python-format msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:972 flatcamTools/ToolPaint.py:1271 +#: flatcamTools/ToolPaint.py:1051 flatcamTools/ToolPaint.py:1350 +#: flatcamTools/ToolPaint.py:1641 msgid "Polygon Paint started ..." msgstr "Polygon Paint started ..." -#: flatcamTools/ToolPaint.py:1125 flatcamTools/ToolPaint.py:1216 +#: flatcamTools/ToolPaint.py:1204 flatcamTools/ToolPaint.py:1295 +#: flatcamTools/ToolPaint.py:1495 flatcamTools/ToolPaint.py:1586 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11410,7 +11512,7 @@ msgstr "" "Or a different Method of paint\n" "%s" -#: flatcamTools/ToolPaint.py:1149 +#: flatcamTools/ToolPaint.py:1228 flatcamTools/ToolPaint.py:1519 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11422,11 +11524,11 @@ msgstr "" "geometry.\n" "Change the painting parameters and try again." -#: flatcamTools/ToolPaint.py:1158 +#: flatcamTools/ToolPaint.py:1237 flatcamTools/ToolPaint.py:1528 msgid "[success] Paint All Done." msgstr "[success] Paint All Done." -#: flatcamTools/ToolPaint.py:1246 +#: flatcamTools/ToolPaint.py:1325 flatcamTools/ToolPaint.py:1616 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11438,7 +11540,7 @@ msgstr "" "geometry.\n" "Change the painting parameters and try again." -#: flatcamTools/ToolPaint.py:1255 +#: flatcamTools/ToolPaint.py:1334 flatcamTools/ToolPaint.py:1625 msgid "[success] Paint All with Rest-Machining done." msgstr "[success] Paint All with Rest-Machining done." @@ -12080,7 +12182,7 @@ msgstr "[ERROR] ToolSolderPaste.on_view_gcode() -->%s" msgid "Export GCode ..." msgstr "Export GCode ..." -#: flatcamTools/ToolSolderPaste.py:1403 +#: flatcamTools/ToolSolderPaste.py:1407 #, python-format msgid "[success] Solder paste dispenser GCode file saved to: %s" msgstr "[success] Solder paste dispenser GCode file saved to: %s" @@ -12393,9 +12495,6 @@ msgstr "CNCJob objects can't be offseted." #~ msgid "M-Color " #~ msgstr "M-Color " -#~ msgid "Done." -#~ msgstr "Done." - #~ msgid "Click on CENTER ..." #~ msgstr "Click on CENTER ..." diff --git a/locale/es/LC_MESSAGES/strings.mo b/locale/es/LC_MESSAGES/strings.mo index 27d8d14bb374c483dfd1d264c0d5ca9afb1ec9de..7453199ee4f43bd0b2a069d5b33896686931a3aa 100644 GIT binary patch delta 43269 zcmZ791DqYnqxSKhb7I?=*tYG7ZQFJ__QsoyZF^(e$;P&A=l-6qn)~Lx{ki@BmaDqD zs{5Ro$=+8tA|H4i*}WAl#NQ4_-_VYe06*k&oS$JG=VVW%I?mp?j#C)-VaG6zxljYHglex9YT$jW<5BG|LRa^EhfTPG zYT&hvhgs)1F^MNeU2zVKf|W1{Hb!+c#5xlb65nX!=d4dr?F6hh9mmE<#51mE{-Y2m zU=u1}RO0nfi>o85gUP4{R-&$CAL>?J!l?KLH9+46GZP6>>6uaGi=t+*ChE$Yq00B& z!2D|@Q%Q)1i>+I&C#<)uZ!r<<oe*Cqs3V8zW*_)C|@_U07%9V2nn5GOFAX)P-$w zZGn?EfU~}@wl5Drz-m>6=o#8?-s|&gey=3xQ3DO1*X6s)};TMnJkS>NNmyWY&RW;MKv4)RW8t)5mi1v zYJfrLtpQYj%`lAie^*I2C=3i48g@BBUxiKk@#kx2epI`~> zddP9o;Wq0-OiVoLVaExDS&)0`IP#sM~)thVc*V^>mHhvPd>aSxqjCa&EFN+FC%>$;Y zwKcw{fQwp`U5}YHF%tD4nuK3)8OFu=$IX=Pz|h3^p$2pewdgL}^arS!d12Fkx&+ig zxD)1HCC2c?lVMoQgrP7GhQY$92FjqWw2rk6h9}+!)$wrDOin?~)DBd=ltt9&nNX0Bo~yo27O`K)=uCBqh^&%gy3 zaL&XRVJYI_&pS>VkHnEg8q+p(?wBC{Cj-!2&oUgq6S zd@zo}I9JR)Uw{#buSMOuT^I=uV@SM+(dgf~P9QqILZ-y=T{WvZBGw`vi1DyDYV}XS zShxz~;sH#7H!(H(ubHV&k7_pv<6t9H{obelUK@Xa@ri#%%|P^<%)bJ0Z<;Afj2dxz41tAF zi>?IfN-LwLvMp*6c0)~RKTL{aP#v#9mD`89;^V02$32_=0oCu%o6Nta+<(hdjD*_X zNiZJfvQ|ND)ApzV4aU_t4p(6Q+h#F7#t6h;p$7IHbs^#InEc47{$iopN#YVvg$$_0 zk{4@YX-tUoQ1^DXjX$t)-(8cR8g*+*qS~pCnu#{33;7E*a|=e%;8xjYL{_w+VK!FQMz{m)H2BWkJ(VQH*@e*6c+ z;7kmMi!cI&NsNQ?t93C=@}d_QW$Cr}NX#|U^6wN{?l_!rd7 zgnVO+h2e>(!jzZ|YhxYM%x*&OLHCv!PDDZt0;2j2QpDnW?gvnRq{}f~!%BmXAf;e~kUX6exxoKsW4wy|5xa#tNA0 zqvK4&;iwr&{K?EjTGY(sM(y_!r~%eTZNFX^9s6TZoQPTR!YAfGH-XTf&1bg4)=sFY zn};Fs2x{t1VF670#cZ=y7@7DO)D_M|4df*1)?LLYcn8DcTkCh!1%!0Jnm`m(h4`o$ zNNP=q8bDgqEy;|!qCBWIP!QE&5UPG{R7Z_4Dz>rt{V*=^QK*?*h`QzOI|8u?{K5$s z^BW%)a0#kFlkaBgI-tr8#soMWwP?54^h=nW_)FA4qWv%fjElO`RHzHcYUBBkUEn$; z31|xIVQg$?<3mwXH^s&mqdMGd(=VbH-6M>IA%3z}cyL8W4WQ{S^T=+4(TKaKekNHL zU^wmn4FuG{E}L-@wRmozrtmXrAYp%-D~g92Xlhh?Vbp%EjOwT*>WcfI7TqxGbSy!9 zHRizg7||t=#tHB$=0Y`C7Ikmyq8=EnQB&6$b#MDvhhjnE<4{w7%K8p9GqD4VIZ*9X zMGd?z24YuqwRolwP>1tTSG*QABl}QSb{19c5$X!xV^YuwVwfFU_R8^s^kwapa1KTpet*O>Zm)W#=$ne5;X%`QRVib26_TD)i+V~o}lji zN9=+>P>Z%>2y;QhQ62w{*>Qdd*EDpA1U2{s)xkGwh>!tJN)}Zl3?e;8r~oGg@xfS{ z__ELe+z$3N>I&P1v9}1-(NNUDC!hv49W^uaPy=4)5>SV`(0kCJ?$s$&#fzwdw@|m_ zIp)G|Ha%-tlV1pR0YO*?8{h-nhG}t5xBze49z)&IN2oR8{veQ!K)mn)-fAsrt%HH2 zcfgD|9^>L}OoCTX52|mdTks1t;II+Ql}AGjI1ws61FBq3)BuVgGvPWl320TeM6G@o z6W|0>z*%k6ccDgn8k^z^ERB^S1~_GKI%@IV$1E5xl9|~c)YR8N4WvG*ofa5f`+q0_ z-MeY1ku9Izq(*3L%EjXSI#Q0-)h7T|rv z%ZuY##C_3KAbgAf?*|JrV+J^RDVQ^sd7yO0X~d_Zt|(LN0Pp3K6}4z{p$1&U#!K0F zW#pmh)WmwUUn5Qc4;=;;mn+7|{B)uk`Kc4I|Mw8+pTI1R0twCbD2*C%E!3iEj=I85 zsQuj2rjJ8yr|GCi_HtCcgQy49IaK`zxEf#E{Mm_^0pcqXvHx{1@+LN`zci}BdZ_ev zI1>9{A@m2D#a7Jv7itDBqo)2QY5)&WyW<^d;Ga;7`X|Q0cuCCK$mSBzNDHC%Zxz&3 zH^ao(64mes)WF7L2%L**coC|@l{S4Vs-s<~U3Crhym*J|Cv8&GUIENN+$}*M6@ji; z7-ynZ?G04NPf!DTV||ahvQL;AzhP2LmMp;gZdVf3aT8QKeXt!4N457JwGF=`Yshs% zBsW(U3H2aKgnDh3#gy0p)!;Dfjk8gY+}J#ad*LKJgyDHk>t3Hjy<~3K_*+!RKTrb- zk;>eHC|FASKMjFmWOT-ExEWO;ZE7>Htf=QeQPi5KjH9t3>J~h+>2FcD;y3C+79ov! z^d`hk#7m>LF6HYp_SQDc1lcB47nVx_aM`mj=RK*&oj$5Jz(hW5eLv8wG)PUxpZqXXl zS~-j=cMNqQS5UX~KDNZqsCo_4v;TEZ+NbBy%Y&ge>Yk6!U>+1(Fg@`z83Vi@B>X@< zcmgvS)1qc9JEp~asDZaY4ZJ7nlhIJjjLT8&UBd<#IL# z&PEMj32Kq8vmU}O#IIo|ET6?(;cn|m)XZE%y)$m2wsBH7t9h-aLQP>2)N`OVs-w23 zsqc<@a12A0n}eFdEvPF#h?>cZ*1M<+cxm%Lp=Km>Hq%}VRC{i6n@|At>@RQQBT)mG zhN`##^Wa+40H2};_8oPv!)LdjBQOc^lBl<7E7U*-Aa~dqiz+`3sqZ?oZNh5QV%&-9 zcrWVFdK|Tg&Z4gHx{W_Z4eT9i@%}~)ELsk;*pj2_=SI~ph^k-4S{=Rb|BVT#q0Xog z55R>u1ywP3&H$$p7Q?nm$0F$DGHakH1`@4_dI|MHZMVs&D_@6tp6td%co>85Ar{d7 z&zjqG+zHjdaMUN1`Irg!pcdt8OoN|rIR@r2i|M#Ea$fU*sfJoyf1&R2B-D(qL|xEk z>t1vJbP`qnP6776M)I5lExzxz;BVBLh*Z$z$45Y(f*P}ZA7uC@LoBkhafLBpd{RZ_Q`fc-L7co&Y>iqxgKYXt)DW14 ztEd@hTGY%Hu~xvY#Oq=Zp20MF|0gJB3YJ7&VO7*EX@gosolrB;%Q_M@mD6ng66+dF zLHZV(e*-TOe}<`WUvaZtpIS4P;M2ACe^&y{FhWWDK?J7~-;7N$sFWGNI_qB40M4Rj z?v{-|LACPwpb;XCm$JIDw!)- zi|L8KK{b%DGN0ABf>Nk^*uRQ-3of?a#sj3sts3C$!<)Dr=TX$uOF&b-8?`+S;ZQt|<*{N7lRw+K2=xS9Y2A&QnRD13Z=hCrm71pG!`2I^ZFdi~ zxZk1{wfmWX9vq=-nZ*8wKoZU+W*rOz?rCfG6(hGS%YD53r=Td z_F^I8b(#h^8*l~=A-#Mv^K*f7&G~puL#bK>IM;D}s{p4V<=VD2i}M85BmP%A^ZDW# zx>_`0+MAcc0IW{@4F+M!4(5R}87C9}f=VCT(fr)+D%K~SrjvQ;jKIvqH)9cegsCxg zXY;MOGG-+{6SLvz&g_3B__~;Todf?N-VkfzXDo&lyE3I*>15OZmvjs8e#!I$wKl4E zH$Q+}kE-YNF!{BxFwyl`5Z|Fb_h;#8KCVyb$^P#|g1=XQGZ4F>KIMKy4J=dd0H--N z!SQ$$dtt3U#&g(`c-g+j4X7t&yng0Wa0%>4yd`R2mr)m(slWMRa>ON&l!O-;gDZ?Y zAi$YKJUIi?6#k2!@GG9iHv`R;?ipmhtVSAael|1&HADMw2IVfWFrHz@p#k2nTC#uz!cOI>;P)D=Ne}k=!rFm@5E{teY~+1 zRw2F%b7GVU0nRKeg?f@cz$@5#Vt}&~i%#N;2p9Yt4`}}fOfgq_2seceX@)c)^n9gdOc z-l(Ew~F=uTG1l=7-WBmzja4T5jGA8C(KtxFG6EO4y9bsDU)W zCD;@7AW5_$z&V5CFg7+=X=b7aY9@!E*2XyNKd9%+JnI20O#Bh*7P_fcnJdqPx}t)p zdsYn9U}e<6>Y)}>E7W4`jzw?;s-a`J63<~i?7!MPA-7>;;#t?w4l^+Y9sY0L+5r94 zjqA)`XBv#W-gJ}%^{mc-+Sl!@doYlAH1=p3%x0~RsfdrjvA7n8WB!e100*$D;+q1z zKhv3j^@yk3tp3=4LkQ>|kM|Pzz=68*m8iGW7G%KAGt?S+VdLM?Py8oF!+F%4d8_$YJ`+H>jjSbT^1G5Jl@l#bbH3U0&< z#IK>YRhV7o?Un&`&nu!9*>}u@iFTXM1r;zc@l`koPof4`VUOA7+xD>kbCd9%gj|?@ zulXTVGps;-E~?>Im<*%tGtYw@*5RmuT}Dl5$o=L6N)}Xn0BYt|U?IGP*)h=pGm}*h zu>VzXI0@x(12#eDpn1kOMGbHUYJmUQ^zetwr`e*YC#8$?a2;mE%7;z)fv8)y6*Uvj zF+GMqVs1@tmw>LI0czWfMXmm$sDh!7nh|G5T}f-y6wgKt=oFU1kjG3%<*_jFfvAD) z!=m^ORWHYJQ?EIeBks;7phxOcjDy)un6F|%sEU(O9bLlw80n;08|6?l))iHMAL^G> z;ZK=*Wl%Fa7WKB=ipqa&(=(j*K9IOhZ33F&p;#7op&ATx#(dVRf*ScU)V;fcEimF) za|PWni1=RAqK$aYbesdV${XAGNK8t66E?)lSWf#t*LjmM1T|$#P}}7)Y9R6dGgI6g zbp@+Yi}5*X1|nZD9oEMZ#7ChnAGt8nun@eT}W}!xQ5p!UU z%O<@oRwTX%Yv2der{Ho|Ong3WB>n|eZq-%O(GS#iEpW|z3~z#oiH|{*TZyg~-**C9 zL}{*@w^V1;*Xe~=7=NN}LBSj5iaJ;~qSnY4)Qsi3X>?KP2dtrPnKe`fb?XLU9ei?& z{jY+>ZkrB<<51#TFcIdvV}7<%2Q}qAuqscm8JLv#tGni-S=4*HMM)otVR8I@b8DtQ z;L%R}G3r)*erRT_#3NI0)+6?REi$4%HY00?Rf+$HnweBj%)P6QX^7874fq&pS44Ok z;8e!q*cqo{X$8@n4w%*TG7}C!uzYd!K-|P3G68VlC9RnTC3K z?7_775L086H)a5NQ2A|9PrQlNy;zd?Yt$#AoNrD3B=jCgsKx!x=sKz2nMKwBHKMuL z4PT&UqVapP`U`Cu-f8S0A1qGoa@YEgbgO?iQjW?N1~UEmFDsEz3VWEyUY z`tCOstKeDGy-oJnG~69^Ws6Z)@WPt(i&-nRP>=B8*8Qjp_=Q@$*}j@>R}-}umtt}H zcRmtO!+F0M2caG$M^O)wNZ(Dx+Ng@lQCIL8i(sN3=1Ln`7ois26V$d&_tPxiuBf-_ zY}8D>Kv(xJ!7uZ&DTk`q3)R66>pj#Jg#B&SKn7HP4Qqc?{vy;`I%?x@P-`a!Ki<&G zrVwVsF<24z=;t50(#QcmZ_2BqR`)X0cDshU=OKJPui;#%Ro@V`il?ILKSo_?2EWgH z>2ybRI3INjUZQSI(hxppAT~ffL2rj}ecqEUM@XOdrE)wrB;x^Uq{Ty-0rf&H&K0Nu ze70r`ZQ{*Q9nC^5wsTk$Q-tw(KOyOl8qjrAeyXtM!uq-dH1aj5d;7`8i-+@hFPpKb z{d^p?7{i74dEW`^q2iZNt37oDbLGv^+m4u?^u4H;&`Z<6;U5BI-}kdvr!%Hv_3}Fix$mX zNFLPUtcM!#P)x1;Kc7G#3CB?*e2%)3h|x_4`K&Eb_x4fVQB7{jzv z6qVo1IvSO~4mGfgn3w*Y9|UwIxni0Qnxd{~sC6N#q5ak;s4IyS%cSQ-4X7TfUO&_> znrS_SD*qd`?^DG#);VGU$G=bU1>qol{Cgc9FA&dDaOJR zs0+G>x|NaQ8grr6QX^Em%?u?))hmjc!B)una|U8@;{PP~Ij6$1|85Y_l&r{T z7RMP>g-`V)2KDRP=CE{a+-^-&djpvsT5`3r1(7iz$lQ5W(V zb;S{LnKhFF)lL!AOxDT8{@0asCqW$#M_s`hTksU>!Su++L*zCCOK8oDT8uSO?~bmh z#XAHe;Z)Rs7o&F1zo-kljvC;X+^(6rNO??wq^O2UVj$K)T|rOO6^}<%T#o8s4{E@t zZT?G}9y+hN(paeSnNaPNu<`n+Th`SjpplJ0UCByR!6T>+Zlj)%uTZxtZa#B`nNj77 zp%!67)YNuE&FEj&Io7qPm)c&`8hC|M*hcOT0(vG-ENGqsdr?#N1~n7DLgu|64fUEX zhI(G~z<#&{2Vt_p=7YszY)SkBYEjoKVy4{1u*7Gf9!N_twBG-B3247QMP2bHYsjMJ zN@Ae*Ktc^Dx3x5CptVp_*#+Lbp?GJgfrU?fz<449V+9sJi%swYqzw?&UbtlrFRBJ5f`9 z4jbWZn_jr8xi!^MZ^xFXZ8{OPyVjw0)6uG~Nw`gd7T;&oVhdHxG!PfHozkH?&X2nH zm8^|W7tjfd;!4zO^%ZI{zDIQwxjOAIgDFw*Ts6$VE4TzSvU-?;0)0{Ycz#VY)!R`s zu@|-Yj-dv48?~L@p$7EBrbnn{o|uVI11W&YFN&I}DyX+#BUHO?O9E=RlXW<1s%N1( z+Jd^0W2gtwL)1(}scis$$dz=8+r^m0l1vu=>~=U*S1y)zIhtRy=Pb^JVlj)*(G{W1sg!tUlO~_-}lP z4V(D9e;-`FDYt}MeHkaY1Rggt-vRryFz&~NR0zjIU^cEnEzY1;W-9BV2HFvo-U~H@ zBT$dr@t6!Zpzir4)Gd90ZSfcCmbPhaKmQLW5JiN+RHA53oYh*g=!M3sk`(NAW1PPkbi>N8R zg~{WlY#V@!AgSwfQP=xO08Q&cFQJ?cKwkCgh zPqVh7_wwnF+gztO0X4J?wc4Mcrf7I?pR))TV=FA%$G8!D5l_(9=ly)|Zww-S74;}i z+0QJ(#;EPM7wO1}-{0&i7xf5EHb85`<;QLWG=PezsT_}5JoB&`u0bs>KWjyg(r~Cn z6c4p#(xVn}4%CxwAnNnP6jb^7sKvV;hvEqwft3dOoFeq^Tp^&5#~b8xwqkWu$B_o} zjR%{e-sd5Qm_=9+HNeuSHBbW+V*}J`AAs5=lTq7mAL^0&0d*k}hML!ObaZvai3n(< znNW+T5Jtla*2buYyJ1Egg&O!))Rp8OW^T=1)UHW0+{|PJ^b>E0+GS0#HnvBVJ2Kqv z{}(nP*9h~#sfSvOQ*bqILCrw3kv{JO#ca$&{1!IGIHSxA^uYqeXP{>E3Tgn+NBg|L zDT$3uh>t<7iC3e!7fT6L8Dm!aH`LUI8f#`C2BsjM3iW6$kKR5v&ZCQ>a_;2HW6gmq1MdO~#q;^V?CY|2~#R-*_{Sa;U}D0Cg)`qPAy042L7F zldW@5<(H#oV1soFY5?19zPryR97nBzbEv7mYt#J`%)JYTTE#I?Ya=7-$yNlLVMEle zIEcE^OSl%l;$2)m(X5Fvlgztg7ILAkvzI_h3f#uj7;3Ud1!MXso?>C`#)jpek9s`L#Ks_Hq{$pk^E=JcjN>4xq3M&B{qaL;0QP2E| zsD_u?_$KRdY(e@R)Z!~O&1~P{sCNEF4REE@PnLw(VhZQYJ~@LWbc4{oE%N19;ET!Twjle@V!J zC$S0oW||KW&9NBqL#QbYJIh>IJk*tBL^YHbbpe%79o9h&unh)c7t{bJqXu#S)!y}4 z?Eg3fUXY+E4>{XhK@!v|&y2eF#qb{t!g%-q^`!ib8c3u$<^xMS)PO3YF046fs{2?+ zU=P;R6f8q}cz2%989+jHtW3g%`9ANjR8lT51K5db;EeSKYV|)w?c)!qd;Q%Sd7&9V zGStBHpk|_|wJd7DRZtH)w*di-q#f#tw%7uPP&052>)`{8!9a^FGLP08i_O$dM9tg= z)Xbd5toRf)6A6}>DbI>&h?m7e*bOP~I-3aS5qk#pr22@u!mp?+2(i=*EF$XOCP3w< zN6kzw)GaKIn)3RnMcD;)0rOGqZ?gHogc z)lpM72{rX|Py<|yfw%@WkTa;MeS)d*lZ_`@VJ;*+DnB23|NWmb1k_PI)Z42sYKpd@ zrt&NLF#SqXF%#@%x!1fcQ=!V2Ky_Rh^}23>n(Bd=7l)v(d^c)_+#>|Eny*-Iqpt7~Y9Q}X z9eqc=0}}2tzjDosdX^7FmHP)X;at@AJA?XU^b584itRT8uZ$W{U8CzXAfSEU7}H^M zOp6my50ssl6fdK$@Ei8QPzOxMgHY+Ctbe0sY(8qyZbUtx9-{{6KWJ`wHteVUUzI?A zGR}GleCj>qbB+@~ftt#xhfM=3QIFaqs2RJCx)t{@CB8uIhUiDk^P?>eA-)+k<#~>p z2Uk(lld(KTp?{|-0WF?xsD|SmGgFoXwYV~&22uz$Gu5y&x>y3=qMjSMj{Cg7Bj}EL zLheM}$|I;-Z~^s1yl3Md(ba18pD-OoLrq;$RKe_+8B5vxUN(IsrXYPL>fY}|UEwj* zB0Z0KAYDP-!ndfk65*t2KN%`N$4U0TR$&DaG$jpff$pf)I|8*>=A#C>2z9SFVr<-l zgYYtHz_m}AnQDg>1NcD&>eie)&6iZ-UoZ>tptI)5IpC~orf2~Pn(DQvTd)T;)rV07 zdu#JUpEJ+&*r=H)gzC5xHpd~TUGfw)Goj9#H4+ImLvgH0tZ7{Wx<}biQ&bqW$ZFyU zY>UJ3J!%c~`Oi2Wb&nUJ*1%d+haXV`_=%eOco$6h9HNVUJbK+*yqIrQDV93iphg<5zMGZVYDnC7H;3ZJcm71v4Ul(<2TcgT% z@?`%FBA_dpglb?pYVqwy4de!D>R+Q)cZe${9uBoA6Qdf;Xf1^5uoCLQ(*W0FAJpPa zf7N`*&5cvF|7Q}YhFPzfdo}`76JLP(igg0D7@wjB7~{IRk_?!ccy{cB&9O9ILUo+@ zhFRtLQ0+BDJ(@?NF63Wy)xa(SAMh2{$NM+UkJF3XGC$c^fLgsTQ3Lvfx&<+A8&jiZ zB0uWN%i$F6O>NZ7yt-p%>^G|87z?E!K~qxzRiTV6PzTjv57cU&VqJ?` z<;PLC<}vCP{y+^h`aQGQ5}?*XdK)i@TFezt?bf~Ln*H6I1a&+f^ToM+E&PYx z44^vtgen*DzKN$mT|j=+^P)6r@ijoT+XS_ix}s)oII8>%mw-mJ1T}RVQQKsnjh{mm zyp7u5&#^GR$3V>fz)XF0)bpSjYMXXM%}{StyHio^ESo4t?=w0hm)Y^E9x>fwGmUqizB8${@5)jao z!%go98|#HpwOZ9#oJKZ|PkHR{TL<5-OH)ch=GHs&TC=9#(TBB(V~2{q8RsF~}6 zT0{LXhW7tt0%~v>YLRWT?#J}RPoPHr1@*`a_uTCJ@Gs1t(d9>N+p%~UpW#4U|I++T zS=LuRXB+W>I0*B;HZ!#oT}|0p0_xxaYJ{I`0q2eR1QP=_uxY5pG#@n+Yf%H=W8-I0 z_xcX1z1KEB;H_E2(NN_RVKL0~mi?cPKvxoK;aaSMVcwZ1VqMHYd>yLXEv&^1#Cz}a z{?pM~008$YrC71%?9w#5ky#Je~Q zeV@%wL`Gr`;umo-hX3Mo9^-oJ^snZd&Y*ARRvfS<`EI^Dx~NC^PSp4R$EXWx;QlmM zI>Y)Jzmie>7hkEc;BWKGqntcWvl89T@%zk?}2)vO-AjS_10}TllVT=8maFy z`8%xc0Rozm6V`jEd;1l&y2JYY&J>)A>M&ghV`Ho~Nal(rSy!M|{eBz2VB;@PyXO~bcZH5@;!)B2`CmK&x@Q?t+bgGy z7f0QSAXLNkY<>sSl=ed{-ifHyJsWvKI4i8HQB%GS)$vhOz4I7~f{)RyNW!bAe&-z) zjOKUv!*?f3biemw^|&$p&Jhas#ge?vipBAJ|CO83@%`TS`=8j5dRG#dMVULH-}~qG zHL*YGmr#qYS|Z~H)XYUm?Duxj(8PY%`=wCYK)?4dnWkWC3IrtaJ9g^Lx*a zY1oqZX&jF^-SmF%bN*p#g$!njE@2l6l+EaO3ga%+O#H$Dm?x9p`}crbQHwWqX219C z_9p6y88Hh3;|lZPD&jM;`n}JFrLy^XhVVmcd`r5!IlJHdHF^%e_aX8lYU*3$^gG!p zxB|}-zn#leSeM)HG$FnqkD2ZW-&HHEvCa*36mE!`@Fk#K5D8@p&qR83A2U#1dv8ov=Fbqo_rdh^4;`o1q@1iAwpse?Yt)?-1Wv znkN}oIJ=DB`={D_%KE)`$Ch%GWB23_@_YY*vVs---ap+8QPHfG3s_XY|8G~xOySzf ze(#gdBh)^9fqJq9R58ZDB*aspK3J4NJrSFs9;w|?Prym2`pYmG?n2GvUDO4nt?Kvw zh4f+c{`((ItC^xQwX$YN#h(dsKcOn?C{d zMBIXYrhY$GAbz-x-_eJsn05W$Z%mv9X7{vg!2Z{wxJ-hsG)qG>6Gbs3@hYg-ZY@lO zJ#Bohjqk>!q(4G+9JY~}p_r(8sZigFOQLRFTU0-Pq28KvTmpJIEXEMH2K9j0h%GRF zW9|_S#+&GC;&=ELJI)=Jk^#ar;q zCvX@O;+mFb22P@`=mu(lPpoe-4e@W*wjjCzS}Lk;X0>hr;W z$f9+fTLd)H@2Fc5p|$C_1s)*Y1&d(LHh%BFjL-{v5)a?jY`Y=&llbCx=E=CQy=gCL z2h&bA)Jv`qHpcO&nSG1i&;M(6G%t((s7L2A)D>Pr?R%$_-}@)n+p#~<#-07%Up(B# zMZ~jp@q0h}xq|xiTd=EHq~%fZ7N}d$9gE^9aFjJf55M;p zPcGIa{VS?s^`7Q|G6MB!_ADyBRBy9bd*eEl$1Av^kD1XSea$Xdjhg8*ecAuo9zShH z(tdvLN3X>(GwG50o3~nFY(=~i2I5s5j^9uN9yGwrzz@`eCWq_ye)!xT3lrafP4PWu z#F_)mfQJtxp#}+CNoa4}Ea-;WiLb$$cpuepzQKO)3rbfEB7PY2VDup-zdUN- z!%#D}1-oIiq2~2H0!tF#kNGjIJIs8FEs4cR7=~)_IPSs_!%hBvEJr+Ggo&3&Jt4

1PaXQI-dViim>%Dg4rZUhRGunu)aZ&6cSaI`6~6!i(`KI#KV z(J^Kl^~bWrZ=+@~?O4C}L##nqi})qfODWS|=4~2;m5DDv)%$>TwEqi@^LyWNXJ8{T zj$l1ZJ>G1yVW`*eRZNeGCzyc+p{8;qY7w77-7?=qGefzsE%6@M8tVG?*{jb%Sae*1pAk?$^23E)P z3yp(OSAGRmKEon&?+2o;@CfP_?Zzbw^a~ic<-Y;?aD8v&i z@lunpbD8-#{seQ7-f21a9+#{zQ+;9J>85- ze~l`dY`W@8TNW07L{rT=J)Rkx0ZES_PwEq_p z$VbL?YwSH{l~=`*r1!&8cmOq};rE&kk4;dE?mVW(-22Q2kjAK6bO)cDr} z@BM9e7A#17F6sex3pLQ9XUr8&LrwKhRK1*MP5I`ib{Cy>{Z1hQXG!RUQO=oFI|#Mt z&Y;#nlJjQ2w?cKe6SaN5<18%vpWpkV)SIZOuW`Y=bT*=PPr{4lmJY?7#CM|JvhQ62 zT9x%KnSuOcy^I=p?8{~fD_NIfchY}hCG2*^d@DYL+K$Ptnp@HVH6xEu11fvX9a&<|jS@)!-@A;(3EHFz~KfBRNou zs}5$v5vYOfz$o|$Gh^s`=AP$9_0tT!_y1%9T5LyAQ~nZ@V9NWZq0-hN*4?Pp`xUiV z10R?HmPHMqJ*L3Z5Mq->9{)9rZ|ljQaE&<)s-|11wB@Fjm9^FI}^GqrWl* z+hGtH+ff4u{n|`*9@HXih`PeTr~xfOEyhb2h|f`17U7L~?WRFpKvPuxz8Dwhpe}r? zOF;MX9_k9hyfp87A8I%^*TO+`Uv&|^>(ZH(R|xogdvFULOn0`qh|0c zCd71~%)KvzT03oxt~1?c9Kk>`o}wBE_t{h|f|}BXsEYkC4z9oeyvzUO56Rjftb}r* z_=6Tk@`Pv?&R3k_iT~wi5I*lyJt-_c&INk^=MBwMjEakCBqfD(eB}(}98Owk3_i98 z2k<(1xoJ2n=Se!%krXS@2G1xb9&NrQZye`j&Q$c{{d^ui5>L!vPPkM^MnN6-3Ae-^ zc#^c|bnui@M>#5FrGaHs+E0E=HO7&Vco!R1+@*XJ@`H~##LF<48Kjk>jk-3^Py3@u zcZc#nUC7WsK8r_T{tG$YQHX}KQ}`d!rgL7h6<1KcGad4#^^Q!oydw1ox1lW^y(s^i zdfI-W2`9Am_u?hW{6+g5dj2_1BTm+ncLdr7mr@`f9o3_eKzoG~Oc5s^jdZ14Y3xG1 zvNZUKa=(c`#0JEdQ(w>jrMA6&w(bPV=+Hk(=@6R!_fxnbg}))s!X}#gxAu+OsvB>n=~C8Xp{eBkaG(M+6&!?=XL#O zY=R25p;B8(!TUOi>qtPE>om}Uv@Mv28EH=AjX7fx*D-{%2>E+$r@Z=|G-6dX+GV#=Z zITCx)K^+QCCBB!8rKF9fBVKe)Eh_fr)S+LcR3j}hXI$z;=gi7Eg!DL+nN1tFIV*GO z_(r(|v=f;&e^O4z8N$a&4@(*E`froK--~%)3i#Ur?Lg6sMCl zock!;-gX>ZCky${iRiuFlf18-acup6tyxGLN!{keM^UbSaAj=BpehB=p634rk&w2N z`iycUXAcS`;4DdgCDbvA1_zs<6OM)-60UALY-P<%+0M3%;J-KM9Y;v-!@zYE;p}P$ z;O?X1TngQ^ojf8VF7Xtk=b}PH1~Z)s15lsa^=U^(L-KcEbIP=|on*Gww;c_k%qr@& z;o^FDwfJS1EprrKgyR0UCJ>(ryD2z?f|`i*#2XO*^XN;tx(xC#jrJkql5MCBVO>lU zDn25AH)lb6b&+iYe4uu+(Ozikl(hBQ(~fulZ$L;g@Y_`Ly_I~PDVh2g%?~fe)0YPEHX>49@Y-X>x0_F52 zwFBpPP8~JL|4w=dY);)Hl;w+->-3|Mv?R77k^g3#_lpQsh`<0UlCGl*gF8t6Mk?L0 z1IJ!rr41_{opT@Y(Kam#ZSc*@>0s-rjE<(%8yL#FemXK~-oFLBM>r7`TGCk) zdqt6`+=K!2rqcgC3X->sauscd6KzLdFgJCAk43~Y{1G2cxRCDupT`IqYRHKBgC_6j zN~3K#(^2j#c^Mc$Rh!p}^g)zbKw1q^706bTF3!+eyqx{1T^*X;>8d*tnO-|IFu%Vh6GT`TpVzqD(G2*Rh8%KRR%R)81Ix zEk!?B3F~M}`O%~;)BVp#hK{LJ*lrtaK=>nRXHegIPLe*5%70TSA&qt;o|rrxX-Mxt zr^{@-EoJo0=_~P3ga=UmmRFMPNBkec(W$eE^uPK0Gv_9WI*OCnlZJcJ*lEsMb}%yu z2NHgXLus@jjh~@1D*r$|mBRN_Yk8CoR>;-;JGVFTGuV z-Yj4X`u->B7YI#JT$I@zrg$d z4nOfz)J;w5OPiC}mhHs=yOTGaGrFx;pE9Ru(;N(AGKF+J<*a8bDjt>!X{h*!a9;-E z5PnC#zI^_9M6`7pkw1rwceIz4@PE`Pp?db%Mp`)HwJ6`u_F2XyVGkKP{xf+0+n8zO zEBgN)vk0f5?0QCCmed&J*TD?7p|>=8jI$VJijtPZUTr+$2|4v=Tz?+xC|iMaw>_!+ zM@zkeHC5kEjDGfCqICH%>qm+jmqtm7HwvXGz4 zcDe&c1cynVO@E_IS=R}q@SjIlA{YNiSVzHG#GlZ~LcBr)@oAtEgDYS=EKD2v5u1*T zzhYwRRh+c%xV}6&0qEaCESVE-;G%}k8&R_-G zk@AmIZZcLT@Bbbb?10nKXgSV0#4l5BA{|~NeAZS7AU>FObK5rDPh`9&GKflJ$b3oW zV#4XE6x??dTi9niDQ4sM?7%zG#stD~sJEW*YuXqP5l$pdrdqW;f9<#8dK&p z19(l|67ud6&teA_F8KRjNjmsR#wrRnME#DhHEDOL5X8BiG#&bjxD+&048!0K@@{gT zA{>S?kFh6ta~Nds@q$23(!NtpM{CZ7l*>YyV=jRObb9NL3K{>Hu0vFc%0P6?p^^E- z=Wr&Zd~C{1qSI@nzbC&g<&KhGoBTtzjltwCCT~Celp+5G>WGS0DdX;@fn-EVQ8AGn zL>mfLApN*0>;3#*!4sS@N$)|UI!aJ4f^G0`(teZHi+mjgXlobeLe30yl*pD-9{=50 z?TYyfpQaCS#`GL06ovYAM1&?uFAU&ULq%!$S2*0MGw1k7Gx0bTgC=;8o zjw*z81Y#wuh})@?kNj+euTpns@cln*M}3ftPnyOM*+xkBV*C%{}y5;S_e-q~4JN>^y*Z&`x<7}lhWTq#cne^!tj*DMN zn_?SSPTEO2*MGk&nynMu+TS*Cj`aED`_&F*I}_HCm+(Z|O2$AB;11H=p%jj}d0o>GS{0KSoxP$}#Pgzomr;#EaXC!3}n`S09%=9kV$f*fzRTb}{KS{}{ju(jrr* z6Xz7l=Cti6BE7Koe<}*cvW4-+9HB<;b@)Fq0nUgv($y-h*)2Y)J`;j(_w2;)Tsdj9o`nIkAXeXi_ z(7*UYqxtg~W+Rcv97}^OXe59J`7MffRKeuLJ94fiZT z2Qb3+cb<4`PWN9GCb1e7V-POF`R6f@yb0v#=uM-sYy*XCx#u*Vp0uQtDM@}q;?X&q zF*qGT_V)Cr%puCmAg?6hSr}J8|M`nTr$`vdS%Py1XD=$vqk(^^upb*xCMjtvaVz;B zICX5pOPGr@F=ukhl(Kn5op20jJsl1E2<=>^?0C+Dw#_BBp) zPihAeg8U2Ge>o_0gi@nz$+I*Pje`4a{4o{EP`D3io$0WnZ9v(X{|Kj}j1K+!R>vgD zCdHzpcVpIaat@_@RpMvK>rX!k_5M#!!d)Wk=^*$BMSu(YkCn$dMK z(ZQd`4JtOKkyf@~9V(T!9R`={W8>v*-JWE`pnL?|Sxxe%(9TJF<+sTTMf?}(gKXU+ z_$wsWKZZsYaSo$!cN%z3MtUk#q0!>OJz_}GbZoYrwq}rl)LF^-o^W;SWE;;%nck$m zq0?rxS(|!|ZC-N1J?ub-2G4&DWzxZ4wor8{2OqO(Y!_z)o90sHhb^@r3SB2XF9lbUHl1)()#f-srPQRy zwO63D>ZFCB{y@s6qO(E7b*v^{-F8-#v~7g9(pF{aMlu6(ooiGGKI%~5UkWxRZ5EXm za4sV}6vt8_CgEK)u!!>t;Wbn&O?nH$n>o`{ZWL|wA-_H8*Eq9r>gY&*Bs;LVl$%DG zO2I$>O--Q<8X<|tId%NY8J@IPwt4Knq!OpMb%A&XHg;{)wY-xy#GBy7Q`o#N_=EIuoV#grKY8t$1swr| z-?$WLK;~6^O`^|Me25RI@R33b8NH5kHc#RD)Ok$2Jb4k7V2?t0gV7YVodl;tU$xNm?V)QgU7)di^xx7IV zron#XU*p_l8&qB#$~~juqojAGd|x|5$~#Rvfg=YMzTjgj|HA&1)iIVb8R+zw?O+jUK{l@_dGl=gCOTP5`e(}OaB;Bh zILP+t&3{2vwxd698=6WZ`AJSl+^2!q^r$pYjCdLHlH0~=(pVeY;8yC@CH({C6HsQZ z>T`zX+(2GA+fQ1`2k93vIucMJIiqVy;sMUZgddPLfV?Yq^t}n+}rzWVy7r%b9cUKOmJP;?D&g}pD7r~HAn5`MlzVC%4tK-ZW3UjT*y z!UZVZ3nTT|hj1?k?F`O~5Nv^i*KwW%Z81){QqZj}+$*JybPoC%I2p&T08OqxVB;Ll zi=Z8V{&Uz}prygjj)B+@#dSD`us4JGAed)xa-1{Z;3d#s!}mbJnKW8l$Dk|M32XtG zZwi%J3LOF3r_gyBc1o8AS`viA#XrQo4}mS%^P#L3q7Gr~G6Y8oePrbC2lM zVIEUf8OR0MO)ROAj(h~jM;B1mh6V;s&KlZ!e%HcsVKZ&$^YQtO75VhS@wrMz9hp!{ zltmU~RiZ0%nQgE{*xI7}_CV!oi~4P??ZK6&mD;+=O5(C)UL*LCDyPDqsM2uHbz1Xo zsino&`oy3%(OGb8yD~TYvridq&Z6{bAv{@gS>R%4h;V#fDEee(Z?ivb*ZD%LvJFK~ zx9Hd{8%Aw`z}+G=OrDI&6oI4w8k_wWV#>nv1Ijzq52u)vX9d_1k&M2m%P8>$Ds~f& zm>IlyR;dr_Pb)KnFD@uk!h>g(SEdK6N0mL5g;;{dQDsi}*{HI3#*U55&2Z0?B{i81 ztThpj?vhnU_{0%l=@!%C?ZWek#dk2Pj}$Ybjw8XI7M59TQ<7U428Y=YG9wezFj(G5 z@YiL9gjJUmFWzNwV@EzQh&h7Wela(P$`6^LR!uBBH>`PfLq})Z`YzHoq2~G2 zmEldQ7+Sw5i6v7OJwz5QOEfnJ$LnIG`1MHmbzSU}YB}pq<^~CJ&j^gAMe`;0cy35m z0;y&k&URA*1Y(?Zm&H9MXC8t!VOCU1v|wisnj;4u641lQc2iSmaoBI8-Bg;EmZ+QS zzh;V<)p$f)5jmm&e>aT>{g0|O!KPQ$nkqOzJkd&v$Zn}%vf z?C)h2PcRIKHoP}>NAuK)RKoI)Vjth%C?5j^hdeNxTB59zJ0)MR91Sd|iSXR_v2tzM zs)>9G(;nr8gnN8$@!e7Mcv*xrS5TG4jo{q*SZ#2+O8q??u2O5}ERpXZ9N&hOd0Kp9 z4}(z;GqZ-dI&+)Is$PRx7O*Km5*g;ZeOh>So;uc&ZMDz^mg26gm2ixxaV0%%`u}@c z>N0!HXVm8=fE}R|UAS&kEm z*ryH#&m2-KgA*fa#Z+Q)&k;7)gOL~1nc-vmRr~I2{;7~SvRMkDM=1mQcqHT-K~g=` zHL0t`*9(%#^@HIGok|XbWFSbB66#=xX}(?f&5Q6;7%2-AZ>0GyL8#7|3kdbexTD7- zdVtEdhi@NMf36CSHpXgaC%KL4m{7~73D`Jz3VK|s1+9bX?BLzT*qyVv%?&Q&y;&^m J9aOJA{x2D+vqk^_ delta 41200 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 " "{name} " -#: FlatCAMApp.py:3258 +#: FlatCAMApp.py:3265 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -206,42 +217,42 @@ msgstr "" "org/jpcgt/flatcam/src/Beta/\"> aquí.
Área de DESCARGA aquí.
" -#: FlatCAMApp.py:3291 +#: FlatCAMApp.py:3298 msgid "Close" msgstr "Cerca" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5315 +#: FlatCAMApp.py:3418 FlatCAMApp.py:5325 msgid "[success] Defaults saved." msgstr "[success] Valores predeterminados guardados." -#: FlatCAMApp.py:3432 +#: FlatCAMApp.py:3439 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" "[ERROR_NOTCL] No se pudo cargar el archivo de valores predeterminados de " "fábrica." -#: FlatCAMApp.py:3441 +#: FlatCAMApp.py:3448 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" "[ERROR_NOTCL] Error al analizar el archivo de valores predeterminados de " "fábrica." -#: FlatCAMApp.py:3455 +#: FlatCAMApp.py:3462 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL] Error al escribir los valores predeterminados de fábrica en el " "archivo." -#: FlatCAMApp.py:3459 +#: FlatCAMApp.py:3466 msgid "Factory defaults saved." msgstr "Valores predeterminados de fábrica guardados." -#: FlatCAMApp.py:3464 flatcamGUI/FlatCAMGUI.py:3132 +#: FlatCAMApp.py:3471 flatcamGUI/FlatCAMGUI.py:3132 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "" "[WARNING_NOTCL] La aplicación es guardar el proyecto. Por favor espera ..." -#: FlatCAMApp.py:3469 FlatCAMTranslation.py:164 +#: FlatCAMApp.py:3476 FlatCAMTranslation.py:164 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -249,11 +260,11 @@ msgstr "" "Hay archivos / objetos modificados en FlatCAM.\n" "¿Quieres guardar el proyecto?" -#: FlatCAMApp.py:3472 FlatCAMApp.py:6177 FlatCAMTranslation.py:167 +#: FlatCAMApp.py:3479 FlatCAMApp.py:6192 FlatCAMTranslation.py:167 msgid "Save changes" msgstr "Guardar cambios" -#: FlatCAMApp.py:3539 +#: FlatCAMApp.py:3546 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -269,46 +280,46 @@ msgstr "" "pueden perderse y el resultado puede no ser el esperado.\n" "Compruebe el GCODE generado." -#: FlatCAMApp.py:3580 +#: FlatCAMApp.py:3587 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Ha fallado. La unión de Excellon funciona solo en objetos de " "Excellon." -#: FlatCAMApp.py:3602 +#: FlatCAMApp.py:3609 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Ha fallado. La unión de gerber funciona solo en objetos de " "gerber." -#: FlatCAMApp.py:3617 FlatCAMApp.py:3642 +#: FlatCAMApp.py:3624 FlatCAMApp.py:3649 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Ha fallado. Seleccione un objeto de geometría y vuelva a " "intentarlo." -#: FlatCAMApp.py:3621 FlatCAMApp.py:3646 +#: FlatCAMApp.py:3628 FlatCAMApp.py:3653 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Se esperaba un FlatCAMGeometry, se obtuvo%s" -#: FlatCAMApp.py:3634 +#: FlatCAMApp.py:3641 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Un objeto Geometry fue convertido al tipo MultiGeo." -#: FlatCAMApp.py:3660 +#: FlatCAMApp.py:3667 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Un objeto Geometry fue convertido al tipo SingleGeo." -#: FlatCAMApp.py:3901 +#: FlatCAMApp.py:3908 msgid "Toggle Units" msgstr "(Escriba ayuda para empezar)" -#: FlatCAMApp.py:3903 +#: FlatCAMApp.py:3910 msgid "Change project units ..." msgstr "Cambiar unidades de proyecto ..." -#: FlatCAMApp.py:3904 +#: FlatCAMApp.py:3911 msgid "" "Changing the units of the project causes all geometrical properties of all " "objects to be scaled accordingly.\n" @@ -318,43 +329,43 @@ msgstr "" "geométricas de todos los objetos se escalen en consecuencia.\n" "¿Continuar?" -#: FlatCAMApp.py:3906 FlatCAMApp.py:4756 FlatCAMApp.py:6456 FlatCAMApp.py:6469 -#: FlatCAMApp.py:6709 FlatCAMApp.py:6719 +#: FlatCAMApp.py:3913 FlatCAMApp.py:4766 FlatCAMApp.py:6471 FlatCAMApp.py:6484 +#: FlatCAMApp.py:6724 FlatCAMApp.py:6734 msgid "Ok" msgstr "De acuerdo" -#: FlatCAMApp.py:3954 +#: FlatCAMApp.py:3961 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Unidades convertidas a%s" -#: FlatCAMApp.py:3965 +#: FlatCAMApp.py:3972 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Conversión de unidades cancelada." -#: FlatCAMApp.py:4625 +#: FlatCAMApp.py:4632 msgid "Open file" msgstr "Abrir documento" -#: FlatCAMApp.py:4656 FlatCAMApp.py:4661 +#: FlatCAMApp.py:4663 FlatCAMApp.py:4668 msgid "Export G-Code ..." msgstr "Exportar G-Code ..." -#: FlatCAMApp.py:4664 +#: FlatCAMApp.py:4671 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Código de exportación cancelado." -#: FlatCAMApp.py:4674 +#: FlatCAMApp.py:4680 msgid "[WARNING] No such file or directory" msgstr "[WARNING] El fichero o directorio no existe" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4691 #, python-format msgid "Saved to: %s" msgstr "Guardado en:%s" -#: FlatCAMApp.py:4744 FlatCAMApp.py:4777 FlatCAMApp.py:4788 FlatCAMApp.py:4799 -#: flatcamTools/ToolNonCopperClear.py:490 flatcamTools/ToolSolderPaste.py:767 +#: FlatCAMApp.py:4754 FlatCAMApp.py:4787 FlatCAMApp.py:4798 FlatCAMApp.py:4809 +#: flatcamTools/ToolNonCopperClear.py:563 flatcamTools/ToolSolderPaste.py:767 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." @@ -362,12 +373,12 @@ msgstr "" "[WARNING_NOTCL] Introduzca un diámetro de herramienta con valor distinto de " "cero, en formato Float." -#: FlatCAMApp.py:4749 FlatCAMApp.py:4782 FlatCAMApp.py:4793 FlatCAMApp.py:4804 +#: FlatCAMApp.py:4759 FlatCAMApp.py:4792 FlatCAMApp.py:4803 FlatCAMApp.py:4814 #: flatcamGUI/FlatCAMGUI.py:3027 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Añadiendo herramienta cancelada ..." -#: FlatCAMApp.py:4752 +#: FlatCAMApp.py:4762 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -375,35 +386,35 @@ msgstr "" "Agregar herramienta solo funciona cuando se selecciona Avanzado.\n" "Vaya a Preferencias -> General - Mostrar opciones avanzadas." -#: FlatCAMApp.py:4864 +#: FlatCAMApp.py:4874 msgid "Object(s) deleted ..." msgstr "Objeto (s) eliminado (s) ..." -#: FlatCAMApp.py:4868 +#: FlatCAMApp.py:4878 msgid "Failed. No object(s) selected..." msgstr "Ha fallado. Ningún objeto (s) seleccionado ..." -#: FlatCAMApp.py:4870 +#: FlatCAMApp.py:4880 msgid "Save the work in Editor and try again ..." msgstr "Guarda el trabajo en el Editor y vuelve a intentarlo ..." -#: FlatCAMApp.py:4904 +#: FlatCAMApp.py:4914 msgid "Click to set the origin ..." msgstr "Haga clic para establecer el origen ..." -#: FlatCAMApp.py:4916 +#: FlatCAMApp.py:4926 msgid "Jump to ..." msgstr "Salta a ..." -#: FlatCAMApp.py:4917 +#: FlatCAMApp.py:4927 msgid "Enter the coordinates in format X,Y:" msgstr "Introduzca las coordenadas en formato X, Y:" -#: FlatCAMApp.py:4924 +#: FlatCAMApp.py:4934 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Coordenadas erróneas. Introduzca las coordenadas en formato: X, Y" -#: FlatCAMApp.py:4942 flatcamEditors/FlatCAMExcEditor.py:2321 +#: FlatCAMApp.py:4952 flatcamEditors/FlatCAMExcEditor.py:2321 #: flatcamEditors/FlatCAMExcEditor.py:2328 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -417,25 +428,25 @@ msgstr "Coordenadas erróneas. Introduzca las coordenadas en formato: X, Y" msgid "[success] Done." msgstr "[success] Hecho." -#: FlatCAMApp.py:5074 FlatCAMApp.py:5141 +#: FlatCAMApp.py:5084 FlatCAMApp.py:5151 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Ningún objeto está seleccionado. Seleccione un objeto y " "vuelva a intentarlo." -#: FlatCAMApp.py:5182 +#: FlatCAMApp.py:5192 msgid "[success] Origin set ..." msgstr "[success] Origen establecido ..." -#: FlatCAMApp.py:5201 flatcamGUI/GUIElements.py:1375 +#: FlatCAMApp.py:5211 flatcamGUI/GUIElements.py:1375 msgid "Preferences" msgstr "Preferencias" -#: FlatCAMApp.py:5267 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] Preferences edited but not saved." msgstr "[WARNING_NOTCL] Preferencias editadas pero no guardadas." -#: FlatCAMApp.py:5301 +#: FlatCAMApp.py:5311 msgid "" "One or more values are changed.\n" "Do you want to save the Preferences?" @@ -443,80 +454,80 @@ msgstr "" "Uno o más valores son cambiados.\n" "¿Quieres guardar las preferencias?" -#: FlatCAMApp.py:5303 flatcamGUI/FlatCAMGUI.py:953 +#: FlatCAMApp.py:5313 flatcamGUI/FlatCAMGUI.py:953 msgid "Save Preferences" msgstr "Guardar Preferencias" -#: FlatCAMApp.py:5330 +#: FlatCAMApp.py:5340 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Ningún objeto seleccionado para voltear en el eje Y." -#: FlatCAMApp.py:5355 +#: FlatCAMApp.py:5365 msgid "[success] Flip on Y axis done." msgstr "[success] Flip en el eje Y hecho." -#: FlatCAMApp.py:5357 FlatCAMApp.py:5397 +#: FlatCAMApp.py:5367 FlatCAMApp.py:5407 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5498 flatcamTools/ToolTransform.py:747 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Debido a %s, la acción Flip no se ejecutó." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Ningún objeto seleccionado para voltear en el eje X." -#: FlatCAMApp.py:5395 +#: FlatCAMApp.py:5405 msgid "[success] Flip on X axis done." msgstr "[success] Flip en el eje X hecho." -#: FlatCAMApp.py:5410 +#: FlatCAMApp.py:5420 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Ningún objeto seleccionado para rotar." -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Transform" msgstr "Transformar" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Enter the Angle value:" msgstr "Ingrese el valor del ángulo:" -#: FlatCAMApp.py:5443 +#: FlatCAMApp.py:5453 msgid "[success] Rotation done." msgstr "[success] Rotación realizada." -#: FlatCAMApp.py:5445 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5455 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5427 flatcamTools/ToolTransform.py:676 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Debido a%s, no se ejecutó el movimiento de rotación." -#: FlatCAMApp.py:5456 +#: FlatCAMApp.py:5466 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" "[WARNING_NOTCL] Ningún objeto seleccionado para sesgar / esquilar en el eje " "X." -#: FlatCAMApp.py:5477 +#: FlatCAMApp.py:5487 msgid "[success] Skew on X axis done." msgstr "[success] Sesgo en eje x hecho." -#: FlatCAMApp.py:5487 +#: FlatCAMApp.py:5497 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" "[WARNING_NOTCL] Ningún objeto seleccionado para sesgar / esquilar en el eje " "Y." -#: FlatCAMApp.py:5508 +#: FlatCAMApp.py:5518 msgid "[success] Skew on Y axis done." msgstr "[success] Sesgo en eje Y hecho." -#: FlatCAMApp.py:5558 +#: FlatCAMApp.py:5568 msgid "Grid On/Off" msgstr "Grid On / Off" -#: FlatCAMApp.py:5571 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5581 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2424 #: flatcamEditors/FlatCAMGrbEditor.py:5016 flatcamGUI/ObjectUI.py:989 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:207 @@ -526,7 +537,7 @@ msgstr "Grid On / Off" msgid "Add" msgstr "Añadir" -#: FlatCAMApp.py:5572 FlatCAMObj.py:3361 +#: FlatCAMApp.py:5582 FlatCAMObj.py:3349 #: flatcamEditors/FlatCAMGrbEditor.py:2429 flatcamGUI/FlatCAMGUI.py:523 #: flatcamGUI/FlatCAMGUI.py:723 flatcamGUI/FlatCAMGUI.py:1630 #: flatcamGUI/FlatCAMGUI.py:1970 flatcamGUI/ObjectUI.py:1005 @@ -535,15 +546,15 @@ msgstr "Añadir" msgid "Delete" msgstr "Borrar" -#: FlatCAMApp.py:5585 +#: FlatCAMApp.py:5595 msgid "New Grid ..." msgstr "Nueva rejilla ..." -#: FlatCAMApp.py:5586 +#: FlatCAMApp.py:5596 msgid "Enter a Grid Value:" msgstr "Introduzca un valor de cuadrícula:" -#: FlatCAMApp.py:5594 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5604 FlatCAMApp.py:5631 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -551,56 +562,56 @@ msgstr "" "[WARNING_NOTCL] Introduzca un valor de cuadrícula con un valor distinto de " "cero, en formato Float." -#: FlatCAMApp.py:5600 +#: FlatCAMApp.py:5610 msgid "[success] New Grid added ..." msgstr "[success] Nueva cuadrícula agregada ..." -#: FlatCAMApp.py:5603 +#: FlatCAMApp.py:5613 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] La rejilla ya existe ..." -#: FlatCAMApp.py:5606 +#: FlatCAMApp.py:5616 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Añadiendo nueva grilla cancelada ..." -#: FlatCAMApp.py:5628 +#: FlatCAMApp.py:5638 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL]El valor de cuadrícula no existe ..." -#: FlatCAMApp.py:5631 +#: FlatCAMApp.py:5641 msgid "[success] Grid Value deleted ..." msgstr "[success] Valor de cuadrícula eliminado ..." -#: FlatCAMApp.py:5634 +#: FlatCAMApp.py:5644 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Eliminar el valor de cuadrícula cancelado ..." -#: FlatCAMApp.py:5640 +#: FlatCAMApp.py:5650 msgid "Key Shortcut List" msgstr "Lista de atajos de teclas" -#: FlatCAMApp.py:5673 +#: FlatCAMApp.py:5683 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Ningún objeto seleccionado para copiar su nombre" -#: FlatCAMApp.py:5677 +#: FlatCAMApp.py:5687 msgid "Name copied on clipboard ..." msgstr "Nombre copiado en el portapapeles ..." -#: FlatCAMApp.py:5719 flatcamEditors/FlatCAMGrbEditor.py:4012 +#: FlatCAMApp.py:5728 flatcamEditors/FlatCAMGrbEditor.py:4012 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordenadas copiadas al portapapeles." -#: FlatCAMApp.py:5975 FlatCAMApp.py:5978 FlatCAMApp.py:5981 FlatCAMApp.py:5984 -#: FlatCAMApp.py:5999 FlatCAMApp.py:6002 FlatCAMApp.py:6005 FlatCAMApp.py:6008 -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 FlatCAMApp.py:6054 FlatCAMApp.py:6057 +#: FlatCAMApp.py:5984 FlatCAMApp.py:5987 FlatCAMApp.py:5990 FlatCAMApp.py:5993 +#: FlatCAMApp.py:6008 FlatCAMApp.py:6011 FlatCAMApp.py:6014 FlatCAMApp.py:6017 +#: FlatCAMApp.py:6057 FlatCAMApp.py:6060 FlatCAMApp.py:6063 FlatCAMApp.py:6066 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected] {name} seleccionado" -#: FlatCAMApp.py:6174 +#: FlatCAMApp.py:6189 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -610,111 +621,111 @@ msgstr "" "Crear un nuevo proyecto los borrará.\n" "¿Quieres guardar el proyecto?" -#: FlatCAMApp.py:6195 +#: FlatCAMApp.py:6210 msgid "[success] New Project created..." msgstr "[success] Nuevo proyecto creado ..." -#: FlatCAMApp.py:6315 FlatCAMApp.py:6318 flatcamGUI/FlatCAMGUI.py:604 +#: FlatCAMApp.py:6330 FlatCAMApp.py:6333 flatcamGUI/FlatCAMGUI.py:604 #: flatcamGUI/FlatCAMGUI.py:1849 msgid "Open Gerber" msgstr "Abrir gerber" -#: FlatCAMApp.py:6323 +#: FlatCAMApp.py:6338 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Gerber abierto cancelado." -#: FlatCAMApp.py:6344 FlatCAMApp.py:6347 flatcamGUI/FlatCAMGUI.py:605 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6362 flatcamGUI/FlatCAMGUI.py:605 #: flatcamGUI/FlatCAMGUI.py:1850 msgid "Open Excellon" msgstr "Abierto Excellon" -#: FlatCAMApp.py:6352 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Abierto Excellon cancelado." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6389 FlatCAMApp.py:6392 msgid "Open G-Code" msgstr "Código G abierto" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6397 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Open G-Code cancelado." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6415 FlatCAMApp.py:6418 msgid "Open Project" msgstr "Proyecto abierto" -#: FlatCAMApp.py:6411 +#: FlatCAMApp.py:6426 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Proyecto abierto cancelado." -#: FlatCAMApp.py:6430 FlatCAMApp.py:6433 +#: FlatCAMApp.py:6445 FlatCAMApp.py:6448 msgid "Open Configuration File" msgstr "Abrir archivo de configuración" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6452 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Abrir configuración cancelada." -#: FlatCAMApp.py:6452 FlatCAMApp.py:6705 FlatCAMApp.py:8951 FlatCAMApp.py:8971 -#: FlatCAMApp.py:8992 FlatCAMApp.py:9014 +#: FlatCAMApp.py:6467 FlatCAMApp.py:6720 FlatCAMApp.py:9000 FlatCAMApp.py:9020 +#: FlatCAMApp.py:9041 FlatCAMApp.py:9063 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Ningún objeto seleccionado." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6706 +#: FlatCAMApp.py:6468 FlatCAMApp.py:6721 msgid "Please Select a Geometry object to export" msgstr "Seleccione un objeto de geometría para exportar" -#: FlatCAMApp.py:6466 +#: FlatCAMApp.py:6481 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Solo se pueden utilizar objetos Geometry, Gerber y CNCJob." -#: FlatCAMApp.py:6479 FlatCAMApp.py:6483 +#: FlatCAMApp.py:6494 FlatCAMApp.py:6498 msgid "Export SVG" msgstr "Exportar SVG" -#: FlatCAMApp.py:6488 +#: FlatCAMApp.py:6503 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportación SVG cancelada." -#: FlatCAMApp.py:6507 +#: FlatCAMApp.py:6522 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Los datos deben ser una matriz 3D con la última dimensión 3 " "o 4" -#: FlatCAMApp.py:6513 FlatCAMApp.py:6517 +#: FlatCAMApp.py:6528 FlatCAMApp.py:6532 msgid "Export PNG Image" msgstr "Exportar imagen PNG" -#: FlatCAMApp.py:6522 +#: FlatCAMApp.py:6537 msgid "Export PNG cancelled." msgstr "Exportación PNG cancelada." -#: FlatCAMApp.py:6541 +#: FlatCAMApp.py:6556 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Ningún objeto seleccionado. Por favor, seleccione un objeto " "Gerber para exportar." -#: FlatCAMApp.py:6546 FlatCAMApp.py:6669 +#: FlatCAMApp.py:6561 FlatCAMApp.py:6684 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Ha fallado. Solo los objetos Gerber se pueden guardar como " "archivos Gerber ..." -#: FlatCAMApp.py:6558 +#: FlatCAMApp.py:6573 msgid "Save Gerber source file" msgstr "Guardar el archivo fuente de Gerber" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6578 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Guardar el archivo fuente de Gerber cancelado." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6597 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -722,22 +733,22 @@ msgstr "" "[WARNING_NOTCL] Ningún objeto seleccionado. Por favor, seleccione un objeto " "Excellon para exportar." -#: FlatCAMApp.py:6587 FlatCAMApp.py:6628 +#: FlatCAMApp.py:6602 FlatCAMApp.py:6643 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Ha fallado. Solo los objetos Excellon se pueden guardar como " "archivos Excellon ..." -#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 +#: FlatCAMApp.py:6610 FlatCAMApp.py:6614 msgid "Save Excellon source file" msgstr "Guardar el archivo fuente de Excellon" -#: FlatCAMApp.py:6604 +#: FlatCAMApp.py:6619 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Guardando el archivo fuente Excellon cancelado." -#: FlatCAMApp.py:6623 +#: FlatCAMApp.py:6638 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -745,70 +756,70 @@ msgstr "" "[WARNING_NOTCL] Ningún objeto seleccionado. Seleccione un objeto Excellon " "para exportar." -#: FlatCAMApp.py:6636 FlatCAMApp.py:6640 +#: FlatCAMApp.py:6651 FlatCAMApp.py:6655 msgid "Export Excellon" msgstr "Exportar Excellon" -#: FlatCAMApp.py:6645 +#: FlatCAMApp.py:6660 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportación excellon cancelada." -#: FlatCAMApp.py:6664 +#: FlatCAMApp.py:6679 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Ningún objeto seleccionado. Seleccione un objeto Gerber para " "exportar." -#: FlatCAMApp.py:6677 FlatCAMApp.py:6681 +#: FlatCAMApp.py:6692 FlatCAMApp.py:6696 msgid "Export Gerber" msgstr "Gerber Exportación" -#: FlatCAMApp.py:6686 +#: FlatCAMApp.py:6701 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Exportación Gerber cancelada." -#: FlatCAMApp.py:6716 +#: FlatCAMApp.py:6731 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Solo se pueden utilizar objetos de geometría." -#: FlatCAMApp.py:6730 FlatCAMApp.py:6734 +#: FlatCAMApp.py:6745 FlatCAMApp.py:6749 msgid "Export DXF" msgstr "Exportar DXF" -#: FlatCAMApp.py:6740 +#: FlatCAMApp.py:6755 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportación DXF cancelada." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6763 +#: FlatCAMApp.py:6775 FlatCAMApp.py:6778 msgid "Import SVG" msgstr "Importar SVG" -#: FlatCAMApp.py:6772 +#: FlatCAMApp.py:6787 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Abierto SVG cancelado." -#: FlatCAMApp.py:6791 FlatCAMApp.py:6795 +#: FlatCAMApp.py:6806 FlatCAMApp.py:6810 msgid "Import DXF" msgstr "Importar DXF" -#: FlatCAMApp.py:6804 +#: FlatCAMApp.py:6819 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Abierto DXF cancelado." -#: FlatCAMApp.py:6822 +#: FlatCAMApp.py:6837 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6842 +#: FlatCAMApp.py:6857 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Seleccione un archivo Gerber o Excellon para ver su archivo " "fuente." -#: FlatCAMApp.py:6849 +#: FlatCAMApp.py:6864 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -816,25 +827,25 @@ msgstr "" "[WARNING_NOTCL] No hay ningún objeto seleccionado para el cual ver su código " "fuente." -#: FlatCAMApp.py:6857 +#: FlatCAMApp.py:6872 msgid "Source Editor" msgstr "Editor de fuente" -#: FlatCAMApp.py:6867 +#: FlatCAMApp.py:6882 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6879 FlatCAMApp.py:8024 FlatCAMObj.py:5677 +#: FlatCAMApp.py:6894 FlatCAMApp.py:8073 FlatCAMObj.py:5593 #: flatcamTools/ToolSolderPaste.py:1284 msgid "Code Editor" msgstr "Editor de código" -#: FlatCAMApp.py:6891 +#: FlatCAMApp.py:6906 msgid "Script Editor" msgstr "Editor de guiones" -#: FlatCAMApp.py:6894 +#: FlatCAMApp.py:6909 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -878,98 +889,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6917 FlatCAMApp.py:6920 +#: FlatCAMApp.py:6932 FlatCAMApp.py:6935 msgid "Open TCL script" msgstr "Abrir script TCL" -#: FlatCAMApp.py:6928 +#: FlatCAMApp.py:6943 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Abrir el script TCL cancelado." -#: FlatCAMApp.py:6940 +#: FlatCAMApp.py:6955 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6966 FlatCAMApp.py:6969 +#: FlatCAMApp.py:6981 FlatCAMApp.py:6984 msgid "Run TCL script" msgstr "Ejecutar script TCL" -#: FlatCAMApp.py:6977 +#: FlatCAMApp.py:6992 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Ejecutar script TCL cancelado." -#: FlatCAMApp.py:7029 FlatCAMApp.py:7033 +#: FlatCAMApp.py:7044 FlatCAMApp.py:7048 msgid "Save Project As ..." msgstr "Guardar proyecto como ..." -#: FlatCAMApp.py:7030 +#: FlatCAMApp.py:7045 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Proyecto_{date}" -#: FlatCAMApp.py:7038 +#: FlatCAMApp.py:7053 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Guardar proyecto cancelado." -#: FlatCAMApp.py:7083 +#: FlatCAMApp.py:7098 msgid "Exporting SVG" msgstr "Exportando SVG" -#: FlatCAMApp.py:7117 FlatCAMApp.py:7223 FlatCAMApp.py:7338 +#: FlatCAMApp.py:7138 FlatCAMApp.py:7249 FlatCAMApp.py:7370 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Archivo SVG exportado a %s" -#: FlatCAMApp.py:7148 FlatCAMApp.py:7269 +#: FlatCAMApp.py:7169 FlatCAMApp.py:7295 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Cuadro sin objeto. Usando en su lugar %s" -#: FlatCAMApp.py:7226 FlatCAMApp.py:7341 +#: FlatCAMApp.py:7252 FlatCAMApp.py:7373 msgid "Generating Film ... Please wait." msgstr "Generando Película ... Por favor espere." -#: FlatCAMApp.py:7489 +#: FlatCAMApp.py:7532 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excelente archivo exportado a %s" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7539 msgid "Exporting Excellon" msgstr "Exportando excellon" -#: FlatCAMApp.py:7501 FlatCAMApp.py:7508 +#: FlatCAMApp.py:7544 FlatCAMApp.py:7551 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] No se pudo exportar el archivo de Excellon." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7655 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Archivo Gerber exportado a %s" -#: FlatCAMApp.py:7613 +#: FlatCAMApp.py:7662 msgid "Exporting Gerber" msgstr "Gerber exportador" -#: FlatCAMApp.py:7618 FlatCAMApp.py:7625 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7674 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] No se pudo exportar el archivo Gerber." -#: FlatCAMApp.py:7665 +#: FlatCAMApp.py:7714 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Archivo DXF exportado a %s" -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7720 msgid "Exporting DXF" msgstr "Exportando DXF" -#: FlatCAMApp.py:7676 FlatCAMApp.py:7683 +#: FlatCAMApp.py:7725 FlatCAMApp.py:7732 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[WARNING_NOTCL] No se pudo exportar el archivo DXF." -#: FlatCAMApp.py:7703 FlatCAMApp.py:7745 FlatCAMApp.py:7789 +#: FlatCAMApp.py:7752 FlatCAMApp.py:7794 FlatCAMApp.py:7838 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -977,98 +988,99 @@ msgstr "" "[ERROR_NOTCL] El tipo no soportado se elige como parámetro. Solo Geometría y " "Gerber son compatibles" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7762 msgid "Importing SVG" msgstr "Importando SVG" -#: FlatCAMApp.py:7724 FlatCAMApp.py:7766 FlatCAMApp.py:7809 FlatCAMApp.py:7886 -#: FlatCAMApp.py:7947 FlatCAMApp.py:8010 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7773 FlatCAMApp.py:7815 FlatCAMApp.py:7858 FlatCAMApp.py:7935 +#: FlatCAMApp.py:7996 FlatCAMApp.py:8059 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Abrió: %s" -#: FlatCAMApp.py:7755 +#: FlatCAMApp.py:7804 msgid "Importing DXF" msgstr "Importando DXF" -#: FlatCAMApp.py:7797 +#: FlatCAMApp.py:7846 msgid "Importing Image" msgstr "Importando imagen" -#: FlatCAMApp.py:7838 FlatCAMApp.py:7840 +#: FlatCAMApp.py:7887 FlatCAMApp.py:7889 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Error al abrir el archivo: %s" -#: FlatCAMApp.py:7843 +#: FlatCAMApp.py:7892 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Error al analizar el archivo: {name}. {error}" -#: FlatCAMApp.py:7850 flatcamEditors/FlatCAMGrbEditor.py:3832 +#: FlatCAMApp.py:7899 FlatCAMObj.py:4296 +#: flatcamEditors/FlatCAMGrbEditor.py:3832 msgid "[ERROR] An internal error has occurred. See shell.\n" msgstr "[ERROR] Ha ocurrido un error interno. Ver concha\n" -#: FlatCAMApp.py:7859 +#: FlatCAMApp.py:7908 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] El objeto no es un archivo Gerber o está vacío. Anulando la " "creación de objetos." -#: FlatCAMApp.py:7867 +#: FlatCAMApp.py:7916 msgid "Opening Gerber" msgstr "Apertura de gerber" -#: FlatCAMApp.py:7877 +#: FlatCAMApp.py:7926 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Gerber abierto fracasó. Probablemente no sea un archivo de " "Gerber." -#: FlatCAMApp.py:7910 flatcamTools/ToolPcbWizard.py:418 +#: FlatCAMApp.py:7959 flatcamTools/ToolPcbWizard.py:418 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Este no es un archivo de Excellon." -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7962 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] No se puede abrir el archivo: %s" -#: FlatCAMApp.py:7918 flatcamTools/ToolPcbWizard.py:427 +#: FlatCAMApp.py:7967 flatcamTools/ToolPcbWizard.py:427 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Ha ocurrido un error interno. Ver concha.\n" -#: FlatCAMApp.py:7931 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7980 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:440 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] No se encontró geometría en el archivo: %s" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7983 msgid "Opening Excellon." msgstr "Apertura Excellon." -#: FlatCAMApp.py:7940 +#: FlatCAMApp.py:7989 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Error al abrir el archivo Excellon. Probablemente no sea un " "archivo de Excellon." -#: FlatCAMApp.py:7977 +#: FlatCAMApp.py:8026 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Error al abrir %s" -#: FlatCAMApp.py:7987 +#: FlatCAMApp.py:8036 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Esto no es GCODE" -#: FlatCAMApp.py:7993 +#: FlatCAMApp.py:8042 msgid "Opening G-Code." msgstr "Apertura del código G." -#: FlatCAMApp.py:8001 +#: FlatCAMApp.py:8050 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -1079,26 +1091,26 @@ msgstr "" "  El intento de crear un objeto FlatCAM CNCJob desde un archivo G-Code falló " "durante el procesamiento" -#: FlatCAMApp.py:8041 +#: FlatCAMApp.py:8090 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Error al abrir el archivo de configuración: %s" -#: FlatCAMApp.py:8067 FlatCAMApp.py:8084 +#: FlatCAMApp.py:8116 FlatCAMApp.py:8133 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Error al abrir el archivo de proyecto: %s" -#: FlatCAMApp.py:8107 +#: FlatCAMApp.py:8156 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Proyecto cargado desde: %s" -#: FlatCAMApp.py:8213 +#: FlatCAMApp.py:8262 msgid "Available commands:\n" msgstr "Comandos disponibles:\n" -#: FlatCAMApp.py:8215 +#: FlatCAMApp.py:8264 msgid "" "\n" "\n" @@ -1110,37 +1122,37 @@ msgstr "" "Escriba help para su uso.\n" "Ejemplo: help open_gerber" -#: FlatCAMApp.py:8365 +#: FlatCAMApp.py:8414 msgid "Shows list of commands." msgstr "Muestra la lista de comandos." -#: FlatCAMApp.py:8422 +#: FlatCAMApp.py:8471 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Error al cargar la lista de elementos recientes." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8478 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Error al analizar la lista de elementos recientes." -#: FlatCAMApp.py:8439 +#: FlatCAMApp.py:8488 msgid "[ERROR_NOTCL] Failed to load recent projects item list." msgstr "" "[ERROR_NOTCL] Error al cargar la lista de elementos de proyectos recientes." -#: FlatCAMApp.py:8446 +#: FlatCAMApp.py:8495 msgid "[ERROR_NOTCL] Failed to parse recent project item list." msgstr "" "[ERROR_NOTCL] Error al analizar la lista de elementos del proyecto reciente." -#: FlatCAMApp.py:8505 FlatCAMApp.py:8528 +#: FlatCAMApp.py:8554 FlatCAMApp.py:8577 msgid "Clear Recent files" msgstr "Borrar archivos recientes" -#: FlatCAMApp.py:8545 flatcamGUI/FlatCAMGUI.py:970 +#: FlatCAMApp.py:8594 flatcamGUI/FlatCAMGUI.py:970 msgid "Shortcut Key List" msgstr " Lista de teclas de acceso directo " -#: FlatCAMApp.py:8552 +#: FlatCAMApp.py:8601 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1240,25 +1252,25 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8659 +#: FlatCAMApp.py:8708 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Falló la comprobación de la última versión. No pudo conectar." -#: FlatCAMApp.py:8666 +#: FlatCAMApp.py:8715 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] No se pudo analizar la información sobre la última versión." -#: FlatCAMApp.py:8676 +#: FlatCAMApp.py:8725 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM está al día!" -#: FlatCAMApp.py:8681 +#: FlatCAMApp.py:8730 msgid "Newer Version Available" msgstr "Nueva versión disponible" -#: FlatCAMApp.py:8682 +#: FlatCAMApp.py:8731 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1266,58 +1278,58 @@ msgstr "" "Hay una versión más nueva de FlatCAM disponible para descargar:\n" "\n" -#: FlatCAMApp.py:8684 +#: FlatCAMApp.py:8733 msgid "info" msgstr "info" -#: FlatCAMApp.py:8703 +#: FlatCAMApp.py:8752 msgid "[success] All plots disabled." msgstr "[success] Todas las parcelas con discapacidad." -#: FlatCAMApp.py:8709 +#: FlatCAMApp.py:8758 msgid "[success] All non selected plots disabled." msgstr "[success] Todas las parcelas no seleccionadas deshabilitadas." -#: FlatCAMApp.py:8715 +#: FlatCAMApp.py:8764 msgid "[success] All plots enabled." msgstr "[success] Todas las parcelas habilitadas." -#: FlatCAMApp.py:8721 +#: FlatCAMApp.py:8770 msgid "[success] Selected plots enabled..." msgstr "[success] Parcelas seleccionadas habilitadas ..." -#: FlatCAMApp.py:8729 +#: FlatCAMApp.py:8778 msgid "[success] Selected plots disabled..." msgstr "[success] Parcelas seleccionadas deshabilitadas ..." -#: FlatCAMApp.py:8739 FlatCAMApp.py:8766 FlatCAMApp.py:8783 +#: FlatCAMApp.py:8788 FlatCAMApp.py:8815 FlatCAMApp.py:8832 msgid "Working ..." msgstr "Trabajando ..." -#: FlatCAMApp.py:8820 +#: FlatCAMApp.py:8869 msgid "Saving FlatCAM Project" msgstr "Proyecto FlatCAM de ahorro" -#: FlatCAMApp.py:8841 FlatCAMApp.py:8872 +#: FlatCAMApp.py:8890 FlatCAMApp.py:8921 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Proyecto guardado en: %s" -#: FlatCAMApp.py:8859 +#: FlatCAMApp.py:8908 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Error al verificar el archivo del proyecto: %s. Vuelva a " "intentarlo para guardarlo." -#: FlatCAMApp.py:8866 +#: FlatCAMApp.py:8915 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Error al analizar el archivo de proyecto guardado: %s. Vuelva " "a intentarlo para guardarlo." -#: FlatCAMApp.py:8874 +#: FlatCAMApp.py:8923 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1329,79 +1341,80 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] El nombre cambió de {old} a {new}" -#: FlatCAMObj.py:555 FlatCAMObj.py:2095 FlatCAMObj.py:3366 FlatCAMObj.py:5570 +#: FlatCAMObj.py:558 FlatCAMObj.py:2098 FlatCAMObj.py:3354 FlatCAMObj.py:5486 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:567 FlatCAMObj.py:2111 FlatCAMObj.py:3388 FlatCAMObj.py:5576 +#: FlatCAMObj.py:570 FlatCAMObj.py:2114 FlatCAMObj.py:3376 FlatCAMObj.py:5492 msgid "Advanced" msgstr "Avanzado" -#: FlatCAMObj.py:920 FlatCAMObj.py:1018 +#: FlatCAMObj.py:923 FlatCAMObj.py:1021 msgid "[ERROR_NOTCL] Isolation geometry could not be generated." msgstr "[ERROR_NOTCL] La geometría de aislamiento no se pudo generar." -#: FlatCAMObj.py:957 FlatCAMObj.py:3061 FlatCAMObj.py:3323 FlatCAMObj.py:3632 +#: FlatCAMObj.py:960 FlatCAMObj.py:3049 FlatCAMObj.py:3311 FlatCAMObj.py:3589 msgid "Rough" msgstr "Áspero" -#: FlatCAMObj.py:975 FlatCAMObj.py:1034 +#: FlatCAMObj.py:978 FlatCAMObj.py:1037 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Geometría de aislamiento creada: %s" -#: FlatCAMObj.py:1213 +#: FlatCAMObj.py:1216 msgid "Plotting Apertures" msgstr "Aperturas de trazado" -#: FlatCAMObj.py:1936 flatcamEditors/FlatCAMExcEditor.py:1369 +#: FlatCAMObj.py:1939 flatcamEditors/FlatCAMExcEditor.py:1369 msgid "Total Drills" msgstr "Taladros totales" -#: FlatCAMObj.py:1962 flatcamEditors/FlatCAMExcEditor.py:1401 +#: FlatCAMObj.py:1965 flatcamEditors/FlatCAMExcEditor.py:1401 msgid "Total Slots" msgstr "Ranuras totales" -#: FlatCAMObj.py:2169 FlatCAMObj.py:3440 FlatCAMObj.py:3771 FlatCAMObj.py:3962 -#: FlatCAMObj.py:3975 FlatCAMObj.py:4095 FlatCAMObj.py:4511 FlatCAMObj.py:4747 -#: FlatCAMObj.py:5151 flatcamEditors/FlatCAMExcEditor.py:1475 +#: FlatCAMObj.py:2172 FlatCAMObj.py:3427 FlatCAMObj.py:3717 FlatCAMObj.py:3904 +#: FlatCAMObj.py:3915 FlatCAMObj.py:4033 FlatCAMObj.py:4438 FlatCAMObj.py:4664 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1475 #: flatcamTools/ToolCalculators.py:304 flatcamTools/ToolCalculators.py:315 #: flatcamTools/ToolCalculators.py:327 flatcamTools/ToolCalculators.py:342 #: flatcamTools/ToolCalculators.py:355 flatcamTools/ToolCalculators.py:369 #: flatcamTools/ToolCalculators.py:380 flatcamTools/ToolCalculators.py:391 #: flatcamTools/ToolCalculators.py:402 flatcamTools/ToolFilm.py:241 -#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:481 -#: flatcamTools/ToolNonCopperClear.py:553 -#: flatcamTools/ToolNonCopperClear.py:630 -#: flatcamTools/ToolNonCopperClear.py:647 flatcamTools/ToolPaint.py:537 -#: flatcamTools/ToolPaint.py:609 flatcamTools/ToolPaint.py:746 -#: flatcamTools/ToolPaint.py:846 flatcamTools/ToolPaint.py:1000 -#: flatcamTools/ToolPanelize.py:387 flatcamTools/ToolPanelize.py:399 -#: flatcamTools/ToolPanelize.py:412 flatcamTools/ToolPanelize.py:425 -#: flatcamTools/ToolPanelize.py:437 flatcamTools/ToolPanelize.py:448 -#: flatcamTools/ToolSolderPaste.py:758 flatcamTools/ToolSolderPaste.py:830 +#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:554 +#: flatcamTools/ToolNonCopperClear.py:626 +#: flatcamTools/ToolNonCopperClear.py:703 +#: flatcamTools/ToolNonCopperClear.py:720 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolPaint.py:615 flatcamTools/ToolPaint.py:752 +#: flatcamTools/ToolPaint.py:925 flatcamTools/ToolPaint.py:1079 +#: flatcamTools/ToolPaint.py:1379 flatcamTools/ToolPanelize.py:387 +#: flatcamTools/ToolPanelize.py:399 flatcamTools/ToolPanelize.py:412 +#: flatcamTools/ToolPanelize.py:425 flatcamTools/ToolPanelize.py:437 +#: flatcamTools/ToolPanelize.py:448 flatcamTools/ToolSolderPaste.py:758 +#: flatcamTools/ToolSolderPaste.py:830 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Formato de valor incorrecto introducido, use un número." -#: FlatCAMObj.py:2393 FlatCAMObj.py:2485 FlatCAMObj.py:2608 +#: FlatCAMObj.py:2396 FlatCAMObj.py:2488 FlatCAMObj.py:2611 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Por favor seleccione una o más herramientas de la lista e " "intente nuevamente." -#: FlatCAMObj.py:2400 +#: FlatCAMObj.py:2403 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] La herramienta de fresado para TALADRO es más grande que el " "tamaño del orificio. Cancelado." -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Tool_nr" msgstr "Herramienta_nu" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 #: flatcamEditors/FlatCAMExcEditor.py:820 #: flatcamEditors/FlatCAMExcEditor.py:2021 flatcamGUI/ObjectUI.py:553 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1409,22 +1422,22 @@ msgstr "Herramienta_nu" msgid "Diameter" msgstr "Diámetro" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Drills_Nr" msgstr "Taladros_nu" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Slots_Nr" msgstr "Ranuras_nu" -#: FlatCAMObj.py:2495 +#: FlatCAMObj.py:2498 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] La herramienta de fresado para SLOTS es más grande que el " "tamaño del orificio. Cancelado." -#: FlatCAMObj.py:2670 FlatCAMObj.py:4400 FlatCAMObj.py:4615 FlatCAMObj.py:4926 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4331 FlatCAMObj.py:4537 FlatCAMObj.py:4843 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1432,7 +1445,7 @@ msgstr "" "[ERROR_NOTCL] Formato de valor incorrecto para self.defaults [\"z_pdepth\"] " "o self.options [\"z_pdepth\"]" -#: FlatCAMObj.py:2682 FlatCAMObj.py:4412 FlatCAMObj.py:4627 FlatCAMObj.py:4938 +#: FlatCAMObj.py:2682 FlatCAMObj.py:4341 FlatCAMObj.py:4547 FlatCAMObj.py:4853 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1440,12 +1453,12 @@ msgstr "" "[ERROR_NOTCL] Formato de valor incorrecto para self.defaults " "[\"feedrate_probe\"] o self.options [\"feedrate_probe\"]" -#: FlatCAMObj.py:2714 FlatCAMObj.py:4814 FlatCAMObj.py:4819 FlatCAMObj.py:4969 +#: FlatCAMObj.py:2712 FlatCAMObj.py:4733 FlatCAMObj.py:4738 FlatCAMObj.py:4885 msgid "Generating CNC Code" msgstr "Generando Código CNC" -#: FlatCAMObj.py:2740 FlatCAMObj.py:5111 camlib.py:5179 camlib.py:5638 -#: camlib.py:5901 +#: FlatCAMObj.py:2737 FlatCAMObj.py:5027 camlib.py:5181 camlib.py:5640 +#: camlib.py:5903 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1455,57 +1468,57 @@ msgstr "" "en el formato (x, y)\n" "pero ahora solo hay un valor, no dos. " -#: FlatCAMObj.py:3061 FlatCAMObj.py:4017 FlatCAMObj.py:4018 FlatCAMObj.py:4027 +#: FlatCAMObj.py:3049 FlatCAMObj.py:3956 FlatCAMObj.py:3957 FlatCAMObj.py:3966 msgid "Iso" msgstr "Aisl." -#: FlatCAMObj.py:3061 +#: FlatCAMObj.py:3049 msgid "Finish" msgstr "Terminar" -#: FlatCAMObj.py:3359 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 +#: FlatCAMObj.py:3347 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 #: flatcamGUI/FlatCAMGUI.py:1629 flatcamGUI/FlatCAMGUI.py:1968 #: flatcamGUI/ObjectUI.py:997 msgid "Copy" msgstr "Dupdo" -#: FlatCAMObj.py:3602 +#: FlatCAMObj.py:3559 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Por favor ingrese el diámetro deseado de la herramienta en " "formato Float." -#: FlatCAMObj.py:3677 +#: FlatCAMObj.py:3633 msgid "[success] Tool added in Tool Table." msgstr "[success] Herramienta añadida en la tabla de herramientas." -#: FlatCAMObj.py:3682 +#: FlatCAMObj.py:3636 msgid "[WARNING_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[WARNING_NOTCL] Herramienta predeterminada agregada. Se ha introducido un " "formato de valor incorrecto." -#: FlatCAMObj.py:3716 FlatCAMObj.py:3726 +#: FlatCAMObj.py:3668 FlatCAMObj.py:3676 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Ha fallado. Seleccione una herramienta para copiar." -#: FlatCAMObj.py:3755 +#: FlatCAMObj.py:3703 msgid "[success] Tool was copied in Tool Table." msgstr "[success] La herramienta se copió en la tabla de herramientas." -#: FlatCAMObj.py:3788 +#: FlatCAMObj.py:3732 msgid "[success] Tool was edited in Tool Table." msgstr "[success] La herramienta fue editada en la tabla de herramientas." -#: FlatCAMObj.py:3817 FlatCAMObj.py:3825 +#: FlatCAMObj.py:3760 FlatCAMObj.py:3768 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Ha fallado. Seleccione una herramienta para eliminar." -#: FlatCAMObj.py:3847 +#: FlatCAMObj.py:3790 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] La herramienta se eliminó en la tabla de herramientas." -#: FlatCAMObj.py:4281 +#: FlatCAMObj.py:4219 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1513,28 +1526,24 @@ msgstr "" "[WARNING_NOTCL] Esta geometría no se puede procesar porque es la geometría " "%s." -#: FlatCAMObj.py:4298 +#: FlatCAMObj.py:4235 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Se ingresó un formato de valor de Diámetro de herramienta " "incorrecta, use un número." -#: FlatCAMObj.py:4325 +#: FlatCAMObj.py:4260 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Ha fallado. Ninguna herramienta seleccionada en la tabla de " "herramientas ..." -#: FlatCAMObj.py:4362 flatcamEditors/FlatCAMExcEditor.py:2078 -msgid "[ERROR] An internal error has ocurred. See shell.\n" -msgstr "[ERROR] Ha ocurrido un error interno. Ver concha.\n" - -#: FlatCAMObj.py:4363 +#: FlatCAMObj.py:4297 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4520 FlatCAMObj.py:4754 +#: FlatCAMObj.py:4444 FlatCAMObj.py:4670 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1543,21 +1552,21 @@ msgstr "" "herramientas pero no se proporciona ningún valor.\n" "Agregue una Herramienta de compensación o cambie el Tipo de compensación." -#: FlatCAMObj.py:4639 flatcamTools/ToolSolderPaste.py:1112 +#: FlatCAMObj.py:4557 flatcamTools/ToolSolderPaste.py:1112 #: flatcamTools/ToolSolderPaste.py:1168 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelado. Archivo vacío, no tiene geometría ..." -#: FlatCAMObj.py:5002 FlatCAMObj.py:5011 camlib.py:3360 camlib.py:3369 +#: FlatCAMObj.py:4918 FlatCAMObj.py:4927 camlib.py:3362 camlib.py:3371 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] El factor de escala tiene que ser un número: entero o Float." -#: FlatCAMObj.py:5048 +#: FlatCAMObj.py:4964 msgid "[success] Geometry Scale done." msgstr "[success] Escala de geometría realizada." -#: FlatCAMObj.py:5065 camlib.py:3438 +#: FlatCAMObj.py:4981 camlib.py:3440 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1565,29 +1574,29 @@ msgstr "" "[ERROR_NOTCL] Se necesita un par de valores (x, y). Probablemente haya " "ingresado un solo valor en el campo Desplazamiento." -#: FlatCAMObj.py:5084 +#: FlatCAMObj.py:5000 msgid "[success] Geometry Offset done." msgstr "[success] Desplazamiento de geometría realizado." -#: FlatCAMObj.py:5638 FlatCAMObj.py:5643 flatcamTools/ToolSolderPaste.py:1368 +#: FlatCAMObj.py:5554 FlatCAMObj.py:5559 flatcamTools/ToolSolderPaste.py:1368 msgid "Export Machine Code ..." msgstr "Exportar código de máquina ..." -#: FlatCAMObj.py:5649 flatcamTools/ToolSolderPaste.py:1371 +#: FlatCAMObj.py:5565 flatcamTools/ToolSolderPaste.py:1371 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Exportar código de máquina cancelado ..." -#: FlatCAMObj.py:5666 +#: FlatCAMObj.py:5582 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Archivo de código de máquina guardado en: %s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5604 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5721 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1596,11 +1605,11 @@ msgstr "" "[WARNING_NOTCL] Este objeto CNCJob no se puede procesar porque es un objeto " "%s CNCJob." -#: FlatCAMObj.py:5858 +#: FlatCAMObj.py:5774 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] El código G no tiene un código de unidades: G20 o G21" -#: FlatCAMObj.py:5871 +#: FlatCAMObj.py:5787 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1608,17 +1617,17 @@ msgstr "" "[ERROR_NOTCL] Cancelado. El código personalizado de Toolchange está " "habilitado pero está vacío." -#: FlatCAMObj.py:5878 +#: FlatCAMObj.py:5794 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] El código G de Toolchange fue reemplazado por un código " "personalizado." -#: FlatCAMObj.py:5893 flatcamTools/ToolSolderPaste.py:1397 +#: FlatCAMObj.py:5808 flatcamTools/ToolSolderPaste.py:1397 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] El fichero o directorio no existe" -#: FlatCAMObj.py:5913 FlatCAMObj.py:5925 +#: FlatCAMObj.py:5832 FlatCAMObj.py:5844 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1626,7 +1635,7 @@ msgstr "" "[WARNING_NOTCL] El archivo de postprocesador usado debe tener su nombre: " "'toolchange_custom'" -#: FlatCAMObj.py:5931 +#: FlatCAMObj.py:5850 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] No hay archivo de postprocesador." @@ -1657,41 +1666,41 @@ msgstr "[ERROR] Causa del error: %s" msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "[ERROR_NOTCL] self.solid_geometry no es ni BaseGeometry ni lista." -#: camlib.py:1402 +#: camlib.py:1404 msgid "[success] Object was mirrored ..." msgstr "[success] El objeto fue reflejado ..." -#: camlib.py:1404 +#: camlib.py:1406 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" msgstr "[ERROR_NOTCL] No se pudo reflejar. Ningún objeto seleccionado" -#: camlib.py:1440 +#: camlib.py:1442 msgid "[success] Object was rotated ..." msgstr "[success] El objeto fue girado ..." -#: camlib.py:1442 +#: camlib.py:1444 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" msgstr "[ERROR_NOTCL] No se pudo rotar. Ningún objeto seleccionado" -#: camlib.py:1476 +#: camlib.py:1478 msgid "[success] Object was skewed ..." msgstr "[success] El objeto fue sesgado ..." -#: camlib.py:1478 +#: camlib.py:1480 msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Error al sesgar. Ningún objeto seleccionado" -#: camlib.py:2740 camlib.py:2825 +#: camlib.py:2742 camlib.py:2827 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Coordenadas faltantes, línea ignorada: %s" -#: camlib.py:2741 camlib.py:2826 +#: camlib.py:2743 camlib.py:2828 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" "[WARNING_NOTCL] GERBER archivo podría ser CORRUPT. Revisa el archivo !!!" -#: camlib.py:2790 +#: camlib.py:2792 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1700,7 +1709,7 @@ msgstr "" "[ERROR] Región no tiene suficientes puntos. El archivo será procesado pero " "hay errores del analizador. Línea de números: %s" -#: camlib.py:3182 +#: camlib.py:3184 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1709,32 +1718,32 @@ msgstr "" "[ERROR] Gerber Parser ERROR.\n" "%s:" -#: camlib.py:3406 +#: camlib.py:3408 msgid "[success] Gerber Scale done." msgstr "[success] Escala de Gerber hecha." -#: camlib.py:3471 +#: camlib.py:3473 msgid "[success] Gerber Offset done." msgstr "[success] Gerber Offset hecho." -#: camlib.py:3525 +#: camlib.py:3527 msgid "[success] Gerber Mirror done." msgstr "[success] Espejo Gerber hecho." -#: camlib.py:3571 +#: camlib.py:3573 msgid "[success] Gerber Skew done." msgstr "[success] Gerber Skew hecho." -#: camlib.py:3609 +#: camlib.py:3611 msgid "[success] Gerber Rotate done." msgstr "[success] Gerber Rotate hecho." -#: camlib.py:3890 +#: camlib.py:3892 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] Esta es la marca GCODE: %s" -#: camlib.py:4005 +#: camlib.py:4007 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1752,7 +1761,7 @@ msgstr "" "El usuario debe editar el objeto Excellon resultante y cambiar los diámetros " "para reflejar los diámetros reales." -#: camlib.py:4470 +#: camlib.py:4472 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1761,7 +1770,7 @@ msgstr "" "[ERROR] Error de Excel Parser.\n" "Error al analizar. Línea {l_nr}: {line}\n" -#: camlib.py:4549 +#: camlib.py:4551 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1771,12 +1780,12 @@ msgstr "" "por no tener una herramienta asociada.\n" "Compruebe el GCode resultante." -#: camlib.py:5088 +#: camlib.py:5090 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] No hay tal parámetro: %s" -#: camlib.py:5158 +#: camlib.py:5160 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1790,22 +1799,22 @@ msgstr "" "tipográfico, por lo tanto, la aplicación convertirá el valor a negativo. " "Compruebe el código CNC resultante (Gcode, etc.)." -#: camlib.py:5165 camlib.py:5661 camlib.py:5924 +#: camlib.py:5167 camlib.py:5663 camlib.py:5926 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" "[WARNING] El parámetro Cut Z es cero. No habrá corte, saltando %s archivo" -#: camlib.py:5394 camlib.py:5491 camlib.py:5549 +#: camlib.py:5396 camlib.py:5493 camlib.py:5551 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] El archivo Excellon cargado no tiene perforaciones ..." -#: camlib.py:5496 +#: camlib.py:5498 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Tipo de optimización incorrecto seleccionado." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5651 camlib.py:5914 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1813,7 +1822,7 @@ msgstr "" "[ERROR_NOTCL] El parámetro Cut_Z es Ninguno o cero. Lo más probable es una " "mala combinación de otros parámetros." -#: camlib.py:5654 camlib.py:5917 +#: camlib.py:5656 camlib.py:5919 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1827,11 +1836,11 @@ msgstr "" "tipográfico, por lo tanto, la aplicación convertirá el valor a negativo. " "Verifique el código CNC resultante (Gcode, etc.)." -#: camlib.py:5666 camlib.py:5929 +#: camlib.py:5668 camlib.py:5931 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] El parámetro Travel Z des Ninguno o cero." -#: camlib.py:5670 camlib.py:5933 +#: camlib.py:5672 camlib.py:5935 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1845,7 +1854,7 @@ msgstr "" "error tipográfico, por lo tanto, la aplicación convertirá el valor a " "positivo. Verifique el código CNC resultante (Gcode, etc.)." -#: camlib.py:5677 camlib.py:5940 +#: camlib.py:5679 camlib.py:5942 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" @@ -1853,12 +1862,12 @@ msgstr "" "[WARNING] El parámetro Z Travel es cero. Esto es peligroso, saltando el " "archive %s" -#: camlib.py:5807 +#: camlib.py:5809 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR] Se esperaba una geometría, se obtuvo %s" -#: camlib.py:5813 +#: camlib.py:5815 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1866,7 +1875,7 @@ msgstr "" "[ERROR_NOTCL] Intentando generar un trabajo de CNC desde un objeto de " "geometría sin solid_geometry." -#: camlib.py:5852 +#: camlib.py:5854 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1876,7 +1885,7 @@ msgstr "" "para usarlo con la current_geometry.\n" "Aumente el valor (en el módulo) y vuelva a intentarlo." -#: camlib.py:6064 +#: camlib.py:6066 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" "[ERROR_NOTCL] No hay datos de herramientas en la geometría SolderPaste." @@ -2224,6 +2233,10 @@ msgstr "" "[ERROR_NOTCL] No hay definiciones de herramientas en el archivo. Anulando la " "creación de Excellon." +#: flatcamEditors/FlatCAMExcEditor.py:2078 +msgid "[ERROR] An internal error has ocurred. See shell.\n" +msgstr "[ERROR] Ha ocurrido un error interno. Ver concha.\n" + #: flatcamEditors/FlatCAMExcEditor.py:2084 msgid "Creating Excellon." msgstr "Creación de Excellon." @@ -2326,12 +2339,12 @@ msgstr "Herramienta" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4080 #: flatcamGUI/FlatCAMGUI.py:5189 flatcamGUI/FlatCAMGUI.py:5623 -#: flatcamGUI/FlatCAMGUI.py:5900 flatcamGUI/FlatCAMGUI.py:6055 +#: flatcamGUI/FlatCAMGUI.py:5913 flatcamGUI/FlatCAMGUI.py:6068 #: flatcamGUI/ObjectUI.py:259 msgid "Tool dia:" msgstr "Diá. de la herramienta:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6057 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6070 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2340,7 +2353,7 @@ msgstr "" "ser utilizado en la operación." #: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5806 -#: flatcamGUI/FlatCAMGUI.py:6066 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamGUI/FlatCAMGUI.py:6079 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Tasa de superpose.:" @@ -2373,13 +2386,13 @@ msgstr "" "Debido a demasiados caminos." #: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5822 -#: flatcamGUI/FlatCAMGUI.py:5923 flatcamGUI/FlatCAMGUI.py:6076 +#: flatcamGUI/FlatCAMGUI.py:5936 flatcamGUI/FlatCAMGUI.py:6089 #: flatcamTools/ToolCutOut.py:101 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Margen:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6078 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6091 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2391,12 +2404,12 @@ msgstr "" "ser pintado." #: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5831 -#: flatcamGUI/FlatCAMGUI.py:6087 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamGUI/FlatCAMGUI.py:6100 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Método:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6089 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6102 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." @@ -2405,31 +2418,31 @@ msgstr "" "adentro.
Basado en semillas : Hacia afuera desde las semillas." #: flatcamEditors/FlatCAMGeoEditor.py:480 flatcamGUI/FlatCAMGUI.py:5840 -#: flatcamGUI/FlatCAMGUI.py:6095 flatcamTools/ToolNonCopperClear.py:199 +#: flatcamGUI/FlatCAMGUI.py:6108 flatcamTools/ToolNonCopperClear.py:199 #: flatcamTools/ToolPaint.py:197 msgid "Standard" msgstr "Estándar" #: flatcamEditors/FlatCAMGeoEditor.py:481 flatcamGUI/FlatCAMGUI.py:5841 -#: flatcamGUI/FlatCAMGUI.py:6096 flatcamTools/ToolNonCopperClear.py:200 +#: flatcamGUI/FlatCAMGUI.py:6109 flatcamTools/ToolNonCopperClear.py:200 #: flatcamTools/ToolPaint.py:198 msgid "Seed-based" msgstr "Semillas" #: flatcamEditors/FlatCAMGeoEditor.py:482 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6097 flatcamTools/ToolNonCopperClear.py:201 +#: flatcamGUI/FlatCAMGUI.py:6110 flatcamTools/ToolNonCopperClear.py:201 #: flatcamTools/ToolPaint.py:199 msgid "Straight lines" msgstr "Lineas rectas" #: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5847 -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamGUI/FlatCAMGUI.py:6115 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Conectar:" #: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5849 -#: flatcamGUI/FlatCAMGUI.py:6104 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2439,13 +2452,13 @@ msgstr "" "Segmentos para minimizar elevaciones de herramientas." #: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5856 -#: flatcamGUI/FlatCAMGUI.py:6112 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamGUI/FlatCAMGUI.py:6125 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Contorno:" #: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5858 -#: flatcamGUI/FlatCAMGUI.py:6114 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamGUI/FlatCAMGUI.py:6127 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2460,7 +2473,7 @@ msgstr "Pintar" #: flatcamEditors/FlatCAMGeoEditor.py:527 flatcamGUI/FlatCAMGUI.py:639 #: flatcamGUI/FlatCAMGUI.py:1883 flatcamGUI/ObjectUI.py:1320 -#: flatcamTools/ToolPaint.py:340 +#: flatcamTools/ToolPaint.py:343 msgid "Paint Tool" msgstr "Herramienta de pintura" @@ -2497,7 +2510,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2707 #: flatcamEditors/FlatCAMGeoEditor.py:2733 #: flatcamEditors/FlatCAMGeoEditor.py:2759 -#: flatcamTools/ToolNonCopperClear.py:817 flatcamTools/ToolProperties.py:104 +#: flatcamTools/ToolNonCopperClear.py:916 flatcamTools/ToolProperties.py:104 msgid "Tools" msgstr "Herramientas" @@ -2661,7 +2674,7 @@ msgid "Scale Y" msgstr "Escala Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6461 +#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6474 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Enlazar" @@ -2676,7 +2689,7 @@ msgstr "" "Utilizando el Scale Factor X para ambos ejes." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6482 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Referencia de escala" @@ -4599,7 +4612,7 @@ msgid "&Cutout Tool" msgstr "Herramienta de recorte" #: flatcamGUI/FlatCAMGUI.py:638 flatcamGUI/FlatCAMGUI.py:1882 -#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:285 +#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:336 msgid "NCC Tool" msgstr "Herramienta NCC" @@ -5585,8 +5598,8 @@ msgid "Replace With" msgstr "Reemplazar con" #: flatcamGUI/FlatCAMGUI.py:1667 flatcamGUI/FlatCAMGUI.py:5556 -#: flatcamGUI/FlatCAMGUI.py:6129 flatcamGUI/ObjectUI.py:1369 -#: flatcamTools/ToolPaint.py:248 +#: flatcamGUI/FlatCAMGUI.py:6143 flatcamGUI/ObjectUI.py:1369 +#: flatcamTools/ToolPaint.py:249 msgid "All" msgstr "Todos" @@ -6337,7 +6350,7 @@ msgstr "" "Trayectorias para cortar polígonos exteriores." #: flatcamGUI/FlatCAMGUI.py:4082 flatcamGUI/FlatCAMGUI.py:4761 -#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/ObjectUI.py:785 +#: flatcamGUI/FlatCAMGUI.py:5915 flatcamGUI/ObjectUI.py:785 #: flatcamGUI/ObjectUI.py:801 msgid "Diameter of the cutting tool." msgstr "Diá. de la herramienta de corte." @@ -6603,10 +6616,10 @@ msgstr "TZ" #: flatcamGUI/FlatCAMGUI.py:4352 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/FlatCAMGUI.py:5496 flatcamGUI/FlatCAMGUI.py:5788 -#: flatcamGUI/FlatCAMGUI.py:5889 flatcamGUI/FlatCAMGUI.py:5983 -#: flatcamGUI/FlatCAMGUI.py:6042 flatcamGUI/FlatCAMGUI.py:6145 -#: flatcamGUI/FlatCAMGUI.py:6206 flatcamGUI/FlatCAMGUI.py:6405 -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/FlatCAMGUI.py:5996 +#: flatcamGUI/FlatCAMGUI.py:6055 flatcamGUI/FlatCAMGUI.py:6158 +#: flatcamGUI/FlatCAMGUI.py:6219 flatcamGUI/FlatCAMGUI.py:6418 +#: flatcamGUI/FlatCAMGUI.py:6545 msgid "Parameters:" msgstr "Parámetros:" @@ -6845,7 +6858,7 @@ msgstr "" "para este objeto taladro." #: flatcamGUI/FlatCAMGUI.py:4635 flatcamGUI/FlatCAMGUI.py:5222 -#: flatcamGUI/FlatCAMGUI.py:6341 flatcamGUI/ObjectUI.py:592 +#: flatcamGUI/FlatCAMGUI.py:6354 flatcamGUI/ObjectUI.py:592 #: flatcamGUI/ObjectUI.py:1068 flatcamTools/ToolCalculators.py:106 msgid "Cut Z:" msgstr "Corte Z:" @@ -7742,7 +7755,7 @@ msgstr "" msgid "NCC Tool Options" msgstr "Opc. de herra. NCC" -#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6543 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6556 msgid "Tools dia:" msgstr "Herra. dia:" @@ -7810,11 +7823,36 @@ msgstr "" "No se pudo borrar con la herramienta anterior.\n" "Si no está marcado, use el algoritmo estándar." -#: flatcamGUI/FlatCAMGUI.py:5886 +#: flatcamGUI/FlatCAMGUI.py:5879 flatcamTools/ToolNonCopperClear.py:239 +msgid "Itself" +msgstr "Sí mismo" + +#: flatcamGUI/FlatCAMGUI.py:5880 flatcamGUI/FlatCAMGUI.py:6031 +#: flatcamTools/ToolDblSided.py:132 flatcamTools/ToolNonCopperClear.py:240 +msgid "Box" +msgstr "Caja" + +#: flatcamGUI/FlatCAMGUI.py:5881 flatcamTools/ToolNonCopperClear.py:241 +msgid "Reference:" +msgstr "Referencia:" + +#: flatcamGUI/FlatCAMGUI.py:5883 +msgid "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." +msgstr "" +"Al elegir la opción 'Sí mismo', la extensión de limpieza sin cobre\n" +"se basa en el objeto que es cobre despejado.\n" +"Al elegir la opción 'Caja', no se borrará el cobre dentro de la caja\n" +"especificado por otro objeto diferente al que está libre de cobre." + +#: flatcamGUI/FlatCAMGUI.py:5899 msgid "Cutout Tool Options" msgstr "Opc. de herra. de recorte" -#: flatcamGUI/FlatCAMGUI.py:5891 flatcamGUI/ObjectUI.py:399 +#: flatcamGUI/FlatCAMGUI.py:5904 flatcamGUI/ObjectUI.py:399 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -7824,11 +7862,11 @@ msgstr "" "El PCB y lo separa de\n" "El tablero original." -#: flatcamGUI/FlatCAMGUI.py:5909 flatcamTools/ToolCutOut.py:77 +#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:77 msgid "Obj kind:" msgstr "Tipo de objeto:" -#: flatcamGUI/FlatCAMGUI.py:5911 flatcamTools/ToolCutOut.py:79 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:79 msgid "" "Choice of what kind the object we want to cutout is.
- Single: " "contain a single PCB Gerber outline object.
- Panel: a panel PCB " @@ -7840,16 +7878,16 @@ msgstr "" "un panel de PCB Gerber objeto, que se hace\n" "de muchos esquemas de PCB individuales." -#: flatcamGUI/FlatCAMGUI.py:5918 flatcamGUI/FlatCAMGUI.py:6128 +#: flatcamGUI/FlatCAMGUI.py:5931 flatcamGUI/FlatCAMGUI.py:6141 #: flatcamTools/ToolCutOut.py:85 flatcamTools/ToolPaint.py:247 msgid "Single" msgstr "Soltero" -#: flatcamGUI/FlatCAMGUI.py:5919 flatcamTools/ToolCutOut.py:86 +#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:86 msgid "Panel" msgstr "Panel" -#: flatcamGUI/FlatCAMGUI.py:5925 +#: flatcamGUI/FlatCAMGUI.py:5938 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -7857,11 +7895,11 @@ msgstr "" "Distancia desde los objetos a los que\n" "para dibujar el recorte." -#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:111 +#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:111 msgid "Gap size:" msgstr "Tamaño de la brecha:" -#: flatcamGUI/FlatCAMGUI.py:5934 +#: flatcamGUI/FlatCAMGUI.py:5947 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -7871,11 +7909,11 @@ msgstr "" "que permanecerá para sostener el\n" "Junta en su lugar." -#: flatcamGUI/FlatCAMGUI.py:5942 flatcamTools/ToolCutOut.py:149 +#: flatcamGUI/FlatCAMGUI.py:5955 flatcamTools/ToolCutOut.py:149 msgid "Gaps:" msgstr "Brechas:" -#: flatcamGUI/FlatCAMGUI.py:5944 +#: flatcamGUI/FlatCAMGUI.py:5957 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -7897,19 +7935,19 @@ msgstr "" "- 2tb - 2 * top + 2 * bottom\n" "- 8 - 2 * izquierda + 2 * derecha + 2 * arriba + 2 * abajo" -#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolCutOut.py:130 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolCutOut.py:130 msgid "Convex Sh.:" msgstr "Forma conv:" -#: flatcamGUI/FlatCAMGUI.py:5967 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "Create a convex shape surrounding the entire PCB." msgstr "Crea una forma convexa alrededor de todo el PCB." -#: flatcamGUI/FlatCAMGUI.py:5980 +#: flatcamGUI/FlatCAMGUI.py:5993 msgid "2Sided Tool Options" msgstr "Opc. de herra. de 2 caras" -#: flatcamGUI/FlatCAMGUI.py:5985 +#: flatcamGUI/FlatCAMGUI.py:5998 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -7917,36 +7955,32 @@ msgstr "" "Una herramienta para ayudar en la creación de una doble cara.\n" "PCB utilizando orificios de alineación." -#: flatcamGUI/FlatCAMGUI.py:5995 flatcamTools/ToolDblSided.py:234 +#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:234 msgid "Drill diam.:" msgstr "Diá. del taladro:" -#: flatcamGUI/FlatCAMGUI.py:5997 flatcamTools/ToolDblSided.py:225 +#: flatcamGUI/FlatCAMGUI.py:6010 flatcamTools/ToolDblSided.py:225 #: flatcamTools/ToolDblSided.py:236 msgid "Diameter of the drill for the alignment holes." msgstr "Diámetro del taladro para los orificios de alineación." -#: flatcamGUI/FlatCAMGUI.py:6006 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Eje del espejo:" -#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:6021 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Espejo verticalmente (X) u horizontal (Y)." -#: flatcamGUI/FlatCAMGUI.py:6017 flatcamTools/ToolDblSided.py:131 +#: flatcamGUI/FlatCAMGUI.py:6030 flatcamTools/ToolDblSided.py:131 msgid "Point" msgstr "Punto" -#: flatcamGUI/FlatCAMGUI.py:6018 flatcamTools/ToolDblSided.py:132 -msgid "Box" -msgstr "Caja" - -#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:6032 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Ref. del eje:" -#: flatcamGUI/FlatCAMGUI.py:6021 +#: flatcamGUI/FlatCAMGUI.py:6034 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -7956,11 +7990,11 @@ msgstr "" "  un cuadro especificado (en un objeto de geometría) en\n" "la mitad." -#: flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamGUI/FlatCAMGUI.py:6050 msgid "Paint Tool Options" msgstr "Opc. de herra. de pintura" -#: flatcamGUI/FlatCAMGUI.py:6044 flatcamGUI/ObjectUI.py:1311 +#: flatcamGUI/FlatCAMGUI.py:6057 flatcamGUI/ObjectUI.py:1311 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -7972,7 +8006,7 @@ msgstr "" "todo el cobre). Te harán preguntas\n" "Para hacer clic en el polígono deseado." -#: flatcamGUI/FlatCAMGUI.py:6068 +#: flatcamGUI/FlatCAMGUI.py:6081 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -7980,19 +8014,23 @@ msgstr "" "Cuánto (fracción) de la herramienta\n" "Ancho para superponer cada pasada de herramienta." -#: flatcamGUI/FlatCAMGUI.py:6122 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6135 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Selección:" -#: flatcamGUI/FlatCAMGUI.py:6124 +#: flatcamGUI/FlatCAMGUI.py:6137 msgid "How to select the polygons to paint." msgstr "Cómo seleccionar los polígonos a pintar." -#: flatcamGUI/FlatCAMGUI.py:6142 +#: flatcamGUI/FlatCAMGUI.py:6142 flatcamTools/ToolPaint.py:248 +msgid "Area" +msgstr "Zona" + +#: flatcamGUI/FlatCAMGUI.py:6155 msgid "Film Tool Options" msgstr "Opc. de herra. de película" -#: flatcamGUI/FlatCAMGUI.py:6147 +#: flatcamGUI/FlatCAMGUI.py:6160 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8002,11 +8040,11 @@ msgstr "" "Objeto FlatCAM.\n" "El archivo se guarda en formato SVG." -#: flatcamGUI/FlatCAMGUI.py:6158 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Tipo de filme:" -#: flatcamGUI/FlatCAMGUI.py:6160 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8022,11 +8060,11 @@ msgstr "" "Con blanco sobre un lienzo negro.\n" "El formato de la película es SVG." -#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6184 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Frontera:" -#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8046,11 +8084,11 @@ msgstr "" "Color blanco como el resto y que puede confundir con el\n" "Entorno si no fuera por esta frontera." -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Trazo de escala:" -#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8063,11 +8101,11 @@ msgstr "" "por lo tanto, las características finas pueden verse más afectadas por este " "parámetro." -#: flatcamGUI/FlatCAMGUI.py:6203 +#: flatcamGUI/FlatCAMGUI.py:6216 msgid "Panelize Tool Options" msgstr "Opc. de la herra. Panelizar" -#: flatcamGUI/FlatCAMGUI.py:6208 +#: flatcamGUI/FlatCAMGUI.py:6221 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8077,11 +8115,11 @@ msgstr "" "Cada elemento es una copia del objeto fuente espaciado.\n" "a una distancia X, distancia Y entre sí." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6232 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Col. de espaciado:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6234 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8089,11 +8127,11 @@ msgstr "" "Espaciado entre columnas del panel deseado.\n" "En unidades actuales." -#: flatcamGUI/FlatCAMGUI.py:6229 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6242 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Separación de filas:" -#: flatcamGUI/FlatCAMGUI.py:6231 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6244 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8101,35 +8139,35 @@ msgstr "" "Espaciado entre filas del panel deseado.\n" "En unidades actuales." -#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6252 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Columnas:" -#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6254 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Número de columnas del panel deseado." -#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6261 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Filas:" -#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6263 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Número de filas del panel deseado." -#: flatcamGUI/FlatCAMGUI.py:6256 flatcamTools/ToolPanelize.py:181 +#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:181 msgid "Gerber" msgstr "Gerber" -#: flatcamGUI/FlatCAMGUI.py:6257 flatcamTools/ToolPanelize.py:182 +#: flatcamGUI/FlatCAMGUI.py:6270 flatcamTools/ToolPanelize.py:182 msgid "Geo" msgstr "Geo" -#: flatcamGUI/FlatCAMGUI.py:6258 +#: flatcamGUI/FlatCAMGUI.py:6271 msgid "Panel Type:" msgstr "Tipo de panel:" -#: flatcamGUI/FlatCAMGUI.py:6260 +#: flatcamGUI/FlatCAMGUI.py:6273 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8139,11 +8177,11 @@ msgstr "" "- Gerber\n" "- Geometría" -#: flatcamGUI/FlatCAMGUI.py:6269 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "Constrain within:" msgstr "Restringir dentro de:" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6284 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8157,11 +8195,11 @@ msgstr "" "El panel final tendrá tantas columnas y filas como\n" "encajan completamente dentro del área seleccionada." -#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6293 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Ancho (DX):" -#: flatcamGUI/FlatCAMGUI.py:6282 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6295 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8169,11 +8207,11 @@ msgstr "" "El ancho (DX) dentro del cual debe caber el panel.\n" "En unidades actuales." -#: flatcamGUI/FlatCAMGUI.py:6289 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6302 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Altura (DY):" -#: flatcamGUI/FlatCAMGUI.py:6291 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6304 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8181,15 +8219,15 @@ msgstr "" "La altura (DY) dentro de la cual debe caber el panel.\n" "En unidades actuales." -#: flatcamGUI/FlatCAMGUI.py:6305 +#: flatcamGUI/FlatCAMGUI.py:6318 msgid "Calculators Tool Options" msgstr "Opc. de herra. de calculadoras" -#: flatcamGUI/FlatCAMGUI.py:6308 +#: flatcamGUI/FlatCAMGUI.py:6321 msgid "V-Shape Tool Calculator:" msgstr " Calc. de herramientas en forma de V: " -#: flatcamGUI/FlatCAMGUI.py:6310 +#: flatcamGUI/FlatCAMGUI.py:6323 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8200,11 +8238,11 @@ msgstr "" "teniendo el diámetro de la punta, el ángulo de la punta y\n" "Profundidad de corte como parámetros." -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:92 +#: flatcamGUI/FlatCAMGUI.py:6334 flatcamTools/ToolCalculators.py:92 msgid "Tip Diameter:" msgstr "Diá. de la punta:" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6336 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8212,11 +8250,11 @@ msgstr "" "Este es el diámetro de la punta de la herramienta.\n" "Está especificado por el fabricante." -#: flatcamGUI/FlatCAMGUI.py:6331 +#: flatcamGUI/FlatCAMGUI.py:6344 msgid "Tip angle:" msgstr "Áng. de la punta:" -#: flatcamGUI/FlatCAMGUI.py:6333 +#: flatcamGUI/FlatCAMGUI.py:6346 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8224,7 +8262,7 @@ msgstr "" "Este es el ángulo en la punta de la herramienta.\n" "Está especificado por el fabricante." -#: flatcamGUI/FlatCAMGUI.py:6343 +#: flatcamGUI/FlatCAMGUI.py:6356 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8232,11 +8270,11 @@ msgstr "" "Esta es la profundidad para cortar en material.\n" "En el objeto de trabajo CNC es el parámetro CutZ." -#: flatcamGUI/FlatCAMGUI.py:6350 +#: flatcamGUI/FlatCAMGUI.py:6363 msgid "ElectroPlating Calculator:" msgstr " Calculadora de galvanoplastia: " -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:148 +#: flatcamGUI/FlatCAMGUI.py:6365 flatcamTools/ToolCalculators.py:148 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8247,27 +8285,27 @@ msgstr "" "Utilizando un método como tinta de grahite o tinta de hipofosfito de calcio " "o cloruro de paladio." -#: flatcamGUI/FlatCAMGUI.py:6362 flatcamTools/ToolCalculators.py:157 +#: flatcamGUI/FlatCAMGUI.py:6375 flatcamTools/ToolCalculators.py:157 msgid "Board Length:" msgstr "Longitud del tablero:" -#: flatcamGUI/FlatCAMGUI.py:6364 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:161 msgid "This is the board length. In centimeters." msgstr "Esta es la longitud del tablero. En centímetros." -#: flatcamGUI/FlatCAMGUI.py:6370 flatcamTools/ToolCalculators.py:163 +#: flatcamGUI/FlatCAMGUI.py:6383 flatcamTools/ToolCalculators.py:163 msgid "Board Width:" msgstr "Ancho del tablero:" -#: flatcamGUI/FlatCAMGUI.py:6372 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6385 flatcamTools/ToolCalculators.py:167 msgid "This is the board width.In centimeters." msgstr "Este es el ancho de la tabla. En centímetros." -#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:169 +#: flatcamGUI/FlatCAMGUI.py:6390 flatcamTools/ToolCalculators.py:169 msgid "Current Density:" msgstr "Densidad actual:" -#: flatcamGUI/FlatCAMGUI.py:6380 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6393 flatcamTools/ToolCalculators.py:173 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8275,11 +8313,11 @@ msgstr "" "Densidad de corriente para pasar por el tablero.\n" "En amperios por pies cuadrados ASF." -#: flatcamGUI/FlatCAMGUI.py:6386 flatcamTools/ToolCalculators.py:176 +#: flatcamGUI/FlatCAMGUI.py:6399 flatcamTools/ToolCalculators.py:176 msgid "Copper Growth:" msgstr "Crecimiento de cobre:" -#: flatcamGUI/FlatCAMGUI.py:6389 flatcamTools/ToolCalculators.py:180 +#: flatcamGUI/FlatCAMGUI.py:6402 flatcamTools/ToolCalculators.py:180 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8287,11 +8325,11 @@ msgstr "" "Qué tan grueso pretende ser el crecimiento del cobre.\n" "En micras." -#: flatcamGUI/FlatCAMGUI.py:6402 +#: flatcamGUI/FlatCAMGUI.py:6415 msgid "Transform Tool Options" msgstr "Opc. de herra. de transformación" -#: flatcamGUI/FlatCAMGUI.py:6407 +#: flatcamGUI/FlatCAMGUI.py:6420 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8299,47 +8337,47 @@ msgstr "" "Diversas transformaciones que se pueden aplicar.\n" "en un objeto FlatCAM." -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6430 msgid "Rotate Angle:" msgstr "Gire el ángulo:" -#: flatcamGUI/FlatCAMGUI.py:6419 +#: flatcamGUI/FlatCAMGUI.py:6432 msgid "Angle for rotation. In degrees." msgstr "Ángulo de rotación. En grados." -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Skew_X angle:" msgstr "Ángulo de sesgo X:" -#: flatcamGUI/FlatCAMGUI.py:6428 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Ángulo para sesgo / cizallamiento en el eje X. En grados." -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Skew_Y angle:" msgstr "Ángulo de sesgo Y:" -#: flatcamGUI/FlatCAMGUI.py:6437 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Ángulo para sesgo / cizallamiento en el eje Y. En grados." -#: flatcamGUI/FlatCAMGUI.py:6444 +#: flatcamGUI/FlatCAMGUI.py:6457 msgid "Scale_X factor:" msgstr "Factor de escala X:" -#: flatcamGUI/FlatCAMGUI.py:6446 +#: flatcamGUI/FlatCAMGUI.py:6459 msgid "Factor for scaling on X axis." msgstr "Factor de escalado en eje X." -#: flatcamGUI/FlatCAMGUI.py:6453 +#: flatcamGUI/FlatCAMGUI.py:6466 msgid "Scale_Y factor:" msgstr "Factor de escala Y:" -#: flatcamGUI/FlatCAMGUI.py:6455 +#: flatcamGUI/FlatCAMGUI.py:6468 msgid "Factor for scaling on Y axis." msgstr "Factor de escalado en eje Y." -#: flatcamGUI/FlatCAMGUI.py:6463 +#: flatcamGUI/FlatCAMGUI.py:6476 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8347,7 +8385,7 @@ msgstr "" "Escala el (los) objeto (s) seleccionado (s)\n" "utilizando el factor de escala X para ambos ejes." -#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6484 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8359,27 +8397,27 @@ msgstr "" "y el centro del cuadro delimitador más grande.\n" "de los objetos seleccionados cuando no está marcada." -#: flatcamGUI/FlatCAMGUI.py:6480 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "Offset_X val:" msgstr "Valor X de compens.:" -#: flatcamGUI/FlatCAMGUI.py:6482 +#: flatcamGUI/FlatCAMGUI.py:6495 msgid "Distance to offset on X axis. In current units." msgstr "Distancia a desplazamiento en el eje X. En unidades actuales." -#: flatcamGUI/FlatCAMGUI.py:6489 +#: flatcamGUI/FlatCAMGUI.py:6502 msgid "Offset_Y val:" msgstr "Valor Y de compens.:" -#: flatcamGUI/FlatCAMGUI.py:6491 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Distance to offset on Y axis. In current units." msgstr "Distancia a desplazamiento en el eje Y. En unidades actuales." -#: flatcamGUI/FlatCAMGUI.py:6497 +#: flatcamGUI/FlatCAMGUI.py:6510 msgid "Mirror Reference" msgstr "Espejo de referencia" -#: flatcamGUI/FlatCAMGUI.py:6499 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -8401,11 +8439,11 @@ msgstr "" "O ingrese las coords en formato (x, y) en el\n" "Campo de entrada de puntos y haga clic en Girar en X (Y)" -#: flatcamGUI/FlatCAMGUI.py:6510 +#: flatcamGUI/FlatCAMGUI.py:6523 msgid " Mirror Ref. Point:" msgstr "Pt. de ref. del espejo:" -#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6525 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -8416,11 +8454,11 @@ msgstr "" "La 'x' en (x, y) se usará cuando se use voltear en X y\n" "la 'y' en (x, y) se usará cuando se use voltear en Y y" -#: flatcamGUI/FlatCAMGUI.py:6529 +#: flatcamGUI/FlatCAMGUI.py:6542 msgid "SolderPaste Tool Options" msgstr "Opc de herram. de pasta de sold." -#: flatcamGUI/FlatCAMGUI.py:6534 +#: flatcamGUI/FlatCAMGUI.py:6547 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -8428,49 +8466,49 @@ msgstr "" "Una herramienta para crear GCode para dispensar\n" "pasta de soldadura en una PCB." -#: flatcamGUI/FlatCAMGUI.py:6545 +#: flatcamGUI/FlatCAMGUI.py:6558 msgid "Diameters of nozzle tools, separated by ','" msgstr "Diámetros de las herramientas de boquilla, separadas por ','" -#: flatcamGUI/FlatCAMGUI.py:6552 +#: flatcamGUI/FlatCAMGUI.py:6565 msgid "New Nozzle Dia:" msgstr "Nuevo diá de boquilla:" -#: flatcamGUI/FlatCAMGUI.py:6554 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" "Diámetro para la nueva herramienta de boquillas para agregar en la tabla de " "herramientas" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6575 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Inicio de dispen. Z:" -#: flatcamGUI/FlatCAMGUI.py:6564 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "La altura (Z) cuando comienza la dispensación de pasta de soldadura." -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6584 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Dispensación Z:" -#: flatcamGUI/FlatCAMGUI.py:6573 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "La altura (Z) al dispensar pasta de soldadura." -#: flatcamGUI/FlatCAMGUI.py:6580 flatcamTools/ToolSolderPaste.py:182 +#: flatcamGUI/FlatCAMGUI.py:6593 flatcamTools/ToolSolderPaste.py:182 msgid "Z Dispense Stop:" msgstr "Parada de dispen. Z:" -#: flatcamGUI/FlatCAMGUI.py:6582 flatcamTools/ToolSolderPaste.py:184 +#: flatcamGUI/FlatCAMGUI.py:6595 flatcamTools/ToolSolderPaste.py:184 msgid "The height (Z) when solder paste dispensing stops." msgstr "La altura (Z) cuando se detiene la dispensación de pasta de soldadura." -#: flatcamGUI/FlatCAMGUI.py:6589 flatcamTools/ToolSolderPaste.py:190 +#: flatcamGUI/FlatCAMGUI.py:6602 flatcamTools/ToolSolderPaste.py:190 msgid "Z Travel:" msgstr "Viajar Z:" -#: flatcamGUI/FlatCAMGUI.py:6591 flatcamTools/ToolSolderPaste.py:192 +#: flatcamGUI/FlatCAMGUI.py:6604 flatcamTools/ToolSolderPaste.py:192 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -8478,19 +8516,19 @@ msgstr "" "La altura (Z) para viajar entre almohadillas\n" "(sin dispensar pasta de soldadura)." -#: flatcamGUI/FlatCAMGUI.py:6599 flatcamTools/ToolSolderPaste.py:199 +#: flatcamGUI/FlatCAMGUI.py:6612 flatcamTools/ToolSolderPaste.py:199 msgid "Z Toolchange:" msgstr "Cambio de herra. Z:" -#: flatcamGUI/FlatCAMGUI.py:6601 flatcamTools/ToolSolderPaste.py:201 +#: flatcamGUI/FlatCAMGUI.py:6614 flatcamTools/ToolSolderPaste.py:201 msgid "The height (Z) for tool (nozzle) change." msgstr "La altura (Z) para el cambio de herramienta (boquilla)." -#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:207 +#: flatcamGUI/FlatCAMGUI.py:6621 flatcamTools/ToolSolderPaste.py:207 msgid "XY Toolchange:" msgstr "Cambio de herra. XY:" -#: flatcamGUI/FlatCAMGUI.py:6610 flatcamTools/ToolSolderPaste.py:209 +#: flatcamGUI/FlatCAMGUI.py:6623 flatcamTools/ToolSolderPaste.py:209 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -8498,19 +8536,19 @@ msgstr "" "La ubicación X, Y para el cambio de herramienta (boquilla).\n" "El formato es (x, y) donde x e y son números reales." -#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:216 +#: flatcamGUI/FlatCAMGUI.py:6631 flatcamTools/ToolSolderPaste.py:216 msgid "Feedrate X-Y:" msgstr "Avance X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6620 flatcamTools/ToolSolderPaste.py:218 +#: flatcamGUI/FlatCAMGUI.py:6633 flatcamTools/ToolSolderPaste.py:218 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Avance (velocidad) mientras se mueve en el plano X-Y." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:224 +#: flatcamGUI/FlatCAMGUI.py:6640 flatcamTools/ToolSolderPaste.py:224 msgid "Feedrate Z:" msgstr "Avance Z:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:226 +#: flatcamGUI/FlatCAMGUI.py:6642 flatcamTools/ToolSolderPaste.py:226 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." @@ -8518,11 +8556,11 @@ msgstr "" "Avance (velocidad) mientras se mueve verticalmente\n" "(en el plano Z)." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:233 +#: flatcamGUI/FlatCAMGUI.py:6650 flatcamTools/ToolSolderPaste.py:233 msgid "Feedrate Z Dispense:" msgstr "Avance de Dispens. Z:" -#: flatcamGUI/FlatCAMGUI.py:6639 +#: flatcamGUI/FlatCAMGUI.py:6652 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -8530,11 +8568,11 @@ msgstr "" "Avance (velocidad) mientras se mueve verticalmente\n" "para dispensar la posición (en el plano Z)." -#: flatcamGUI/FlatCAMGUI.py:6647 flatcamTools/ToolSolderPaste.py:242 +#: flatcamGUI/FlatCAMGUI.py:6660 flatcamTools/ToolSolderPaste.py:242 msgid "Spindle Speed FWD:" msgstr "Veloc. del husillo FWD:" -#: flatcamGUI/FlatCAMGUI.py:6649 flatcamTools/ToolSolderPaste.py:244 +#: flatcamGUI/FlatCAMGUI.py:6662 flatcamTools/ToolSolderPaste.py:244 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -8542,19 +8580,19 @@ msgstr "" "La velocidad del dispensador mientras empuja la pasta de soldadura\n" "a través de la boquilla dispensadora." -#: flatcamGUI/FlatCAMGUI.py:6657 flatcamTools/ToolSolderPaste.py:251 +#: flatcamGUI/FlatCAMGUI.py:6670 flatcamTools/ToolSolderPaste.py:251 msgid "Dwell FWD:" msgstr "Morar FWD:" -#: flatcamGUI/FlatCAMGUI.py:6659 flatcamTools/ToolSolderPaste.py:253 +#: flatcamGUI/FlatCAMGUI.py:6672 flatcamTools/ToolSolderPaste.py:253 msgid "Pause after solder dispensing." msgstr "Pausa después de la dispensación de soldadura." -#: flatcamGUI/FlatCAMGUI.py:6666 flatcamTools/ToolSolderPaste.py:259 +#: flatcamGUI/FlatCAMGUI.py:6679 flatcamTools/ToolSolderPaste.py:259 msgid "Spindle Speed REV:" msgstr "Veloc. del husillo REV:" -#: flatcamGUI/FlatCAMGUI.py:6668 flatcamTools/ToolSolderPaste.py:261 +#: flatcamGUI/FlatCAMGUI.py:6681 flatcamTools/ToolSolderPaste.py:261 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -8562,11 +8600,11 @@ msgstr "" "La velocidad del dispensador mientras se retrae la pasta de soldadura\n" "a través de la boquilla dispensadora." -#: flatcamGUI/FlatCAMGUI.py:6676 flatcamTools/ToolSolderPaste.py:268 +#: flatcamGUI/FlatCAMGUI.py:6689 flatcamTools/ToolSolderPaste.py:268 msgid "Dwell REV:" msgstr "Morar REV:" -#: flatcamGUI/FlatCAMGUI.py:6678 flatcamTools/ToolSolderPaste.py:270 +#: flatcamGUI/FlatCAMGUI.py:6691 flatcamTools/ToolSolderPaste.py:270 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -8574,23 +8612,23 @@ msgstr "" "Pausa después de que el dispensador de pasta de soldadura se retraiga,\n" "para permitir el equilibrio de presión." -#: flatcamGUI/FlatCAMGUI.py:6685 flatcamTools/ToolSolderPaste.py:276 +#: flatcamGUI/FlatCAMGUI.py:6698 flatcamTools/ToolSolderPaste.py:276 msgid "PostProcessors:" msgstr "Postprocesadores:" -#: flatcamGUI/FlatCAMGUI.py:6687 flatcamTools/ToolSolderPaste.py:278 +#: flatcamGUI/FlatCAMGUI.py:6700 flatcamTools/ToolSolderPaste.py:278 msgid "Files that control the GCode generation." msgstr "Archivos que controlan la generación de GCode." -#: flatcamGUI/FlatCAMGUI.py:6717 flatcamGUI/FlatCAMGUI.py:6723 +#: flatcamGUI/FlatCAMGUI.py:6730 flatcamGUI/FlatCAMGUI.py:6736 msgid "Idle." msgstr "Ocioso." -#: flatcamGUI/FlatCAMGUI.py:6747 +#: flatcamGUI/FlatCAMGUI.py:6760 msgid "Application started ..." msgstr "Aplicacion iniciada ..." -#: flatcamGUI/FlatCAMGUI.py:6748 +#: flatcamGUI/FlatCAMGUI.py:6761 msgid "Hello!" msgstr "¡Hola!" @@ -8795,7 +8833,7 @@ msgstr "" msgid "Clear N-copper:" msgstr "N-cobre claro:" -#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:240 +#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:285 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -9872,7 +9910,9 @@ msgstr "" "El objeto Geometry utilizado como geometría de recorte." #: flatcamTools/ToolCutOut.py:358 flatcamTools/ToolCutOut.py:552 -#: flatcamTools/ToolNonCopperClear.py:669 flatcamTools/ToolPaint.py:768 +#: flatcamTools/ToolNonCopperClear.py:743 +#: flatcamTools/ToolNonCopperClear.py:751 +#: flatcamTools/ToolNonCopperClear.py:759 flatcamTools/ToolPaint.py:774 #: flatcamTools/ToolPanelize.py:353 flatcamTools/ToolPanelize.py:368 #: flatcamTools/ToolSub.py:239 flatcamTools/ToolSub.py:252 #: flatcamTools/ToolSub.py:432 flatcamTools/ToolSub.py:445 @@ -9943,7 +9983,7 @@ msgstr "" msgid "[success] Any form CutOut operation finished." msgstr "[success] Cualquier forma de operación de corte finalizada." -#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:772 +#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:778 #: flatcamTools/ToolPanelize.py:359 #, python-format msgid "[ERROR_NOTCL] Object not found: %s" @@ -10089,15 +10129,15 @@ msgstr "" "y haga clic con el botón izquierdo del mouse en el lienzo o puede ingresar " "las coordenadas manualmente." -#: flatcamTools/ToolDblSided.py:182 +#: flatcamTools/ToolDblSided.py:182 flatcamTools/ToolNonCopperClear.py:260 msgid "Gerber Reference Box Object" msgstr "Obj. de cuadro de ref. de Gerber" -#: flatcamTools/ToolDblSided.py:183 +#: flatcamTools/ToolDblSided.py:183 flatcamTools/ToolNonCopperClear.py:261 msgid "Excellon Reference Box Object" msgstr "Obj. de cuadro de ref. de Excellon" -#: flatcamTools/ToolDblSided.py:184 +#: flatcamTools/ToolDblSided.py:184 flatcamTools/ToolNonCopperClear.py:262 msgid "Geometry Reference Box Object" msgstr "Obj. de cuadro de ref. de Geometría" @@ -10729,32 +10769,67 @@ msgstr "" "no más cobre para limpiar o no hay más herramientas.\n" "Si no está marcado, use el algoritmo estándar." -#: flatcamTools/ToolNonCopperClear.py:238 +#: flatcamTools/ToolNonCopperClear.py:243 +msgid "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." +msgstr "" +"- 'Sí mismo': la extensión de limpieza sin cobre\n" +"se basa en el objeto que es cobre despejado.\n" +"- 'Caja': limpiará sin cobre dentro de la caja\n" +"especificado por el objeto seleccionado en la Ref. Cuadro combinado de " +"objetos." + +#: flatcamTools/ToolNonCopperClear.py:254 +msgid "Ref. Type:" +msgstr "Tipo de ref.:" + +#: flatcamTools/ToolNonCopperClear.py:256 +msgid "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." +msgstr "" +"El tipo de objeto FlatCAM que se utilizará como referencia de compensación " +"sin cobre.\n" +"Puede ser Gerber, Excellon o Geometry." + +#: flatcamTools/ToolNonCopperClear.py:267 +msgid "Ref. Object:" +msgstr "Objeto de ref.:" + +#: flatcamTools/ToolNonCopperClear.py:269 +msgid "The FlatCAM object to be used as non copper clearing reference." +msgstr "" +"El objeto FlatCAM que se utilizará como referencia de compensación sin cobre." + +#: flatcamTools/ToolNonCopperClear.py:283 msgid "Generate Geometry" msgstr "Generar Geometría" -#: flatcamTools/ToolNonCopperClear.py:486 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolNonCopperClear.py:559 flatcamTools/ToolPaint.py:549 #: flatcamTools/ToolSolderPaste.py:763 msgid "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." msgstr "" "[WARNING_NOTCL] Ingrese un diámetro de herramienta para agregar, en formato " "decimal." -#: flatcamTools/ToolNonCopperClear.py:515 flatcamTools/ToolPaint.py:567 +#: flatcamTools/ToolNonCopperClear.py:588 flatcamTools/ToolPaint.py:573 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "" "[WARNING_NOTCL] Agregando herramienta cancelada. Herramienta ya en la tabla " "de herramientas." -#: flatcamTools/ToolNonCopperClear.py:520 flatcamTools/ToolPaint.py:572 +#: flatcamTools/ToolNonCopperClear.py:593 flatcamTools/ToolPaint.py:578 msgid "[success] New tool added to Tool Table." msgstr "[success] Nueva herramienta agregada a la Tabla de herramientas." -#: flatcamTools/ToolNonCopperClear.py:562 flatcamTools/ToolPaint.py:617 +#: flatcamTools/ToolNonCopperClear.py:635 flatcamTools/ToolPaint.py:623 msgid "[success] Tool from Tool Table was edited." msgstr "[success] Se editó la herramienta de la tabla de herramientas." -#: flatcamTools/ToolNonCopperClear.py:573 flatcamTools/ToolPaint.py:628 +#: flatcamTools/ToolNonCopperClear.py:646 flatcamTools/ToolPaint.py:634 #: flatcamTools/ToolSolderPaste.py:850 msgid "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " @@ -10763,47 +10838,54 @@ msgstr "" "[WARNING_NOTCL] Editar cancelado El nuevo valor del diámetro ya está en la " "Tabla de herramientas." -#: flatcamTools/ToolNonCopperClear.py:613 flatcamTools/ToolPaint.py:727 +#: flatcamTools/ToolNonCopperClear.py:686 flatcamTools/ToolPaint.py:733 msgid "[WARNING_NOTCL] Delete failed. Select a tool to delete." msgstr "" "[WARNING_NOTCL] Eliminar falló. Seleccione una herramienta para eliminar." -#: flatcamTools/ToolNonCopperClear.py:618 flatcamTools/ToolPaint.py:732 +#: flatcamTools/ToolNonCopperClear.py:691 flatcamTools/ToolPaint.py:738 msgid "[success] Tool(s) deleted from Tool Table." msgstr "[success] Herramienta (s) eliminada de la tabla de herramientas." -#: flatcamTools/ToolNonCopperClear.py:636 flatcamTools/ToolPaint.py:751 +#: flatcamTools/ToolNonCopperClear.py:709 flatcamTools/ToolPaint.py:757 msgid "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " msgstr "" "[ERROR_NOTCL] El valor de superposición debe estar entre 0 (inclusive) y 1 " "(exclusivo)," -#: flatcamTools/ToolNonCopperClear.py:677 -msgid "[ERROR_NOTCL] No Gerber file available." -msgstr "[ERROR_NOTCL] No hay archivos Gerber disponibles." +#: flatcamTools/ToolNonCopperClear.py:772 +msgid "[ERROR_NOTCL] No object available." +msgstr "[ERROR_NOTCL] No hay objeto disponible." -#: flatcamTools/ToolNonCopperClear.py:715 -#: flatcamTools/ToolNonCopperClear.py:837 +#: flatcamTools/ToolNonCopperClear.py:781 +msgid "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." +msgstr "" +"[ERROR_NOTCL] No se pudo obtener la extensión del área que no fue limpiada " +"con cobre." + +#: flatcamTools/ToolNonCopperClear.py:814 +#: flatcamTools/ToolNonCopperClear.py:936 msgid "Clearing Non-Copper areas." msgstr "Despeje de áreas no cobre." -#: flatcamTools/ToolNonCopperClear.py:733 +#: flatcamTools/ToolNonCopperClear.py:832 #, python-format msgid "[success] Non-Copper Clearing with ToolDia = %s started." msgstr "" "[success] Compensación sin cobre con el diá. de la herramienta = %s iniciado." -#: flatcamTools/ToolNonCopperClear.py:802 +#: flatcamTools/ToolNonCopperClear.py:901 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" -#: flatcamTools/ToolNonCopperClear.py:807 +#: flatcamTools/ToolNonCopperClear.py:906 msgid "[success] NCC Tool finished." msgstr "[success] Herramienta NCC terminada." -#: flatcamTools/ToolNonCopperClear.py:809 +#: flatcamTools/ToolNonCopperClear.py:908 msgid "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." @@ -10811,19 +10893,19 @@ msgstr "" "[WARNING_NOTCL] La herra. NCC finalizó pero algunas características de la " "PCB no se pudieron borrar. Comprueba el resultado." -#: flatcamTools/ToolNonCopperClear.py:855 +#: flatcamTools/ToolNonCopperClear.py:954 #, python-format msgid "[success] Non-Copper Rest Clearing with ToolDia = %s started." msgstr "" "[success] Limpieza de reposo sin cobre con el diámetro de la herramienta = " "%s iniciado." -#: flatcamTools/ToolNonCopperClear.py:953 +#: flatcamTools/ToolNonCopperClear.py:1052 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" -#: flatcamTools/ToolNonCopperClear.py:961 +#: flatcamTools/ToolNonCopperClear.py:1060 msgid "" "[ERROR_NOTCL] NCC Tool finished but could not clear the object with current " "settings." @@ -10948,35 +11030,48 @@ msgstr "" "la Pintura comenzará después de hacer clic.
Se creará un nuevo objeto de " "Geometría con la herramienta
rutas." -#: flatcamTools/ToolPaint.py:736 +#: flatcamTools/ToolPaint.py:742 msgid "geometry_on_paint_button" msgstr "geometry_on_paint_button" -#: flatcamTools/ToolPaint.py:755 flatcamTools/ToolPaint.py:791 +#: flatcamTools/ToolPaint.py:761 flatcamTools/ToolPaint.py:797 msgid "[WARNING_NOTCL] Click inside the desired polygon." msgstr "[WARNING_NOTCL] Haga clic dentro del polígono deseado." -#: flatcamTools/ToolPaint.py:778 +#: flatcamTools/ToolPaint.py:784 msgid "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." msgstr "[ERROR_NOTCL] No se puede Pintar en geometrías de geo-múltiple ..." -#: flatcamTools/ToolPaint.py:800 flatcamTools/ToolPaint.py:1004 +#: flatcamTools/ToolPaint.py:806 flatcamTools/ToolPaint.py:1083 +#: flatcamTools/ToolPaint.py:1383 msgid "Painting polygon..." msgstr "Pintar polígono ..." -#: flatcamTools/ToolPaint.py:853 +#: flatcamTools/ToolPaint.py:825 +msgid "[WARNING_NOTCL] Click the start point of the paint area." +msgstr "[WARNING_NOTCL] Haga clic en el punto de inicio del área de pintura." + +#: flatcamTools/ToolPaint.py:836 +msgid "[WARNING_NOTCL] Click the end point of the paint area." +msgstr "[WARNING_NOTCL] Haga clic en el punto final del área de pintura." + +#: flatcamTools/ToolPaint.py:842 +msgid "Done." +msgstr "Hecho." + +#: flatcamTools/ToolPaint.py:932 msgid "[WARNING] No polygon found." msgstr "[WARNING] No se encontró polígono." -#: flatcamTools/ToolPaint.py:856 +#: flatcamTools/ToolPaint.py:935 msgid "Painting polygon." msgstr "Pintura poligonal." -#: flatcamTools/ToolPaint.py:898 +#: flatcamTools/ToolPaint.py:977 msgid "[ERROR_NOTCL] Geometry could not be painted completely" msgstr "[ERROR_NOTCL] La Geometría no se pudo pintar completamente" -#: flatcamTools/ToolPaint.py:924 +#: flatcamTools/ToolPaint.py:1003 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -10987,16 +11082,18 @@ msgstr "" "parámetros. O una estrategia diferente de pintura\n" "%s" -#: flatcamTools/ToolPaint.py:966 +#: flatcamTools/ToolPaint.py:1045 #, python-format msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:972 flatcamTools/ToolPaint.py:1271 +#: flatcamTools/ToolPaint.py:1051 flatcamTools/ToolPaint.py:1350 +#: flatcamTools/ToolPaint.py:1641 msgid "Polygon Paint started ..." msgstr "Polygon Pinta comenzó ..." -#: flatcamTools/ToolPaint.py:1125 flatcamTools/ToolPaint.py:1216 +#: flatcamTools/ToolPaint.py:1204 flatcamTools/ToolPaint.py:1295 +#: flatcamTools/ToolPaint.py:1495 flatcamTools/ToolPaint.py:1586 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11007,7 +11104,7 @@ msgstr "" "parámetros. O un método diferente de pintura\n" "%s" -#: flatcamTools/ToolPaint.py:1149 +#: flatcamTools/ToolPaint.py:1228 flatcamTools/ToolPaint.py:1519 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11019,11 +11116,11 @@ msgstr "" "grande para la geometría pintada.\n" "Cambie los parámetros de pintura e intente nuevamente." -#: flatcamTools/ToolPaint.py:1158 +#: flatcamTools/ToolPaint.py:1237 flatcamTools/ToolPaint.py:1528 msgid "[success] Paint All Done." msgstr "[success] Pintar Todo listo." -#: flatcamTools/ToolPaint.py:1246 +#: flatcamTools/ToolPaint.py:1325 flatcamTools/ToolPaint.py:1616 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11035,7 +11132,7 @@ msgstr "" "grande para la geometría pintada.\n" "Cambie los parámetros de pintura e intente nuevamente." -#: flatcamTools/ToolPaint.py:1255 +#: flatcamTools/ToolPaint.py:1334 flatcamTools/ToolPaint.py:1625 msgid "[success] Paint All with Rest-Machining done." msgstr "[success] Pinte Todo con el mecanizado de descanso hecho." @@ -11694,7 +11791,7 @@ msgstr "[ERROR] ToolSolderPaste.on_view_gcode() -->%s" msgid "Export GCode ..." msgstr "Exportar GCode ..." -#: flatcamTools/ToolSolderPaste.py:1403 +#: flatcamTools/ToolSolderPaste.py:1407 #, python-format msgid "[success] Solder paste dispenser GCode file saved to: %s" msgstr "" diff --git a/locale/pt_BR/LC_MESSAGES/strings.mo b/locale/pt_BR/LC_MESSAGES/strings.mo index 6bd9a8b193b304f23650b7acdafdbdf05bbb04e7..5890bcacc8691b685b871d21b2e054ba686aae21 100644 GIT binary patch delta 43422 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≤V7EVO@@@MkQmuOXRegx{??OGs#kX?aKke8>Ic`bxMEmAl!- zQjk%ThrGfB*oit>sn5U1|WWy44@;Bt~ayci+YlnA;`;otr za6i(PbAP6t{I-qcgtZNvIwaKP?m;*um3~~Q3B;k{K|j6i4LUf)cJ37o_O^KmNY75) zQnv9C#9L8+JY|wn{ub%!h~MB|MV&^(FX(H?YXZx-Ln)M-!f}6k*iZ`pxYCiXU!v}% z;mnjj!p*PDodDAF;#MqbJAaS1)=)MNWpte(uPL{#oRry38%wy`=*N%&Bpe_!zpcER zP9)&&Naf15(qA-KoV3F<5QFrM+)2o*MZAwKQ;Yl`S1LxWACZ|hFFW;hm80I@HckJx z2JyV{H+fDft9VIgzS>H|sPyx-m-P1ZzA5(Pp<~Hki&v?mUpeZUZ#%<324LGsrcg>NjRKB+wmI>2XGhX;U6dvNchL~iN=cQA>4mb zHahnv!ny5Bq$GTS!iPwAY`vH~s~qvt)Ez`}Ykm#x6sKS`D%Jd{aXsX`jdvxSo(ctR z!^epKM+X;j=cR59(z7Ce!_-MeS_|?kllCw5$MC?_#DBh`{rsFC^Iw{ZfAEmh_?prg zsQ8(l&Z5!bSb@Cgq+cOF4r%|A7Kw*cBJDH{CMMp_KIIp}x~kAd1ru~$Q-6_7?@t>= zxdVy2{U|h#2KC$iOtxoLhzF9sk4m~y;wkP+R4PKeqAj-&Cs9_{5`*`D*43J{%``rj zI{hd!k$Sos;Bw;A$Ui~2u+E=wGMe)yDY>su;SBeW>$3v3*9y)gFF6%c(@1{ed+ozl z68>Q8jUg{KasI5uyVCI@y7<>Doo0BD`j5#gNZeoh|A?2(kDgRK${ou#^cw{R5bliy zsqlupAJ=>u>CAnPymNFSI_2IGUrhLK(mHeBw;hOq9k@ftZ^8ZZwc*DvS3cN`?o{l_ zgVIvrKT0ko-h#%rbN|jg&XzkwnXk5`h&=Q-cPmEl4rNwzUnl<#X}T&CFUkEoX*B2j z$^UFrfXiEdk8DBx)sgcgrX}8vu&&G4(&j6^mk#XU{)Gk;;$ZS_;U)XF*$8)`@!iBD zQ@%CjW>TiADs%NF{+2S8=q#7({Trr}No-5PItp$ibqAII7~;bIQyhJ|92ZGVv+%WWQ-!blDj$& z)^*9?ETqwOguj#iI}LTG{0_q7sWXtUt~%Uts9V?8T|-_P?tYa2w0~RwH*gzh=%98B7E9(vi9 zi9mXLTYD#AUBht%_ejFWsdJd{6YAU}{x9mP$KBM9gyL;U&!ru}^S$d16*Ev#S64Dq z+n!#uX%$IpW*ewx^B&m7&l4|WJ9w4)4|$0iKfSfund$MX|5jyhZ9L_ z8z@TrrgFLR5N`5QLvg8GgY+FdxTNivSCIetNMo7Io^}GPwWxcBye72$m^vS+lgvJ+ zGHq3i#QV1-u$+uPxUZ`K@tpRd{}9hayetjQr=j;WlHWEEkG#614J2(m;q8?BaowcM zdeX0QH>a&csH+>{{gmrZIFHv!#yDKM8fVVDm06{DLYysj}Tx%YfCWn%8!#D&cfC ze4Vm8iKpkjMO$5|pPpCQ$0KG_?>za{%`=>Sl!;8edgLD=tSg9nHFc(F4V)(9I2GP; z>zYHMk2G@DcEqIq|NpJSLq1TZ6b%fqWgZYNO?n*KiecLcx2k3w@&d^l%l(M-djHE~ z4W1ky9tYCMIv&!MirHyIR|4`k5$?&I*fw~9v>(@Rq`jqn z>YrYuIPqjWqZM^}kshW$kt< z+I)up=sQph``|$&zN3-a^fo)0{@k&+Q&9Qm>lXPbD66X$`GpB*;h{-vxmj3}^vtwd z4+oMTW}l%tyNIu({6X?gdE-xFbrR0d@KtVItBGf%V17(P+Aa$JxHc0Q$3qH`KiVcf zAgt>J7PSvMM&0tHU8HVFUTgq{kl&8{P1H|CzW4m*WK6LSRwE<0$0)!RokF_q<95m% zwZlA{hPsp97}Ih8YCD*owDvUq8)auw_Br=F@}qLkqm796IT=kS&HJ|}GK-4aD7*?2 za^IwIUG7(;4dHG^qqQj4iU!t@zMM2&Nl70?_y8TKLw*nYfaa9>ag`-dpY&|pr|5{T ze=w$g25O>)sC=J>K45>_aCYKR$ZAAGgRzcn@EDC8C9e!+uW)ZCZ>+6Th(>D@U(Btm zB^|m>S~==e;QmA#vA8c1uFgH!<$s!xkdKBY+eX$>Avq7w^}yh4Ax&3$%48$YNBQ>D zyF*%5(xPzxYU@WMzYzIdxVzbU&k5_w#$Dfr7gOIG|EUD_(~&(Cu1=4CT%n}*AzfEB z8hvNOCWW)X#^c+BP1N6E(>mgG;{VteX-kLidt3nZ)v)!PMi07&c)&~gtT zEeMno1e%uzb(A&Gd_PzpI20(j1}F&v1wa>?0Tp)x*$q$w{{s~-g=&N<1FHoQbAaM! zfEdYR4CjFQc0=|42I@ryr+{j6Kn?^N0dxK z^MUF$fSMYB{3f8Fg3}wcnOL_+YBPQ3-ri}>RL#Wgo?4WY zTBMMcnUgxb(~3!EIw@>tDa^u?W9>%0@%3)xpU}#`vVm!U9 zn@It|o7c_sc6)CR(`o+gnsb>Bw{8EV%zVIf`>sglG(DEkyv(BM`#TvWw>xw&^C)dE zU&U;%z5Vx9=3`RZ%|0@JFyF4K#bP2deZMh_@bojTEZox, YEAR. # msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-08-06 10:43+0300\n" -"PO-Revision-Date: 2019-08-06 10:43+0300\n" +"POT-Creation-Date: 2019-08-10 18:27+0300\n" +"PO-Revision-Date: 2019-08-10 18:32+0300\n" "Last-Translator: Carlos Stein \n" "Language-Team: \n" "Language: pt_BR\n" @@ -20,13 +19,13 @@ msgstr "" "X-Poedit-SearchPathExcluded-1: doc\n" "X-Poedit-SearchPathExcluded-2: tests\n" -#: FlatCAMApp.py:940 +#: FlatCAMApp.py:942 msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" "[ERROR] Não foi possível encontrar os arquivos de idioma. Estão faltando as " "strings do aplicativo." -#: FlatCAMApp.py:1854 +#: FlatCAMApp.py:1856 msgid "" "(Type help to get started)\n" "\n" @@ -34,26 +33,26 @@ msgstr "" "(Digite help para iniciar)\n" "\n" -#: FlatCAMApp.py:2042 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:2044 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 #: flatcamTools/ToolPcbWizard.py:296 flatcamTools/ToolPcbWizard.py:319 msgid "Open cancelled." msgstr "Abrir cancelado." -#: FlatCAMApp.py:2056 +#: FlatCAMApp.py:2058 msgid "Open Config file failed." msgstr "Falha em abrir o arquivo de Configuração." -#: FlatCAMApp.py:2070 +#: FlatCAMApp.py:2072 msgid "Open Script file failed." msgstr "Falha em abrir o arquivo de Script." -#: FlatCAMApp.py:2276 +#: FlatCAMApp.py:2278 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Selecione um Objeto Geometria, Gerber ou Excellon para " "editar." -#: FlatCAMApp.py:2286 +#: FlatCAMApp.py:2288 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -63,106 +62,117 @@ msgstr "" "Geometria MultiGeo não é possível. \n" "Editar apenas uma geometria por vez." -#: FlatCAMApp.py:2341 +#: FlatCAMApp.py:2343 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editor está ativado ..." -#: FlatCAMApp.py:2359 +#: FlatCAMApp.py:2361 msgid "Do you want to save the edited object?" msgstr "Você quer salvar o objeto editado?" -#: FlatCAMApp.py:2360 flatcamGUI/FlatCAMGUI.py:1632 +#: FlatCAMApp.py:2362 flatcamGUI/FlatCAMGUI.py:1632 msgid "Close Editor" msgstr "Fechar Editor" -#: FlatCAMApp.py:2363 FlatCAMApp.py:3474 FlatCAMApp.py:5306 FlatCAMApp.py:6179 +#: FlatCAMApp.py:2365 FlatCAMApp.py:3481 FlatCAMApp.py:5316 FlatCAMApp.py:6194 #: FlatCAMTranslation.py:96 FlatCAMTranslation.py:169 #: flatcamGUI/FlatCAMGUI.py:3756 msgid "Yes" msgstr "Sim" -#: FlatCAMApp.py:2364 FlatCAMApp.py:3475 FlatCAMApp.py:5307 FlatCAMApp.py:6180 +#: FlatCAMApp.py:2366 FlatCAMApp.py:3482 FlatCAMApp.py:5317 FlatCAMApp.py:6195 #: FlatCAMTranslation.py:97 FlatCAMTranslation.py:170 #: flatcamGUI/FlatCAMGUI.py:3757 msgid "No" msgstr "Não" -#: FlatCAMApp.py:2365 FlatCAMApp.py:3476 FlatCAMApp.py:3907 FlatCAMApp.py:6181 +#: FlatCAMApp.py:2367 FlatCAMApp.py:3483 FlatCAMApp.py:3914 FlatCAMApp.py:6196 msgid "Cancel" msgstr "Cancelar" -#: FlatCAMApp.py:2392 +#: FlatCAMApp.py:2394 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Objeto vazio após a edição." -#: FlatCAMApp.py:2414 FlatCAMApp.py:2433 FlatCAMApp.py:2445 +#: FlatCAMApp.py:2416 FlatCAMApp.py:2435 FlatCAMApp.py:2447 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Selecione um objeto Gerber, Geometria ou Excellon para " "atualizar." -#: FlatCAMApp.py:2417 +#: FlatCAMApp.py:2419 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s está atualizado, retornando ao App ..." -#: FlatCAMApp.py:2782 +#: FlatCAMApp.py:2784 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Não foi possível carregar o arquivo padrão." -#: FlatCAMApp.py:2794 +#: FlatCAMApp.py:2796 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Falha ao analisar o arquivo de padrões." -#: FlatCAMApp.py:2815 FlatCAMApp.py:2819 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2821 msgid "Import FlatCAM Preferences" msgstr "Importar Preferências do FlatCAM" -#: FlatCAMApp.py:2825 +#: FlatCAMApp.py:2827 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Importação de preferências do FlatCAM cancelada." -#: FlatCAMApp.py:2833 FlatCAMApp.py:2887 FlatCAMApp.py:3353 +#: FlatCAMApp.py:2835 FlatCAMApp.py:2894 FlatCAMApp.py:3360 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Não foi possível carregar o arquivo de padrões." -#: FlatCAMApp.py:2841 FlatCAMApp.py:3362 +#: FlatCAMApp.py:2843 FlatCAMApp.py:3369 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Falha ao analisar o arquivo de padrões." -#: FlatCAMApp.py:2844 +#: FlatCAMApp.py:2847 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Padrões importados de %s" -#: FlatCAMApp.py:2859 FlatCAMApp.py:2864 +#: FlatCAMApp.py:2862 FlatCAMApp.py:2867 msgid "Export FlatCAM Preferences" msgstr "Exportar preferências do FlatCAM" -#: FlatCAMApp.py:2871 +#: FlatCAMApp.py:2874 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Exportação de preferências do FlatCAM cancelada." -#: FlatCAMApp.py:2906 FlatCAMApp.py:3407 +#: FlatCAMApp.py:2882 FlatCAMApp.py:4683 FlatCAMApp.py:7131 FlatCAMApp.py:7241 +#: FlatCAMApp.py:7362 FlatCAMApp.py:7417 FlatCAMApp.py:7525 FlatCAMApp.py:7648 +#: FlatCAMObj.py:5812 flatcamTools/ToolSolderPaste.py:1400 +msgid "" +"[WARNING] Permission denied, saving not possible.\n" +"Most likely another app is holding the file open and not accessible." +msgstr "" +"[WARNING] Permissão negada, não é possível salvar.\n" +"O mais provável é que outro aplicativo esteja mantendo o arquivo aberto e " +"não acessível." + +#: FlatCAMApp.py:2913 FlatCAMApp.py:3414 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Falha ao gravar os padrões no arquivo." -#: FlatCAMApp.py:2966 +#: FlatCAMApp.py:2973 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" "[ERROR_NOTCL] Falha ao abrir o arquivo com arquivos recentes para gravação." -#: FlatCAMApp.py:2976 +#: FlatCAMApp.py:2983 msgid "[ERROR_NOTCL] Failed to open recent projects file for writing." msgstr "" "[ERROR_NOTCL] Falha ao abrir o arquivo com projetos recentes para gravação." -#: FlatCAMApp.py:3053 camlib.py:4469 +#: FlatCAMApp.py:3060 camlib.py:4471 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Ocorreu um erro interno. Veja shell (linha de comando). \n" -#: FlatCAMApp.py:3054 +#: FlatCAMApp.py:3061 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -171,11 +181,11 @@ msgstr "" "Objeto ({kind}) falhou porque: {error} \n" "\n" -#: FlatCAMApp.py:3074 +#: FlatCAMApp.py:3081 msgid "Converting units to " msgstr "Convertendo unidades para " -#: FlatCAMApp.py:3153 FlatCAMApp.py:3156 FlatCAMApp.py:3159 FlatCAMApp.py:3162 +#: FlatCAMApp.py:3160 FlatCAMApp.py:3163 FlatCAMApp.py:3166 FlatCAMApp.py:3169 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" "" -#: FlatCAMApp.py:3258 +#: FlatCAMApp.py:3265 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -207,37 +217,37 @@ msgstr "" "flatcam/src/Beta/\">aqui.
Área de DOWNLOAD aqui.
" -#: FlatCAMApp.py:3291 +#: FlatCAMApp.py:3298 msgid "Close" msgstr "Fechar" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5315 +#: FlatCAMApp.py:3418 FlatCAMApp.py:5325 msgid "[success] Defaults saved." msgstr "[success] Preferências salvas." -#: FlatCAMApp.py:3432 +#: FlatCAMApp.py:3439 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" "[ERROR_NOTCL] Não foi possível carregar o arquivo de padrões de fábrica." -#: FlatCAMApp.py:3441 +#: FlatCAMApp.py:3448 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Falha ao analisar o arquivo de padrões de fábrica." -#: FlatCAMApp.py:3455 +#: FlatCAMApp.py:3462 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Falha ao gravar os padrões de fábrica no arquivo." -#: FlatCAMApp.py:3459 +#: FlatCAMApp.py:3466 msgid "Factory defaults saved." msgstr "Padrões de fábrica salvos." -#: FlatCAMApp.py:3464 flatcamGUI/FlatCAMGUI.py:3132 +#: FlatCAMApp.py:3471 flatcamGUI/FlatCAMGUI.py:3132 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "" "[WARNING_NOTCL] O aplicativo está salvando o projeto. Por favor, espere ..." -#: FlatCAMApp.py:3469 FlatCAMTranslation.py:164 +#: FlatCAMApp.py:3476 FlatCAMTranslation.py:164 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -245,11 +255,11 @@ msgstr "" "Existem arquivos/objetos modificados no FlatCAM. \n" "Você quer salvar o projeto?" -#: FlatCAMApp.py:3472 FlatCAMApp.py:6177 FlatCAMTranslation.py:167 +#: FlatCAMApp.py:3479 FlatCAMApp.py:6192 FlatCAMTranslation.py:167 msgid "Save changes" msgstr "Salvar alterações" -#: FlatCAMApp.py:3539 +#: FlatCAMApp.py:3546 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -265,43 +275,43 @@ msgstr "" "ser perdidas e o resultado pode não ser o esperado. \n" "Verifique o G-CODE gerado." -#: FlatCAMApp.py:3580 +#: FlatCAMApp.py:3587 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Falha. A união de Excellon funciona apenas em objetos Excellon." -#: FlatCAMApp.py:3602 +#: FlatCAMApp.py:3609 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Falha. A união de Gerber funciona apenas em objetos Gerber." -#: FlatCAMApp.py:3617 FlatCAMApp.py:3642 +#: FlatCAMApp.py:3624 FlatCAMApp.py:3649 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Falha. Selecione um Objeto de Geometria e tente novamente." -#: FlatCAMApp.py:3621 FlatCAMApp.py:3646 +#: FlatCAMApp.py:3628 FlatCAMApp.py:3653 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Geometria FlatCAM esperada, recebido %s" -#: FlatCAMApp.py:3634 +#: FlatCAMApp.py:3641 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Um objeto Geometria foi convertido para o tipo MultiGeo." -#: FlatCAMApp.py:3660 +#: FlatCAMApp.py:3667 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Um objeto Geometria foi convertido para o tipo SingleGeo." -#: FlatCAMApp.py:3901 +#: FlatCAMApp.py:3908 msgid "Toggle Units" msgstr "Alternar Unidades" -#: FlatCAMApp.py:3903 +#: FlatCAMApp.py:3910 msgid "Change project units ..." msgstr "Alterar unidades do projeto ..." -#: FlatCAMApp.py:3904 +#: FlatCAMApp.py:3911 msgid "" "Changing the units of the project causes all geometrical properties of all " "objects to be scaled accordingly.\n" @@ -311,43 +321,43 @@ msgstr "" "geométricas de todos os objetos sejam redimensionadas.\n" "Continuar?" -#: FlatCAMApp.py:3906 FlatCAMApp.py:4756 FlatCAMApp.py:6456 FlatCAMApp.py:6469 -#: FlatCAMApp.py:6709 FlatCAMApp.py:6719 +#: FlatCAMApp.py:3913 FlatCAMApp.py:4766 FlatCAMApp.py:6471 FlatCAMApp.py:6484 +#: FlatCAMApp.py:6724 FlatCAMApp.py:6734 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3954 +#: FlatCAMApp.py:3961 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Unidades convertidas para %s" -#: FlatCAMApp.py:3965 +#: FlatCAMApp.py:3972 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Conversão de unidades cancelada." -#: FlatCAMApp.py:4625 +#: FlatCAMApp.py:4632 msgid "Open file" msgstr "Abrir arquivo" -#: FlatCAMApp.py:4656 FlatCAMApp.py:4661 +#: FlatCAMApp.py:4663 FlatCAMApp.py:4668 msgid "Export G-Code ..." msgstr "Exportar G-Code ..." -#: FlatCAMApp.py:4664 +#: FlatCAMApp.py:4671 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Exportar G-Code cancelado." -#: FlatCAMApp.py:4674 +#: FlatCAMApp.py:4680 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Nenhum arquivo ou diretório" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4691 #, python-format msgid "Saved to: %s" msgstr "Salvo em: %s" -#: FlatCAMApp.py:4744 FlatCAMApp.py:4777 FlatCAMApp.py:4788 FlatCAMApp.py:4799 -#: flatcamTools/ToolNonCopperClear.py:490 flatcamTools/ToolSolderPaste.py:767 +#: FlatCAMApp.py:4754 FlatCAMApp.py:4787 FlatCAMApp.py:4798 FlatCAMApp.py:4809 +#: flatcamTools/ToolNonCopperClear.py:563 flatcamTools/ToolSolderPaste.py:767 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." @@ -355,12 +365,12 @@ msgstr "" "[WARNING_NOTCL] Insira um diâmetro de ferramenta com valor diferente de " "zero, no formato Flutuante." -#: FlatCAMApp.py:4749 FlatCAMApp.py:4782 FlatCAMApp.py:4793 FlatCAMApp.py:4804 +#: FlatCAMApp.py:4759 FlatCAMApp.py:4792 FlatCAMApp.py:4803 FlatCAMApp.py:4814 #: flatcamGUI/FlatCAMGUI.py:3027 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adicionar ferramenta cancelada ..." -#: FlatCAMApp.py:4752 +#: FlatCAMApp.py:4762 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -368,35 +378,35 @@ msgstr "" "Adicionar Ferramenta funciona somente quando Avançado está marcado. \n" "Vá para Preferências -> Geral - Mostrar Opções Avançadas." -#: FlatCAMApp.py:4864 +#: FlatCAMApp.py:4874 msgid "Object(s) deleted ..." msgstr "Objeto(s) excluído(s) ..." -#: FlatCAMApp.py:4868 +#: FlatCAMApp.py:4878 msgid "Failed. No object(s) selected..." msgstr "Falha. Nenhum objeto selecionado ..." -#: FlatCAMApp.py:4870 +#: FlatCAMApp.py:4880 msgid "Save the work in Editor and try again ..." msgstr "Salve o trabalho no Editor e tente novamente ..." -#: FlatCAMApp.py:4904 +#: FlatCAMApp.py:4914 msgid "Click to set the origin ..." msgstr "Clique para definir a origem ..." -#: FlatCAMApp.py:4916 +#: FlatCAMApp.py:4926 msgid "Jump to ..." msgstr "Pule para ..." -#: FlatCAMApp.py:4917 +#: FlatCAMApp.py:4927 msgid "Enter the coordinates in format X,Y:" msgstr "Digite as coordenadas no formato X,Y:" -#: FlatCAMApp.py:4924 +#: FlatCAMApp.py:4934 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Coordenadas erradas. Insira as coordenadas no formato: X,Y" -#: FlatCAMApp.py:4942 flatcamEditors/FlatCAMExcEditor.py:2321 +#: FlatCAMApp.py:4952 flatcamEditors/FlatCAMExcEditor.py:2321 #: flatcamEditors/FlatCAMExcEditor.py:2328 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -410,25 +420,25 @@ msgstr "Coordenadas erradas. Insira as coordenadas no formato: X,Y" msgid "[success] Done." msgstr "[success] Pronto." -#: FlatCAMApp.py:5074 FlatCAMApp.py:5141 +#: FlatCAMApp.py:5084 FlatCAMApp.py:5151 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Nenhum objeto está selecionado. Selecione um objeto e tente " "novamente." -#: FlatCAMApp.py:5182 +#: FlatCAMApp.py:5192 msgid "[success] Origin set ..." msgstr "[success] Origem definida ..." -#: FlatCAMApp.py:5201 flatcamGUI/GUIElements.py:1375 +#: FlatCAMApp.py:5211 flatcamGUI/GUIElements.py:1375 msgid "Preferences" msgstr "Preferências" -#: FlatCAMApp.py:5267 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] Preferences edited but not saved." msgstr "[WARNING_NOTCL] Preferências editadas, mas não salvas." -#: FlatCAMApp.py:5301 +#: FlatCAMApp.py:5311 msgid "" "One or more values are changed.\n" "Do you want to save the Preferences?" @@ -436,76 +446,76 @@ msgstr "" "Um ou mais valores foram alterados.\n" "Você deseja salvar as preferências?" -#: FlatCAMApp.py:5303 flatcamGUI/FlatCAMGUI.py:953 +#: FlatCAMApp.py:5313 flatcamGUI/FlatCAMGUI.py:953 msgid "Save Preferences" msgstr "Salvar Preferências" -#: FlatCAMApp.py:5330 +#: FlatCAMApp.py:5340 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Nenhum objeto selecionado para Espelhar no eixo Y." -#: FlatCAMApp.py:5355 +#: FlatCAMApp.py:5365 msgid "[success] Flip on Y axis done." msgstr "[success] Espelhar no eixo Y pronto." -#: FlatCAMApp.py:5357 FlatCAMApp.py:5397 +#: FlatCAMApp.py:5367 FlatCAMApp.py:5407 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5498 flatcamTools/ToolTransform.py:747 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Devido a %s, a ação de espelhamento não foi executada." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Nenhum objeto selecionado para Espelhar no eixo X." -#: FlatCAMApp.py:5395 +#: FlatCAMApp.py:5405 msgid "[success] Flip on X axis done." msgstr "[success] Espelhar no eixo X pronto." -#: FlatCAMApp.py:5410 +#: FlatCAMApp.py:5420 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Nenhum objeto selecionado para Girar." -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Transform" msgstr "Transformar" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Enter the Angle value:" msgstr "Digite o valor do Ângulo:" -#: FlatCAMApp.py:5443 +#: FlatCAMApp.py:5453 msgid "[success] Rotation done." msgstr "[success] Rotação realizada." -#: FlatCAMApp.py:5445 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5455 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5427 flatcamTools/ToolTransform.py:676 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Devido a %s, o movimento de rotação não foi executado." -#: FlatCAMApp.py:5456 +#: FlatCAMApp.py:5466 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Nenhum objeto selecionado para Inclinar no eixo X." -#: FlatCAMApp.py:5477 +#: FlatCAMApp.py:5487 msgid "[success] Skew on X axis done." msgstr "[success] Inclinação no eixo X concluída." -#: FlatCAMApp.py:5487 +#: FlatCAMApp.py:5497 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "[WARNING_NOTCL] Nenhum objeto selecionado para Inclinar no eixo Y." -#: FlatCAMApp.py:5508 +#: FlatCAMApp.py:5518 msgid "[success] Skew on Y axis done." msgstr "[success] Inclinação no eixo Y concluída." -#: FlatCAMApp.py:5558 +#: FlatCAMApp.py:5568 msgid "Grid On/Off" msgstr "Liga/Desliga a Grade" -#: FlatCAMApp.py:5571 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5581 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2424 #: flatcamEditors/FlatCAMGrbEditor.py:5016 flatcamGUI/ObjectUI.py:989 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:207 @@ -515,7 +525,7 @@ msgstr "Liga/Desliga a Grade" msgid "Add" msgstr "Adicionar" -#: FlatCAMApp.py:5572 FlatCAMObj.py:3361 +#: FlatCAMApp.py:5582 FlatCAMObj.py:3349 #: flatcamEditors/FlatCAMGrbEditor.py:2429 flatcamGUI/FlatCAMGUI.py:523 #: flatcamGUI/FlatCAMGUI.py:723 flatcamGUI/FlatCAMGUI.py:1630 #: flatcamGUI/FlatCAMGUI.py:1970 flatcamGUI/ObjectUI.py:1005 @@ -524,15 +534,15 @@ msgstr "Adicionar" msgid "Delete" msgstr "Excluir" -#: FlatCAMApp.py:5585 +#: FlatCAMApp.py:5595 msgid "New Grid ..." msgstr "Nova Grade ..." -#: FlatCAMApp.py:5586 +#: FlatCAMApp.py:5596 msgid "Enter a Grid Value:" msgstr "Digite um valor para grade:" -#: FlatCAMApp.py:5594 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5604 FlatCAMApp.py:5631 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -540,56 +550,56 @@ msgstr "" "[WARNING_NOTCL] Por favor, insira um valor de grade com valor diferente de " "zero, no formato Flutuante." -#: FlatCAMApp.py:5600 +#: FlatCAMApp.py:5610 msgid "[success] New Grid added ..." msgstr "[success] Nova Grade adicionada ..." -#: FlatCAMApp.py:5603 +#: FlatCAMApp.py:5613 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grade já existe ..." -#: FlatCAMApp.py:5606 +#: FlatCAMApp.py:5616 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adicionar nova grade cancelada ..." -#: FlatCAMApp.py:5628 +#: FlatCAMApp.py:5638 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] O valor da grade não existe ..." -#: FlatCAMApp.py:5631 +#: FlatCAMApp.py:5641 msgid "[success] Grid Value deleted ..." msgstr "[success] Grade apagada ..." -#: FlatCAMApp.py:5634 +#: FlatCAMApp.py:5644 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Excluir valor de grade cancelado ..." -#: FlatCAMApp.py:5640 +#: FlatCAMApp.py:5650 msgid "Key Shortcut List" msgstr "Lista de Teclas de Atalho" -#: FlatCAMApp.py:5673 +#: FlatCAMApp.py:5683 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Nenhum objeto selecionado para copiar nome" -#: FlatCAMApp.py:5677 +#: FlatCAMApp.py:5687 msgid "Name copied on clipboard ..." msgstr "Nome copiado na área de transferência ..." -#: FlatCAMApp.py:5719 flatcamEditors/FlatCAMGrbEditor.py:4012 +#: FlatCAMApp.py:5728 flatcamEditors/FlatCAMGrbEditor.py:4012 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordenadas copiadas para a área de transferência." -#: FlatCAMApp.py:5975 FlatCAMApp.py:5978 FlatCAMApp.py:5981 FlatCAMApp.py:5984 -#: FlatCAMApp.py:5999 FlatCAMApp.py:6002 FlatCAMApp.py:6005 FlatCAMApp.py:6008 -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 FlatCAMApp.py:6054 FlatCAMApp.py:6057 +#: FlatCAMApp.py:5984 FlatCAMApp.py:5987 FlatCAMApp.py:5990 FlatCAMApp.py:5993 +#: FlatCAMApp.py:6008 FlatCAMApp.py:6011 FlatCAMApp.py:6014 FlatCAMApp.py:6017 +#: FlatCAMApp.py:6057 FlatCAMApp.py:6060 FlatCAMApp.py:6063 FlatCAMApp.py:6066 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selecionado" -#: FlatCAMApp.py:6174 +#: FlatCAMApp.py:6189 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -599,111 +609,111 @@ msgstr "" "Criar um novo projeto irá apagá-los.\n" "Você deseja Salvar o Projeto?" -#: FlatCAMApp.py:6195 +#: FlatCAMApp.py:6210 msgid "[success] New Project created..." msgstr "[success] Novo Projeto criado ..." -#: FlatCAMApp.py:6315 FlatCAMApp.py:6318 flatcamGUI/FlatCAMGUI.py:604 +#: FlatCAMApp.py:6330 FlatCAMApp.py:6333 flatcamGUI/FlatCAMGUI.py:604 #: flatcamGUI/FlatCAMGUI.py:1849 msgid "Open Gerber" msgstr "Abrir Gerber" -#: FlatCAMApp.py:6323 +#: FlatCAMApp.py:6338 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Abrir Gerber cancelado." -#: FlatCAMApp.py:6344 FlatCAMApp.py:6347 flatcamGUI/FlatCAMGUI.py:605 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6362 flatcamGUI/FlatCAMGUI.py:605 #: flatcamGUI/FlatCAMGUI.py:1850 msgid "Open Excellon" msgstr "Abrir Excellon" -#: FlatCAMApp.py:6352 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Abrir Excellon cancelado." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6389 FlatCAMApp.py:6392 msgid "Open G-Code" msgstr "Abrir G-Code" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6397 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Abrir G-Code cancelado." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6415 FlatCAMApp.py:6418 msgid "Open Project" msgstr "Abrir Projeto" -#: FlatCAMApp.py:6411 +#: FlatCAMApp.py:6426 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Abrir Projeto cancelado." -#: FlatCAMApp.py:6430 FlatCAMApp.py:6433 +#: FlatCAMApp.py:6445 FlatCAMApp.py:6448 msgid "Open Configuration File" msgstr "Abrir Arquivo de Configuração" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6452 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Abrir Arquivo de Configuração cancelado." -#: FlatCAMApp.py:6452 FlatCAMApp.py:6705 FlatCAMApp.py:8951 FlatCAMApp.py:8971 -#: FlatCAMApp.py:8992 FlatCAMApp.py:9014 +#: FlatCAMApp.py:6467 FlatCAMApp.py:6720 FlatCAMApp.py:9000 FlatCAMApp.py:9020 +#: FlatCAMApp.py:9041 FlatCAMApp.py:9063 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Nenhum objeto selecionado." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6706 +#: FlatCAMApp.py:6468 FlatCAMApp.py:6721 msgid "Please Select a Geometry object to export" msgstr "Por favor, selecione um objeto Geometria para exportar" -#: FlatCAMApp.py:6466 +#: FlatCAMApp.py:6481 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Somente objetos Geometria, Gerber e Trabalho CNC podem ser " "usados." -#: FlatCAMApp.py:6479 FlatCAMApp.py:6483 +#: FlatCAMApp.py:6494 FlatCAMApp.py:6498 msgid "Export SVG" msgstr "Exportar SVG" -#: FlatCAMApp.py:6488 +#: FlatCAMApp.py:6503 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportar SVG cancelado." -#: FlatCAMApp.py:6507 +#: FlatCAMApp.py:6522 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Os dados devem ser uma matriz 3D com a última dimensão 3 ou 4" -#: FlatCAMApp.py:6513 FlatCAMApp.py:6517 +#: FlatCAMApp.py:6528 FlatCAMApp.py:6532 msgid "Export PNG Image" msgstr "Exportar Imagem PNG" -#: FlatCAMApp.py:6522 +#: FlatCAMApp.py:6537 msgid "Export PNG cancelled." msgstr "Exportar PNG cancelado." -#: FlatCAMApp.py:6541 +#: FlatCAMApp.py:6556 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Nenhum objeto selecionado. Por favor, selecione um objeto " "Gerber para exportar." -#: FlatCAMApp.py:6546 FlatCAMApp.py:6669 +#: FlatCAMApp.py:6561 FlatCAMApp.py:6684 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Falhou. Somente objetos Gerber podem ser salvos como arquivos " "Gerber ..." -#: FlatCAMApp.py:6558 +#: FlatCAMApp.py:6573 msgid "Save Gerber source file" msgstr "Salvar arquivo fonte Gerber" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6578 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Salvar arquivo fonte Gerber cancelado." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6597 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -711,22 +721,22 @@ msgstr "" "[WARNING_NOTCL] Nenhum objeto selecionado. Por favor, selecione um objeto " "Excellon para exportar." -#: FlatCAMApp.py:6587 FlatCAMApp.py:6628 +#: FlatCAMApp.py:6602 FlatCAMApp.py:6643 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Falha. Somente objetos Excellon podem ser salvos como arquivos " "Excellon ..." -#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 +#: FlatCAMApp.py:6610 FlatCAMApp.py:6614 msgid "Save Excellon source file" msgstr "Salvar o arquivo fonte Excellon" -#: FlatCAMApp.py:6604 +#: FlatCAMApp.py:6619 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Salvar arquivo fonte Excellon cancelado." -#: FlatCAMApp.py:6623 +#: FlatCAMApp.py:6638 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -734,70 +744,70 @@ msgstr "" "[WARNING_NOTCL] Nenhum objeto selecionado. Por favor, selecione um objeto " "Excellon para exportar." -#: FlatCAMApp.py:6636 FlatCAMApp.py:6640 +#: FlatCAMApp.py:6651 FlatCAMApp.py:6655 msgid "Export Excellon" msgstr "Exportar Excellon" -#: FlatCAMApp.py:6645 +#: FlatCAMApp.py:6660 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportar Excellon cancelado." -#: FlatCAMApp.py:6664 +#: FlatCAMApp.py:6679 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Nenhum objeto selecionado. Por favor, selecione um objeto " "Gerber para exportar." -#: FlatCAMApp.py:6677 FlatCAMApp.py:6681 +#: FlatCAMApp.py:6692 FlatCAMApp.py:6696 msgid "Export Gerber" msgstr "Exportar Gerber" -#: FlatCAMApp.py:6686 +#: FlatCAMApp.py:6701 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Exportar Gerber cancelado." -#: FlatCAMApp.py:6716 +#: FlatCAMApp.py:6731 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Apenas objetos Geometria podem ser usados." -#: FlatCAMApp.py:6730 FlatCAMApp.py:6734 +#: FlatCAMApp.py:6745 FlatCAMApp.py:6749 msgid "Export DXF" msgstr "Exportar DXF" -#: FlatCAMApp.py:6740 +#: FlatCAMApp.py:6755 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportar DXF cancelado." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6763 +#: FlatCAMApp.py:6775 FlatCAMApp.py:6778 msgid "Import SVG" msgstr "Importar SVG" -#: FlatCAMApp.py:6772 +#: FlatCAMApp.py:6787 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Abrir SVG cancelado." -#: FlatCAMApp.py:6791 FlatCAMApp.py:6795 +#: FlatCAMApp.py:6806 FlatCAMApp.py:6810 msgid "Import DXF" msgstr "Importar DXF" -#: FlatCAMApp.py:6804 +#: FlatCAMApp.py:6819 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Abrir DXF cancelado." -#: FlatCAMApp.py:6822 +#: FlatCAMApp.py:6837 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6842 +#: FlatCAMApp.py:6857 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Selecione um arquivo Gerber ou Excellon para visualizar o " "arquivo fonte." -#: FlatCAMApp.py:6849 +#: FlatCAMApp.py:6864 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -805,25 +815,25 @@ msgstr "" "[WARNING_NOTCL] Não há nenhum objeto selecionado para ver o código fonte do " "arquivo." -#: FlatCAMApp.py:6857 +#: FlatCAMApp.py:6872 msgid "Source Editor" msgstr "Editor de Fontes" -#: FlatCAMApp.py:6867 +#: FlatCAMApp.py:6882 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6879 FlatCAMApp.py:8024 FlatCAMObj.py:5677 +#: FlatCAMApp.py:6894 FlatCAMApp.py:8073 FlatCAMObj.py:5593 #: flatcamTools/ToolSolderPaste.py:1284 msgid "Code Editor" msgstr "Editor de Códigos" -#: FlatCAMApp.py:6891 +#: FlatCAMApp.py:6906 msgid "Script Editor" msgstr "Editor de Script" -#: FlatCAMApp.py:6894 +#: FlatCAMApp.py:6909 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -867,98 +877,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6917 FlatCAMApp.py:6920 +#: FlatCAMApp.py:6932 FlatCAMApp.py:6935 msgid "Open TCL script" msgstr "Abrir script TCL" -#: FlatCAMApp.py:6928 +#: FlatCAMApp.py:6943 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Abrir script TCL cancelado." -#: FlatCAMApp.py:6940 +#: FlatCAMApp.py:6955 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6966 FlatCAMApp.py:6969 +#: FlatCAMApp.py:6981 FlatCAMApp.py:6984 msgid "Run TCL script" msgstr "Executar script TCL" -#: FlatCAMApp.py:6977 +#: FlatCAMApp.py:6992 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Executar script TCL cancelado." -#: FlatCAMApp.py:7029 FlatCAMApp.py:7033 +#: FlatCAMApp.py:7044 FlatCAMApp.py:7048 msgid "Save Project As ..." msgstr "Salvar Projeto Como ..." -#: FlatCAMApp.py:7030 +#: FlatCAMApp.py:7045 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:7038 +#: FlatCAMApp.py:7053 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Salvar Projeto cancelado." -#: FlatCAMApp.py:7083 +#: FlatCAMApp.py:7098 msgid "Exporting SVG" msgstr "Exportando SVG" -#: FlatCAMApp.py:7117 FlatCAMApp.py:7223 FlatCAMApp.py:7338 +#: FlatCAMApp.py:7138 FlatCAMApp.py:7249 FlatCAMApp.py:7370 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Arquivo SVG exportado para %s" -#: FlatCAMApp.py:7148 FlatCAMApp.py:7269 +#: FlatCAMApp.py:7169 FlatCAMApp.py:7295 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Nenhuma caixa de objeto. Usando em vez de %s" -#: FlatCAMApp.py:7226 FlatCAMApp.py:7341 +#: FlatCAMApp.py:7252 FlatCAMApp.py:7373 msgid "Generating Film ... Please wait." msgstr "Gerando Filme ... Por favor, aguarde." -#: FlatCAMApp.py:7489 +#: FlatCAMApp.py:7532 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Arquivo Excellon exportado para %s" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7539 msgid "Exporting Excellon" msgstr "Exportando Excellon" -#: FlatCAMApp.py:7501 FlatCAMApp.py:7508 +#: FlatCAMApp.py:7544 FlatCAMApp.py:7551 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Não foi possível exportar o arquivo Excellon." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7655 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Arquivo Gerber exportado para %s" -#: FlatCAMApp.py:7613 +#: FlatCAMApp.py:7662 msgid "Exporting Gerber" msgstr "Exportando Gerber" -#: FlatCAMApp.py:7618 FlatCAMApp.py:7625 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7674 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Não foi possível exportar o arquivo Gerber." -#: FlatCAMApp.py:7665 +#: FlatCAMApp.py:7714 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Arquivo DXF exportado para %s" -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7720 msgid "Exporting DXF" msgstr "Exportando DXF" -#: FlatCAMApp.py:7676 FlatCAMApp.py:7683 +#: FlatCAMApp.py:7725 FlatCAMApp.py:7732 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Não foi possível exportar o arquivo DXF." -#: FlatCAMApp.py:7703 FlatCAMApp.py:7745 FlatCAMApp.py:7789 +#: FlatCAMApp.py:7752 FlatCAMApp.py:7794 FlatCAMApp.py:7838 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -966,98 +976,99 @@ msgstr "" "[ERROR_NOTCL] O tipo escolhido não é suportado como parâmetro. Apenas " "Geometria e Gerber são suportados" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7762 msgid "Importing SVG" msgstr "Importando SVG" -#: FlatCAMApp.py:7724 FlatCAMApp.py:7766 FlatCAMApp.py:7809 FlatCAMApp.py:7886 -#: FlatCAMApp.py:7947 FlatCAMApp.py:8010 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7773 FlatCAMApp.py:7815 FlatCAMApp.py:7858 FlatCAMApp.py:7935 +#: FlatCAMApp.py:7996 FlatCAMApp.py:8059 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Aberto: %s" -#: FlatCAMApp.py:7755 +#: FlatCAMApp.py:7804 msgid "Importing DXF" msgstr "Importando DXF" -#: FlatCAMApp.py:7797 +#: FlatCAMApp.py:7846 msgid "Importing Image" msgstr "Importando Imagem" -#: FlatCAMApp.py:7838 FlatCAMApp.py:7840 +#: FlatCAMApp.py:7887 FlatCAMApp.py:7889 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Falha ao abrir o arquivo: %s" -#: FlatCAMApp.py:7843 +#: FlatCAMApp.py:7892 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Falha ao analisar o arquivo: {name}. {error}" -#: FlatCAMApp.py:7850 flatcamEditors/FlatCAMGrbEditor.py:3832 +#: FlatCAMApp.py:7899 FlatCAMObj.py:4296 +#: flatcamEditors/FlatCAMGrbEditor.py:3832 msgid "[ERROR] An internal error has occurred. See shell.\n" msgstr "[ERROR] Ocorreu um erro interno. Veja shell. (linha de comando)\n" -#: FlatCAMApp.py:7859 +#: FlatCAMApp.py:7908 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] O objeto não é um arquivo Gerber ou está vazio. Abortando a " "criação de objetos." -#: FlatCAMApp.py:7867 +#: FlatCAMApp.py:7916 msgid "Opening Gerber" msgstr "Abrindo Gerber" -#: FlatCAMApp.py:7877 +#: FlatCAMApp.py:7926 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Abrir Gerber falhou. Provavelmente não é um arquivo Gerber." -#: FlatCAMApp.py:7910 flatcamTools/ToolPcbWizard.py:418 +#: FlatCAMApp.py:7959 flatcamTools/ToolPcbWizard.py:418 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Este não é um arquivo Excellon." -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7962 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Não é possível abrir o arquivo: %s" -#: FlatCAMApp.py:7918 flatcamTools/ToolPcbWizard.py:427 +#: FlatCAMApp.py:7967 flatcamTools/ToolPcbWizard.py:427 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Ocorreu um erro interno. Veja shell. (linha de comando)\n" -#: FlatCAMApp.py:7931 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7980 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:440 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Nenhuma geometria encontrada no arquivo: %s" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7983 msgid "Opening Excellon." msgstr "Abrindo o Excellon." -#: FlatCAMApp.py:7940 +#: FlatCAMApp.py:7989 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Falha ao abrir Excellon. Provavelmente não é um arquivo " "Excellon." -#: FlatCAMApp.py:7977 +#: FlatCAMApp.py:8026 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Falha ao abrir %s" -#: FlatCAMApp.py:7987 +#: FlatCAMApp.py:8036 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Não é G-Code" -#: FlatCAMApp.py:7993 +#: FlatCAMApp.py:8042 msgid "Opening G-Code." msgstr "Abrindo G-Code." -#: FlatCAMApp.py:8001 +#: FlatCAMApp.py:8050 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -1068,26 +1079,26 @@ msgstr "" "A tentativa de criar um objeto FlatCAM Trabalho CNC do arquivo G-Code falhou " "durante o processamento" -#: FlatCAMApp.py:8041 +#: FlatCAMApp.py:8090 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Falha ao abrir o arquivo de configuração: %s" -#: FlatCAMApp.py:8067 FlatCAMApp.py:8084 +#: FlatCAMApp.py:8116 FlatCAMApp.py:8133 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Falha ao abrir o arquivo do projeto: %s" -#: FlatCAMApp.py:8107 +#: FlatCAMApp.py:8156 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Projeto carregado de: %s" -#: FlatCAMApp.py:8213 +#: FlatCAMApp.py:8262 msgid "Available commands:\n" msgstr "Comandos disponíveis:\n" -#: FlatCAMApp.py:8215 +#: FlatCAMApp.py:8264 msgid "" "\n" "\n" @@ -1099,35 +1110,35 @@ msgstr "" "Digite help para forma de uso. \n" " Exemplo: help open_gerber" -#: FlatCAMApp.py:8365 +#: FlatCAMApp.py:8414 msgid "Shows list of commands." msgstr "Mostra a lista de comandos." -#: FlatCAMApp.py:8422 +#: FlatCAMApp.py:8471 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Falha ao carregar a lista de itens recentes." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8478 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Falha ao analisar a lista de itens recentes." -#: FlatCAMApp.py:8439 +#: FlatCAMApp.py:8488 msgid "[ERROR_NOTCL] Failed to load recent projects item list." msgstr "[ERROR_NOTCL] Falha ao carregar a lista de itens de projetos recentes." -#: FlatCAMApp.py:8446 +#: FlatCAMApp.py:8495 msgid "[ERROR_NOTCL] Failed to parse recent project item list." msgstr "[ERROR_NOTCL] Falha ao analisar a lista de itens do projeto recente." -#: FlatCAMApp.py:8505 FlatCAMApp.py:8528 +#: FlatCAMApp.py:8554 FlatCAMApp.py:8577 msgid "Clear Recent files" msgstr "Limpar arquivos recentes" -#: FlatCAMApp.py:8545 flatcamGUI/FlatCAMGUI.py:970 +#: FlatCAMApp.py:8594 flatcamGUI/FlatCAMGUI.py:970 msgid "Shortcut Key List" msgstr "Lista de Teclas de Atalho" -#: FlatCAMApp.py:8552 +#: FlatCAMApp.py:8601 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1195,11 +1206,11 @@ msgstr "" "do aplicativo.
\n" "\t \n" "\t

  • Uma vez que um objeto está disponível " -"na Aba Projeto, selecione-o e então vá para a " -"Aba Selecionado (ou clique duas vezes no nome do objeto na " -"Aba Projeto). A Aba Selecionado será " -"atualizada com as propriedades do objeto de acordo com o tipo: Gerber, " -"Excellon, Geometria ou Trabalho CNC.
    \n" +"na Aba Projeto, selecione-o e então vá para a Aba " +"Selecionado (ou clique duas vezes no nome do objeto na Aba " +"Projeto). A Aba Selecionado será atualizada com as " +"propriedades do objeto de acordo com o tipo: Gerber, Excellon, Geometria ou " +"Trabalho CNC.
    \n" "\t
    \n" "\tSe a seleção do objeto for feita na tela com um único clique, e a " "Aba Selecionado estiver em foco, novamente as propriedades " @@ -1223,27 +1234,27 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8659 +#: FlatCAMApp.py:8708 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Falha na verificação da versão mais recente. Não foi " "possível conectar." -#: FlatCAMApp.py:8666 +#: FlatCAMApp.py:8715 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Não foi possível analisar informações sobre a versão mais " "recente." -#: FlatCAMApp.py:8676 +#: FlatCAMApp.py:8725 msgid "[success] FlatCAM is up to date!" msgstr "[success] O FlatCAM está atualizado!" -#: FlatCAMApp.py:8681 +#: FlatCAMApp.py:8730 msgid "Newer Version Available" msgstr "Nova Versão Disponível" -#: FlatCAMApp.py:8682 +#: FlatCAMApp.py:8731 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1251,58 +1262,58 @@ msgstr "" "Existe uma versão mais nova do FlatCAM disponível para download:\n" "\n" -#: FlatCAMApp.py:8684 +#: FlatCAMApp.py:8733 msgid "info" msgstr "info" -#: FlatCAMApp.py:8703 +#: FlatCAMApp.py:8752 msgid "[success] All plots disabled." msgstr "[success] Todos os gráficos desabilitados." -#: FlatCAMApp.py:8709 +#: FlatCAMApp.py:8758 msgid "[success] All non selected plots disabled." msgstr "[success] Todos os gráficos não selecionados desabilitados." -#: FlatCAMApp.py:8715 +#: FlatCAMApp.py:8764 msgid "[success] All plots enabled." msgstr "[success] Todos os gráficos habilitados." -#: FlatCAMApp.py:8721 +#: FlatCAMApp.py:8770 msgid "[success] Selected plots enabled..." msgstr "[success] Gráficos selecionados habilitados ..." -#: FlatCAMApp.py:8729 +#: FlatCAMApp.py:8778 msgid "[success] Selected plots disabled..." msgstr "[success] Gráficos selecionados desabilitados..." -#: FlatCAMApp.py:8739 FlatCAMApp.py:8766 FlatCAMApp.py:8783 +#: FlatCAMApp.py:8788 FlatCAMApp.py:8815 FlatCAMApp.py:8832 msgid "Working ..." msgstr "Trabalhando ..." -#: FlatCAMApp.py:8820 +#: FlatCAMApp.py:8869 msgid "Saving FlatCAM Project" msgstr "Salvando o Projeto FlatCAM" -#: FlatCAMApp.py:8841 FlatCAMApp.py:8872 +#: FlatCAMApp.py:8890 FlatCAMApp.py:8921 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Projeto salvo em: %s" -#: FlatCAMApp.py:8859 +#: FlatCAMApp.py:8908 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Falha ao verificar o arquivo do projeto: %s. Tente salvá-lo " "novamente." -#: FlatCAMApp.py:8866 +#: FlatCAMApp.py:8915 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Falha ao analisar o arquivo de projeto salvo: %s. Tente salvá-" "lo novamente." -#: FlatCAMApp.py:8874 +#: FlatCAMApp.py:8923 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1314,78 +1325,79 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Nome alterado de {old} para {new}" -#: FlatCAMObj.py:555 FlatCAMObj.py:2095 FlatCAMObj.py:3366 FlatCAMObj.py:5570 +#: FlatCAMObj.py:558 FlatCAMObj.py:2098 FlatCAMObj.py:3354 FlatCAMObj.py:5486 msgid "Basic" msgstr "Básico" -#: FlatCAMObj.py:567 FlatCAMObj.py:2111 FlatCAMObj.py:3388 FlatCAMObj.py:5576 +#: FlatCAMObj.py:570 FlatCAMObj.py:2114 FlatCAMObj.py:3376 FlatCAMObj.py:5492 msgid "Advanced" msgstr "Avançado" -#: FlatCAMObj.py:920 FlatCAMObj.py:1018 +#: FlatCAMObj.py:923 FlatCAMObj.py:1021 msgid "[ERROR_NOTCL] Isolation geometry could not be generated." -msgstr "" +msgstr "[ERROR_NOTCL] A geometria de isolamento não pôde ser gerada." -#: FlatCAMObj.py:957 FlatCAMObj.py:3061 FlatCAMObj.py:3323 FlatCAMObj.py:3632 +#: FlatCAMObj.py:960 FlatCAMObj.py:3049 FlatCAMObj.py:3311 FlatCAMObj.py:3589 msgid "Rough" msgstr "Desbaste" -#: FlatCAMObj.py:975 FlatCAMObj.py:1034 +#: FlatCAMObj.py:978 FlatCAMObj.py:1037 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Geometria de isolação criada: %s" -#: FlatCAMObj.py:1213 +#: FlatCAMObj.py:1216 msgid "Plotting Apertures" msgstr "Mostrando Aberturas" -#: FlatCAMObj.py:1936 flatcamEditors/FlatCAMExcEditor.py:1369 +#: FlatCAMObj.py:1939 flatcamEditors/FlatCAMExcEditor.py:1369 msgid "Total Drills" msgstr "Total de Furos" -#: FlatCAMObj.py:1962 flatcamEditors/FlatCAMExcEditor.py:1401 +#: FlatCAMObj.py:1965 flatcamEditors/FlatCAMExcEditor.py:1401 msgid "Total Slots" msgstr "Total de Fendas" -#: FlatCAMObj.py:2169 FlatCAMObj.py:3440 FlatCAMObj.py:3771 FlatCAMObj.py:3962 -#: FlatCAMObj.py:3975 FlatCAMObj.py:4095 FlatCAMObj.py:4511 FlatCAMObj.py:4747 -#: FlatCAMObj.py:5151 flatcamEditors/FlatCAMExcEditor.py:1475 +#: FlatCAMObj.py:2172 FlatCAMObj.py:3427 FlatCAMObj.py:3717 FlatCAMObj.py:3904 +#: FlatCAMObj.py:3915 FlatCAMObj.py:4033 FlatCAMObj.py:4438 FlatCAMObj.py:4664 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1475 #: flatcamTools/ToolCalculators.py:304 flatcamTools/ToolCalculators.py:315 #: flatcamTools/ToolCalculators.py:327 flatcamTools/ToolCalculators.py:342 #: flatcamTools/ToolCalculators.py:355 flatcamTools/ToolCalculators.py:369 #: flatcamTools/ToolCalculators.py:380 flatcamTools/ToolCalculators.py:391 #: flatcamTools/ToolCalculators.py:402 flatcamTools/ToolFilm.py:241 -#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:481 -#: flatcamTools/ToolNonCopperClear.py:553 -#: flatcamTools/ToolNonCopperClear.py:630 -#: flatcamTools/ToolNonCopperClear.py:647 flatcamTools/ToolPaint.py:537 -#: flatcamTools/ToolPaint.py:609 flatcamTools/ToolPaint.py:746 -#: flatcamTools/ToolPaint.py:846 flatcamTools/ToolPaint.py:1000 -#: flatcamTools/ToolPanelize.py:387 flatcamTools/ToolPanelize.py:399 -#: flatcamTools/ToolPanelize.py:412 flatcamTools/ToolPanelize.py:425 -#: flatcamTools/ToolPanelize.py:437 flatcamTools/ToolPanelize.py:448 -#: flatcamTools/ToolSolderPaste.py:758 flatcamTools/ToolSolderPaste.py:830 +#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:554 +#: flatcamTools/ToolNonCopperClear.py:626 +#: flatcamTools/ToolNonCopperClear.py:703 +#: flatcamTools/ToolNonCopperClear.py:720 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolPaint.py:615 flatcamTools/ToolPaint.py:752 +#: flatcamTools/ToolPaint.py:925 flatcamTools/ToolPaint.py:1079 +#: flatcamTools/ToolPaint.py:1379 flatcamTools/ToolPanelize.py:387 +#: flatcamTools/ToolPanelize.py:399 flatcamTools/ToolPanelize.py:412 +#: flatcamTools/ToolPanelize.py:425 flatcamTools/ToolPanelize.py:437 +#: flatcamTools/ToolPanelize.py:448 flatcamTools/ToolSolderPaste.py:758 +#: flatcamTools/ToolSolderPaste.py:830 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Formato incorreto, use um número." -#: FlatCAMObj.py:2393 FlatCAMObj.py:2485 FlatCAMObj.py:2608 +#: FlatCAMObj.py:2396 FlatCAMObj.py:2488 FlatCAMObj.py:2611 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Selecione uma ou mais ferramentas da lista e tente novamente." -#: FlatCAMObj.py:2400 +#: FlatCAMObj.py:2403 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] A ferramenta de fresagem para BROCAS é maior que o tamanho do " "furo. Cancelado." -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Tool_nr" msgstr "Ferramenta_nr" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 #: flatcamEditors/FlatCAMExcEditor.py:820 #: flatcamEditors/FlatCAMExcEditor.py:2021 flatcamGUI/ObjectUI.py:553 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1393,22 +1405,22 @@ msgstr "Ferramenta_nr" msgid "Diameter" msgstr "Diâmetro" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Drills_Nr" msgstr "Furo_Nr" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Slots_Nr" msgstr "Fenda_Nr" -#: FlatCAMObj.py:2495 +#: FlatCAMObj.py:2498 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] A ferramenta de fresagem para FENDAS é maior que o tamanho do " "furo. Cancelado." -#: FlatCAMObj.py:2670 FlatCAMObj.py:4400 FlatCAMObj.py:4615 FlatCAMObj.py:4926 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4331 FlatCAMObj.py:4537 FlatCAMObj.py:4843 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1416,7 +1428,7 @@ msgstr "" "[ERROR_NOTCL] Formato de valor incorreto para self.defaults[\"z_pdepth\"] ou " "self.options[\"z_pdepth\"]" -#: FlatCAMObj.py:2682 FlatCAMObj.py:4412 FlatCAMObj.py:4627 FlatCAMObj.py:4938 +#: FlatCAMObj.py:2682 FlatCAMObj.py:4341 FlatCAMObj.py:4547 FlatCAMObj.py:4853 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1424,12 +1436,12 @@ msgstr "" "[ERROR_NOTCL] Formato de valor incorreto para self.defaults[\"feedrate_probe" "\"] ou self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2714 FlatCAMObj.py:4814 FlatCAMObj.py:4819 FlatCAMObj.py:4969 +#: FlatCAMObj.py:2712 FlatCAMObj.py:4733 FlatCAMObj.py:4738 FlatCAMObj.py:4885 msgid "Generating CNC Code" msgstr "Gerando Código CNC" -#: FlatCAMObj.py:2740 FlatCAMObj.py:5111 camlib.py:5179 camlib.py:5638 -#: camlib.py:5901 +#: FlatCAMObj.py:2737 FlatCAMObj.py:5027 camlib.py:5181 camlib.py:5640 +#: camlib.py:5903 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1439,83 +1451,79 @@ msgstr "" "estar no formato (x, y).\n" "Agora existe apenas um valor, não dois. " -#: FlatCAMObj.py:3061 FlatCAMObj.py:4017 FlatCAMObj.py:4018 FlatCAMObj.py:4027 +#: FlatCAMObj.py:3049 FlatCAMObj.py:3956 FlatCAMObj.py:3957 FlatCAMObj.py:3966 msgid "Iso" msgstr "Isolação" -#: FlatCAMObj.py:3061 +#: FlatCAMObj.py:3049 msgid "Finish" msgstr "Acabamento" -#: FlatCAMObj.py:3359 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 +#: FlatCAMObj.py:3347 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 #: flatcamGUI/FlatCAMGUI.py:1629 flatcamGUI/FlatCAMGUI.py:1968 #: flatcamGUI/ObjectUI.py:997 msgid "Copy" msgstr "Copiar" -#: FlatCAMObj.py:3602 +#: FlatCAMObj.py:3559 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Por favor, insira o diâmetro da ferramenta desejada no formato " "Flutuante." -#: FlatCAMObj.py:3677 +#: FlatCAMObj.py:3633 msgid "[success] Tool added in Tool Table." msgstr "[success] Ferramenta adicionada na Tabela de Ferramentas." -#: FlatCAMObj.py:3682 +#: FlatCAMObj.py:3636 msgid "[WARNING_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[WARNING_NOTCL] Ferramenta padrão adicionada. Formato de valor incorreto " "inserido." -#: FlatCAMObj.py:3716 FlatCAMObj.py:3726 +#: FlatCAMObj.py:3668 FlatCAMObj.py:3676 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Falhou. Selecione uma ferramenta para copiar." -#: FlatCAMObj.py:3755 +#: FlatCAMObj.py:3703 msgid "[success] Tool was copied in Tool Table." msgstr "[success] A ferramenta foi copiada na tabela de ferramentas." -#: FlatCAMObj.py:3788 +#: FlatCAMObj.py:3732 msgid "[success] Tool was edited in Tool Table." msgstr "[success] A ferramenta foi editada na Tabela de Ferramentas." -#: FlatCAMObj.py:3817 FlatCAMObj.py:3825 +#: FlatCAMObj.py:3760 FlatCAMObj.py:3768 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Falhou. Selecione uma ferramenta para excluir." -#: FlatCAMObj.py:3847 +#: FlatCAMObj.py:3790 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] A ferramenta foi eliminada da Tabela de Ferramentas." -#: FlatCAMObj.py:4281 +#: FlatCAMObj.py:4219 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" "[WARNING_NOTCL] Esta Geometria não pode ser processada porque é %s geometria." -#: FlatCAMObj.py:4298 +#: FlatCAMObj.py:4235 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "[ERROR_NOTCL] Valor inserido no formato errado. Use um número." -#: FlatCAMObj.py:4325 +#: FlatCAMObj.py:4260 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Falhou. Nenhuma ferramenta selecionada na tabela de " "ferramentas ..." -#: FlatCAMObj.py:4362 flatcamEditors/FlatCAMExcEditor.py:2078 -msgid "[ERROR] An internal error has ocurred. See shell.\n" -msgstr "[ERROR] Um erro interno ocorreu. Veja shell (linha de comando). \n" - -#: FlatCAMObj.py:4363 +#: FlatCAMObj.py:4297 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4520 FlatCAMObj.py:4754 +#: FlatCAMObj.py:4444 FlatCAMObj.py:4670 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1524,21 +1532,21 @@ msgstr "" "valor é fornecido. \n" "Adicione um Offset de Ferramenta ou altere o Tipo de Deslocamento." -#: FlatCAMObj.py:4639 flatcamTools/ToolSolderPaste.py:1112 +#: FlatCAMObj.py:4557 flatcamTools/ToolSolderPaste.py:1112 #: flatcamTools/ToolSolderPaste.py:1168 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelado. Arquivo vazio, não tem geometria ..." -#: FlatCAMObj.py:5002 FlatCAMObj.py:5011 camlib.py:3360 camlib.py:3369 +#: FlatCAMObj.py:4918 FlatCAMObj.py:4927 camlib.py:3362 camlib.py:3371 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] O fator de escala deve ser um número: inteiro ou flutuante." -#: FlatCAMObj.py:5048 +#: FlatCAMObj.py:4964 msgid "[success] Geometry Scale done." msgstr "[success] Redimensionamento de geometria feita." -#: FlatCAMObj.py:5065 camlib.py:3438 +#: FlatCAMObj.py:4981 camlib.py:3440 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1546,29 +1554,29 @@ msgstr "" "[ERROR_NOTCL] Um par de valores (x,y) é necessário. Provavelmente você " "digitou apenas um valor no campo Deslocamento." -#: FlatCAMObj.py:5084 +#: FlatCAMObj.py:5000 msgid "[success] Geometry Offset done." msgstr "[success] Deslocamento de Geometria feito." -#: FlatCAMObj.py:5638 FlatCAMObj.py:5643 flatcamTools/ToolSolderPaste.py:1368 +#: FlatCAMObj.py:5554 FlatCAMObj.py:5559 flatcamTools/ToolSolderPaste.py:1368 msgid "Export Machine Code ..." msgstr "Exportar Código da Máquina ..." -#: FlatCAMObj.py:5649 flatcamTools/ToolSolderPaste.py:1371 +#: FlatCAMObj.py:5565 flatcamTools/ToolSolderPaste.py:1371 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Exportar código da máquina cancelado ..." -#: FlatCAMObj.py:5666 +#: FlatCAMObj.py:5582 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Arquivo G-Code salvo em: %s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5604 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5721 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1577,11 +1585,11 @@ msgstr "" "[WARNING_NOTCL] Este objeto Trabalho CNC não pode ser processado porque é um " "objeto %s CNCJob." -#: FlatCAMObj.py:5858 +#: FlatCAMObj.py:5774 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] O G-Code não possui um código de unidade: G20 ou G21" -#: FlatCAMObj.py:5871 +#: FlatCAMObj.py:5787 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1589,16 +1597,16 @@ msgstr "" "[ERROR_NOTCL] Cancelado. O código personalizado do Toolchange está ativado, " "mas está vazio." -#: FlatCAMObj.py:5878 +#: FlatCAMObj.py:5794 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] O G-Code do Toolchange foi substituído por um código personalizado." -#: FlatCAMObj.py:5893 flatcamTools/ToolSolderPaste.py:1397 +#: FlatCAMObj.py:5808 flatcamTools/ToolSolderPaste.py:1397 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Nenhum arquivo ou diretório" -#: FlatCAMObj.py:5913 FlatCAMObj.py:5925 +#: FlatCAMObj.py:5832 FlatCAMObj.py:5844 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1606,7 +1614,7 @@ msgstr "" "[WARNING_NOTCL] O arquivo do postprocessor usado deve ter em seu nome: " "'toolchange_custom'" -#: FlatCAMObj.py:5931 +#: FlatCAMObj.py:5850 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Não há arquivo de pós-processamento." @@ -1637,42 +1645,42 @@ msgstr "[ERROR] Causa do erro: %s" msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "[ERROR_NOTCL] self.solid_geometry não é nem BaseGeometry nem lista." -#: camlib.py:1402 +#: camlib.py:1404 msgid "[success] Object was mirrored ..." msgstr "[success] Objeto foi espelhado ..." -#: camlib.py:1404 +#: camlib.py:1406 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" msgstr "[ERROR_NOTCL] Falha ao espelhar. Nenhum objeto selecionado" -#: camlib.py:1440 +#: camlib.py:1442 msgid "[success] Object was rotated ..." msgstr "[success] Objeto foi rotacionado ..." -#: camlib.py:1442 +#: camlib.py:1444 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" msgstr "[ERROR_NOTCL] Falha ao girar. Nenhum objeto selecionado" -#: camlib.py:1476 +#: camlib.py:1478 msgid "[success] Object was skewed ..." msgstr "[success] Objeto foi inclinado ..." -#: camlib.py:1478 +#: camlib.py:1480 msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Falha ao inclinar. Nenhum objeto selecionado" -#: camlib.py:2740 camlib.py:2825 +#: camlib.py:2742 camlib.py:2827 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Coordenadas faltando, linha ignorada: %s" -#: camlib.py:2741 camlib.py:2826 +#: camlib.py:2743 camlib.py:2828 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" "[WARNING_NOTCL] O arquivo GERBER pode estar CORROMPIDO. Verifique o " "arquivo !!!" -#: camlib.py:2790 +#: camlib.py:2792 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1681,7 +1689,7 @@ msgstr "" "[ERROR] A região não possui pontos suficientes. O arquivo será processado, " "mas há erros de analisador. Número da linha: %s" -#: camlib.py:3182 +#: camlib.py:3184 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1690,32 +1698,32 @@ msgstr "" "[ERROR]ERRO na análise do Gerber.\n" "%s:" -#: camlib.py:3406 +#: camlib.py:3408 msgid "[success] Gerber Scale done." msgstr "[success] Redimensionamento Gerber pronto." -#: camlib.py:3471 +#: camlib.py:3473 msgid "[success] Gerber Offset done." msgstr "[success] Deslocamento Gerber pronto." -#: camlib.py:3525 +#: camlib.py:3527 msgid "[success] Gerber Mirror done." msgstr "[success] Espelhamento Gerber pronto." -#: camlib.py:3571 +#: camlib.py:3573 msgid "[success] Gerber Skew done." msgstr "[success] Inclinação Gerber pronta." -#: camlib.py:3609 +#: camlib.py:3611 msgid "[success] Gerber Rotate done." msgstr "[success] Rotação Gerber pronta." -#: camlib.py:3890 +#: camlib.py:3892 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] Esta é a marca G-CODE: %s" -#: camlib.py:4005 +#: camlib.py:4007 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1735,7 +1743,7 @@ msgstr "" "resultante e\n" "alterar os diâmetros para os valores reais." -#: camlib.py:4470 +#: camlib.py:4472 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1744,7 +1752,7 @@ msgstr "" "[ERROR] Erro do Analisador Excellon. \n" "Análise falhou. Linha {l_nr}: {line} \n" -#: camlib.py:4549 +#: camlib.py:4551 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1754,12 +1762,12 @@ msgstr "" "uma ferramenta associada. \n" "Verifique o G-Code resultante." -#: camlib.py:5088 +#: camlib.py:5090 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] Não existe esse parâmetro: %s" -#: camlib.py:5158 +#: camlib.py:5160 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1772,22 +1780,23 @@ msgstr "" "um erro de digitação, o aplicativo converterá o valor para negativo.\n" "Verifique o código CNC resultante (G-Code, etc.)." -#: camlib.py:5165 camlib.py:5661 camlib.py:5924 +#: camlib.py:5167 camlib.py:5663 camlib.py:5926 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" -"[WARNING] O parâmetro Profundidade de Corte é zero. Não haverá corte, ignorando arquivo %s" +"[WARNING] O parâmetro Profundidade de Corte é zero. Não haverá corte, " +"ignorando arquivo %s" -#: camlib.py:5394 camlib.py:5491 camlib.py:5549 +#: camlib.py:5396 camlib.py:5493 camlib.py:5551 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] O arquivo Excellon carregado não tem brocas ..." -#: camlib.py:5496 +#: camlib.py:5498 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Tipo de otimização incorreto selecionado." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5651 camlib.py:5914 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1795,7 +1804,7 @@ msgstr "" "O parâmetro [ERROR_NOTCL] Cut_Z está vazio ou é zero. O mais provável é uma " "combinação ruim de outros parâmetros." -#: camlib.py:5654 camlib.py:5917 +#: camlib.py:5656 camlib.py:5919 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1808,11 +1817,11 @@ msgstr "" "um erro de digitação, o aplicativo converterá o valor para negativo.\n" "Verifique o código CNC resultante (G-Code, etc.)." -#: camlib.py:5666 camlib.py:5929 +#: camlib.py:5668 camlib.py:5931 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] O parâmetro Altura de Deslocamento Z é Nulo ou zero." -#: camlib.py:5670 camlib.py:5933 +#: camlib.py:5672 camlib.py:5935 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1822,22 +1831,24 @@ msgid "" msgstr "" "[WARNING] O parâmetro Altura de Deslocamento tem valor negativo. Este valor\n" "é a altura nos deslocamentos entre os cortes, e deve ser positivo. Supondo\n" -" que seja um erro de digitação, o aplicativo converterá o valor para positivo.\n" +" que seja um erro de digitação, o aplicativo converterá o valor para " +"positivo.\n" "Verifique o código CNC resultante (G-Code, etc.)." -#: camlib.py:5677 camlib.py:5940 +#: camlib.py:5679 camlib.py:5942 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" msgstr "" -"[WARNING] O parâmetro Altura de Deslocamento é zero. Isso é perigoso, ignorando arquivo %s" +"[WARNING] O parâmetro Altura de Deslocamento é zero. Isso é perigoso, " +"ignorando arquivo %s" -#: camlib.py:5807 +#: camlib.py:5809 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR] Esperada uma geometria, recebido %s" -#: camlib.py:5813 +#: camlib.py:5815 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1845,7 +1856,7 @@ msgstr "" "[ERROR_NOTCL] Tentando gerar um trabalho CNC a partir de um objeto Geometria " "sem solid_geometry." -#: camlib.py:5852 +#: camlib.py:5854 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1855,7 +1866,7 @@ msgstr "" "usar na current_geometry.\n" "Altere o valor e tente novamente." -#: camlib.py:6064 +#: camlib.py:6066 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" "[ERROR_NOTCL] Não há dados da ferramenta na geometria da Pasta de Solda." @@ -2201,6 +2212,10 @@ msgstr "" "[ERROR_NOTCL] Não há definições de ferramentas no arquivo. Abortando a " "criação do Excellon." +#: flatcamEditors/FlatCAMExcEditor.py:2078 +msgid "[ERROR] An internal error has ocurred. See shell.\n" +msgstr "[ERROR] Um erro interno ocorreu. Veja shell (linha de comando). \n" + #: flatcamEditors/FlatCAMExcEditor.py:2084 msgid "Creating Excellon." msgstr "Criando Excellon." @@ -2302,12 +2317,12 @@ msgstr "Ferramenta" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4080 #: flatcamGUI/FlatCAMGUI.py:5189 flatcamGUI/FlatCAMGUI.py:5623 -#: flatcamGUI/FlatCAMGUI.py:5900 flatcamGUI/FlatCAMGUI.py:6055 +#: flatcamGUI/FlatCAMGUI.py:5913 flatcamGUI/FlatCAMGUI.py:6068 #: flatcamGUI/ObjectUI.py:259 msgid "Tool dia:" msgstr "Diâmetro da Ferramenta:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6057 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6070 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2316,7 +2331,7 @@ msgstr "" "ser usada na operação." #: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5806 -#: flatcamGUI/FlatCAMGUI.py:6066 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamGUI/FlatCAMGUI.py:6079 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Taxa de Sobreposição:" @@ -2347,13 +2362,13 @@ msgstr "" " devido ao número de caminhos." #: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5822 -#: flatcamGUI/FlatCAMGUI.py:5923 flatcamGUI/FlatCAMGUI.py:6076 +#: flatcamGUI/FlatCAMGUI.py:5936 flatcamGUI/FlatCAMGUI.py:6089 #: flatcamTools/ToolCutOut.py:101 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Margem:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6078 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6091 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2365,12 +2380,12 @@ msgstr "" "ser pintado." #: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5831 -#: flatcamGUI/FlatCAMGUI.py:6087 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamGUI/FlatCAMGUI.py:6100 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Método:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6089 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6102 msgid "" "Algorithm to paint the polygon:
    Standard: Fixed step inwards." "
    Seed-based: Outwards from seed." @@ -2379,31 +2394,31 @@ msgstr "" "
    Baseado em semente: para fora da semente." #: flatcamEditors/FlatCAMGeoEditor.py:480 flatcamGUI/FlatCAMGUI.py:5840 -#: flatcamGUI/FlatCAMGUI.py:6095 flatcamTools/ToolNonCopperClear.py:199 +#: flatcamGUI/FlatCAMGUI.py:6108 flatcamTools/ToolNonCopperClear.py:199 #: flatcamTools/ToolPaint.py:197 msgid "Standard" msgstr "Padrão" #: flatcamEditors/FlatCAMGeoEditor.py:481 flatcamGUI/FlatCAMGUI.py:5841 -#: flatcamGUI/FlatCAMGUI.py:6096 flatcamTools/ToolNonCopperClear.py:200 +#: flatcamGUI/FlatCAMGUI.py:6109 flatcamTools/ToolNonCopperClear.py:200 #: flatcamTools/ToolPaint.py:198 msgid "Seed-based" msgstr "Baseado em semente" #: flatcamEditors/FlatCAMGeoEditor.py:482 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6097 flatcamTools/ToolNonCopperClear.py:201 +#: flatcamGUI/FlatCAMGUI.py:6110 flatcamTools/ToolNonCopperClear.py:201 #: flatcamTools/ToolPaint.py:199 msgid "Straight lines" msgstr "Linhas retas" #: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5847 -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamGUI/FlatCAMGUI.py:6115 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Conectar:" #: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5849 -#: flatcamGUI/FlatCAMGUI.py:6104 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2413,13 +2428,13 @@ msgstr "" "segmentos resultantes para minimizar as elevações de ferramentas." #: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5856 -#: flatcamGUI/FlatCAMGUI.py:6112 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamGUI/FlatCAMGUI.py:6125 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Contorno:" #: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5858 -#: flatcamGUI/FlatCAMGUI.py:6114 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamGUI/FlatCAMGUI.py:6127 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2432,7 +2447,7 @@ msgstr "Pintura" #: flatcamEditors/FlatCAMGeoEditor.py:527 flatcamGUI/FlatCAMGUI.py:639 #: flatcamGUI/FlatCAMGUI.py:1883 flatcamGUI/ObjectUI.py:1320 -#: flatcamTools/ToolPaint.py:340 +#: flatcamTools/ToolPaint.py:343 msgid "Paint Tool" msgstr "Ferramenta de Pintura" @@ -2469,7 +2484,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2707 #: flatcamEditors/FlatCAMGeoEditor.py:2733 #: flatcamEditors/FlatCAMGeoEditor.py:2759 -#: flatcamTools/ToolNonCopperClear.py:817 flatcamTools/ToolProperties.py:104 +#: flatcamTools/ToolNonCopperClear.py:916 flatcamTools/ToolProperties.py:104 msgid "Tools" msgstr "Ferramentas" @@ -2633,7 +2648,7 @@ msgid "Scale Y" msgstr "Redimensionar Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6461 +#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6474 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Fixar Taxa" @@ -2648,7 +2663,7 @@ msgstr "" "usando o Fator de Escala X para ambos os eixos." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6482 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Referência de escala" @@ -4560,7 +4575,7 @@ msgid "&Cutout Tool" msgstr "Ferramenta de Re&corte" #: flatcamGUI/FlatCAMGUI.py:638 flatcamGUI/FlatCAMGUI.py:1882 -#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:285 +#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:336 msgid "NCC Tool" msgstr "Ferramenta NCC" @@ -6140,8 +6155,8 @@ msgid "Replace With" msgstr "Substituir Por" #: flatcamGUI/FlatCAMGUI.py:1667 flatcamGUI/FlatCAMGUI.py:5556 -#: flatcamGUI/FlatCAMGUI.py:6129 flatcamGUI/ObjectUI.py:1369 -#: flatcamTools/ToolPaint.py:248 +#: flatcamGUI/FlatCAMGUI.py:6143 flatcamGUI/ObjectUI.py:1369 +#: flatcamTools/ToolPaint.py:249 msgid "All" msgstr "Todos" @@ -6885,7 +6900,7 @@ msgstr "" "ferramenta para cortar polígonos externos." #: flatcamGUI/FlatCAMGUI.py:4082 flatcamGUI/FlatCAMGUI.py:4761 -#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/ObjectUI.py:785 +#: flatcamGUI/FlatCAMGUI.py:5915 flatcamGUI/ObjectUI.py:785 #: flatcamGUI/ObjectUI.py:801 msgid "Diameter of the cutting tool." msgstr "Diâmetro da ferramenta" @@ -7146,10 +7161,10 @@ msgstr "TZ" #: flatcamGUI/FlatCAMGUI.py:4352 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/FlatCAMGUI.py:5496 flatcamGUI/FlatCAMGUI.py:5788 -#: flatcamGUI/FlatCAMGUI.py:5889 flatcamGUI/FlatCAMGUI.py:5983 -#: flatcamGUI/FlatCAMGUI.py:6042 flatcamGUI/FlatCAMGUI.py:6145 -#: flatcamGUI/FlatCAMGUI.py:6206 flatcamGUI/FlatCAMGUI.py:6405 -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/FlatCAMGUI.py:5996 +#: flatcamGUI/FlatCAMGUI.py:6055 flatcamGUI/FlatCAMGUI.py:6158 +#: flatcamGUI/FlatCAMGUI.py:6219 flatcamGUI/FlatCAMGUI.py:6418 +#: flatcamGUI/FlatCAMGUI.py:6545 msgid "Parameters:" msgstr "Parâmetros:" @@ -7380,7 +7395,7 @@ msgstr "" "para a furação." #: flatcamGUI/FlatCAMGUI.py:4635 flatcamGUI/FlatCAMGUI.py:5222 -#: flatcamGUI/FlatCAMGUI.py:6341 flatcamGUI/ObjectUI.py:592 +#: flatcamGUI/FlatCAMGUI.py:6354 flatcamGUI/ObjectUI.py:592 #: flatcamGUI/ObjectUI.py:1068 flatcamTools/ToolCalculators.py:106 msgid "Cut Z:" msgstr "Profundidade de Corte:" @@ -7915,8 +7930,7 @@ msgstr "Velocidade do Spindle:" msgid "" "The postprocessor file that dictates\n" "Machine Code output." -msgstr "" -"Arquivo de pós-processamento que define o G-Code de saída." +msgstr "Arquivo de pós-processamento que define o G-Code de saída." #: flatcamGUI/FlatCAMGUI.py:5364 msgid "Geometry Adv. Options" @@ -8250,7 +8264,7 @@ msgstr "dwelltime = tempo de espera para o spindle atingir sua vel. RPM" msgid "NCC Tool Options" msgstr "Opções Área Sem Cobre (NCC)" -#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6543 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6556 msgid "Tools dia:" msgstr "Diâmetro da Ferramenta:" @@ -8315,11 +8329,36 @@ msgstr "" "retiradas com a ferramenta anterior.\n" "Se não estiver marcada, usa o algoritmo padrão." -#: flatcamGUI/FlatCAMGUI.py:5886 +#: flatcamGUI/FlatCAMGUI.py:5879 flatcamTools/ToolNonCopperClear.py:239 +msgid "Itself" +msgstr "Se" + +#: flatcamGUI/FlatCAMGUI.py:5880 flatcamGUI/FlatCAMGUI.py:6031 +#: flatcamTools/ToolDblSided.py:132 flatcamTools/ToolNonCopperClear.py:240 +msgid "Box" +msgstr "Caixa" + +#: flatcamGUI/FlatCAMGUI.py:5881 flatcamTools/ToolNonCopperClear.py:241 +msgid "Reference:" +msgstr "Referência:" + +#: flatcamGUI/FlatCAMGUI.py:5883 +msgid "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." +msgstr "" +"Ao escolher a opção 'Se', a extensão de compensação não cobre\n" +"é baseado no objeto que é cobre limpo.\n" +"Escolhendo a opção de 'Caixa' fará limpeza de cobre não dentro da caixa\n" +"especificado por outro objeto diferente daquele que é o cobre limpo." + +#: flatcamGUI/FlatCAMGUI.py:5899 msgid "Cutout Tool Options" msgstr "Opções da Ferramenta de Recorte" -#: flatcamGUI/FlatCAMGUI.py:5891 flatcamGUI/ObjectUI.py:399 +#: flatcamGUI/FlatCAMGUI.py:5904 flatcamGUI/ObjectUI.py:399 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8328,11 +8367,11 @@ msgstr "" "Cria caminhos da ferramenta para cortar\n" "o PCB e separá-lo da placa original." -#: flatcamGUI/FlatCAMGUI.py:5909 flatcamTools/ToolCutOut.py:77 +#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:77 msgid "Obj kind:" msgstr "Tipo de obj:" -#: flatcamGUI/FlatCAMGUI.py:5911 flatcamTools/ToolCutOut.py:79 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:79 msgid "" "Choice of what kind the object we want to cutout is.
    - Single: " "contain a single PCB Gerber outline object.
    - Panel: a panel PCB " @@ -8344,16 +8383,16 @@ msgstr "" "PCB Gerber objeto, que é feito\n" "fora de muitos contornos PCB individuais." -#: flatcamGUI/FlatCAMGUI.py:5918 flatcamGUI/FlatCAMGUI.py:6128 +#: flatcamGUI/FlatCAMGUI.py:5931 flatcamGUI/FlatCAMGUI.py:6141 #: flatcamTools/ToolCutOut.py:85 flatcamTools/ToolPaint.py:247 msgid "Single" msgstr "Único" -#: flatcamGUI/FlatCAMGUI.py:5919 flatcamTools/ToolCutOut.py:86 +#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:86 msgid "Panel" msgstr "Painel" -#: flatcamGUI/FlatCAMGUI.py:5925 +#: flatcamGUI/FlatCAMGUI.py:5938 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -8361,11 +8400,11 @@ msgstr "" "Distância dos objetos\n" "para desenhar o recorte." -#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:111 +#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:111 msgid "Gap size:" msgstr "Tamanho da Ponte:" -#: flatcamGUI/FlatCAMGUI.py:5934 +#: flatcamGUI/FlatCAMGUI.py:5947 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8374,11 +8413,11 @@ msgstr "" "Tamanho das pontes no caminho da ferramenta\n" "que permanecerão para manter a placa no lugar." -#: flatcamGUI/FlatCAMGUI.py:5942 flatcamTools/ToolCutOut.py:149 +#: flatcamGUI/FlatCAMGUI.py:5955 flatcamTools/ToolCutOut.py:149 msgid "Gaps:" msgstr "Pontes:" -#: flatcamGUI/FlatCAMGUI.py:5944 +#: flatcamGUI/FlatCAMGUI.py:5957 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8400,19 +8439,19 @@ msgstr "" "- 2TB: 2*topo + 2*baixo\n" "- 8: 2*esquerda + 2*direita + 2*topo + 2*baixo" -#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolCutOut.py:130 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolCutOut.py:130 msgid "Convex Sh.:" msgstr "Forma Convexa:" -#: flatcamGUI/FlatCAMGUI.py:5967 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "Create a convex shape surrounding the entire PCB." msgstr "Crie uma forma convexa ao redor de toda a PCB." -#: flatcamGUI/FlatCAMGUI.py:5980 +#: flatcamGUI/FlatCAMGUI.py:5993 msgid "2Sided Tool Options" msgstr "Opções de PCB 2 Faces" -#: flatcamGUI/FlatCAMGUI.py:5985 +#: flatcamGUI/FlatCAMGUI.py:5998 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8420,36 +8459,32 @@ msgstr "" "Uma ferramenta para ajudar na criação de um\n" "PCB de dupla face usando furos de alinhamento." -#: flatcamGUI/FlatCAMGUI.py:5995 flatcamTools/ToolDblSided.py:234 +#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:234 msgid "Drill diam.:" msgstr "Diâmetro da Broca:" -#: flatcamGUI/FlatCAMGUI.py:5997 flatcamTools/ToolDblSided.py:225 +#: flatcamGUI/FlatCAMGUI.py:6010 flatcamTools/ToolDblSided.py:225 #: flatcamTools/ToolDblSided.py:236 msgid "Diameter of the drill for the alignment holes." msgstr "Diâmetro da broca para os furos de alinhamento." -#: flatcamGUI/FlatCAMGUI.py:6006 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Espelhar Eixo:" -#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:6021 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Espelha verticalmente (X) ou horizontalmente (Y)." -#: flatcamGUI/FlatCAMGUI.py:6017 flatcamTools/ToolDblSided.py:131 +#: flatcamGUI/FlatCAMGUI.py:6030 flatcamTools/ToolDblSided.py:131 msgid "Point" msgstr "Ponto" -#: flatcamGUI/FlatCAMGUI.py:6018 flatcamTools/ToolDblSided.py:132 -msgid "Box" -msgstr "Caixa" - -#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:6032 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Eixo de Referência:" -#: flatcamGUI/FlatCAMGUI.py:6021 +#: flatcamGUI/FlatCAMGUI.py:6034 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8458,11 +8493,11 @@ msgstr "" "O eixo deve passar por um ponto ou cortar\n" "no meio uma caixa especificada (em um objeto Geometria)." -#: flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamGUI/FlatCAMGUI.py:6050 msgid "Paint Tool Options" msgstr "Opções de Ferramenta de Pintura" -#: flatcamGUI/FlatCAMGUI.py:6044 flatcamGUI/ObjectUI.py:1311 +#: flatcamGUI/FlatCAMGUI.py:6057 flatcamGUI/ObjectUI.py:1311 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8473,7 +8508,7 @@ msgstr "" "inteira de um polígono (remove todo o cobre).\n" "Você será solicitado a clicar no polígono desejado." -#: flatcamGUI/FlatCAMGUI.py:6068 +#: flatcamGUI/FlatCAMGUI.py:6081 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8481,19 +8516,23 @@ msgstr "" "Quanta (fração) da largura da ferramenta\n" "para sobrepor a cada passe." -#: flatcamGUI/FlatCAMGUI.py:6122 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6135 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Seleção:" -#: flatcamGUI/FlatCAMGUI.py:6124 +#: flatcamGUI/FlatCAMGUI.py:6137 msgid "How to select the polygons to paint." msgstr "Como selecionar os polígonos para pintar." -#: flatcamGUI/FlatCAMGUI.py:6142 +#: flatcamGUI/FlatCAMGUI.py:6142 flatcamTools/ToolPaint.py:248 +msgid "Area" +msgstr "Área" + +#: flatcamGUI/FlatCAMGUI.py:6155 msgid "Film Tool Options" msgstr "Opções da Ferramenta de Filme" -#: flatcamGUI/FlatCAMGUI.py:6147 +#: flatcamGUI/FlatCAMGUI.py:6160 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8503,11 +8542,11 @@ msgstr "" "ou Geometria FlatCAM.\n" "O arquivo é salvo no formato SVG." -#: flatcamGUI/FlatCAMGUI.py:6158 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Tipo de Filme:" -#: flatcamGUI/FlatCAMGUI.py:6160 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8523,11 +8562,11 @@ msgstr "" "em branco em uma tela preta.\n" "O formato do arquivo do filme é SVG ." -#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6184 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Borda:" -#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8547,11 +8586,11 @@ msgstr "" "brancos como o restante e podem ser confundidos\n" "com os limites, se não for usada essa borda)." -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Espessura da Linha:" -#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8562,11 +8601,11 @@ msgstr "" "A linha que envolve cada recurso SVG será mais espessa ou mais fina.\n" "Os recursos mais finos podem ser afetados por esse parâmetro." -#: flatcamGUI/FlatCAMGUI.py:6203 +#: flatcamGUI/FlatCAMGUI.py:6216 msgid "Panelize Tool Options" msgstr "Opções da Ferramenta Criar Painel" -#: flatcamGUI/FlatCAMGUI.py:6208 +#: flatcamGUI/FlatCAMGUI.py:6221 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8576,11 +8615,11 @@ msgstr "" "Cada elemento é uma cópia do objeto de origem espaçado\n" "dos demais por uma distância X, Y." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6232 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Espaço entre Colunas:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6234 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8588,11 +8627,11 @@ msgstr "" "Espaçamento desejado entre colunas do painel.\n" "Nas unidades atuais." -#: flatcamGUI/FlatCAMGUI.py:6229 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6242 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Espaço entre Linhas:" -#: flatcamGUI/FlatCAMGUI.py:6231 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6244 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8600,35 +8639,35 @@ msgstr "" "Espaçamento desejado entre linhas do painel.\n" "Nas unidades atuais." -#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6252 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Colunas:" -#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6254 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Número de colunas do painel desejado" -#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6261 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Linhas:" -#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6263 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Número de linhas do painel desejado" -#: flatcamGUI/FlatCAMGUI.py:6256 flatcamTools/ToolPanelize.py:181 +#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:181 msgid "Gerber" msgstr "Gerber" -#: flatcamGUI/FlatCAMGUI.py:6257 flatcamTools/ToolPanelize.py:182 +#: flatcamGUI/FlatCAMGUI.py:6270 flatcamTools/ToolPanelize.py:182 msgid "Geo" msgstr "Geo" -#: flatcamGUI/FlatCAMGUI.py:6258 +#: flatcamGUI/FlatCAMGUI.py:6271 msgid "Panel Type:" msgstr "Tipo de Painel:" -#: flatcamGUI/FlatCAMGUI.py:6260 +#: flatcamGUI/FlatCAMGUI.py:6273 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8638,11 +8677,11 @@ msgstr "" "- Gerber\n" "- Geometria" -#: flatcamGUI/FlatCAMGUI.py:6269 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "Constrain within:" msgstr "Restringir dentro de:" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6284 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8656,11 +8695,11 @@ msgstr "" "o painel final terá tantas colunas e linhas quantas\n" "couberem completamente dentro de área selecionada." -#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6293 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Largura (DX):" -#: flatcamGUI/FlatCAMGUI.py:6282 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6295 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8668,11 +8707,11 @@ msgstr "" "A largura (DX) na qual o painel deve caber.\n" "Nas unidades atuais." -#: flatcamGUI/FlatCAMGUI.py:6289 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6302 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Altura (DY):" -#: flatcamGUI/FlatCAMGUI.py:6291 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6304 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8680,15 +8719,15 @@ msgstr "" "A altura (DY) na qual o painel deve se ajustar.\n" "Nas unidades atuais." -#: flatcamGUI/FlatCAMGUI.py:6305 +#: flatcamGUI/FlatCAMGUI.py:6318 msgid "Calculators Tool Options" msgstr "Opções das Calculadoras" -#: flatcamGUI/FlatCAMGUI.py:6308 +#: flatcamGUI/FlatCAMGUI.py:6321 msgid "V-Shape Tool Calculator:" msgstr "Calculadora Ferramenta Ponta-em-V:" -#: flatcamGUI/FlatCAMGUI.py:6310 +#: flatcamGUI/FlatCAMGUI.py:6323 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8698,11 +8737,11 @@ msgstr "" "ferramenta em forma de V, com o diâmetro da ponta, o ângulo da ponta e a\n" "profundidade de corte como parâmetros." -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:92 +#: flatcamGUI/FlatCAMGUI.py:6334 flatcamTools/ToolCalculators.py:92 msgid "Tip Diameter:" msgstr "Diâmetro da Ponta:" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6336 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8710,11 +8749,11 @@ msgstr "" "Diâmetro da ponta da ferramenta.\n" "Especificado pelo fabricante." -#: flatcamGUI/FlatCAMGUI.py:6331 +#: flatcamGUI/FlatCAMGUI.py:6344 msgid "Tip angle:" msgstr "Ângulo da Ponta:" -#: flatcamGUI/FlatCAMGUI.py:6333 +#: flatcamGUI/FlatCAMGUI.py:6346 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8722,7 +8761,7 @@ msgstr "" "Ângulo na ponta da ferramenta.\n" "Especificado pelo fabricante." -#: flatcamGUI/FlatCAMGUI.py:6343 +#: flatcamGUI/FlatCAMGUI.py:6356 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8730,11 +8769,11 @@ msgstr "" "Profundidade para cortar o material.\n" "No objeto CNC, é o parâmetro Profundidade de Corte (z_cut)." -#: flatcamGUI/FlatCAMGUI.py:6350 +#: flatcamGUI/FlatCAMGUI.py:6363 msgid "ElectroPlating Calculator:" msgstr "Calculadora ElectroPlating:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:148 +#: flatcamGUI/FlatCAMGUI.py:6365 flatcamTools/ToolCalculators.py:148 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8744,27 +8783,27 @@ msgstr "" "(via/pad/broca) usando um método como tinta grahite ou tinta \n" "hipofosfito de cálcio ou cloreto de paládio." -#: flatcamGUI/FlatCAMGUI.py:6362 flatcamTools/ToolCalculators.py:157 +#: flatcamGUI/FlatCAMGUI.py:6375 flatcamTools/ToolCalculators.py:157 msgid "Board Length:" msgstr "Comprimento da Placa:" -#: flatcamGUI/FlatCAMGUI.py:6364 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:161 msgid "This is the board length. In centimeters." msgstr "Comprimento da placa, em centímetros." -#: flatcamGUI/FlatCAMGUI.py:6370 flatcamTools/ToolCalculators.py:163 +#: flatcamGUI/FlatCAMGUI.py:6383 flatcamTools/ToolCalculators.py:163 msgid "Board Width:" msgstr "Largura da Placa:" -#: flatcamGUI/FlatCAMGUI.py:6372 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6385 flatcamTools/ToolCalculators.py:167 msgid "This is the board width.In centimeters." msgstr "Largura da placa, em centímetros." -#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:169 +#: flatcamGUI/FlatCAMGUI.py:6390 flatcamTools/ToolCalculators.py:169 msgid "Current Density:" msgstr "Densidade de Corrente:" -#: flatcamGUI/FlatCAMGUI.py:6380 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6393 flatcamTools/ToolCalculators.py:173 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8772,21 +8811,21 @@ msgstr "" "Densidade de corrente para passar pela placa.\n" "Em Ampères por Pés Quadrados ASF." -#: flatcamGUI/FlatCAMGUI.py:6386 flatcamTools/ToolCalculators.py:176 +#: flatcamGUI/FlatCAMGUI.py:6399 flatcamTools/ToolCalculators.py:176 msgid "Copper Growth:" msgstr "Espessura do Cobre:" -#: flatcamGUI/FlatCAMGUI.py:6389 flatcamTools/ToolCalculators.py:180 +#: flatcamGUI/FlatCAMGUI.py:6402 flatcamTools/ToolCalculators.py:180 msgid "" "How thick the copper growth is intended to be.\n" "In microns." msgstr "Espessura da camada de cobre, em microns." -#: flatcamGUI/FlatCAMGUI.py:6402 +#: flatcamGUI/FlatCAMGUI.py:6415 msgid "Transform Tool Options" msgstr "Opções Transformações" -#: flatcamGUI/FlatCAMGUI.py:6407 +#: flatcamGUI/FlatCAMGUI.py:6420 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8794,47 +8833,47 @@ msgstr "" "Várias transformações que podem ser aplicadas\n" "a um objeto FlatCAM." -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6430 msgid "Rotate Angle:" msgstr "Ângulo de Giro:" -#: flatcamGUI/FlatCAMGUI.py:6419 +#: flatcamGUI/FlatCAMGUI.py:6432 msgid "Angle for rotation. In degrees." msgstr "Ângulo de rotação, em graus." -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Skew_X angle:" msgstr "Ângulo de Inclinação X:" -#: flatcamGUI/FlatCAMGUI.py:6428 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Ângulo de inclinação no eixo X, em graus." -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Skew_Y angle:" msgstr "Ângulo de Inclinação Y:" -#: flatcamGUI/FlatCAMGUI.py:6437 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Ângulo de inclinação no eixo X, em graus." -#: flatcamGUI/FlatCAMGUI.py:6444 +#: flatcamGUI/FlatCAMGUI.py:6457 msgid "Scale_X factor:" msgstr "Fator de Escala X:" -#: flatcamGUI/FlatCAMGUI.py:6446 +#: flatcamGUI/FlatCAMGUI.py:6459 msgid "Factor for scaling on X axis." msgstr "Fator para redimensionamento no eixo X." -#: flatcamGUI/FlatCAMGUI.py:6453 +#: flatcamGUI/FlatCAMGUI.py:6466 msgid "Scale_Y factor:" msgstr "Fator de Escala Y:" -#: flatcamGUI/FlatCAMGUI.py:6455 +#: flatcamGUI/FlatCAMGUI.py:6468 msgid "Factor for scaling on Y axis." msgstr "Fator para redimensionamento no eixo Y." -#: flatcamGUI/FlatCAMGUI.py:6463 +#: flatcamGUI/FlatCAMGUI.py:6476 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8842,7 +8881,7 @@ msgstr "" "Redimensiona o(s) objeto(s) selecionado(s)\n" "usando o Fator de Escala X para ambos os eixos." -#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6484 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8853,27 +8892,27 @@ msgstr "" "de origem quando marcado, e o centro da maior caixa delimitadora\n" "do objeto selecionado quando desmarcado." -#: flatcamGUI/FlatCAMGUI.py:6480 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "Offset_X val:" msgstr "Deslocamento X:" -#: flatcamGUI/FlatCAMGUI.py:6482 +#: flatcamGUI/FlatCAMGUI.py:6495 msgid "Distance to offset on X axis. In current units." msgstr "Distância para deslocar no eixo X, nas unidades atuais." -#: flatcamGUI/FlatCAMGUI.py:6489 +#: flatcamGUI/FlatCAMGUI.py:6502 msgid "Offset_Y val:" msgstr "Deslocamento Y:" -#: flatcamGUI/FlatCAMGUI.py:6491 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Distance to offset on Y axis. In current units." msgstr "Distância para deslocar no eixo Y, nas unidades atuais." -#: flatcamGUI/FlatCAMGUI.py:6497 +#: flatcamGUI/FlatCAMGUI.py:6510 msgid "Mirror Reference" msgstr "Referência de Espelho" -#: flatcamGUI/FlatCAMGUI.py:6499 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -8894,11 +8933,11 @@ msgstr "" "- ou digitar as coordenadas no formato (x, y) no campo\n" " Ponto de Ref. e clicar em Espelhar no X(Y)" -#: flatcamGUI/FlatCAMGUI.py:6510 +#: flatcamGUI/FlatCAMGUI.py:6523 msgid " Mirror Ref. Point:" msgstr "Ponto Ref. Espelho:" -#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6525 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -8908,11 +8947,11 @@ msgstr "" "O 'x' em (x, y) será usado ao usar Espelhar em X e\n" "o 'y' em (x, y) será usado ao usar Espelhar em Y." -#: flatcamGUI/FlatCAMGUI.py:6529 +#: flatcamGUI/FlatCAMGUI.py:6542 msgid "SolderPaste Tool Options" msgstr "Opções da Ferramenta Pasta de Solda" -#: flatcamGUI/FlatCAMGUI.py:6534 +#: flatcamGUI/FlatCAMGUI.py:6547 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -8920,48 +8959,48 @@ msgstr "" "Uma ferramenta para criar G-Code para dispensar pasta\n" "de solda em um PCB." -#: flatcamGUI/FlatCAMGUI.py:6545 +#: flatcamGUI/FlatCAMGUI.py:6558 msgid "Diameters of nozzle tools, separated by ','" msgstr "Diâmetros dos bicos, separados por ','" -#: flatcamGUI/FlatCAMGUI.py:6552 +#: flatcamGUI/FlatCAMGUI.py:6565 msgid "New Nozzle Dia:" msgstr "Diâmetro do Novo Bico:" -#: flatcamGUI/FlatCAMGUI.py:6554 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" "Diâmetro da nova ferramenta Bico para adicionar na tabela de ferramentas" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6575 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Altura Inicial:" -#: flatcamGUI/FlatCAMGUI.py:6564 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "A altura (Z) que inicia a distribuição de pasta de solda." -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6584 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Altura para Distribuir:" -#: flatcamGUI/FlatCAMGUI.py:6573 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "Altura (Z) para distribuir a pasta de solda." -#: flatcamGUI/FlatCAMGUI.py:6580 flatcamTools/ToolSolderPaste.py:182 +#: flatcamGUI/FlatCAMGUI.py:6593 flatcamTools/ToolSolderPaste.py:182 msgid "Z Dispense Stop:" msgstr "Altura Final:" -#: flatcamGUI/FlatCAMGUI.py:6582 flatcamTools/ToolSolderPaste.py:184 +#: flatcamGUI/FlatCAMGUI.py:6595 flatcamTools/ToolSolderPaste.py:184 msgid "The height (Z) when solder paste dispensing stops." msgstr "Altura (Z) após a distribuição de pasta de solda." -#: flatcamGUI/FlatCAMGUI.py:6589 flatcamTools/ToolSolderPaste.py:190 +#: flatcamGUI/FlatCAMGUI.py:6602 flatcamTools/ToolSolderPaste.py:190 msgid "Z Travel:" msgstr "Altura para Deslocamento:" -#: flatcamGUI/FlatCAMGUI.py:6591 flatcamTools/ToolSolderPaste.py:192 +#: flatcamGUI/FlatCAMGUI.py:6604 flatcamTools/ToolSolderPaste.py:192 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -8969,19 +9008,19 @@ msgstr "" "Altura (Z) para deslocamento entre pads\n" "(sem dispensar pasta de solda)." -#: flatcamGUI/FlatCAMGUI.py:6599 flatcamTools/ToolSolderPaste.py:199 +#: flatcamGUI/FlatCAMGUI.py:6612 flatcamTools/ToolSolderPaste.py:199 msgid "Z Toolchange:" msgstr "Altura Troca de Ferram.:" -#: flatcamGUI/FlatCAMGUI.py:6601 flatcamTools/ToolSolderPaste.py:201 +#: flatcamGUI/FlatCAMGUI.py:6614 flatcamTools/ToolSolderPaste.py:201 msgid "The height (Z) for tool (nozzle) change." msgstr "Altura (Z) para trocar ferramenta (bico)." -#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:207 +#: flatcamGUI/FlatCAMGUI.py:6621 flatcamTools/ToolSolderPaste.py:207 msgid "XY Toolchange:" msgstr "XY Troca de Ferra.:" -#: flatcamGUI/FlatCAMGUI.py:6610 flatcamTools/ToolSolderPaste.py:209 +#: flatcamGUI/FlatCAMGUI.py:6623 flatcamTools/ToolSolderPaste.py:209 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -8989,19 +9028,19 @@ msgstr "" "Posição X,Y para trocar ferramenta (bico).\n" "O formato é (x, y) onde x e y são números reais." -#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:216 +#: flatcamGUI/FlatCAMGUI.py:6631 flatcamTools/ToolSolderPaste.py:216 msgid "Feedrate X-Y:" msgstr "Avanço XY:" -#: flatcamGUI/FlatCAMGUI.py:6620 flatcamTools/ToolSolderPaste.py:218 +#: flatcamGUI/FlatCAMGUI.py:6633 flatcamTools/ToolSolderPaste.py:218 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Avanço (velocidade) para movimento no plano XY." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:224 +#: flatcamGUI/FlatCAMGUI.py:6640 flatcamTools/ToolSolderPaste.py:224 msgid "Feedrate Z:" msgstr "Avanço Z:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:226 +#: flatcamGUI/FlatCAMGUI.py:6642 flatcamTools/ToolSolderPaste.py:226 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." @@ -9009,11 +9048,11 @@ msgstr "" "Avanço (velocidade) para movimento vertical\n" "(no plano Z)." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:233 +#: flatcamGUI/FlatCAMGUI.py:6650 flatcamTools/ToolSolderPaste.py:233 msgid "Feedrate Z Dispense:" msgstr "Avanço Z Distribuição:" -#: flatcamGUI/FlatCAMGUI.py:6639 +#: flatcamGUI/FlatCAMGUI.py:6652 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -9021,11 +9060,11 @@ msgstr "" "Avanço (velocidade) para subir verticalmente\n" "para a posição Dispensar (no plano Z)." -#: flatcamGUI/FlatCAMGUI.py:6647 flatcamTools/ToolSolderPaste.py:242 +#: flatcamGUI/FlatCAMGUI.py:6660 flatcamTools/ToolSolderPaste.py:242 msgid "Spindle Speed FWD:" msgstr "Velocidade Spindle FWD:" -#: flatcamGUI/FlatCAMGUI.py:6649 flatcamTools/ToolSolderPaste.py:244 +#: flatcamGUI/FlatCAMGUI.py:6662 flatcamTools/ToolSolderPaste.py:244 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -9033,19 +9072,19 @@ msgstr "" "A velocidade do dispensador ao empurrar a pasta de solda\n" "através do bico do distribuidor." -#: flatcamGUI/FlatCAMGUI.py:6657 flatcamTools/ToolSolderPaste.py:251 +#: flatcamGUI/FlatCAMGUI.py:6670 flatcamTools/ToolSolderPaste.py:251 msgid "Dwell FWD:" msgstr "Espera FWD:" -#: flatcamGUI/FlatCAMGUI.py:6659 flatcamTools/ToolSolderPaste.py:253 +#: flatcamGUI/FlatCAMGUI.py:6672 flatcamTools/ToolSolderPaste.py:253 msgid "Pause after solder dispensing." msgstr "Pausa após a dispensação de solda." -#: flatcamGUI/FlatCAMGUI.py:6666 flatcamTools/ToolSolderPaste.py:259 +#: flatcamGUI/FlatCAMGUI.py:6679 flatcamTools/ToolSolderPaste.py:259 msgid "Spindle Speed REV:" msgstr "Velocidade Spindle REV:" -#: flatcamGUI/FlatCAMGUI.py:6668 flatcamTools/ToolSolderPaste.py:261 +#: flatcamGUI/FlatCAMGUI.py:6681 flatcamTools/ToolSolderPaste.py:261 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -9053,11 +9092,11 @@ msgstr "" "A velocidade do dispensador enquanto retrai a pasta de solda\n" "através do bico do dispensador." -#: flatcamGUI/FlatCAMGUI.py:6676 flatcamTools/ToolSolderPaste.py:268 +#: flatcamGUI/FlatCAMGUI.py:6689 flatcamTools/ToolSolderPaste.py:268 msgid "Dwell REV:" msgstr "Espera REV:" -#: flatcamGUI/FlatCAMGUI.py:6678 flatcamTools/ToolSolderPaste.py:270 +#: flatcamGUI/FlatCAMGUI.py:6691 flatcamTools/ToolSolderPaste.py:270 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -9065,23 +9104,23 @@ msgstr "" "Pausa após o dispensador de pasta de solda retrair, para permitir o " "equilíbrio de pressão." -#: flatcamGUI/FlatCAMGUI.py:6685 flatcamTools/ToolSolderPaste.py:276 +#: flatcamGUI/FlatCAMGUI.py:6698 flatcamTools/ToolSolderPaste.py:276 msgid "PostProcessors:" msgstr "Pós-processador:" -#: flatcamGUI/FlatCAMGUI.py:6687 flatcamTools/ToolSolderPaste.py:278 +#: flatcamGUI/FlatCAMGUI.py:6700 flatcamTools/ToolSolderPaste.py:278 msgid "Files that control the GCode generation." msgstr "Arquivos que controlam a geração de G-Code." -#: flatcamGUI/FlatCAMGUI.py:6717 flatcamGUI/FlatCAMGUI.py:6723 +#: flatcamGUI/FlatCAMGUI.py:6730 flatcamGUI/FlatCAMGUI.py:6736 msgid "Idle." msgstr "Ocioso." -#: flatcamGUI/FlatCAMGUI.py:6747 +#: flatcamGUI/FlatCAMGUI.py:6760 msgid "Application started ..." msgstr "Aplicativo iniciado ..." -#: flatcamGUI/FlatCAMGUI.py:6748 +#: flatcamGUI/FlatCAMGUI.py:6761 msgid "Hello!" msgstr "Olá!" @@ -9282,7 +9321,7 @@ msgstr "" msgid "Clear N-copper:" msgstr "Limpa N-cobre:" -#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:240 +#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:285 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -9602,11 +9641,12 @@ msgid "" "- Out(side) -> The tool cut will follow the geometry line on the outside." msgstr "" "O valor para Deslocamento pode ser:\n" -"- Caminho -> Não há deslocamento, o corte da ferramenta será feito sobre " -"a linha da geometria.\n" -"- In(terno) -> O corte da ferramenta seguirá a geometria interna. Será criado " -"um 'bolso'.\n" -"- Ex(terno) -> O corte da ferramenta seguirá no lado externo da linha da geometria.\n" +"- Caminho -> Não há deslocamento, o corte da ferramenta será feito sobre a " +"linha da geometria.\n" +"- In(terno) -> O corte da ferramenta seguirá a geometria interna. Será " +"criado um 'bolso'.\n" +"- Ex(terno) -> O corte da ferramenta seguirá no lado externo da linha da " +"geometria.\n" "- Personalizado -> Será considerado o valor digitado." #: flatcamGUI/ObjectUI.py:913 @@ -9629,8 +9669,8 @@ msgstr "" "múltiplas profundidades.\n" "Para Acabamento, pode-se escolher uma taxa de avanço mais alta, sem multi-" "profundidade.\n" -"Para Isolação, usa-se uma velocidade de avanço menor, pois é usada " -"uma broca com ponta fina." +"Para Isolação, usa-se uma velocidade de avanço menor, pois é usada uma broca " +"com ponta fina." #: flatcamGUI/ObjectUI.py:922 msgid "" @@ -9659,8 +9699,8 @@ msgstr "" "V. O ajuste desses dois valores ajustará o parâmetro Corte Z, como\n" "a largura do corte no material será igual ao valor da coluna Diâmetro da " "ferramenta dessa tabela.\n" -"Escolher o tipo de ferramenta Em Forma de V automaticamente alterará o " -"tipo de operação para Isolação." +"Escolher o tipo de ferramenta Em Forma de V automaticamente alterará o tipo " +"de operação para Isolação." #: flatcamGUI/ObjectUI.py:934 msgid "" @@ -9919,8 +9959,8 @@ msgstr "" "Ferramentas usadas para o corte no Trabalho CNC.\n" "O diâmetro da ferramenta é usado para plotagem na tela.\n" "A entrada 'Deslocamento' define um deslocamento para o corte.\n" -"'Deslocamento' pode ser dentro, fora, no caminho (nenhum) e personalizado. " -"A entrada\n" +"'Deslocamento' pode ser dentro, fora, no caminho (nenhum) e personalizado. A " +"entrada\n" "'Tipo' é apenas informativa e permite conhecer a necessidade de usar a " "ferramenta atual.\n" "Pode ser Desbaste, Acabamento ou Isolação.\n" @@ -10331,7 +10371,9 @@ msgstr "" "do objeto Geometria usado como uma geometria de recorte." #: flatcamTools/ToolCutOut.py:358 flatcamTools/ToolCutOut.py:552 -#: flatcamTools/ToolNonCopperClear.py:669 flatcamTools/ToolPaint.py:768 +#: flatcamTools/ToolNonCopperClear.py:743 +#: flatcamTools/ToolNonCopperClear.py:751 +#: flatcamTools/ToolNonCopperClear.py:759 flatcamTools/ToolPaint.py:774 #: flatcamTools/ToolPanelize.py:353 flatcamTools/ToolPanelize.py:368 #: flatcamTools/ToolSub.py:239 flatcamTools/ToolSub.py:252 #: flatcamTools/ToolSub.py:432 flatcamTools/ToolSub.py:445 @@ -10401,7 +10443,7 @@ msgstr "" msgid "[success] Any form CutOut operation finished." msgstr "[success] Operação de Recorte Livre finalizada." -#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:772 +#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:778 #: flatcamTools/ToolPanelize.py:359 #, python-format msgid "[ERROR_NOTCL] Object not found: %s" @@ -10544,15 +10586,15 @@ msgstr "" "As coordenadas (x, y) são capturadas pressionando a tecla SHIFT\n" "e clicar o botão esquerdo do mouse na tela ou inseridas manualmente." -#: flatcamTools/ToolDblSided.py:182 +#: flatcamTools/ToolDblSided.py:182 flatcamTools/ToolNonCopperClear.py:260 msgid "Gerber Reference Box Object" msgstr "Objeto Caixa de Referência Gerber" -#: flatcamTools/ToolDblSided.py:183 +#: flatcamTools/ToolDblSided.py:183 flatcamTools/ToolNonCopperClear.py:261 msgid "Excellon Reference Box Object" msgstr "Objeto Caixa de Referência Excellon" -#: flatcamTools/ToolDblSided.py:184 +#: flatcamTools/ToolDblSided.py:184 flatcamTools/ToolNonCopperClear.py:262 msgid "Geometry Reference Box Object" msgstr "Objeto Caixa de Referência de Geometria" @@ -11178,32 +11220,64 @@ msgstr "" "retiradas com a ferramenta anterior.\n" "Se não estiver marcada, usa o algoritmo padrão." -#: flatcamTools/ToolNonCopperClear.py:238 +#: flatcamTools/ToolNonCopperClear.py:243 +msgid "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." +msgstr "" +"- 'Se': a extensão da limpeza não cobre\n" +"é baseado no objeto que é cobre limpo.\n" +"- 'Caixa': fará limpeza não cobre dentro da caixa\n" +"especificado pelo objeto selecionado na referência. Combobox de objetos." + +#: flatcamTools/ToolNonCopperClear.py:254 +msgid "Ref. Type:" +msgstr "Tipo de ref.:" + +#: flatcamTools/ToolNonCopperClear.py:256 +msgid "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." +msgstr "" +"O tipo de objeto FlatCAM a ser usado como referência de limpeza não cobre.\n" +"Pode ser Gerber, Excellon ou Geometria." + +#: flatcamTools/ToolNonCopperClear.py:267 +msgid "Ref. Object:" +msgstr "Objeto de ref.:" + +#: flatcamTools/ToolNonCopperClear.py:269 +msgid "The FlatCAM object to be used as non copper clearing reference." +msgstr "O objeto FlatCAM a ser usado como referência de limpeza não cobre." + +#: flatcamTools/ToolNonCopperClear.py:283 msgid "Generate Geometry" msgstr "Gerar Geometria" -#: flatcamTools/ToolNonCopperClear.py:486 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolNonCopperClear.py:559 flatcamTools/ToolPaint.py:549 #: flatcamTools/ToolSolderPaste.py:763 msgid "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." msgstr "" "[WARNING_NOTCL] Insira um diâmetro de ferramenta para adicionar, no formato " "Flutuante." -#: flatcamTools/ToolNonCopperClear.py:515 flatcamTools/ToolPaint.py:567 +#: flatcamTools/ToolNonCopperClear.py:588 flatcamTools/ToolPaint.py:573 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "" "[WARNING_NOTCL] Adição cancelada. Ferramenta já está na Tabela de " "Ferramentas." -#: flatcamTools/ToolNonCopperClear.py:520 flatcamTools/ToolPaint.py:572 +#: flatcamTools/ToolNonCopperClear.py:593 flatcamTools/ToolPaint.py:578 msgid "[success] New tool added to Tool Table." msgstr "[success] Nova ferramenta adicionada à Tabela de Ferramentas." -#: flatcamTools/ToolNonCopperClear.py:562 flatcamTools/ToolPaint.py:617 +#: flatcamTools/ToolNonCopperClear.py:635 flatcamTools/ToolPaint.py:623 msgid "[success] Tool from Tool Table was edited." msgstr "[sucss] A ferramenta da Tabela de Ferramentas foi editada." -#: flatcamTools/ToolNonCopperClear.py:573 flatcamTools/ToolPaint.py:628 +#: flatcamTools/ToolNonCopperClear.py:646 flatcamTools/ToolPaint.py:634 #: flatcamTools/ToolSolderPaste.py:850 msgid "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " @@ -11212,46 +11286,53 @@ msgstr "" "[WARNING_NOTCL] Editar cancelado. O novo valor de diâmetro já está na tabela " "de ferramentas." -#: flatcamTools/ToolNonCopperClear.py:613 flatcamTools/ToolPaint.py:727 +#: flatcamTools/ToolNonCopperClear.py:686 flatcamTools/ToolPaint.py:733 msgid "[WARNING_NOTCL] Delete failed. Select a tool to delete." msgstr "" "[WARNING_NOTCL] Exclusão falhou. Selecione uma ferramenta para excluir." -#: flatcamTools/ToolNonCopperClear.py:618 flatcamTools/ToolPaint.py:732 +#: flatcamTools/ToolNonCopperClear.py:691 flatcamTools/ToolPaint.py:738 msgid "[success] Tool(s) deleted from Tool Table." msgstr "[success] Ferramenta(s) excluída(s) da Tabela de Ferramentas." -#: flatcamTools/ToolNonCopperClear.py:636 flatcamTools/ToolPaint.py:751 +#: flatcamTools/ToolNonCopperClear.py:709 flatcamTools/ToolPaint.py:757 msgid "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " msgstr "" "[ERROR_NOTCL] O valor de sobreposição deve estar entre 0 (inclusive) e 1 " "(exclusivo)," -#: flatcamTools/ToolNonCopperClear.py:677 -msgid "[ERROR_NOTCL] No Gerber file available." -msgstr "[ERROR_NOTCL] Nenhum arquivo Gerber disponível." +#: flatcamTools/ToolNonCopperClear.py:772 +msgid "[ERROR_NOTCL] No object available." +msgstr "[ERROR_NOTCL] Nenhum objeto disponível." -#: flatcamTools/ToolNonCopperClear.py:715 -#: flatcamTools/ToolNonCopperClear.py:837 +#: flatcamTools/ToolNonCopperClear.py:781 +msgid "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." +msgstr "" +"[ERROR_NOTCL] Não foi possível obter a extensão da área para não ser de " +"cobre limpo." + +#: flatcamTools/ToolNonCopperClear.py:814 +#: flatcamTools/ToolNonCopperClear.py:936 msgid "Clearing Non-Copper areas." msgstr "Limpando áreas Sem-Cobre." -#: flatcamTools/ToolNonCopperClear.py:733 +#: flatcamTools/ToolNonCopperClear.py:832 #, python-format msgid "[success] Non-Copper Clearing with ToolDia = %s started." msgstr "[success] Limpeza de Área Sem-Cobre com Diâmetro = %s iniciada." -#: flatcamTools/ToolNonCopperClear.py:802 +#: flatcamTools/ToolNonCopperClear.py:901 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" -#: flatcamTools/ToolNonCopperClear.py:807 +#: flatcamTools/ToolNonCopperClear.py:906 msgid "[success] NCC Tool finished." msgstr "[success] Retirada de cobre concluída." -#: flatcamTools/ToolNonCopperClear.py:809 +#: flatcamTools/ToolNonCopperClear.py:908 msgid "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." @@ -11260,17 +11341,17 @@ msgstr "" "PCB\n" "não puderam ser retirados. Verifique o resultado." -#: flatcamTools/ToolNonCopperClear.py:855 +#: flatcamTools/ToolNonCopperClear.py:954 #, python-format msgid "[success] Non-Copper Rest Clearing with ToolDia = %s started." msgstr "[success] Limpeza de cobre iniciada com diâmetro = %s." -#: flatcamTools/ToolNonCopperClear.py:953 +#: flatcamTools/ToolNonCopperClear.py:1052 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" -#: flatcamTools/ToolNonCopperClear.py:961 +#: flatcamTools/ToolNonCopperClear.py:1060 msgid "" "[ERROR_NOTCL] NCC Tool finished but could not clear the object with current " "settings." @@ -11393,35 +11474,48 @@ msgstr "" "Pintura será iniciada após o clique.
    Será criado um novo objeto Geometria " "com os caminhos da ferramenta." -#: flatcamTools/ToolPaint.py:736 +#: flatcamTools/ToolPaint.py:742 msgid "geometry_on_paint_button" msgstr "geometry_on_paint_button" -#: flatcamTools/ToolPaint.py:755 flatcamTools/ToolPaint.py:791 +#: flatcamTools/ToolPaint.py:761 flatcamTools/ToolPaint.py:797 msgid "[WARNING_NOTCL] Click inside the desired polygon." msgstr "[WARNING_NOTCL] Clique dentro do polígono desejado." -#: flatcamTools/ToolPaint.py:778 +#: flatcamTools/ToolPaint.py:784 msgid "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." msgstr "[ERROR_NOTCL] Não é possível pintar geometrias MultiGeo ..." -#: flatcamTools/ToolPaint.py:800 flatcamTools/ToolPaint.py:1004 +#: flatcamTools/ToolPaint.py:806 flatcamTools/ToolPaint.py:1083 +#: flatcamTools/ToolPaint.py:1383 msgid "Painting polygon..." msgstr "Pintando o polígono..." -#: flatcamTools/ToolPaint.py:853 +#: flatcamTools/ToolPaint.py:825 +msgid "[WARNING_NOTCL] Click the start point of the paint area." +msgstr "[WARNING_NOTCL] Clique no ponto inicial da área de pintura." + +#: flatcamTools/ToolPaint.py:836 +msgid "[WARNING_NOTCL] Click the end point of the paint area." +msgstr "[WARNING_NOTCL] Clique no ponto final da área de pintura." + +#: flatcamTools/ToolPaint.py:842 +msgid "Done." +msgstr "Pronto." + +#: flatcamTools/ToolPaint.py:932 msgid "[WARNING] No polygon found." msgstr "[WARNING] Nenhum polígono encontrado." -#: flatcamTools/ToolPaint.py:856 +#: flatcamTools/ToolPaint.py:935 msgid "Painting polygon." msgstr "Pintando o polígono." -#: flatcamTools/ToolPaint.py:898 +#: flatcamTools/ToolPaint.py:977 msgid "[ERROR_NOTCL] Geometry could not be painted completely" msgstr "[ERROR_NOTCL] A geometria não pode ser pintada completamente" -#: flatcamTools/ToolPaint.py:924 +#: flatcamTools/ToolPaint.py:1003 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -11432,16 +11526,18 @@ msgstr "" "parâmetros ou uma estratégia diferente de pintura\n" "%s" -#: flatcamTools/ToolPaint.py:966 +#: flatcamTools/ToolPaint.py:1045 #, python-format msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:972 flatcamTools/ToolPaint.py:1271 +#: flatcamTools/ToolPaint.py:1051 flatcamTools/ToolPaint.py:1350 +#: flatcamTools/ToolPaint.py:1641 msgid "Polygon Paint started ..." msgstr "Pintura de polígonos iniciada ..." -#: flatcamTools/ToolPaint.py:1125 flatcamTools/ToolPaint.py:1216 +#: flatcamTools/ToolPaint.py:1204 flatcamTools/ToolPaint.py:1295 +#: flatcamTools/ToolPaint.py:1495 flatcamTools/ToolPaint.py:1586 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11452,7 +11548,7 @@ msgstr "" "parâmetros, ou um método diferente de pintura\n" "%s" -#: flatcamTools/ToolPaint.py:1149 +#: flatcamTools/ToolPaint.py:1228 flatcamTools/ToolPaint.py:1519 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11464,11 +11560,11 @@ msgstr "" "geometria pintada.\n" "Mude os parâmetros de pintura e tente novamente." -#: flatcamTools/ToolPaint.py:1158 +#: flatcamTools/ToolPaint.py:1237 flatcamTools/ToolPaint.py:1528 msgid "[success] Paint All Done." msgstr "[success] Pintura finalizada." -#: flatcamTools/ToolPaint.py:1246 +#: flatcamTools/ToolPaint.py:1325 flatcamTools/ToolPaint.py:1616 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11480,7 +11576,7 @@ msgstr "" "geometria pintada.\n" "Mude os parâmetros de pintura e tente novamente." -#: flatcamTools/ToolPaint.py:1255 +#: flatcamTools/ToolPaint.py:1334 flatcamTools/ToolPaint.py:1625 msgid "[success] Paint All with Rest-Machining done." msgstr "[success] Pintura finalizada." @@ -12128,7 +12224,7 @@ msgstr "[ERROR] ToolSolderPaste.on_view_gcode() -->%s" msgid "Export GCode ..." msgstr "Exportar G-Code ..." -#: flatcamTools/ToolSolderPaste.py:1403 +#: flatcamTools/ToolSolderPaste.py:1407 #, python-format msgid "[success] Solder paste dispenser GCode file saved to: %s" msgstr "" @@ -12452,9 +12548,6 @@ msgstr "Objetos Trabalho CNC não podem ser deslocados." #~ msgid "M-Color " #~ msgstr "M-Cores " -#~ msgid "Done." -#~ msgstr "Pronto." - #~ msgid "Click on CENTER ..." #~ msgstr "Clique no CENTRO ..." diff --git a/locale/ro/LC_MESSAGES/strings.mo b/locale/ro/LC_MESSAGES/strings.mo index b6e6ef2985368efb8151c6338aa66d811343b0ae..f47c7df636d95ca6625a053e2a26776b216a212c 100644 GIT binary patch delta 43420 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 UaNyXk#bvL!QY?IBn>y6;H=rf1^Z)<= delta 41213 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şiere recente< pentru a fi salvat " "a eșuat." -#: FlatCAMApp.py:2976 +#: FlatCAMApp.py:2983 msgid "[ERROR_NOTCL] Failed to open recent projects file for writing." msgstr "" "[ERROR_NOTCL] Deschiderea fişierului cu >proiecte recente< pentru a fi " "salvat a eșuat." -#: FlatCAMApp.py:3053 camlib.py:4469 +#: FlatCAMApp.py:3060 camlib.py:4471 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare internă. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:3054 +#: FlatCAMApp.py:3061 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -177,11 +187,11 @@ msgstr "" "Obiectul ({kind}) a eșuat din cauza: {error} \n" "\n" -#: FlatCAMApp.py:3074 +#: FlatCAMApp.py:3081 msgid "Converting units to " msgstr "Se convertesc unitătile la " -#: FlatCAMApp.py:3153 FlatCAMApp.py:3156 FlatCAMApp.py:3159 FlatCAMApp.py:3162 +#: FlatCAMApp.py:3160 FlatCAMApp.py:3163 FlatCAMApp.py:3166 FlatCAMApp.py:3169 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3258 +#: FlatCAMApp.py:3265 #, python-brace-format msgid "" "FlatCAM
    Version {version} {beta} ({date}) - " @@ -212,40 +222,40 @@ msgstr "" "flatcam/src/Beta/\">aici.
    Sectiunea DOWNLOAD este aici.
    " -#: FlatCAMApp.py:3291 +#: FlatCAMApp.py:3298 msgid "Close" msgstr "Închide" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5315 +#: FlatCAMApp.py:3418 FlatCAMApp.py:5325 msgid "[success] Defaults saved." msgstr "[success] Valorile default au fost salvate." -#: FlatCAMApp.py:3432 +#: FlatCAMApp.py:3439 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" "[ERROR_NOTCL] Fişierul cu valori default de fabrică nu a fost posibil să fie " "deschis." -#: FlatCAMApp.py:3441 +#: FlatCAMApp.py:3448 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" "[ERROR_NOTCL] Parsarea fişierului cu valori default de fabrică a eșuat." -#: FlatCAMApp.py:3455 +#: FlatCAMApp.py:3462 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL]] Salvarea fişierului cu valori default de fabrică intr-un " "fişier a eșuat." -#: FlatCAMApp.py:3459 +#: FlatCAMApp.py:3466 msgid "Factory defaults saved." msgstr "Valori default de fabrică au fost salvate." -#: FlatCAMApp.py:3464 flatcamGUI/FlatCAMGUI.py:3132 +#: FlatCAMApp.py:3471 flatcamGUI/FlatCAMGUI.py:3132 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Aplicația salvează proiectul. Vă rugăm aşteptați ..." -#: FlatCAMApp.py:3469 FlatCAMTranslation.py:164 +#: FlatCAMApp.py:3476 FlatCAMTranslation.py:164 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -253,11 +263,11 @@ msgstr "" "FlatCAM are fişiere/obiecte care au fost modificate. \n" "Dorești să Salvezi proiectul?" -#: FlatCAMApp.py:3472 FlatCAMApp.py:6177 FlatCAMTranslation.py:167 +#: FlatCAMApp.py:3479 FlatCAMApp.py:6192 FlatCAMTranslation.py:167 msgid "Save changes" msgstr "Salvează modificarile." -#: FlatCAMApp.py:3539 +#: FlatCAMApp.py:3546 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -274,45 +284,45 @@ msgstr "" "informatii și rezultatul ar putea să nu fie cel dorit. \n" "Verifică codul G-Code generat." -#: FlatCAMApp.py:3580 +#: FlatCAMApp.py:3587 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Eșuat. Fuzionarea Excellon functionează doar cu obiecte de tip " "Excellon." -#: FlatCAMApp.py:3602 +#: FlatCAMApp.py:3609 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Eșuat. Fuzionarea Gerber functionează doar cu obiecte de tip " "Gerber ." -#: FlatCAMApp.py:3617 FlatCAMApp.py:3642 +#: FlatCAMApp.py:3624 FlatCAMApp.py:3649 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Eșuat. Selectează un obiect Geometrie și încearcă din nou." -#: FlatCAMApp.py:3621 FlatCAMApp.py:3646 +#: FlatCAMApp.py:3628 FlatCAMApp.py:3653 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Se astepta o Geometrie FlatCAM, s-a primit %s" -#: FlatCAMApp.py:3634 +#: FlatCAMApp.py:3641 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul MultiGeo." -#: FlatCAMApp.py:3660 +#: FlatCAMApp.py:3667 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul SingleGeo ." -#: FlatCAMApp.py:3901 +#: FlatCAMApp.py:3908 msgid "Toggle Units" msgstr "Comută Unitati" -#: FlatCAMApp.py:3903 +#: FlatCAMApp.py:3910 msgid "Change project units ..." msgstr "Schimbă unitătile de măsură.." -#: FlatCAMApp.py:3904 +#: FlatCAMApp.py:3911 msgid "" "Changing the units of the project causes all geometrical properties of all " "objects to be scaled accordingly.\n" @@ -322,43 +332,43 @@ msgstr "" "geometrice ale obiectelor sa fie scalate corespunzător.\n" "Continuati?" -#: FlatCAMApp.py:3906 FlatCAMApp.py:4756 FlatCAMApp.py:6456 FlatCAMApp.py:6469 -#: FlatCAMApp.py:6709 FlatCAMApp.py:6719 +#: FlatCAMApp.py:3913 FlatCAMApp.py:4766 FlatCAMApp.py:6471 FlatCAMApp.py:6484 +#: FlatCAMApp.py:6724 FlatCAMApp.py:6734 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3954 +#: FlatCAMApp.py:3961 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Conversie unitati la %s" -#: FlatCAMApp.py:3965 +#: FlatCAMApp.py:3972 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Conversia unitatilor este anulată." -#: FlatCAMApp.py:4625 +#: FlatCAMApp.py:4632 msgid "Open file" msgstr "Deschide fişierul ..." -#: FlatCAMApp.py:4656 FlatCAMApp.py:4661 +#: FlatCAMApp.py:4663 FlatCAMApp.py:4668 msgid "Export G-Code ..." msgstr "Exporta G-Code ..." -#: FlatCAMApp.py:4664 +#: FlatCAMApp.py:4671 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL Exportul GCode este anulat." -#: FlatCAMApp.py:4674 +#: FlatCAMApp.py:4680 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Nu exista un aşa fişier sau director" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4691 #, python-format msgid "Saved to: %s" msgstr "Salvat in: %s" -#: FlatCAMApp.py:4744 FlatCAMApp.py:4777 FlatCAMApp.py:4788 FlatCAMApp.py:4799 -#: flatcamTools/ToolNonCopperClear.py:490 flatcamTools/ToolSolderPaste.py:767 +#: FlatCAMApp.py:4754 FlatCAMApp.py:4787 FlatCAMApp.py:4798 FlatCAMApp.py:4809 +#: flatcamTools/ToolNonCopperClear.py:563 flatcamTools/ToolSolderPaste.py:767 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." @@ -366,12 +376,12 @@ msgstr "" "[WARNING_NOTCL] Introdu un diametru al uneltei valid: valoare ne-nula in " "format Real." -#: FlatCAMApp.py:4749 FlatCAMApp.py:4782 FlatCAMApp.py:4793 FlatCAMApp.py:4804 +#: FlatCAMApp.py:4759 FlatCAMApp.py:4792 FlatCAMApp.py:4803 FlatCAMApp.py:4814 #: flatcamGUI/FlatCAMGUI.py:3027 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adăugarea unei unelte anulată ..." -#: FlatCAMApp.py:4752 +#: FlatCAMApp.py:4762 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -379,35 +389,35 @@ msgstr "" "Adăugarea de unelte noi functionează doar in modul Avansat.\n" "Pentru aceasta mergi in Preferințe -> General - Activează Modul Avansat." -#: FlatCAMApp.py:4864 +#: FlatCAMApp.py:4874 msgid "Object(s) deleted ..." msgstr "Obiect(ele) șters(e)." -#: FlatCAMApp.py:4868 +#: FlatCAMApp.py:4878 msgid "Failed. No object(s) selected..." msgstr "Eșuat. Nici-un obiect nu este selectat." -#: FlatCAMApp.py:4870 +#: FlatCAMApp.py:4880 msgid "Save the work in Editor and try again ..." msgstr "Salvează continutul din Editor și încearcă din nou." -#: FlatCAMApp.py:4904 +#: FlatCAMApp.py:4914 msgid "Click to set the origin ..." msgstr "Click pentru a seta originea..." -#: FlatCAMApp.py:4916 +#: FlatCAMApp.py:4926 msgid "Jump to ..." msgstr "Sari la ..." -#: FlatCAMApp.py:4917 +#: FlatCAMApp.py:4927 msgid "Enter the coordinates in format X,Y:" msgstr "Introduceți coordonatele in format X,Y:" -#: FlatCAMApp.py:4924 +#: FlatCAMApp.py:4934 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." -#: FlatCAMApp.py:4942 flatcamEditors/FlatCAMExcEditor.py:2321 +#: FlatCAMApp.py:4952 flatcamEditors/FlatCAMExcEditor.py:2321 #: flatcamEditors/FlatCAMExcEditor.py:2328 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -421,25 +431,25 @@ msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." msgid "[success] Done." msgstr "[success] Executat." -#: FlatCAMApp.py:5074 FlatCAMApp.py:5141 +#: FlatCAMApp.py:5084 FlatCAMApp.py:5151 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Nici-un obiect nu este selectat. Selectează un obiect și " "incearcă din nou." -#: FlatCAMApp.py:5182 +#: FlatCAMApp.py:5192 msgid "[success] Origin set ..." msgstr "[success] Originea a fost setată ..." -#: FlatCAMApp.py:5201 flatcamGUI/GUIElements.py:1375 +#: FlatCAMApp.py:5211 flatcamGUI/GUIElements.py:1375 msgid "Preferences" msgstr "Preferințe" -#: FlatCAMApp.py:5267 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] Preferences edited but not saved." msgstr "[WARNING_NOTCL] Preferințele au fost editate dar nu au fost salvate." -#: FlatCAMApp.py:5301 +#: FlatCAMApp.py:5311 msgid "" "One or more values are changed.\n" "Do you want to save the Preferences?" @@ -447,78 +457,78 @@ msgstr "" "Una sau mai multe valori au fost schimbate.\n" "Dorești să salvezi Preferințele?" -#: FlatCAMApp.py:5303 flatcamGUI/FlatCAMGUI.py:953 +#: FlatCAMApp.py:5313 flatcamGUI/FlatCAMGUI.py:953 msgid "Save Preferences" msgstr "Salvează Pref" -#: FlatCAMApp.py:5330 +#: FlatCAMApp.py:5340 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "" "[WARNING_NOTCL] Nu sete nici-un obiect selectat pentru oglindire pe axa Y." -#: FlatCAMApp.py:5355 +#: FlatCAMApp.py:5365 msgid "[success] Flip on Y axis done." msgstr "[success] Oglindire pe axa Y executată." -#: FlatCAMApp.py:5357 FlatCAMApp.py:5397 +#: FlatCAMApp.py:5367 FlatCAMApp.py:5407 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5498 flatcamTools/ToolTransform.py:747 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Datorita %s, oglindirea a eșuat." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "" "[WARNING_NOTCL] Nu sete nici-un obiect selectat pentru oglindire pe axa X." -#: FlatCAMApp.py:5395 +#: FlatCAMApp.py:5405 msgid "[success] Flip on X axis done." msgstr "[success] Oglindirea pe axa X executată." -#: FlatCAMApp.py:5410 +#: FlatCAMApp.py:5420 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Rotaţie." -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Transform" msgstr "Transformare" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Enter the Angle value:" msgstr "Introduceți valoaea Unghiului:" -#: FlatCAMApp.py:5443 +#: FlatCAMApp.py:5453 msgid "[success] Rotation done." msgstr "[success] Rotaţie executată." -#: FlatCAMApp.py:5445 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5455 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5427 flatcamTools/ToolTransform.py:676 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Datorita %s, Rotatia a eșuat." -#: FlatCAMApp.py:5456 +#: FlatCAMApp.py:5466 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Deformare pe axa X." -#: FlatCAMApp.py:5477 +#: FlatCAMApp.py:5487 msgid "[success] Skew on X axis done." msgstr "[success] Deformare pe axa X executată." -#: FlatCAMApp.py:5487 +#: FlatCAMApp.py:5497 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Deformare pe axa Y." -#: FlatCAMApp.py:5508 +#: FlatCAMApp.py:5518 msgid "[success] Skew on Y axis done." msgstr "[success] Deformare pe axa Y executată." -#: FlatCAMApp.py:5558 +#: FlatCAMApp.py:5568 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5571 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5581 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2424 #: flatcamEditors/FlatCAMGrbEditor.py:5016 flatcamGUI/ObjectUI.py:989 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:207 @@ -528,7 +538,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Adaugă" -#: FlatCAMApp.py:5572 FlatCAMObj.py:3361 +#: FlatCAMApp.py:5582 FlatCAMObj.py:3349 #: flatcamEditors/FlatCAMGrbEditor.py:2429 flatcamGUI/FlatCAMGUI.py:523 #: flatcamGUI/FlatCAMGUI.py:723 flatcamGUI/FlatCAMGUI.py:1630 #: flatcamGUI/FlatCAMGUI.py:1970 flatcamGUI/ObjectUI.py:1005 @@ -537,72 +547,72 @@ msgstr "Adaugă" msgid "Delete" msgstr "Șterge" -#: FlatCAMApp.py:5585 +#: FlatCAMApp.py:5595 msgid "New Grid ..." msgstr "Grid nou ..." -#: FlatCAMApp.py:5586 +#: FlatCAMApp.py:5596 msgid "Enter a Grid Value:" msgstr "Introduceti of valoare pt Grid:" -#: FlatCAMApp.py:5594 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5604 FlatCAMApp.py:5631 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" "[WARNING_NOTCL] Introduceți o valoare pentru Grila ne-nula și in format Real." -#: FlatCAMApp.py:5600 +#: FlatCAMApp.py:5610 msgid "[success] New Grid added ..." msgstr "[success] O noua valoare pt Grila a fost adăugată..." -#: FlatCAMApp.py:5603 +#: FlatCAMApp.py:5613 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grila există deja." -#: FlatCAMApp.py:5606 +#: FlatCAMApp.py:5616 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adăugarea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5628 +#: FlatCAMApp.py:5638 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Valoarea Grilei nu există ..." -#: FlatCAMApp.py:5631 +#: FlatCAMApp.py:5641 msgid "[success] Grid Value deleted ..." msgstr "[success] Valoarea Grila a fost stearsă." -#: FlatCAMApp.py:5634 +#: FlatCAMApp.py:5644 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Ștergerea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5640 +#: FlatCAMApp.py:5650 msgid "Key Shortcut List" msgstr "Lista de shortcut-uri" -#: FlatCAMApp.py:5673 +#: FlatCAMApp.py:5683 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "" "[WARNING_NOTCL] Nici-un obiect nu este selectat pentru i se copia valoarea" -#: FlatCAMApp.py:5677 +#: FlatCAMApp.py:5687 msgid "Name copied on clipboard ..." msgstr "Numele a fost copiat pe Clipboard ..." -#: FlatCAMApp.py:5719 flatcamEditors/FlatCAMGrbEditor.py:4012 +#: FlatCAMApp.py:5728 flatcamEditors/FlatCAMGrbEditor.py:4012 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordonatele au fost copiate in clipboard." -#: FlatCAMApp.py:5975 FlatCAMApp.py:5978 FlatCAMApp.py:5981 FlatCAMApp.py:5984 -#: FlatCAMApp.py:5999 FlatCAMApp.py:6002 FlatCAMApp.py:6005 FlatCAMApp.py:6008 -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 FlatCAMApp.py:6054 FlatCAMApp.py:6057 +#: FlatCAMApp.py:5984 FlatCAMApp.py:5987 FlatCAMApp.py:5990 FlatCAMApp.py:5993 +#: FlatCAMApp.py:6008 FlatCAMApp.py:6011 FlatCAMApp.py:6014 FlatCAMApp.py:6017 +#: FlatCAMApp.py:6057 FlatCAMApp.py:6060 FlatCAMApp.py:6063 FlatCAMApp.py:6066 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selectat" -#: FlatCAMApp.py:6174 +#: FlatCAMApp.py:6189 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -612,111 +622,111 @@ msgstr "" "Crearea unui nou Proiect le va șterge..\n" "Doriti să Salvati proiectul curentt?" -#: FlatCAMApp.py:6195 +#: FlatCAMApp.py:6210 msgid "[success] New Project created..." msgstr "[success] Un nou Proiect a fost creat..." -#: FlatCAMApp.py:6315 FlatCAMApp.py:6318 flatcamGUI/FlatCAMGUI.py:604 +#: FlatCAMApp.py:6330 FlatCAMApp.py:6333 flatcamGUI/FlatCAMGUI.py:604 #: flatcamGUI/FlatCAMGUI.py:1849 msgid "Open Gerber" msgstr "Încarcă Gerber" -#: FlatCAMApp.py:6323 +#: FlatCAMApp.py:6338 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Gerber este anulată." -#: FlatCAMApp.py:6344 FlatCAMApp.py:6347 flatcamGUI/FlatCAMGUI.py:605 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6362 flatcamGUI/FlatCAMGUI.py:605 #: flatcamGUI/FlatCAMGUI.py:1850 msgid "Open Excellon" msgstr "Încarcă Excellon" -#: FlatCAMApp.py:6352 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Excellon este anulată." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6389 FlatCAMApp.py:6392 msgid "Open G-Code" msgstr "Încarcă G-Code" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6397 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier G-Code este anulată." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6415 FlatCAMApp.py:6418 msgid "Open Project" msgstr "Încarcă Project" -#: FlatCAMApp.py:6411 +#: FlatCAMApp.py:6426 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui Proiect a fost anulată." -#: FlatCAMApp.py:6430 FlatCAMApp.py:6433 +#: FlatCAMApp.py:6445 FlatCAMApp.py:6448 msgid "Open Configuration File" msgstr "Încarcă un fişier de Configurare" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6452 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier de Configurare este anulată." -#: FlatCAMApp.py:6452 FlatCAMApp.py:6705 FlatCAMApp.py:8951 FlatCAMApp.py:8971 -#: FlatCAMApp.py:8992 FlatCAMApp.py:9014 +#: FlatCAMApp.py:6467 FlatCAMApp.py:6720 FlatCAMApp.py:9000 FlatCAMApp.py:9020 +#: FlatCAMApp.py:9041 FlatCAMApp.py:9063 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Nici-un obiect selectat." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6706 +#: FlatCAMApp.py:6468 FlatCAMApp.py:6721 msgid "Please Select a Geometry object to export" msgstr "Selectează un obiect Geometrie pentru export" -#: FlatCAMApp.py:6466 +#: FlatCAMApp.py:6481 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Doar obiectele Geometrie, Gerber și CNCJob pot fi folosite." -#: FlatCAMApp.py:6479 FlatCAMApp.py:6483 +#: FlatCAMApp.py:6494 FlatCAMApp.py:6498 msgid "Export SVG" msgstr "Exporta SVG" -#: FlatCAMApp.py:6488 +#: FlatCAMApp.py:6503 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportul SVG este anulat." -#: FlatCAMApp.py:6507 +#: FlatCAMApp.py:6522 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[[WARNING_NOTCL]] Datele trebuie să fie organizate intr-o arie 3D cu ultima " "dimensiune cu valoarea 3 sau 4." -#: FlatCAMApp.py:6513 FlatCAMApp.py:6517 +#: FlatCAMApp.py:6528 FlatCAMApp.py:6532 msgid "Export PNG Image" msgstr "Exporta imagine PNG" -#: FlatCAMApp.py:6522 +#: FlatCAMApp.py:6537 msgid "Export PNG cancelled." msgstr "Exportul imagine PNG este anulat." -#: FlatCAMApp.py:6541 +#: FlatCAMApp.py:6556 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Gerber pentru " "export." -#: FlatCAMApp.py:6546 FlatCAMApp.py:6669 +#: FlatCAMApp.py:6561 FlatCAMApp.py:6684 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Gerber pot fi salvate ca fişiere " "Gerber..." -#: FlatCAMApp.py:6558 +#: FlatCAMApp.py:6573 msgid "Save Gerber source file" msgstr "Salvează codul sursa Gerber ca fişier" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6578 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Gerber este anulată." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6597 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -724,22 +734,22 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6587 FlatCAMApp.py:6628 +#: FlatCAMApp.py:6602 FlatCAMApp.py:6643 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Excellon pot fi salvate ca fişiere " "Excellon ..." -#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 +#: FlatCAMApp.py:6610 FlatCAMApp.py:6614 msgid "Save Excellon source file" msgstr "Salvează codul sursa Excellon ca fişier" -#: FlatCAMApp.py:6604 +#: FlatCAMApp.py:6619 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Excellon este anulată." -#: FlatCAMApp.py:6623 +#: FlatCAMApp.py:6638 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -747,94 +757,94 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6636 FlatCAMApp.py:6640 +#: FlatCAMApp.py:6651 FlatCAMApp.py:6655 msgid "Export Excellon" msgstr "Exporta Excellon" -#: FlatCAMApp.py:6645 +#: FlatCAMApp.py:6660 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportul Excellon anulat." -#: FlatCAMApp.py:6664 +#: FlatCAMApp.py:6679 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Gerber pentru " "export." -#: FlatCAMApp.py:6677 FlatCAMApp.py:6681 +#: FlatCAMApp.py:6692 FlatCAMApp.py:6696 msgid "Export Gerber" msgstr "Exporta Gerber" -#: FlatCAMApp.py:6686 +#: FlatCAMApp.py:6701 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Exportul Gerber este anulat." -#: FlatCAMApp.py:6716 +#: FlatCAMApp.py:6731 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Doar obiecte tip Geometrie pot fi folosite." -#: FlatCAMApp.py:6730 FlatCAMApp.py:6734 +#: FlatCAMApp.py:6745 FlatCAMApp.py:6749 msgid "Export DXF" msgstr "Exporta DXF" -#: FlatCAMApp.py:6740 +#: FlatCAMApp.py:6755 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportul DXF anulat." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6763 +#: FlatCAMApp.py:6775 FlatCAMApp.py:6778 msgid "Import SVG" msgstr "Importa SVG" -#: FlatCAMApp.py:6772 +#: FlatCAMApp.py:6787 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Importul SVG anulat." -#: FlatCAMApp.py:6791 FlatCAMApp.py:6795 +#: FlatCAMApp.py:6806 FlatCAMApp.py:6810 msgid "Import DXF" msgstr "Importa DXF" -#: FlatCAMApp.py:6804 +#: FlatCAMApp.py:6819 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Incărcarea fişier DXF anulată." -#: FlatCAMApp.py:6822 +#: FlatCAMApp.py:6837 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6842 +#: FlatCAMApp.py:6857 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Selectati un obiect Gerber sau Excellon pentru a-i vedea " "codul sursa." -#: FlatCAMApp.py:6849 +#: FlatCAMApp.py:6864 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru a-i vedea codul sursa." -#: FlatCAMApp.py:6857 +#: FlatCAMApp.py:6872 msgid "Source Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6867 +#: FlatCAMApp.py:6882 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6879 FlatCAMApp.py:8024 FlatCAMObj.py:5677 +#: FlatCAMApp.py:6894 FlatCAMApp.py:8073 FlatCAMObj.py:5593 #: flatcamTools/ToolSolderPaste.py:1284 msgid "Code Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6891 +#: FlatCAMApp.py:6906 msgid "Script Editor" msgstr "Editor Script." -#: FlatCAMApp.py:6894 +#: FlatCAMApp.py:6909 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -878,99 +888,99 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6917 FlatCAMApp.py:6920 +#: FlatCAMApp.py:6932 FlatCAMApp.py:6935 msgid "Open TCL script" msgstr "Încarcă TCL script" -#: FlatCAMApp.py:6928 +#: FlatCAMApp.py:6943 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Incărcarea TCL script anulată." -#: FlatCAMApp.py:6940 +#: FlatCAMApp.py:6955 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6966 FlatCAMApp.py:6969 +#: FlatCAMApp.py:6981 FlatCAMApp.py:6984 msgid "Run TCL script" msgstr "Ruleaza TCL script" -#: FlatCAMApp.py:6977 +#: FlatCAMApp.py:6992 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Rularea fisierului Script a fost anulată." -#: FlatCAMApp.py:7029 FlatCAMApp.py:7033 +#: FlatCAMApp.py:7044 FlatCAMApp.py:7048 msgid "Save Project As ..." msgstr "Salvează Proiectul ca ..." -#: FlatCAMApp.py:7030 +#: FlatCAMApp.py:7045 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Proiect_{date}" -#: FlatCAMApp.py:7038 +#: FlatCAMApp.py:7053 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Salvarea Proiect anulată." -#: FlatCAMApp.py:7083 +#: FlatCAMApp.py:7098 msgid "Exporting SVG" msgstr "SVG in curs de export" -#: FlatCAMApp.py:7117 FlatCAMApp.py:7223 FlatCAMApp.py:7338 +#: FlatCAMApp.py:7138 FlatCAMApp.py:7249 FlatCAMApp.py:7370 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Fişier SVG exportat in %s" -#: FlatCAMApp.py:7148 FlatCAMApp.py:7269 +#: FlatCAMApp.py:7169 FlatCAMApp.py:7295 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "" "[WARNING_NOTCL] Nu este nici-un container Box pentru obiect. Se foloseşte %s" -#: FlatCAMApp.py:7226 FlatCAMApp.py:7341 +#: FlatCAMApp.py:7252 FlatCAMApp.py:7373 msgid "Generating Film ... Please wait." msgstr "Filmul se generează ... Aşteaptă!" -#: FlatCAMApp.py:7489 +#: FlatCAMApp.py:7532 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Fişierul Excellon exportat in %s" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7539 msgid "Exporting Excellon" msgstr "Excellon in curs de export" -#: FlatCAMApp.py:7501 FlatCAMApp.py:7508 +#: FlatCAMApp.py:7544 FlatCAMApp.py:7551 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Fişierul Excellon nu a fost posibil să fie exportat." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7655 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Fişier Gerber exportat in %s" -#: FlatCAMApp.py:7613 +#: FlatCAMApp.py:7662 msgid "Exporting Gerber" msgstr "Gerber in curs de export" -#: FlatCAMApp.py:7618 FlatCAMApp.py:7625 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7674 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Fişierul Gerber nu a fost posibil să fie exportat." -#: FlatCAMApp.py:7665 +#: FlatCAMApp.py:7714 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Fişierul DXF exportat in %s" -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7720 msgid "Exporting DXF" msgstr "DXF in curs de export" -#: FlatCAMApp.py:7676 FlatCAMApp.py:7683 +#: FlatCAMApp.py:7725 FlatCAMApp.py:7732 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Fişierul DXF nu a fost posibil să fie exportat." -#: FlatCAMApp.py:7703 FlatCAMApp.py:7745 FlatCAMApp.py:7789 +#: FlatCAMApp.py:7752 FlatCAMApp.py:7794 FlatCAMApp.py:7838 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -978,101 +988,102 @@ msgstr "" "[ERROR_NOTCL] Typul parametrului nu este compatibil. Doar Geometrie is " "Gerber sunt acceptate." -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7762 msgid "Importing SVG" msgstr "SVG in curs de ia fi importat" -#: FlatCAMApp.py:7724 FlatCAMApp.py:7766 FlatCAMApp.py:7809 FlatCAMApp.py:7886 -#: FlatCAMApp.py:7947 FlatCAMApp.py:8010 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7773 FlatCAMApp.py:7815 FlatCAMApp.py:7858 FlatCAMApp.py:7935 +#: FlatCAMApp.py:7996 FlatCAMApp.py:8059 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Incărcat: %s" -#: FlatCAMApp.py:7755 +#: FlatCAMApp.py:7804 msgid "Importing DXF" msgstr "DXF in curs de a fi importat" -#: FlatCAMApp.py:7797 +#: FlatCAMApp.py:7846 msgid "Importing Image" msgstr "Imaginea in curs de a fi importata" -#: FlatCAMApp.py:7838 FlatCAMApp.py:7840 +#: FlatCAMApp.py:7887 FlatCAMApp.py:7889 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului %s" -#: FlatCAMApp.py:7843 +#: FlatCAMApp.py:7892 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Eşec in parsarea fişierului: {name}. {error}" -#: FlatCAMApp.py:7850 flatcamEditors/FlatCAMGrbEditor.py:3832 +#: FlatCAMApp.py:7899 FlatCAMObj.py:4296 +#: flatcamEditors/FlatCAMGrbEditor.py:3832 msgid "[ERROR] An internal error has occurred. See shell.\n" msgstr "" "[ERROR] A apărut o eroare internă. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7859 +#: FlatCAMApp.py:7908 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Obiectul nu estetip Gerber sau este gol. Se anulează crearea " "obiectului." -#: FlatCAMApp.py:7867 +#: FlatCAMApp.py:7916 msgid "Opening Gerber" msgstr "Gerber in curs de incărcare" -#: FlatCAMApp.py:7877 +#: FlatCAMApp.py:7926 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Incărcarea Gerber a eșuat. Probabil nu este de tip Gerber." -#: FlatCAMApp.py:7910 flatcamTools/ToolPcbWizard.py:418 +#: FlatCAMApp.py:7959 flatcamTools/ToolPcbWizard.py:418 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Acesta nu este un fişier Excellon." -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7962 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Fişierul %s nu se poate incărca." -#: FlatCAMApp.py:7918 flatcamTools/ToolPcbWizard.py:427 +#: FlatCAMApp.py:7967 flatcamTools/ToolPcbWizard.py:427 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7931 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7980 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:440 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" "[ERROR_NOTCL] Nici-o informaţie de tip geometrie nu s-a gasit in fişierul: %s" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7983 msgid "Opening Excellon." msgstr "Excellon in curs de incărcare" -#: FlatCAMApp.py:7940 +#: FlatCAMApp.py:7989 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Incărcarea Excellon a eșuat. Probabil nu este de tip Excellon." -#: FlatCAMApp.py:7977 +#: FlatCAMApp.py:8026 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Incărcarea fişierului %s a eșuat." -#: FlatCAMApp.py:7987 +#: FlatCAMApp.py:8036 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Acest obiect nu este de tip GCode" -#: FlatCAMApp.py:7993 +#: FlatCAMApp.py:8042 msgid "Opening G-Code." msgstr "G-Code in curs de incărcare" -#: FlatCAMApp.py:8001 +#: FlatCAMApp.py:8050 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -1083,26 +1094,26 @@ msgstr "" "Incercarea de a crea un obiect CNCJob din G-Code a eșuat in timpul " "procesarii." -#: FlatCAMApp.py:8041 +#: FlatCAMApp.py:8090 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului de configurare: %s" -#: FlatCAMApp.py:8067 FlatCAMApp.py:8084 +#: FlatCAMApp.py:8116 FlatCAMApp.py:8133 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului proiect: %s" -#: FlatCAMApp.py:8107 +#: FlatCAMApp.py:8156 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Proeictul a fost incărcat din: %s" -#: FlatCAMApp.py:8213 +#: FlatCAMApp.py:8262 msgid "Available commands:\n" msgstr "Comenzi disponibile:\n" -#: FlatCAMApp.py:8215 +#: FlatCAMApp.py:8264 msgid "" "\n" "\n" @@ -1114,35 +1125,35 @@ msgstr "" "Introduceți help pentru utilizare.\n" "Exemplu: help open_gerber" -#: FlatCAMApp.py:8365 +#: FlatCAMApp.py:8414 msgid "Shows list of commands." msgstr "Arata o lista de comenzi." -#: FlatCAMApp.py:8422 +#: FlatCAMApp.py:8471 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Eşec in incărcarea listei cu fişiere recente." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8478 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Eşec in parsarea listei cu fişiere recente." -#: FlatCAMApp.py:8439 +#: FlatCAMApp.py:8488 msgid "[ERROR_NOTCL] Failed to load recent projects item list." msgstr "[ERROR_NOTCL] Eşec in incărcarea listei cu proiecte recente." -#: FlatCAMApp.py:8446 +#: FlatCAMApp.py:8495 msgid "[ERROR_NOTCL] Failed to parse recent project item list." msgstr "[ERROR_NOTCL] Eşec in parsarea listei cu proiecte recente." -#: FlatCAMApp.py:8505 FlatCAMApp.py:8528 +#: FlatCAMApp.py:8554 FlatCAMApp.py:8577 msgid "Clear Recent files" msgstr "Sterge fişierele recente" -#: FlatCAMApp.py:8545 flatcamGUI/FlatCAMGUI.py:970 +#: FlatCAMApp.py:8594 flatcamGUI/FlatCAMGUI.py:970 msgid "Shortcut Key List" msgstr "Lista cu taste Shortcut" -#: FlatCAMApp.py:8552 +#: FlatCAMApp.py:8601 msgid "" "\n" "

    Selected Tab - Choose an Item from " @@ -1239,27 +1250,27 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8659 +#: FlatCAMApp.py:8708 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Verificarea pentru ultima versiune a eșuat. Nu a fost " "posibilă conectarea la server." -#: FlatCAMApp.py:8666 +#: FlatCAMApp.py:8715 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Informatia cu privire la ultima versiune nu s-a putut " "interpreta." -#: FlatCAMApp.py:8676 +#: FlatCAMApp.py:8725 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM este la ultima versiune!" -#: FlatCAMApp.py:8681 +#: FlatCAMApp.py:8730 msgid "Newer Version Available" msgstr "O nouă versiune este disponibila" -#: FlatCAMApp.py:8682 +#: FlatCAMApp.py:8731 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1267,58 +1278,58 @@ msgstr "" "O nouă versiune de FlatCAM este disponibilă pentru download::\n" "\n" -#: FlatCAMApp.py:8684 +#: FlatCAMApp.py:8733 msgid "info" msgstr "Informaţie" -#: FlatCAMApp.py:8703 +#: FlatCAMApp.py:8752 msgid "[success] All plots disabled." msgstr "[success] Toate afişările sunt dezactivate." -#: FlatCAMApp.py:8709 +#: FlatCAMApp.py:8758 msgid "[success] All non selected plots disabled." msgstr "[success] Toate afişările care nu sunt selectate sunt dezactivate." -#: FlatCAMApp.py:8715 +#: FlatCAMApp.py:8764 msgid "[success] All plots enabled." msgstr "[success] Toate afişările sunt activate." -#: FlatCAMApp.py:8721 +#: FlatCAMApp.py:8770 msgid "[success] Selected plots enabled..." msgstr "[success] Toate afişările sunt activate..." -#: FlatCAMApp.py:8729 +#: FlatCAMApp.py:8778 msgid "[success] Selected plots disabled..." msgstr "[success] Toate afişările sunt dezactivate..." -#: FlatCAMApp.py:8739 FlatCAMApp.py:8766 FlatCAMApp.py:8783 +#: FlatCAMApp.py:8788 FlatCAMApp.py:8815 FlatCAMApp.py:8832 msgid "Working ..." msgstr "Se lucrează..." -#: FlatCAMApp.py:8820 +#: FlatCAMApp.py:8869 msgid "Saving FlatCAM Project" msgstr "Proiectul FlatCAM este in curs de salvare" -#: FlatCAMApp.py:8841 FlatCAMApp.py:8872 +#: FlatCAMApp.py:8890 FlatCAMApp.py:8921 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Proiectul s-a salvat in: %s" -#: FlatCAMApp.py:8859 +#: FlatCAMApp.py:8908 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Verificarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8866 +#: FlatCAMApp.py:8915 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Parsarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8874 +#: FlatCAMApp.py:8923 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1330,79 +1341,80 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Numele schimbat din {old} in {new}" -#: FlatCAMObj.py:555 FlatCAMObj.py:2095 FlatCAMObj.py:3366 FlatCAMObj.py:5570 +#: FlatCAMObj.py:558 FlatCAMObj.py:2098 FlatCAMObj.py:3354 FlatCAMObj.py:5486 msgid "Basic" msgstr "Baza" -#: FlatCAMObj.py:567 FlatCAMObj.py:2111 FlatCAMObj.py:3388 FlatCAMObj.py:5576 +#: FlatCAMObj.py:570 FlatCAMObj.py:2114 FlatCAMObj.py:3376 FlatCAMObj.py:5492 msgid "Advanced" msgstr "Avansat" -#: FlatCAMObj.py:920 FlatCAMObj.py:1018 +#: FlatCAMObj.py:923 FlatCAMObj.py:1021 msgid "[ERROR_NOTCL] Isolation geometry could not be generated." msgstr "[ERROR_NOTCL] Geometria nu a fost posibil să fie 'generată." -#: FlatCAMObj.py:957 FlatCAMObj.py:3061 FlatCAMObj.py:3323 FlatCAMObj.py:3632 +#: FlatCAMObj.py:960 FlatCAMObj.py:3049 FlatCAMObj.py:3311 FlatCAMObj.py:3589 msgid "Rough" msgstr "Grosier" -#: FlatCAMObj.py:975 FlatCAMObj.py:1034 +#: FlatCAMObj.py:978 FlatCAMObj.py:1037 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Geometria de izolare creată: %s" -#: FlatCAMObj.py:1213 +#: FlatCAMObj.py:1216 msgid "Plotting Apertures" msgstr "Aperturile sunt in curs de afișare" -#: FlatCAMObj.py:1936 flatcamEditors/FlatCAMExcEditor.py:1369 +#: FlatCAMObj.py:1939 flatcamEditors/FlatCAMExcEditor.py:1369 msgid "Total Drills" msgstr "Nr. Tot. Op. Găurire" -#: FlatCAMObj.py:1962 flatcamEditors/FlatCAMExcEditor.py:1401 +#: FlatCAMObj.py:1965 flatcamEditors/FlatCAMExcEditor.py:1401 msgid "Total Slots" msgstr "Nr. Tot. Sloturi" -#: FlatCAMObj.py:2169 FlatCAMObj.py:3440 FlatCAMObj.py:3771 FlatCAMObj.py:3962 -#: FlatCAMObj.py:3975 FlatCAMObj.py:4095 FlatCAMObj.py:4511 FlatCAMObj.py:4747 -#: FlatCAMObj.py:5151 flatcamEditors/FlatCAMExcEditor.py:1475 +#: FlatCAMObj.py:2172 FlatCAMObj.py:3427 FlatCAMObj.py:3717 FlatCAMObj.py:3904 +#: FlatCAMObj.py:3915 FlatCAMObj.py:4033 FlatCAMObj.py:4438 FlatCAMObj.py:4664 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1475 #: flatcamTools/ToolCalculators.py:304 flatcamTools/ToolCalculators.py:315 #: flatcamTools/ToolCalculators.py:327 flatcamTools/ToolCalculators.py:342 #: flatcamTools/ToolCalculators.py:355 flatcamTools/ToolCalculators.py:369 #: flatcamTools/ToolCalculators.py:380 flatcamTools/ToolCalculators.py:391 #: flatcamTools/ToolCalculators.py:402 flatcamTools/ToolFilm.py:241 -#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:481 -#: flatcamTools/ToolNonCopperClear.py:553 -#: flatcamTools/ToolNonCopperClear.py:630 -#: flatcamTools/ToolNonCopperClear.py:647 flatcamTools/ToolPaint.py:537 -#: flatcamTools/ToolPaint.py:609 flatcamTools/ToolPaint.py:746 -#: flatcamTools/ToolPaint.py:846 flatcamTools/ToolPaint.py:1000 -#: flatcamTools/ToolPanelize.py:387 flatcamTools/ToolPanelize.py:399 -#: flatcamTools/ToolPanelize.py:412 flatcamTools/ToolPanelize.py:425 -#: flatcamTools/ToolPanelize.py:437 flatcamTools/ToolPanelize.py:448 -#: flatcamTools/ToolSolderPaste.py:758 flatcamTools/ToolSolderPaste.py:830 +#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:554 +#: flatcamTools/ToolNonCopperClear.py:626 +#: flatcamTools/ToolNonCopperClear.py:703 +#: flatcamTools/ToolNonCopperClear.py:720 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolPaint.py:615 flatcamTools/ToolPaint.py:752 +#: flatcamTools/ToolPaint.py:925 flatcamTools/ToolPaint.py:1079 +#: flatcamTools/ToolPaint.py:1379 flatcamTools/ToolPanelize.py:387 +#: flatcamTools/ToolPanelize.py:399 flatcamTools/ToolPanelize.py:412 +#: flatcamTools/ToolPanelize.py:425 flatcamTools/ToolPanelize.py:437 +#: flatcamTools/ToolPanelize.py:448 flatcamTools/ToolSolderPaste.py:758 +#: flatcamTools/ToolSolderPaste.py:830 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] O valoare gresita a fost introdusa. Foloseşte un număr." -#: FlatCAMObj.py:2393 FlatCAMObj.py:2485 FlatCAMObj.py:2608 +#: FlatCAMObj.py:2396 FlatCAMObj.py:2488 FlatCAMObj.py:2611 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Selectează una sau mai multe unelte din lista și încearcă din " "nou." -#: FlatCAMObj.py:2400 +#: FlatCAMObj.py:2403 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Anulat. Freza pt frezarea găurilor este mai mare decat " "diametrul găurii." -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Tool_nr" msgstr "Nr. Unealtă" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 #: flatcamEditors/FlatCAMExcEditor.py:820 #: flatcamEditors/FlatCAMExcEditor.py:2021 flatcamGUI/ObjectUI.py:553 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1410,21 +1422,21 @@ msgstr "Nr. Unealtă" msgid "Diameter" msgstr "Diametru" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Drills_Nr" msgstr "Nr. gaura" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Slots_Nr" msgstr "Nr. slot" -#: FlatCAMObj.py:2495 +#: FlatCAMObj.py:2498 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Anulat. Freza este mai mare decat diametrul slotului de frezat." -#: FlatCAMObj.py:2670 FlatCAMObj.py:4400 FlatCAMObj.py:4615 FlatCAMObj.py:4926 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4331 FlatCAMObj.py:4537 FlatCAMObj.py:4843 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1432,7 +1444,7 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"z_pdepth\"] sau self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2682 FlatCAMObj.py:4412 FlatCAMObj.py:4627 FlatCAMObj.py:4938 +#: FlatCAMObj.py:2682 FlatCAMObj.py:4341 FlatCAMObj.py:4547 FlatCAMObj.py:4853 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1440,12 +1452,12 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"feedrate_probe\"] sau self." "options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2714 FlatCAMObj.py:4814 FlatCAMObj.py:4819 FlatCAMObj.py:4969 +#: FlatCAMObj.py:2712 FlatCAMObj.py:4733 FlatCAMObj.py:4738 FlatCAMObj.py:4885 msgid "Generating CNC Code" msgstr "CNC Code in curs de generare" -#: FlatCAMObj.py:2740 FlatCAMObj.py:5111 camlib.py:5179 camlib.py:5638 -#: camlib.py:5901 +#: FlatCAMObj.py:2737 FlatCAMObj.py:5027 camlib.py:5181 camlib.py:5640 +#: camlib.py:5903 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1455,54 +1467,54 @@ msgstr "" "să fie in formatul (x, y) \n" "dar are o singură valoare in loc de doua. " -#: FlatCAMObj.py:3061 FlatCAMObj.py:4017 FlatCAMObj.py:4018 FlatCAMObj.py:4027 +#: FlatCAMObj.py:3049 FlatCAMObj.py:3956 FlatCAMObj.py:3957 FlatCAMObj.py:3966 msgid "Iso" msgstr "Izo." -#: FlatCAMObj.py:3061 +#: FlatCAMObj.py:3049 msgid "Finish" msgstr "Finisare" -#: FlatCAMObj.py:3359 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 +#: FlatCAMObj.py:3347 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 #: flatcamGUI/FlatCAMGUI.py:1629 flatcamGUI/FlatCAMGUI.py:1968 #: flatcamGUI/ObjectUI.py:997 msgid "Copy" msgstr "Copiază" -#: FlatCAMObj.py:3602 +#: FlatCAMObj.py:3559 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Introdu diametrul dorit pt unealtă in format Real." -#: FlatCAMObj.py:3677 +#: FlatCAMObj.py:3633 msgid "[success] Tool added in Tool Table." msgstr "[success] Unealtă adăugată in Tabela de Unelte." -#: FlatCAMObj.py:3682 +#: FlatCAMObj.py:3636 msgid "[WARNING_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[WARNING_NOTCL] Unealta implicita adăugată dar valoarea are un format gresit." -#: FlatCAMObj.py:3716 FlatCAMObj.py:3726 +#: FlatCAMObj.py:3668 FlatCAMObj.py:3676 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pt copiere." -#: FlatCAMObj.py:3755 +#: FlatCAMObj.py:3703 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Unealta a fost copiata in Tabela de Unelte." -#: FlatCAMObj.py:3788 +#: FlatCAMObj.py:3732 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Unealta a fost editata in Tabela de Unelte." -#: FlatCAMObj.py:3817 FlatCAMObj.py:3825 +#: FlatCAMObj.py:3760 FlatCAMObj.py:3768 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pentru ștergere." -#: FlatCAMObj.py:3847 +#: FlatCAMObj.py:3790 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Unealta a fost stearsa din Tabela de Unelte." -#: FlatCAMObj.py:4281 +#: FlatCAMObj.py:4219 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1510,29 +1522,23 @@ msgstr "" "[WARNING_NOTCL] Acest obiect Geometrie nu poate fi procesar decoarece este " "Geometrie %s." -#: FlatCAMObj.py:4298 +#: FlatCAMObj.py:4235 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Diametrul uneltei este in format gresit, foloseşte un număr " "Real." -#: FlatCAMObj.py:4325 +#: FlatCAMObj.py:4260 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Eșuat. Nici-o unealtă nu este selectată in Tabela de Unelte ..." -#: FlatCAMObj.py:4362 flatcamEditors/FlatCAMExcEditor.py:2078 -msgid "[ERROR] An internal error has ocurred. See shell.\n" -msgstr "" -"[ERROR] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " -"detalii.\n" - -#: FlatCAMObj.py:4363 +#: FlatCAMObj.py:4297 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4520 FlatCAMObj.py:4754 +#: FlatCAMObj.py:4444 FlatCAMObj.py:4670 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1541,21 +1547,21 @@ msgstr "" "val. nu este oferita.\n" "Adaugă un ofset pt unealtă sau schimbă Tipul Ofset." -#: FlatCAMObj.py:4639 flatcamTools/ToolSolderPaste.py:1112 +#: FlatCAMObj.py:4557 flatcamTools/ToolSolderPaste.py:1112 #: flatcamTools/ToolSolderPaste.py:1168 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Anulat. Fişier gol, nu are date geometrice." -#: FlatCAMObj.py:5002 FlatCAMObj.py:5011 camlib.py:3360 camlib.py:3369 +#: FlatCAMObj.py:4918 FlatCAMObj.py:4927 camlib.py:3362 camlib.py:3371 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Factorul de scalare trebuie să fie un număr: natural sau real." -#: FlatCAMObj.py:5048 +#: FlatCAMObj.py:4964 msgid "[success] Geometry Scale done." msgstr "[success] Scalare Geometrie executată." -#: FlatCAMObj.py:5065 camlib.py:3438 +#: FlatCAMObj.py:4981 camlib.py:3440 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1563,29 +1569,29 @@ msgstr "" "[ERROR_NOTCL] O pereche de valori (x,y) este necesară. Probabil că ai " "introdus numai o singură valoare in câmpul Offset." -#: FlatCAMObj.py:5084 +#: FlatCAMObj.py:5000 msgid "[success] Geometry Offset done." msgstr "[success] Ofset Geometrie executat." -#: FlatCAMObj.py:5638 FlatCAMObj.py:5643 flatcamTools/ToolSolderPaste.py:1368 +#: FlatCAMObj.py:5554 FlatCAMObj.py:5559 flatcamTools/ToolSolderPaste.py:1368 msgid "Export Machine Code ..." msgstr "Exporta CNC Cod Masina ..." -#: FlatCAMObj.py:5649 flatcamTools/ToolSolderPaste.py:1371 +#: FlatCAMObj.py:5565 flatcamTools/ToolSolderPaste.py:1371 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Exportul codului masina CNC a fost anulat ..." -#: FlatCAMObj.py:5666 +#: FlatCAMObj.py:5582 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Fişierul cu cod CNC este salvat in: %s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5604 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5721 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1594,11 +1600,11 @@ msgstr "" "[WARNING_NOTCL] Acest obiect CNCJob nu poate fi procesar deoarece este un " "obiect CNCJob tip %s." -#: FlatCAMObj.py:5858 +#: FlatCAMObj.py:5774 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code nu contine codul pt unitati: G20 sau G21" -#: FlatCAMObj.py:5871 +#: FlatCAMObj.py:5787 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1606,17 +1612,17 @@ msgstr "" "[ERROR_NOTCL] Anulat. Codul G-Code din Macro-ul Schimbare unealtă este " "activat dar nuc contine nimic." -#: FlatCAMObj.py:5878 +#: FlatCAMObj.py:5794 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] G-Code-ul pt schimbare unealtă a fost inlocuit cu un cod " "pesonalizat." -#: FlatCAMObj.py:5893 flatcamTools/ToolSolderPaste.py:1397 +#: FlatCAMObj.py:5808 flatcamTools/ToolSolderPaste.py:1397 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Nu exista un asemenea fişier sau director" -#: FlatCAMObj.py:5913 FlatCAMObj.py:5925 +#: FlatCAMObj.py:5832 FlatCAMObj.py:5844 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1624,7 +1630,7 @@ msgstr "" "[WARNING_NOTCL] Postprocesorul folosit trebuie să aibă in numele sau: " "'toolchange_custom'" -#: FlatCAMObj.py:5931 +#: FlatCAMObj.py:5850 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Nu exista nici-un fişier postprocesor." @@ -1656,41 +1662,41 @@ msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "" "[ERROR_NOTCL] self.solid_geometry nu este tip BaseGeometry sau tip lista." -#: camlib.py:1402 +#: camlib.py:1404 msgid "[success] Object was mirrored ..." msgstr "[success] Obiectul a fost oglindit ..." -#: camlib.py:1404 +#: camlib.py:1406 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" msgstr "[ERROR_NOTCL] Oglindire eșuata. Nici-un obiect nu este selectat ..." -#: camlib.py:1440 +#: camlib.py:1442 msgid "[success] Object was rotated ..." msgstr "[success] Obiectul a fost rotit ..." -#: camlib.py:1442 +#: camlib.py:1444 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" msgstr "[ERROR_NOTCL] Rotaţie eșuata. Nici-un obiect nu este selectat ..." -#: camlib.py:1476 +#: camlib.py:1478 msgid "[success] Object was skewed ..." msgstr "[success] Obiectul a fost deformat ..." -#: camlib.py:1478 +#: camlib.py:1480 msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Deformare eșuata. Nici-un obiect nu este selectat ..." -#: camlib.py:2740 camlib.py:2825 +#: camlib.py:2742 camlib.py:2827 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Coordonatele lipsesc, linia este ignorata: %s" -#: camlib.py:2741 camlib.py:2826 +#: camlib.py:2743 camlib.py:2828 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" "[WARNING_NOTCL] Fişierul Gerber poate fi corrupt. Verificati fişierul!!!" -#: camlib.py:2790 +#: camlib.py:2792 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1699,7 +1705,7 @@ msgstr "" "[ERROR] Regiunea Gerber nu are suficiente puncte. Fişierul va fi procesat " "dar sunt erori de parsare. Numărul liniei: %s" -#: camlib.py:3182 +#: camlib.py:3184 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1708,32 +1714,32 @@ msgstr "" "[ERROR] Eroare in parserul Gerber.\n" "%s:" -#: camlib.py:3406 +#: camlib.py:3408 msgid "[success] Gerber Scale done." msgstr "[success] Scalarea Gerber efectuata." -#: camlib.py:3471 +#: camlib.py:3473 msgid "[success] Gerber Offset done." msgstr "[success] Offsetare Gerber efectuata." -#: camlib.py:3525 +#: camlib.py:3527 msgid "[success] Gerber Mirror done." msgstr "[success] Oglindirea Gerber efectuata." -#: camlib.py:3571 +#: camlib.py:3573 msgid "[success] Gerber Skew done." msgstr "[success] Deformarea Gerber efectuata." -#: camlib.py:3609 +#: camlib.py:3611 msgid "[success] Gerber Rotate done." msgstr "[success] Rotatia Gerber efectuata." -#: camlib.py:3890 +#: camlib.py:3892 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] Acesta este un marcaj Gerber: %s" -#: camlib.py:4005 +#: camlib.py:4007 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1749,7 +1755,7 @@ msgstr "" "Userul trebuie să editeze obictul Excellon rezultat si sa ajusteze " "diametrele a.i sa reflecte diametrele reale." -#: camlib.py:4470 +#: camlib.py:4472 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1759,7 +1765,7 @@ msgstr "" "Parsare eșuata. Linia {l_nr}: {line}\n" "\n" -#: camlib.py:4549 +#: camlib.py:4551 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1769,12 +1775,12 @@ msgstr "" "deoarece nu are o unealtă asociata.\n" "Verifică codul G-Code rezultat." -#: camlib.py:5088 +#: camlib.py:5090 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] Nu exista un asemenea parametru: %s" -#: camlib.py:5158 +#: camlib.py:5160 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1787,7 +1793,7 @@ msgstr "" "Se presupune că este o eroare de tastare astfel ca aplicaţia va converti " "intr-o valoare negativă. Verifică codul masina (G-Code etc) rezultat." -#: camlib.py:5165 camlib.py:5661 camlib.py:5924 +#: camlib.py:5167 camlib.py:5663 camlib.py:5926 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" @@ -1795,15 +1801,15 @@ msgstr "" "[WARNING] Parametrul >Z tăiere< este nul. Nu va fi nici-o tăiere prin urmare " "nu procesam fişierul %s" -#: camlib.py:5394 camlib.py:5491 camlib.py:5549 +#: camlib.py:5396 camlib.py:5493 camlib.py:5551 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] Fişierul Excellon incărcat nu are găuri ..." -#: camlib.py:5496 +#: camlib.py:5498 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Un tip de optimizare incorrect a fost selectat." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5651 camlib.py:5914 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1811,7 +1817,7 @@ msgstr "" "[ERROR_NOTCL] Parametrul >Z tăiere< este None sau zero. Cel mai probabil o " "combinaţie nefericita de parametri." -#: camlib.py:5654 camlib.py:5917 +#: camlib.py:5656 camlib.py:5919 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1824,11 +1830,11 @@ msgstr "" "Se presupune că este o eroare de tastare astfel ca aplicaţia va converti " "intr-o valoare negativă. Verifică codul masina (G-Code etc) rezultat." -#: camlib.py:5666 camlib.py:5929 +#: camlib.py:5668 camlib.py:5931 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] Parametrul >Z deplasare< este None sau zero." -#: camlib.py:5670 camlib.py:5933 +#: camlib.py:5672 camlib.py:5935 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1842,7 +1848,7 @@ msgstr "" "Se presupune că este o eroare de tastare astfel ca aplicaţia va converti " "intr-o valoare pozitivă. Verifică codul masina (G-Code etc) rezultat." -#: camlib.py:5677 camlib.py:5940 +#: camlib.py:5679 camlib.py:5942 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" @@ -1850,12 +1856,12 @@ msgstr "" "[WARNING] Parametrul >Z deplasare< este zero. Aceasta este periculos, prin " "urmare fişierul %s nu se procesează." -#: camlib.py:5807 +#: camlib.py:5809 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR] Se astepta o Geometrie, am primit in schimb %s" -#: camlib.py:5813 +#: camlib.py:5815 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1863,7 +1869,7 @@ msgstr "" "[ERROR_NOTCL] Se încearcă generarea unui CNC Job dintr-un obiect Geometrie " "fără atributul solid_geometry." -#: camlib.py:5852 +#: camlib.py:5854 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1873,7 +1879,7 @@ msgstr "" "fi folosita. \n" "Mareste valoarea absoluta și încearcă din nou." -#: camlib.py:6064 +#: camlib.py:6066 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" "[ERROR_NOTCL] Nu exista date cu privier la unealtă in geometria SolderPaste." @@ -2225,6 +2231,12 @@ msgstr "" "[ERROR_NOTCL] Nu exista definitii de unelte in fişier. Se anulează crearea " "de obiect Excellon." +#: flatcamEditors/FlatCAMExcEditor.py:2078 +msgid "[ERROR] An internal error has ocurred. See shell.\n" +msgstr "" +"[ERROR] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " +"detalii.\n" + #: flatcamEditors/FlatCAMExcEditor.py:2084 msgid "Creating Excellon." msgstr "In curs de creere Excellon." @@ -2327,12 +2339,12 @@ msgstr "Unealta" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4080 #: flatcamGUI/FlatCAMGUI.py:5189 flatcamGUI/FlatCAMGUI.py:5623 -#: flatcamGUI/FlatCAMGUI.py:5900 flatcamGUI/FlatCAMGUI.py:6055 +#: flatcamGUI/FlatCAMGUI.py:5913 flatcamGUI/FlatCAMGUI.py:6068 #: flatcamGUI/ObjectUI.py:259 msgid "Tool dia:" msgstr "Dia unealtă:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6057 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6070 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2341,7 +2353,7 @@ msgstr "" "Este și lăţimea de tăiere pentru uneltele cilindrice." #: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5806 -#: flatcamGUI/FlatCAMGUI.py:6066 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamGUI/FlatCAMGUI.py:6079 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Rata suprapunere:" @@ -2373,13 +2385,13 @@ msgstr "" "datorita numărului mai mare de treceri-tăiere." #: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5822 -#: flatcamGUI/FlatCAMGUI.py:5923 flatcamGUI/FlatCAMGUI.py:6076 +#: flatcamGUI/FlatCAMGUI.py:5936 flatcamGUI/FlatCAMGUI.py:6089 #: flatcamTools/ToolCutOut.py:101 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Margine:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6078 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6091 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2391,12 +2403,12 @@ msgstr "" "să fie >pictat<." #: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5831 -#: flatcamGUI/FlatCAMGUI.py:6087 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamGUI/FlatCAMGUI.py:6100 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Metoda:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6089 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6102 msgid "" "Algorithm to paint the polygon:
    Standard: Fixed step inwards." "
    Seed-based: Outwards from seed." @@ -2405,31 +2417,31 @@ msgstr "" "
    Samanta: Spre exterior pornind de la un punct-samanta." #: flatcamEditors/FlatCAMGeoEditor.py:480 flatcamGUI/FlatCAMGUI.py:5840 -#: flatcamGUI/FlatCAMGUI.py:6095 flatcamTools/ToolNonCopperClear.py:199 +#: flatcamGUI/FlatCAMGUI.py:6108 flatcamTools/ToolNonCopperClear.py:199 #: flatcamTools/ToolPaint.py:197 msgid "Standard" msgstr "Standard" #: flatcamEditors/FlatCAMGeoEditor.py:481 flatcamGUI/FlatCAMGUI.py:5841 -#: flatcamGUI/FlatCAMGUI.py:6096 flatcamTools/ToolNonCopperClear.py:200 +#: flatcamGUI/FlatCAMGUI.py:6109 flatcamTools/ToolNonCopperClear.py:200 #: flatcamTools/ToolPaint.py:198 msgid "Seed-based" msgstr "Punct-samanta" #: flatcamEditors/FlatCAMGeoEditor.py:482 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6097 flatcamTools/ToolNonCopperClear.py:201 +#: flatcamGUI/FlatCAMGUI.py:6110 flatcamTools/ToolNonCopperClear.py:201 #: flatcamTools/ToolPaint.py:199 msgid "Straight lines" msgstr "Linii drepte" #: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5847 -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamGUI/FlatCAMGUI.py:6115 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Conectează:" #: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5849 -#: flatcamGUI/FlatCAMGUI.py:6104 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2440,13 +2452,13 @@ msgstr "" "de ridicare a uneltei." #: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5856 -#: flatcamGUI/FlatCAMGUI.py:6112 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamGUI/FlatCAMGUI.py:6125 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Contur:" #: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5858 -#: flatcamGUI/FlatCAMGUI.py:6114 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamGUI/FlatCAMGUI.py:6127 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2461,7 +2473,7 @@ msgstr "Pictează" #: flatcamEditors/FlatCAMGeoEditor.py:527 flatcamGUI/FlatCAMGUI.py:639 #: flatcamGUI/FlatCAMGUI.py:1883 flatcamGUI/ObjectUI.py:1320 -#: flatcamTools/ToolPaint.py:340 +#: flatcamTools/ToolPaint.py:343 msgid "Paint Tool" msgstr "Unealta Paint" @@ -2498,7 +2510,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2707 #: flatcamEditors/FlatCAMGeoEditor.py:2733 #: flatcamEditors/FlatCAMGeoEditor.py:2759 -#: flatcamTools/ToolNonCopperClear.py:817 flatcamTools/ToolProperties.py:104 +#: flatcamTools/ToolNonCopperClear.py:916 flatcamTools/ToolProperties.py:104 msgid "Tools" msgstr "Unelte" @@ -2663,7 +2675,7 @@ msgid "Scale Y" msgstr "Scalează Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6461 +#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6474 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Legatura" @@ -2678,7 +2690,7 @@ msgstr "" "folsoind factorul: Factor X pentru ambele axe." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6482 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Referința scalare" @@ -4609,7 +4621,7 @@ msgid "&Cutout Tool" msgstr "Unealta Decupare" #: flatcamGUI/FlatCAMGUI.py:638 flatcamGUI/FlatCAMGUI.py:1882 -#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:285 +#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:336 msgid "NCC Tool" msgstr "Unealta NCC" @@ -6202,8 +6214,8 @@ msgid "Replace With" msgstr "Inlocuieste cu" #: flatcamGUI/FlatCAMGUI.py:1667 flatcamGUI/FlatCAMGUI.py:5556 -#: flatcamGUI/FlatCAMGUI.py:6129 flatcamGUI/ObjectUI.py:1369 -#: flatcamTools/ToolPaint.py:248 +#: flatcamGUI/FlatCAMGUI.py:6143 flatcamGUI/ObjectUI.py:1369 +#: flatcamTools/ToolPaint.py:249 msgid "All" msgstr "Toate" @@ -6962,7 +6974,7 @@ msgstr "" "urmărindu-le conturul." #: flatcamGUI/FlatCAMGUI.py:4082 flatcamGUI/FlatCAMGUI.py:4761 -#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/ObjectUI.py:785 +#: flatcamGUI/FlatCAMGUI.py:5915 flatcamGUI/ObjectUI.py:785 #: flatcamGUI/ObjectUI.py:801 msgid "Diameter of the cutting tool." msgstr "Diametrul uneltei taietoare." @@ -7230,10 +7242,10 @@ msgstr "TZ" #: flatcamGUI/FlatCAMGUI.py:4352 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/FlatCAMGUI.py:5496 flatcamGUI/FlatCAMGUI.py:5788 -#: flatcamGUI/FlatCAMGUI.py:5889 flatcamGUI/FlatCAMGUI.py:5983 -#: flatcamGUI/FlatCAMGUI.py:6042 flatcamGUI/FlatCAMGUI.py:6145 -#: flatcamGUI/FlatCAMGUI.py:6206 flatcamGUI/FlatCAMGUI.py:6405 -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/FlatCAMGUI.py:5996 +#: flatcamGUI/FlatCAMGUI.py:6055 flatcamGUI/FlatCAMGUI.py:6158 +#: flatcamGUI/FlatCAMGUI.py:6219 flatcamGUI/FlatCAMGUI.py:6418 +#: flatcamGUI/FlatCAMGUI.py:6545 msgid "Parameters:" msgstr "Parametri:" @@ -7489,7 +7501,7 @@ msgstr "" "din acest obiect Excellon." #: flatcamGUI/FlatCAMGUI.py:4635 flatcamGUI/FlatCAMGUI.py:5222 -#: flatcamGUI/FlatCAMGUI.py:6341 flatcamGUI/ObjectUI.py:592 +#: flatcamGUI/FlatCAMGUI.py:6354 flatcamGUI/ObjectUI.py:592 #: flatcamGUI/ObjectUI.py:1068 flatcamTools/ToolCalculators.py:106 msgid "Cut Z:" msgstr "Z tăiere:" @@ -8401,7 +8413,7 @@ msgstr "dwelltime = durata de asteptare ca motorul să ajunga la turatia setată msgid "NCC Tool Options" msgstr "Opțiuni Unealta NCC" -#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6543 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6556 msgid "Tools dia:" msgstr "Dia unealtă:" @@ -8469,11 +8481,37 @@ msgstr "" "precedenta.\n" "Daca nu este bifat, foloseşte algoritmul standard." -#: flatcamGUI/FlatCAMGUI.py:5886 +#: flatcamGUI/FlatCAMGUI.py:5879 flatcamTools/ToolNonCopperClear.py:239 +msgid "Itself" +msgstr "Însuşi" + +#: flatcamGUI/FlatCAMGUI.py:5880 flatcamGUI/FlatCAMGUI.py:6031 +#: flatcamTools/ToolDblSided.py:132 flatcamTools/ToolNonCopperClear.py:240 +msgid "Box" +msgstr "Forma" + +#: flatcamGUI/FlatCAMGUI.py:5881 flatcamTools/ToolNonCopperClear.py:241 +msgid "Reference:" +msgstr "Referinţă:" + +#: flatcamGUI/FlatCAMGUI.py:5883 +msgid "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." +msgstr "" +"Atunci când alegeți opțiunea „Însuși”, intinderea suprafeței curățate de Cu\n" +"se bazează pe obiectul care este curățat de cupru.\n" +"Alegerea opțiunii „Cutie” va efectua o curățare fără cupru\n" +"în cadrul delimitarii specificate de un alt obiect diferit de cel care este " +"curățat de cupru." + +#: flatcamGUI/FlatCAMGUI.py:5899 msgid "Cutout Tool Options" msgstr "Opțiuni Unealta Decupare" -#: flatcamGUI/FlatCAMGUI.py:5891 flatcamGUI/ObjectUI.py:399 +#: flatcamGUI/FlatCAMGUI.py:5904 flatcamGUI/ObjectUI.py:399 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8483,11 +8521,11 @@ msgstr "" "lasand punţi pentru a separa PCB-ul de \n" "placa din care a fost taiat." -#: flatcamGUI/FlatCAMGUI.py:5909 flatcamTools/ToolCutOut.py:77 +#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:77 msgid "Obj kind:" msgstr "Tipul de obiect:" -#: flatcamGUI/FlatCAMGUI.py:5911 flatcamTools/ToolCutOut.py:79 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:79 msgid "" "Choice of what kind the object we want to cutout is.
    - Single: " "contain a single PCB Gerber outline object.
    - Panel: a panel PCB " @@ -8499,26 +8537,26 @@ msgstr "" "tip panel, care este făcut\n" "din mai multe contururi PCB." -#: flatcamGUI/FlatCAMGUI.py:5918 flatcamGUI/FlatCAMGUI.py:6128 +#: flatcamGUI/FlatCAMGUI.py:5931 flatcamGUI/FlatCAMGUI.py:6141 #: flatcamTools/ToolCutOut.py:85 flatcamTools/ToolPaint.py:247 msgid "Single" msgstr "Unic" -#: flatcamGUI/FlatCAMGUI.py:5919 flatcamTools/ToolCutOut.py:86 +#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:86 msgid "Panel" msgstr "Panel" -#: flatcamGUI/FlatCAMGUI.py:5925 +#: flatcamGUI/FlatCAMGUI.py:5938 msgid "" "Distance from objects at which\n" "to draw the cutout." msgstr "Distanta de obiecte la care să se deseneze forma taietoare." -#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:111 +#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:111 msgid "Gap size:" msgstr "Dim. punte:" -#: flatcamGUI/FlatCAMGUI.py:5934 +#: flatcamGUI/FlatCAMGUI.py:5947 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8528,11 +8566,11 @@ msgstr "" "care vor mentine PCB-ul in poziţie, fără să cada\n" "din placa 'mama' dupa decupare." -#: flatcamGUI/FlatCAMGUI.py:5942 flatcamTools/ToolCutOut.py:149 +#: flatcamGUI/FlatCAMGUI.py:5955 flatcamTools/ToolCutOut.py:149 msgid "Gaps:" msgstr "Punţi:" -#: flatcamGUI/FlatCAMGUI.py:5944 +#: flatcamGUI/FlatCAMGUI.py:5957 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8554,21 +8592,21 @@ msgstr "" "- 2tb = 2* sus - 2* jos\n" "- 8 = 2* stânga - 2* dreapta - 2* sus - 2* jos" -#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolCutOut.py:130 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolCutOut.py:130 msgid "Convex Sh.:" msgstr "Formă Conv." -#: flatcamGUI/FlatCAMGUI.py:5967 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "Create a convex shape surrounding the entire PCB." msgstr "" "Generează un obiect tip Geometrie care va inconjura\n" "tot PCB-ul. Forma sa este convexa." -#: flatcamGUI/FlatCAMGUI.py:5980 +#: flatcamGUI/FlatCAMGUI.py:5993 msgid "2Sided Tool Options" msgstr "Opțiuni Unealta 2Fețe" -#: flatcamGUI/FlatCAMGUI.py:5985 +#: flatcamGUI/FlatCAMGUI.py:5998 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8576,36 +8614,32 @@ msgstr "" "O unealtă care ajuta in crearea de PCB-uri cu 2 fețe\n" "folosind găuri de aliniere." -#: flatcamGUI/FlatCAMGUI.py:5995 flatcamTools/ToolDblSided.py:234 +#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:234 msgid "Drill diam.:" msgstr "Dia gaura:" -#: flatcamGUI/FlatCAMGUI.py:5997 flatcamTools/ToolDblSided.py:225 +#: flatcamGUI/FlatCAMGUI.py:6010 flatcamTools/ToolDblSided.py:225 #: flatcamTools/ToolDblSided.py:236 msgid "Diameter of the drill for the alignment holes." msgstr "Diametrul găurii pentru găurile de aliniere." -#: flatcamGUI/FlatCAMGUI.py:6006 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Axe oglindire:" -#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:6021 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Oglindește vertical (X) sau orizontal (Y)." -#: flatcamGUI/FlatCAMGUI.py:6017 flatcamTools/ToolDblSided.py:131 +#: flatcamGUI/FlatCAMGUI.py:6030 flatcamTools/ToolDblSided.py:131 msgid "Point" msgstr "Punct" -#: flatcamGUI/FlatCAMGUI.py:6018 flatcamTools/ToolDblSided.py:132 -msgid "Box" -msgstr "Forma" - -#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:6032 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Axa de ref.:" -#: flatcamGUI/FlatCAMGUI.py:6021 +#: flatcamGUI/FlatCAMGUI.py:6034 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8614,11 +8648,11 @@ msgstr "" "Axa de referinţă ar trebui să treaca printr-un punct ori să strabata\n" " o forma (specificata un obiect tip Geometrie) prin mijloc." -#: flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamGUI/FlatCAMGUI.py:6050 msgid "Paint Tool Options" msgstr "Opțiuni Unealta Paint" -#: flatcamGUI/FlatCAMGUI.py:6044 flatcamGUI/ObjectUI.py:1311 +#: flatcamGUI/FlatCAMGUI.py:6057 flatcamGUI/ObjectUI.py:1311 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8631,7 +8665,7 @@ msgstr "" "singur poligon se va cere să faceti click pe poligonul\n" "dorit." -#: flatcamGUI/FlatCAMGUI.py:6068 +#: flatcamGUI/FlatCAMGUI.py:6081 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8639,19 +8673,23 @@ msgstr "" "Cat de mult (o fracţie din diametrul uneltei) din diametrul uneltei,\n" "(lăţimea de tăiere) să se suprapună peste trecerea anterioară." -#: flatcamGUI/FlatCAMGUI.py:6122 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6135 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Selecţie:" -#: flatcamGUI/FlatCAMGUI.py:6124 +#: flatcamGUI/FlatCAMGUI.py:6137 msgid "How to select the polygons to paint." msgstr "Cum să se selecteze poligoanele de pictat (paint)." -#: flatcamGUI/FlatCAMGUI.py:6142 +#: flatcamGUI/FlatCAMGUI.py:6142 flatcamTools/ToolPaint.py:248 +msgid "Area" +msgstr "Aria" + +#: flatcamGUI/FlatCAMGUI.py:6155 msgid "Film Tool Options" msgstr "Opțiuni Unealta Film" -#: flatcamGUI/FlatCAMGUI.py:6147 +#: flatcamGUI/FlatCAMGUI.py:6160 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8660,11 +8698,11 @@ msgstr "" "Crează un film PCB dintr-un obiect Gerber sau tip Geometrie.\n" "Fişierul este salvat in format SVG." -#: flatcamGUI/FlatCAMGUI.py:6158 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Tip film:" -#: flatcamGUI/FlatCAMGUI.py:6160 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8678,11 +8716,11 @@ msgstr "" "Negativ = traseele vor fi albe pe un fundal negru.\n" "Formatul fişierului pt filmul salvat este SVG." -#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6184 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Bordura:" -#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8699,11 +8737,11 @@ msgstr "" "Va crea o bara solida neagra in jurul printului efectiv permitand o\n" "delimitare exacta" -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Scalează:" -#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8713,11 +8751,11 @@ msgstr "" "Scalează grosimea conturului fiecarui element din fişierul SVG.\n" "Elementele mai mici vor fi afectate mai mult." -#: flatcamGUI/FlatCAMGUI.py:6203 +#: flatcamGUI/FlatCAMGUI.py:6216 msgid "Panelize Tool Options" msgstr "Opțiuni Unealta Panelizare" -#: flatcamGUI/FlatCAMGUI.py:6208 +#: flatcamGUI/FlatCAMGUI.py:6221 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8727,11 +8765,11 @@ msgstr "" "unde fiecare element este o copie a obiectului sursa, separat la o\n" "distanţă X, Y unul de celalalt." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6232 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Sep. coloane:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6234 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8739,11 +8777,11 @@ msgstr "" "Spatiul de separare între coloane.\n" "In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6229 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6242 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Sep. linii:" -#: flatcamGUI/FlatCAMGUI.py:6231 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6244 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8751,35 +8789,35 @@ msgstr "" "Spatiul de separare între linii.\n" "In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6252 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Coloane:" -#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6254 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Numărul de coloane ale panel-ului dorit." -#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6261 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Linii:" -#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6263 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Numărul de linii ale panel-ului dorit." -#: flatcamGUI/FlatCAMGUI.py:6256 flatcamTools/ToolPanelize.py:181 +#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:181 msgid "Gerber" msgstr "Gerber" -#: flatcamGUI/FlatCAMGUI.py:6257 flatcamTools/ToolPanelize.py:182 +#: flatcamGUI/FlatCAMGUI.py:6270 flatcamTools/ToolPanelize.py:182 msgid "Geo" msgstr "Geo" -#: flatcamGUI/FlatCAMGUI.py:6258 +#: flatcamGUI/FlatCAMGUI.py:6271 msgid "Panel Type:" msgstr "Tip panel:" -#: flatcamGUI/FlatCAMGUI.py:6260 +#: flatcamGUI/FlatCAMGUI.py:6273 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8789,11 +8827,11 @@ msgstr "" "- Gerber\n" "- Geometrie" -#: flatcamGUI/FlatCAMGUI.py:6269 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "Constrain within:" msgstr "Constrange:" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6284 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8807,11 +8845,11 @@ msgstr "" "panelul final va contine numai acel număr de linii/coloane care se inscrie\n" "complet in aria desemnata." -#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6293 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Latime (Dx):" -#: flatcamGUI/FlatCAMGUI.py:6282 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6295 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8819,11 +8857,11 @@ msgstr "" "Lăţimea (Dx) in care panelul trebuie să se inscrie.\n" "In unitati curente." -#: flatcamGUI/FlatCAMGUI.py:6289 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6302 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Inaltime (Dy):" -#: flatcamGUI/FlatCAMGUI.py:6291 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6304 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8831,15 +8869,15 @@ msgstr "" "Înălţimea (Dy) in care panelul trebuie să se inscrie.\n" "In unitati curente." -#: flatcamGUI/FlatCAMGUI.py:6305 +#: flatcamGUI/FlatCAMGUI.py:6318 msgid "Calculators Tool Options" msgstr "Opțiuni Unealta Calculatoare" -#: flatcamGUI/FlatCAMGUI.py:6308 +#: flatcamGUI/FlatCAMGUI.py:6321 msgid "V-Shape Tool Calculator:" msgstr "Calculator: Unealta V-shape" -#: flatcamGUI/FlatCAMGUI.py:6310 +#: flatcamGUI/FlatCAMGUI.py:6323 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8849,11 +8887,11 @@ msgstr "" "avand diametrul vârfului și unghiul la vârf cat și\n" "adâncimea de tăiere, ca parametri." -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:92 +#: flatcamGUI/FlatCAMGUI.py:6334 flatcamTools/ToolCalculators.py:92 msgid "Tip Diameter:" msgstr "Dia vârf:" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6336 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8861,11 +8899,11 @@ msgstr "" "Acesta este diametrul la vârf al uneltei.\n" "Este specificat de producator." -#: flatcamGUI/FlatCAMGUI.py:6331 +#: flatcamGUI/FlatCAMGUI.py:6344 msgid "Tip angle:" msgstr "Unghiul la vârf:" -#: flatcamGUI/FlatCAMGUI.py:6333 +#: flatcamGUI/FlatCAMGUI.py:6346 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8873,7 +8911,7 @@ msgstr "" "Acesta este unghiul la vârf al uneltei.\n" "Este specificat de producator." -#: flatcamGUI/FlatCAMGUI.py:6343 +#: flatcamGUI/FlatCAMGUI.py:6356 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8881,11 +8919,11 @@ msgstr "" "Aceasta este adâncimea la care se taie in material.\n" "In obiectul CNCJob este parametrul >Z tăiere<." -#: flatcamGUI/FlatCAMGUI.py:6350 +#: flatcamGUI/FlatCAMGUI.py:6363 msgid "ElectroPlating Calculator:" msgstr "Calculator Electroplacare:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:148 +#: flatcamGUI/FlatCAMGUI.py:6365 flatcamTools/ToolCalculators.py:148 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8897,31 +8935,31 @@ msgstr "" "- clorura paladiu\n" "- hipofosfit de calciu" -#: flatcamGUI/FlatCAMGUI.py:6362 flatcamTools/ToolCalculators.py:157 +#: flatcamGUI/FlatCAMGUI.py:6375 flatcamTools/ToolCalculators.py:157 msgid "Board Length:" msgstr "Lung. placii:" -#: flatcamGUI/FlatCAMGUI.py:6364 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:161 msgid "This is the board length. In centimeters." msgstr "" "Aceasta este lungimea PCB-ului.\n" "In centimetri. " -#: flatcamGUI/FlatCAMGUI.py:6370 flatcamTools/ToolCalculators.py:163 +#: flatcamGUI/FlatCAMGUI.py:6383 flatcamTools/ToolCalculators.py:163 msgid "Board Width:" msgstr "Lat. placii:" -#: flatcamGUI/FlatCAMGUI.py:6372 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6385 flatcamTools/ToolCalculators.py:167 msgid "This is the board width.In centimeters." msgstr "" "Aceasta este lăţimea PCB-ului.\n" "In centimetri. " -#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:169 +#: flatcamGUI/FlatCAMGUI.py:6390 flatcamTools/ToolCalculators.py:169 msgid "Current Density:" msgstr "Densitate I:" -#: flatcamGUI/FlatCAMGUI.py:6380 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6393 flatcamTools/ToolCalculators.py:173 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8929,11 +8967,11 @@ msgstr "" "Densitatea de curent care să treaca prin placa.\n" "In ASF (amperi pe picior la patrat)." -#: flatcamGUI/FlatCAMGUI.py:6386 flatcamTools/ToolCalculators.py:176 +#: flatcamGUI/FlatCAMGUI.py:6399 flatcamTools/ToolCalculators.py:176 msgid "Copper Growth:" msgstr "Grosime Cu:" -#: flatcamGUI/FlatCAMGUI.py:6389 flatcamTools/ToolCalculators.py:180 +#: flatcamGUI/FlatCAMGUI.py:6402 flatcamTools/ToolCalculators.py:180 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8941,11 +8979,11 @@ msgstr "" "Cat de gros se dorește să fie stratul de cupru depus.\n" "In microni." -#: flatcamGUI/FlatCAMGUI.py:6402 +#: flatcamGUI/FlatCAMGUI.py:6415 msgid "Transform Tool Options" msgstr "Opțiuni Unealta Transformare" -#: flatcamGUI/FlatCAMGUI.py:6407 +#: flatcamGUI/FlatCAMGUI.py:6420 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8958,47 +8996,47 @@ msgstr "" "- deformare\n" "- oglindire" -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6430 msgid "Rotate Angle:" msgstr "Unghi Rotaţie:" -#: flatcamGUI/FlatCAMGUI.py:6419 +#: flatcamGUI/FlatCAMGUI.py:6432 msgid "Angle for rotation. In degrees." msgstr "Unnghiul pentru rotaţie. In grade." -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Skew_X angle:" msgstr "Unghi Deform_X:" -#: flatcamGUI/FlatCAMGUI.py:6428 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Unghiul pentru deformare pe axa X. In grade." -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Skew_Y angle:" msgstr "Unghi Deform_Y:" -#: flatcamGUI/FlatCAMGUI.py:6437 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Unghiul pentru deformare pe axa Y. In grade." -#: flatcamGUI/FlatCAMGUI.py:6444 +#: flatcamGUI/FlatCAMGUI.py:6457 msgid "Scale_X factor:" msgstr "Factor Scal_X:" -#: flatcamGUI/FlatCAMGUI.py:6446 +#: flatcamGUI/FlatCAMGUI.py:6459 msgid "Factor for scaling on X axis." msgstr "Factor de scalare pe axa X." -#: flatcamGUI/FlatCAMGUI.py:6453 +#: flatcamGUI/FlatCAMGUI.py:6466 msgid "Scale_Y factor:" msgstr "Factor Scal_Y:" -#: flatcamGUI/FlatCAMGUI.py:6455 +#: flatcamGUI/FlatCAMGUI.py:6468 msgid "Factor for scaling on Y axis." msgstr "Factor de scalare pe axa Y." -#: flatcamGUI/FlatCAMGUI.py:6463 +#: flatcamGUI/FlatCAMGUI.py:6476 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -9006,7 +9044,7 @@ msgstr "" "Scalează obiectele selectate folosind\n" "Factor Scal_X pentru ambele axe." -#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6484 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -9019,27 +9057,27 @@ msgstr "" "centrul formei inconjuatoare care cuprinde\n" "toate obiectele selectate." -#: flatcamGUI/FlatCAMGUI.py:6480 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "Offset_X val:" msgstr "Ofset_X:" -#: flatcamGUI/FlatCAMGUI.py:6482 +#: flatcamGUI/FlatCAMGUI.py:6495 msgid "Distance to offset on X axis. In current units." msgstr "Distanta la care se face ofset pe axa X. In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6489 +#: flatcamGUI/FlatCAMGUI.py:6502 msgid "Offset_Y val:" msgstr "Ofset_Y:" -#: flatcamGUI/FlatCAMGUI.py:6491 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Distance to offset on Y axis. In current units." msgstr "Distanta la care se face ofset pe axa Y. In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6497 +#: flatcamGUI/FlatCAMGUI.py:6510 msgid "Mirror Reference" msgstr "Referinţă Oglindire" -#: flatcamGUI/FlatCAMGUI.py:6499 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -9062,11 +9100,11 @@ msgstr "" "in forma (x, y).\n" "La final apasa butonul de oglindire pe axa dorita. " -#: flatcamGUI/FlatCAMGUI.py:6510 +#: flatcamGUI/FlatCAMGUI.py:6523 msgid " Mirror Ref. Point:" msgstr "Pt. Ref. Oglindire:" -#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6525 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -9077,11 +9115,11 @@ msgstr "" "X din (x,y) se va folosi când se face oglindirea pe axa X\n" "Y din (x,y) se va folosi când se face oglindirea pe axa Y." -#: flatcamGUI/FlatCAMGUI.py:6529 +#: flatcamGUI/FlatCAMGUI.py:6542 msgid "SolderPaste Tool Options" msgstr "Opțiuni Unealta Pasta Fludor" -#: flatcamGUI/FlatCAMGUI.py:6534 +#: flatcamGUI/FlatCAMGUI.py:6547 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -9089,49 +9127,49 @@ msgstr "" "O unealtă care crează cod G-Code pentru dispensarea de pastă de fludor\n" "pe padurile unui PCB." -#: flatcamGUI/FlatCAMGUI.py:6545 +#: flatcamGUI/FlatCAMGUI.py:6558 msgid "Diameters of nozzle tools, separated by ','" msgstr "Diametrele uneltelor (nozzle), separate prin virgula." -#: flatcamGUI/FlatCAMGUI.py:6552 +#: flatcamGUI/FlatCAMGUI.py:6565 msgid "New Nozzle Dia:" msgstr "Nou Dia::" -#: flatcamGUI/FlatCAMGUI.py:6554 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" "Valoarea pentru diametrul unei noi unelte (nozzle) pentru adaugare in Tabela " "de Unelte" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6575 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Z start disp.:" -#: flatcamGUI/FlatCAMGUI.py:6564 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "Înălţimea (Z) când incepe dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6584 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Z disp.:" -#: flatcamGUI/FlatCAMGUI.py:6573 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "Înălţimea (Z) in timp ce se face dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6580 flatcamTools/ToolSolderPaste.py:182 +#: flatcamGUI/FlatCAMGUI.py:6593 flatcamTools/ToolSolderPaste.py:182 msgid "Z Dispense Stop:" msgstr "Z stop disp.:" -#: flatcamGUI/FlatCAMGUI.py:6582 flatcamTools/ToolSolderPaste.py:184 +#: flatcamGUI/FlatCAMGUI.py:6595 flatcamTools/ToolSolderPaste.py:184 msgid "The height (Z) when solder paste dispensing stops." msgstr "Înălţimea (Z) când se opreste dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6589 flatcamTools/ToolSolderPaste.py:190 +#: flatcamGUI/FlatCAMGUI.py:6602 flatcamTools/ToolSolderPaste.py:190 msgid "Z Travel:" msgstr "Z deplasare:" -#: flatcamGUI/FlatCAMGUI.py:6591 flatcamTools/ToolSolderPaste.py:192 +#: flatcamGUI/FlatCAMGUI.py:6604 flatcamTools/ToolSolderPaste.py:192 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -9139,19 +9177,19 @@ msgstr "" "Înălţimea (Z) când se face deplasare între pad-uri.\n" "(fără dispensare de pastă de fludor)." -#: flatcamGUI/FlatCAMGUI.py:6599 flatcamTools/ToolSolderPaste.py:199 +#: flatcamGUI/FlatCAMGUI.py:6612 flatcamTools/ToolSolderPaste.py:199 msgid "Z Toolchange:" msgstr "Z schimb. unealtă:" -#: flatcamGUI/FlatCAMGUI.py:6601 flatcamTools/ToolSolderPaste.py:201 +#: flatcamGUI/FlatCAMGUI.py:6614 flatcamTools/ToolSolderPaste.py:201 msgid "The height (Z) for tool (nozzle) change." msgstr "Înălţimea (Z) când se schimbă unealta (nozzle-ul)." -#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:207 +#: flatcamGUI/FlatCAMGUI.py:6621 flatcamTools/ToolSolderPaste.py:207 msgid "XY Toolchange:" msgstr "XY schimb unealtă:" -#: flatcamGUI/FlatCAMGUI.py:6610 flatcamTools/ToolSolderPaste.py:209 +#: flatcamGUI/FlatCAMGUI.py:6623 flatcamTools/ToolSolderPaste.py:209 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -9159,30 +9197,30 @@ msgstr "" "Coordonatele X, Y pentru schimbarea uneltei (nozzle).\n" "Formatul este (x,y) unde x și y sunt numere Reale." -#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:216 +#: flatcamGUI/FlatCAMGUI.py:6631 flatcamTools/ToolSolderPaste.py:216 msgid "Feedrate X-Y:" msgstr "Feedrate X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6620 flatcamTools/ToolSolderPaste.py:218 +#: flatcamGUI/FlatCAMGUI.py:6633 flatcamTools/ToolSolderPaste.py:218 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Viteza de deplasare a uneltei când se deplasează in planul X-Y." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:224 +#: flatcamGUI/FlatCAMGUI.py:6640 flatcamTools/ToolSolderPaste.py:224 msgid "Feedrate Z:" msgstr "Feedrate Z:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:226 +#: flatcamGUI/FlatCAMGUI.py:6642 flatcamTools/ToolSolderPaste.py:226 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." msgstr "" "Viteza de deplasare a uneltei când se misca in plan vertical (planul Z)." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:233 +#: flatcamGUI/FlatCAMGUI.py:6650 flatcamTools/ToolSolderPaste.py:233 msgid "Feedrate Z Dispense:" msgstr "Feedrate Z disp.:" -#: flatcamGUI/FlatCAMGUI.py:6639 +#: flatcamGUI/FlatCAMGUI.py:6652 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -9190,11 +9228,11 @@ msgstr "" "Viteza de deplasare la mișcarea pe verticala spre\n" "poziţia de dispensare (in planul Z)." -#: flatcamGUI/FlatCAMGUI.py:6647 flatcamTools/ToolSolderPaste.py:242 +#: flatcamGUI/FlatCAMGUI.py:6660 flatcamTools/ToolSolderPaste.py:242 msgid "Spindle Speed FWD:" msgstr "Viteza motor inainte:" -#: flatcamGUI/FlatCAMGUI.py:6649 flatcamTools/ToolSolderPaste.py:244 +#: flatcamGUI/FlatCAMGUI.py:6662 flatcamTools/ToolSolderPaste.py:244 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -9202,19 +9240,19 @@ msgstr "" "Viteza motorului de dispensare in timp ce impinge pastă de fludor\n" "prin orificiul uneltei de dispensare." -#: flatcamGUI/FlatCAMGUI.py:6657 flatcamTools/ToolSolderPaste.py:251 +#: flatcamGUI/FlatCAMGUI.py:6670 flatcamTools/ToolSolderPaste.py:251 msgid "Dwell FWD:" msgstr "Pauza dupa disp.:" -#: flatcamGUI/FlatCAMGUI.py:6659 flatcamTools/ToolSolderPaste.py:253 +#: flatcamGUI/FlatCAMGUI.py:6672 flatcamTools/ToolSolderPaste.py:253 msgid "Pause after solder dispensing." msgstr "Pauza dupa dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6666 flatcamTools/ToolSolderPaste.py:259 +#: flatcamGUI/FlatCAMGUI.py:6679 flatcamTools/ToolSolderPaste.py:259 msgid "Spindle Speed REV:" msgstr "Viteza motor inapoi:" -#: flatcamGUI/FlatCAMGUI.py:6668 flatcamTools/ToolSolderPaste.py:261 +#: flatcamGUI/FlatCAMGUI.py:6681 flatcamTools/ToolSolderPaste.py:261 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -9222,11 +9260,11 @@ msgstr "" "Viteza motorului de dispensare in timp ce retrage pasta de fludor\n" "prin orificiul uneltei de dispensare." -#: flatcamGUI/FlatCAMGUI.py:6676 flatcamTools/ToolSolderPaste.py:268 +#: flatcamGUI/FlatCAMGUI.py:6689 flatcamTools/ToolSolderPaste.py:268 msgid "Dwell REV:" msgstr "Pauza dupa rev:" -#: flatcamGUI/FlatCAMGUI.py:6678 flatcamTools/ToolSolderPaste.py:270 +#: flatcamGUI/FlatCAMGUI.py:6691 flatcamTools/ToolSolderPaste.py:270 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -9234,23 +9272,23 @@ msgstr "" "Pauza dupa ce pasta de fludor a fost retrasă,\n" "necesară pt a ajunge la un echilibru al presiunilor." -#: flatcamGUI/FlatCAMGUI.py:6685 flatcamTools/ToolSolderPaste.py:276 +#: flatcamGUI/FlatCAMGUI.py:6698 flatcamTools/ToolSolderPaste.py:276 msgid "PostProcessors:" msgstr "Postprocesoare:" -#: flatcamGUI/FlatCAMGUI.py:6687 flatcamTools/ToolSolderPaste.py:278 +#: flatcamGUI/FlatCAMGUI.py:6700 flatcamTools/ToolSolderPaste.py:278 msgid "Files that control the GCode generation." msgstr "Fişiere care controlează generarea codului G-Code." -#: flatcamGUI/FlatCAMGUI.py:6717 flatcamGUI/FlatCAMGUI.py:6723 +#: flatcamGUI/FlatCAMGUI.py:6730 flatcamGUI/FlatCAMGUI.py:6736 msgid "Idle." msgstr "Inactiv." -#: flatcamGUI/FlatCAMGUI.py:6747 +#: flatcamGUI/FlatCAMGUI.py:6760 msgid "Application started ..." msgstr "Aplicaţia a pornit ..." -#: flatcamGUI/FlatCAMGUI.py:6748 +#: flatcamGUI/FlatCAMGUI.py:6761 msgid "Hello!" msgstr "Bună!" @@ -9451,7 +9489,7 @@ msgstr "" msgid "Clear N-copper:" msgstr "Curăță Non-Cu:" -#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:240 +#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:285 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -10534,7 +10572,9 @@ msgstr "" "se va apasa tasta 'Escape'." #: flatcamTools/ToolCutOut.py:358 flatcamTools/ToolCutOut.py:552 -#: flatcamTools/ToolNonCopperClear.py:669 flatcamTools/ToolPaint.py:768 +#: flatcamTools/ToolNonCopperClear.py:743 +#: flatcamTools/ToolNonCopperClear.py:751 +#: flatcamTools/ToolNonCopperClear.py:759 flatcamTools/ToolPaint.py:774 #: flatcamTools/ToolPanelize.py:353 flatcamTools/ToolPanelize.py:368 #: flatcamTools/ToolSub.py:239 flatcamTools/ToolSub.py:252 #: flatcamTools/ToolSub.py:432 flatcamTools/ToolSub.py:445 @@ -10604,7 +10644,7 @@ msgstr "" msgid "[success] Any form CutOut operation finished." msgstr "[success] Operatia de decupaj cu forma libera s-a terminat." -#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:772 +#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:778 #: flatcamTools/ToolPanelize.py:359 #, python-format msgid "[ERROR_NOTCL] Object not found: %s" @@ -10749,15 +10789,15 @@ msgstr "" "pe\n" "canvas sau le puteti introduce manual." -#: flatcamTools/ToolDblSided.py:182 +#: flatcamTools/ToolDblSided.py:182 flatcamTools/ToolNonCopperClear.py:260 msgid "Gerber Reference Box Object" msgstr "Obiectul container al Gerber de referinţă" -#: flatcamTools/ToolDblSided.py:183 +#: flatcamTools/ToolDblSided.py:183 flatcamTools/ToolNonCopperClear.py:261 msgid "Excellon Reference Box Object" msgstr "Obiectul container al Excellon de referinţă" -#: flatcamTools/ToolDblSided.py:184 +#: flatcamTools/ToolDblSided.py:184 flatcamTools/ToolNonCopperClear.py:262 msgid "Geometry Reference Box Object" msgstr "Obiectul container al Geo de referinţă" @@ -11380,32 +11420,66 @@ msgstr "" "final. Aceasta deaorece unele unelte nu vor putea genera geometrie.\n" "Daca nu este bifat, foloseşte algoritmul standard." -#: flatcamTools/ToolNonCopperClear.py:238 +#: flatcamTools/ToolNonCopperClear.py:243 +msgid "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." +msgstr "" +"- „Însuși”: intinderea suprafeței de curățare a cuprului\n" +"se bazează pe obiectul care este curățat de cupru.\n" +"- „Cutie”: va efectua o curățare de cupru în suprafața\n" +"specificată de obiectul selectat în combobox-ul Obiect Ref.." + +#: flatcamTools/ToolNonCopperClear.py:254 +msgid "Ref. Type:" +msgstr "Tip ref.:" + +#: flatcamTools/ToolNonCopperClear.py:256 +msgid "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." +msgstr "" +"Tipul de obiect FlatCAM care trebuie utilizat ca referință pt. curățarea de " +"non-cupru.\n" +"Poate fi Gerber, Excellon sau Geometry." + +#: flatcamTools/ToolNonCopperClear.py:267 +msgid "Ref. Object:" +msgstr "Obiect ref.:" + +#: flatcamTools/ToolNonCopperClear.py:269 +msgid "The FlatCAM object to be used as non copper clearing reference." +msgstr "" +"Obiectul FlatCAM pentru a fi utilizat ca referință pt. curățarea de cupru" + +#: flatcamTools/ToolNonCopperClear.py:283 msgid "Generate Geometry" msgstr "Genereza Geometrie" -#: flatcamTools/ToolNonCopperClear.py:486 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolNonCopperClear.py:559 flatcamTools/ToolPaint.py:549 #: flatcamTools/ToolSolderPaste.py:763 msgid "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." msgstr "" "[WARNING_NOTCL] Introduce diametrul unei unelte pt a fi adăugată, in format " "Real." -#: flatcamTools/ToolNonCopperClear.py:515 flatcamTools/ToolPaint.py:567 +#: flatcamTools/ToolNonCopperClear.py:588 flatcamTools/ToolPaint.py:573 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "" "[WARNING_NOTCL] Adăugarea unei unelte noi este anulată. Unealta există deja " "in Tabela de Unelte." -#: flatcamTools/ToolNonCopperClear.py:520 flatcamTools/ToolPaint.py:572 +#: flatcamTools/ToolNonCopperClear.py:593 flatcamTools/ToolPaint.py:578 msgid "[success] New tool added to Tool Table." msgstr "[success] O noua unealtă a fost adăugată in Tabela de Unelte." -#: flatcamTools/ToolNonCopperClear.py:562 flatcamTools/ToolPaint.py:617 +#: flatcamTools/ToolNonCopperClear.py:635 flatcamTools/ToolPaint.py:623 msgid "[success] Tool from Tool Table was edited." msgstr "[success] O unealtă din Tabela de Unelte a fost editata." -#: flatcamTools/ToolNonCopperClear.py:573 flatcamTools/ToolPaint.py:628 +#: flatcamTools/ToolNonCopperClear.py:646 flatcamTools/ToolPaint.py:634 #: flatcamTools/ToolSolderPaste.py:850 msgid "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " @@ -11414,45 +11488,52 @@ msgstr "" "[WARNING_NOTCL] Editare eșuata. Noua valoare pt diametrul uneltei este deja " "in Tabela de Unelte." -#: flatcamTools/ToolNonCopperClear.py:613 flatcamTools/ToolPaint.py:727 +#: flatcamTools/ToolNonCopperClear.py:686 flatcamTools/ToolPaint.py:733 msgid "[WARNING_NOTCL] Delete failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Ștergere eșuata. Selectează o unealtă pt ștergere." -#: flatcamTools/ToolNonCopperClear.py:618 flatcamTools/ToolPaint.py:732 +#: flatcamTools/ToolNonCopperClear.py:691 flatcamTools/ToolPaint.py:738 msgid "[success] Tool(s) deleted from Tool Table." msgstr "[success] Au fost șterse unelte din Tabela de Unelte." -#: flatcamTools/ToolNonCopperClear.py:636 flatcamTools/ToolPaint.py:751 +#: flatcamTools/ToolNonCopperClear.py:709 flatcamTools/ToolPaint.py:757 msgid "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " msgstr "" "[ERROR_NOTCL] Valoarea de suprapunere trrebuie sa ia valori intre 0 " "(inclusiv) si 1 (exclusiv)." -#: flatcamTools/ToolNonCopperClear.py:677 -msgid "[ERROR_NOTCL] No Gerber file available." -msgstr "[ERROR_NOTCL] Nici-un fisier Gerber nu este disponibil." +#: flatcamTools/ToolNonCopperClear.py:772 +msgid "[ERROR_NOTCL] No object available." +msgstr "[ERROR_NOTCL] Nici-un obiect disponibil." -#: flatcamTools/ToolNonCopperClear.py:715 -#: flatcamTools/ToolNonCopperClear.py:837 +#: flatcamTools/ToolNonCopperClear.py:781 +msgid "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." +msgstr "" +"[ERROR_NOTCL] Nu s-a putut obtine intinderea suprafaței care să fie curățată " +"de cupru." + +#: flatcamTools/ToolNonCopperClear.py:814 +#: flatcamTools/ToolNonCopperClear.py:936 msgid "Clearing Non-Copper areas." msgstr "Se curăță PCB-ul de cuprul in exces." -#: flatcamTools/ToolNonCopperClear.py:733 +#: flatcamTools/ToolNonCopperClear.py:832 #, python-format msgid "[success] Non-Copper Clearing with ToolDia = %s started." msgstr "[success] Curățarea de Cupru in exces cu Dia Unealtă = %s a inceput." -#: flatcamTools/ToolNonCopperClear.py:802 +#: flatcamTools/ToolNonCopperClear.py:901 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" -#: flatcamTools/ToolNonCopperClear.py:807 +#: flatcamTools/ToolNonCopperClear.py:906 msgid "[success] NCC Tool finished." msgstr "[success] Unealta NCC s-a terminat." -#: flatcamTools/ToolNonCopperClear.py:809 +#: flatcamTools/ToolNonCopperClear.py:908 msgid "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." @@ -11460,17 +11541,17 @@ msgstr "" "[WARNING_NOTCL] Unealta NCC a terminat lucrul dar unele zone PCB nu au putut " "fi curățate de Cu. Verifică rezultatul." -#: flatcamTools/ToolNonCopperClear.py:855 +#: flatcamTools/ToolNonCopperClear.py:954 #, python-format msgid "[success] Non-Copper Rest Clearing with ToolDia = %s started." msgstr "[success] Curățarea de Cupru tip Rest cu dia unealtă = %s a inceput.." -#: flatcamTools/ToolNonCopperClear.py:953 +#: flatcamTools/ToolNonCopperClear.py:1052 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" -#: flatcamTools/ToolNonCopperClear.py:961 +#: flatcamTools/ToolNonCopperClear.py:1060 msgid "" "[ERROR_NOTCL] NCC Tool finished but could not clear the object with current " "settings." @@ -11594,37 +11675,50 @@ msgstr "" "selectat, operatia de 'pictare' va incepe imediat dupa click.
    Un nou " "obiect Geometrie va fi creat." -#: flatcamTools/ToolPaint.py:736 +#: flatcamTools/ToolPaint.py:742 msgid "geometry_on_paint_button" msgstr "geometry_on_paint_button" -#: flatcamTools/ToolPaint.py:755 flatcamTools/ToolPaint.py:791 +#: flatcamTools/ToolPaint.py:761 flatcamTools/ToolPaint.py:797 msgid "[WARNING_NOTCL] Click inside the desired polygon." msgstr "" "[WARNING_NOTCL] Click in interiorul poligonului care se dorește să fie " "'pictat'." -#: flatcamTools/ToolPaint.py:778 +#: flatcamTools/ToolPaint.py:784 msgid "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." msgstr "[ERROR_NOTCL] Nu se poate face 'pictare' pe geometrii MultiGeo ..." -#: flatcamTools/ToolPaint.py:800 flatcamTools/ToolPaint.py:1004 +#: flatcamTools/ToolPaint.py:806 flatcamTools/ToolPaint.py:1083 +#: flatcamTools/ToolPaint.py:1383 msgid "Painting polygon..." msgstr "Se 'pictează' un poligon..." -#: flatcamTools/ToolPaint.py:853 +#: flatcamTools/ToolPaint.py:825 +msgid "[WARNING_NOTCL] Click the start point of the paint area." +msgstr "[WARNING_NOTCL] Faceți clic pe punctul de pornire al zonei de pictat." + +#: flatcamTools/ToolPaint.py:836 +msgid "[WARNING_NOTCL] Click the end point of the paint area." +msgstr "[WARNING_NOTCL] Faceți clic pe punctul final al zonei de pictat." + +#: flatcamTools/ToolPaint.py:842 +msgid "Done." +msgstr "Executat." + +#: flatcamTools/ToolPaint.py:932 msgid "[WARNING] No polygon found." msgstr "[WARNING] Nu s-a gasit nici-un poligon." -#: flatcamTools/ToolPaint.py:856 +#: flatcamTools/ToolPaint.py:935 msgid "Painting polygon." msgstr "Se 'pictează' un poligon." -#: flatcamTools/ToolPaint.py:898 +#: flatcamTools/ToolPaint.py:977 msgid "[ERROR_NOTCL] Geometry could not be painted completely" msgstr "[ERROR_NOTCL] Geometria nu a fost posibil să fie 'pictata' complet." -#: flatcamTools/ToolPaint.py:924 +#: flatcamTools/ToolPaint.py:1003 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -11635,16 +11729,18 @@ msgstr "" "diferita de parametri. Sau o strategie diferita de 'pictare'.\n" "%s" -#: flatcamTools/ToolPaint.py:966 +#: flatcamTools/ToolPaint.py:1045 #, python-format msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:972 flatcamTools/ToolPaint.py:1271 +#: flatcamTools/ToolPaint.py:1051 flatcamTools/ToolPaint.py:1350 +#: flatcamTools/ToolPaint.py:1641 msgid "Polygon Paint started ..." msgstr "Paint pt poligon a inceput ..." -#: flatcamTools/ToolPaint.py:1125 flatcamTools/ToolPaint.py:1216 +#: flatcamTools/ToolPaint.py:1204 flatcamTools/ToolPaint.py:1295 +#: flatcamTools/ToolPaint.py:1495 flatcamTools/ToolPaint.py:1586 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11655,7 +11751,7 @@ msgstr "" "combinaţie diferita de parametri. Sau încearcă o alta metoda de 'pictat'\n" "%s" -#: flatcamTools/ToolPaint.py:1149 +#: flatcamTools/ToolPaint.py:1228 flatcamTools/ToolPaint.py:1519 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11667,11 +11763,11 @@ msgstr "" "geometrice.\n" "Schimbă parametrii de 'pictare' și încearcă din nou." -#: flatcamTools/ToolPaint.py:1158 +#: flatcamTools/ToolPaint.py:1237 flatcamTools/ToolPaint.py:1528 msgid "[success] Paint All Done." msgstr "[success] 'Paint' pt toate poligoanele a fost efectuata." -#: flatcamTools/ToolPaint.py:1246 +#: flatcamTools/ToolPaint.py:1325 flatcamTools/ToolPaint.py:1616 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11683,7 +11779,7 @@ msgstr "" "pt a fi folosit in obiectul Geometrie de 'pictat'.\n" "Schimbă parametrii de 'pictat' și încearcă din nou." -#: flatcamTools/ToolPaint.py:1255 +#: flatcamTools/ToolPaint.py:1334 flatcamTools/ToolPaint.py:1625 msgid "[success] Paint All with Rest-Machining done." msgstr "" "[success] 'Paint' pentru toate poligoanele cu strategia Rest a fost " @@ -12352,7 +12448,7 @@ msgstr "[ERROR] ToolSolderPaste.on_view_gcode() -->%s" msgid "Export GCode ..." msgstr "Exporta GCode ..." -#: flatcamTools/ToolSolderPaste.py:1403 +#: flatcamTools/ToolSolderPaste.py:1407 #, python-format msgid "[success] Solder paste dispenser GCode file saved to: %s" msgstr "" @@ -12674,9 +12770,6 @@ msgstr "Obiectele tip CNCJob nu pot fi deplasate." #~ msgid "M-Color " #~ msgstr "M-Color " -#~ msgid "Done." -#~ msgstr "Executat." - #~ msgid "Click on CENTER ..." #~ msgstr "Click in Centru ..." diff --git a/locale/ru/LC_MESSAGES/strings.mo b/locale/ru/LC_MESSAGES/strings.mo index 67c3c758bf03f55dd76e341031666970d37447f4..aa43697d7f243e108f68d2764bf5d43ce6b2f95e 100644 GIT binary patch delta 43670 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 Y&q0eHIu(8Bs;lH{T#S$Flqt{u8!QCXbN~PV delta 41212 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 |>n6`}1eUTW3`lz)5 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\n" "Language-Team: \n" @@ -20,12 +20,12 @@ msgstr "" "X-Poedit-SearchPathExcluded-1: doc\n" "X-Poedit-SearchPathExcluded-2: tests\n" -#: FlatCAMApp.py:940 +#: FlatCAMApp.py:942 msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" "[ERROR] Не удалось найти языковые файлы. Строки приложения отсутствуют." -#: FlatCAMApp.py:1854 +#: FlatCAMApp.py:1856 msgid "" "(Type help to get started)\n" "\n" @@ -33,26 +33,26 @@ msgstr "" "(Введите help для начала работы.)\n" "\n" -#: FlatCAMApp.py:2042 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:2044 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 #: flatcamTools/ToolPcbWizard.py:296 flatcamTools/ToolPcbWizard.py:319 msgid "Open cancelled." msgstr "Открытие отменено." -#: FlatCAMApp.py:2056 +#: FlatCAMApp.py:2058 msgid "Open Config file failed." msgstr "Не удалось открыть файл конфигурации." -#: FlatCAMApp.py:2070 +#: FlatCAMApp.py:2072 msgid "Open Script file failed." msgstr "Ошибка открытия файла сценария." -#: FlatCAMApp.py:2276 +#: FlatCAMApp.py:2278 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Выберите объект Geometry, Gerber или Excellon для " "редактирования." -#: FlatCAMApp.py:2286 +#: FlatCAMApp.py:2288 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -62,103 +62,113 @@ msgstr "" "невозможно.\n" "Редактируйте только одну геометрию за раз." -#: FlatCAMApp.py:2341 +#: FlatCAMApp.py:2343 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Редактор активирован ..." -#: FlatCAMApp.py:2359 +#: FlatCAMApp.py:2361 msgid "Do you want to save the edited object?" msgstr "Вы хотите сохранить редактируемый объект?" -#: FlatCAMApp.py:2360 flatcamGUI/FlatCAMGUI.py:1632 +#: FlatCAMApp.py:2362 flatcamGUI/FlatCAMGUI.py:1632 msgid "Close Editor" msgstr "Закрыть редактор" -#: FlatCAMApp.py:2363 FlatCAMApp.py:3474 FlatCAMApp.py:5306 FlatCAMApp.py:6179 +#: FlatCAMApp.py:2365 FlatCAMApp.py:3481 FlatCAMApp.py:5316 FlatCAMApp.py:6194 #: FlatCAMTranslation.py:96 FlatCAMTranslation.py:169 #: flatcamGUI/FlatCAMGUI.py:3756 msgid "Yes" msgstr "Да" -#: FlatCAMApp.py:2364 FlatCAMApp.py:3475 FlatCAMApp.py:5307 FlatCAMApp.py:6180 +#: FlatCAMApp.py:2366 FlatCAMApp.py:3482 FlatCAMApp.py:5317 FlatCAMApp.py:6195 #: FlatCAMTranslation.py:97 FlatCAMTranslation.py:170 #: flatcamGUI/FlatCAMGUI.py:3757 msgid "No" msgstr "Нет" -#: FlatCAMApp.py:2365 FlatCAMApp.py:3476 FlatCAMApp.py:3907 FlatCAMApp.py:6181 +#: FlatCAMApp.py:2367 FlatCAMApp.py:3483 FlatCAMApp.py:3914 FlatCAMApp.py:6196 msgid "Cancel" msgstr "Отмена" -#: FlatCAMApp.py:2392 +#: FlatCAMApp.py:2394 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Объект пуст после редактирования." -#: FlatCAMApp.py:2414 FlatCAMApp.py:2433 FlatCAMApp.py:2445 +#: FlatCAMApp.py:2416 FlatCAMApp.py:2435 FlatCAMApp.py:2447 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Выберите объект Gerber, Geometry или Excellon для обновления." -#: FlatCAMApp.py:2417 +#: FlatCAMApp.py:2419 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s обновлён, возврат в приложение ..." -#: FlatCAMApp.py:2782 +#: FlatCAMApp.py:2784 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Не удаётся загрузить файл настроек." -#: FlatCAMApp.py:2794 +#: FlatCAMApp.py:2796 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Не удаётся прочитать файл настроек." -#: FlatCAMApp.py:2815 FlatCAMApp.py:2819 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2821 msgid "Import FlatCAM Preferences" msgstr "Импорт настроек FlatCAM" -#: FlatCAMApp.py:2825 +#: FlatCAMApp.py:2827 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Импорт настроек FlatCAM отменен." -#: FlatCAMApp.py:2833 FlatCAMApp.py:2887 FlatCAMApp.py:3353 +#: FlatCAMApp.py:2835 FlatCAMApp.py:2894 FlatCAMApp.py:3360 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл значений по умолчанию." -#: FlatCAMApp.py:2841 FlatCAMApp.py:3362 +#: FlatCAMApp.py:2843 FlatCAMApp.py:3369 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл значений по умолчанию." -#: FlatCAMApp.py:2844 +#: FlatCAMApp.py:2847 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Значения по умолчанию импортированы из %s" -#: FlatCAMApp.py:2859 FlatCAMApp.py:2864 +#: FlatCAMApp.py:2862 FlatCAMApp.py:2867 msgid "Export FlatCAM Preferences" msgstr "Экспорт настроек FlatCAM" -#: FlatCAMApp.py:2871 +#: FlatCAMApp.py:2874 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Экспорт настроек FlatCAM отменён." -#: FlatCAMApp.py:2906 FlatCAMApp.py:3407 +#: FlatCAMApp.py:2882 FlatCAMApp.py:4683 FlatCAMApp.py:7131 FlatCAMApp.py:7241 +#: FlatCAMApp.py:7362 FlatCAMApp.py:7417 FlatCAMApp.py:7525 FlatCAMApp.py:7648 +#: FlatCAMObj.py:5812 flatcamTools/ToolSolderPaste.py:1400 +msgid "" +"[WARNING] Permission denied, saving not possible.\n" +"Most likely another app is holding the file open and not accessible." +msgstr "" +"[WARNING] В доступе отказано, сохранение невозможно.\n" +"Скорее всего, другое приложение держит файл открытым и недоступным." + +#: FlatCAMApp.py:2913 FlatCAMApp.py:3414 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать значения по умолчанию в файл." -#: FlatCAMApp.py:2966 +#: FlatCAMApp.py:2973 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "[ERROR_NOTCL] Не удалось открыть файл истории файлов для записи." -#: FlatCAMApp.py:2976 +#: FlatCAMApp.py:2983 msgid "[ERROR_NOTCL] Failed to open recent projects file for writing." msgstr "[ERROR_NOTCL] Не удалось открыть файл последних проектов для записи." -#: FlatCAMApp.py:3053 camlib.py:4469 +#: FlatCAMApp.py:3060 camlib.py:4471 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:3054 +#: FlatCAMApp.py:3061 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -167,11 +177,11 @@ msgstr "" "Объект ({kind}) не выполнен, потому что: {error} \n" "\n" -#: FlatCAMApp.py:3074 +#: FlatCAMApp.py:3081 msgid "Converting units to " msgstr "Конвертирование единиц в " -#: FlatCAMApp.py:3153 FlatCAMApp.py:3156 FlatCAMApp.py:3159 FlatCAMApp.py:3162 +#: FlatCAMApp.py:3160 FlatCAMApp.py:3163 FlatCAMApp.py:3166 FlatCAMApp.py:3169 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3258 +#: FlatCAMApp.py:3265 #, python-brace-format msgid "" "FlatCAM
    Version {version} {beta} ({date}) - " @@ -202,35 +212,35 @@ msgstr "" "a>
    ЗАГРУЗИТЬ можно отсюда.
    " -#: FlatCAMApp.py:3291 +#: FlatCAMApp.py:3298 msgid "Close" msgstr "Закрыть" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5315 +#: FlatCAMApp.py:3418 FlatCAMApp.py:5325 msgid "[success] Defaults saved." msgstr "[success] Значения по умолчанию сохранены." -#: FlatCAMApp.py:3432 +#: FlatCAMApp.py:3439 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл с исходными значениями." -#: FlatCAMApp.py:3441 +#: FlatCAMApp.py:3448 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл с исходными значениями." -#: FlatCAMApp.py:3455 +#: FlatCAMApp.py:3462 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать исходные значения в файл." -#: FlatCAMApp.py:3459 +#: FlatCAMApp.py:3466 msgid "Factory defaults saved." msgstr "Исходные значения сохранены." -#: FlatCAMApp.py:3464 flatcamGUI/FlatCAMGUI.py:3132 +#: FlatCAMApp.py:3471 flatcamGUI/FlatCAMGUI.py:3132 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Приложение сохраняет проект. Пожалуйста, подождите ..." -#: FlatCAMApp.py:3469 FlatCAMTranslation.py:164 +#: FlatCAMApp.py:3476 FlatCAMTranslation.py:164 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -238,11 +248,11 @@ msgstr "" "Есть файлы/объекты, измененные в FlatCAM.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:3472 FlatCAMApp.py:6177 FlatCAMTranslation.py:167 +#: FlatCAMApp.py:3479 FlatCAMApp.py:6192 FlatCAMTranslation.py:167 msgid "Save changes" msgstr "Сохранить изменения" -#: FlatCAMApp.py:3539 +#: FlatCAMApp.py:3546 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -258,43 +268,43 @@ msgstr "" "потеряна, и результат может не соответствовать ожидаемому. \n" "Проверьте сгенерированный GCODE." -#: FlatCAMApp.py:3580 +#: FlatCAMApp.py:3587 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Неудача. Присоединение Excellon работает только на объектах " "Excellon." -#: FlatCAMApp.py:3602 +#: FlatCAMApp.py:3609 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Неудача. Объединение Gerber работает только на объектах Gerber." -#: FlatCAMApp.py:3617 FlatCAMApp.py:3642 +#: FlatCAMApp.py:3624 FlatCAMApp.py:3649 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Неудалось. Выберите объект Geometry и попробуйте снова." -#: FlatCAMApp.py:3621 FlatCAMApp.py:3646 +#: FlatCAMApp.py:3628 FlatCAMApp.py:3653 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Ожидается FlatCAMGeometry, получено %s" -#: FlatCAMApp.py:3634 +#: FlatCAMApp.py:3641 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Объект Geometry был преобразован в тип MultiGeo." -#: FlatCAMApp.py:3660 +#: FlatCAMApp.py:3667 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Объект Geometry был преобразован в тип SingleGeo." -#: FlatCAMApp.py:3901 +#: FlatCAMApp.py:3908 msgid "Toggle Units" msgstr "Единицы измерения" -#: FlatCAMApp.py:3903 +#: FlatCAMApp.py:3910 msgid "Change project units ..." msgstr "Изменение единиц измерения проекта ...>" -#: FlatCAMApp.py:3904 +#: FlatCAMApp.py:3911 msgid "" "Changing the units of the project causes all geometrical properties of all " "objects to be scaled accordingly.\n" @@ -304,43 +314,43 @@ msgstr "" "масштабированию всех геометрических свойств всех объектов.\n" "Продолжить?" -#: FlatCAMApp.py:3906 FlatCAMApp.py:4756 FlatCAMApp.py:6456 FlatCAMApp.py:6469 -#: FlatCAMApp.py:6709 FlatCAMApp.py:6719 +#: FlatCAMApp.py:3913 FlatCAMApp.py:4766 FlatCAMApp.py:6471 FlatCAMApp.py:6484 +#: FlatCAMApp.py:6724 FlatCAMApp.py:6734 msgid "Ok" msgstr "Да" -#: FlatCAMApp.py:3954 +#: FlatCAMApp.py:3961 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Конвертирование единиц в %s" -#: FlatCAMApp.py:3965 +#: FlatCAMApp.py:3972 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Изменение единиц отменено." -#: FlatCAMApp.py:4625 +#: FlatCAMApp.py:4632 msgid "Open file" msgstr "Открыть файл" -#: FlatCAMApp.py:4656 FlatCAMApp.py:4661 +#: FlatCAMApp.py:4663 FlatCAMApp.py:4668 msgid "Export G-Code ..." msgstr "Экспорт G-Code …" -#: FlatCAMApp.py:4664 +#: FlatCAMApp.py:4671 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Экспорт Code отменён." -#: FlatCAMApp.py:4674 +#: FlatCAMApp.py:4680 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Нет такого файла или каталога" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4691 #, python-format msgid "Saved to: %s" msgstr "Сохранёно в: %s" -#: FlatCAMApp.py:4744 FlatCAMApp.py:4777 FlatCAMApp.py:4788 FlatCAMApp.py:4799 -#: flatcamTools/ToolNonCopperClear.py:490 flatcamTools/ToolSolderPaste.py:767 +#: FlatCAMApp.py:4754 FlatCAMApp.py:4787 FlatCAMApp.py:4798 FlatCAMApp.py:4809 +#: flatcamTools/ToolNonCopperClear.py:563 flatcamTools/ToolSolderPaste.py:767 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." @@ -348,12 +358,12 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите диаметр инструмента с ненулевым " "значением в float формате." -#: FlatCAMApp.py:4749 FlatCAMApp.py:4782 FlatCAMApp.py:4793 FlatCAMApp.py:4804 +#: FlatCAMApp.py:4759 FlatCAMApp.py:4792 FlatCAMApp.py:4803 FlatCAMApp.py:4814 #: flatcamGUI/FlatCAMGUI.py:3027 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Добавление инструмента отменено ..." -#: FlatCAMApp.py:4752 +#: FlatCAMApp.py:4762 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -362,35 +372,35 @@ msgstr "" "«Дополнительно».\n" "Перейдите в Настройки -> Основные парам. - Показать дополнительные параметры." -#: FlatCAMApp.py:4864 +#: FlatCAMApp.py:4874 msgid "Object(s) deleted ..." msgstr "Объект(ы) удален ..." -#: FlatCAMApp.py:4868 +#: FlatCAMApp.py:4878 msgid "Failed. No object(s) selected..." msgstr "Нудача. Объекты не выбраны ..." -#: FlatCAMApp.py:4870 +#: FlatCAMApp.py:4880 msgid "Save the work in Editor and try again ..." msgstr "Сохраните работу в редакторе и попробуйте снова ..." -#: FlatCAMApp.py:4904 +#: FlatCAMApp.py:4914 msgid "Click to set the origin ..." msgstr "Кликните, чтобы указать начало координат ..." -#: FlatCAMApp.py:4916 +#: FlatCAMApp.py:4926 msgid "Jump to ..." msgstr "Перейти к ..." -#: FlatCAMApp.py:4917 +#: FlatCAMApp.py:4927 msgid "Enter the coordinates in format X,Y:" msgstr "Введите координаты в формате X, Y:" -#: FlatCAMApp.py:4924 +#: FlatCAMApp.py:4934 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Неверные координаты. Введите координаты в формате: X, Y" -#: FlatCAMApp.py:4942 flatcamEditors/FlatCAMExcEditor.py:2321 +#: FlatCAMApp.py:4952 flatcamEditors/FlatCAMExcEditor.py:2321 #: flatcamEditors/FlatCAMExcEditor.py:2328 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -404,23 +414,23 @@ msgstr "Неверные координаты. Введите координат msgid "[success] Done." msgstr "[success] Готово." -#: FlatCAMApp.py:5074 FlatCAMApp.py:5141 +#: FlatCAMApp.py:5084 FlatCAMApp.py:5151 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] Объект не выбран. Выберите объект и попробуйте снова." -#: FlatCAMApp.py:5182 +#: FlatCAMApp.py:5192 msgid "[success] Origin set ..." msgstr "[success] Начало координат установлено ..." -#: FlatCAMApp.py:5201 flatcamGUI/GUIElements.py:1375 +#: FlatCAMApp.py:5211 flatcamGUI/GUIElements.py:1375 msgid "Preferences" msgstr "Настройки" -#: FlatCAMApp.py:5267 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] Preferences edited but not saved." msgstr "[WARNING_NOTCL] Настройки отредактированы, но не сохранены." -#: FlatCAMApp.py:5301 +#: FlatCAMApp.py:5311 msgid "" "One or more values are changed.\n" "Do you want to save the Preferences?" @@ -428,76 +438,76 @@ msgstr "" "Одно или несколько значений изменены.\n" "Вы хотите сохранить настройки?" -#: FlatCAMApp.py:5303 flatcamGUI/FlatCAMGUI.py:953 +#: FlatCAMApp.py:5313 flatcamGUI/FlatCAMGUI.py:953 msgid "Save Preferences" msgstr "Сохранить настройки" -#: FlatCAMApp.py:5330 +#: FlatCAMApp.py:5340 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Y." -#: FlatCAMApp.py:5355 +#: FlatCAMApp.py:5365 msgid "[success] Flip on Y axis done." msgstr "[success] Отражение по оси Y завершено." -#: FlatCAMApp.py:5357 FlatCAMApp.py:5397 +#: FlatCAMApp.py:5367 FlatCAMApp.py:5407 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5498 flatcamTools/ToolTransform.py:747 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Из-за %s, операция переворота не была выполнена." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Х." -#: FlatCAMApp.py:5395 +#: FlatCAMApp.py:5405 msgid "[success] Flip on X axis done." msgstr "[success] Отражение по оси Х завершено." -#: FlatCAMApp.py:5410 +#: FlatCAMApp.py:5420 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Не выбран ни один объект для вращения." -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Transform" msgstr "Трансформация" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Enter the Angle value:" msgstr "Введите значение угла:" -#: FlatCAMApp.py:5443 +#: FlatCAMApp.py:5453 msgid "[success] Rotation done." msgstr "[success] Вращение завершено." -#: FlatCAMApp.py:5445 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5455 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5427 flatcamTools/ToolTransform.py:676 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Из-за %s вращение не было выполнено." -#: FlatCAMApp.py:5456 +#: FlatCAMApp.py:5466 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Не выбран ни один объект для наклона/сдвига по оси X." -#: FlatCAMApp.py:5477 +#: FlatCAMApp.py:5487 msgid "[success] Skew on X axis done." msgstr "[success] Наклон по оси X выполнен." -#: FlatCAMApp.py:5487 +#: FlatCAMApp.py:5497 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "[WARNING_NOTCL] Нет объекта, выбранного для наклона/сдвига по оси Y." -#: FlatCAMApp.py:5508 +#: FlatCAMApp.py:5518 msgid "[success] Skew on Y axis done." msgstr "[success] Наклон по оси Y выполнен." -#: FlatCAMApp.py:5558 +#: FlatCAMApp.py:5568 msgid "Grid On/Off" msgstr "Сетка вкл/откл" -#: FlatCAMApp.py:5571 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5581 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2424 #: flatcamEditors/FlatCAMGrbEditor.py:5016 flatcamGUI/ObjectUI.py:989 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:207 @@ -507,7 +517,7 @@ msgstr "Сетка вкл/откл" msgid "Add" msgstr "Добавить" -#: FlatCAMApp.py:5572 FlatCAMObj.py:3361 +#: FlatCAMApp.py:5582 FlatCAMObj.py:3349 #: flatcamEditors/FlatCAMGrbEditor.py:2429 flatcamGUI/FlatCAMGUI.py:523 #: flatcamGUI/FlatCAMGUI.py:723 flatcamGUI/FlatCAMGUI.py:1630 #: flatcamGUI/FlatCAMGUI.py:1970 flatcamGUI/ObjectUI.py:1005 @@ -516,15 +526,15 @@ msgstr "Добавить" msgid "Delete" msgstr "Удалить" -#: FlatCAMApp.py:5585 +#: FlatCAMApp.py:5595 msgid "New Grid ..." msgstr "Новая сетка ..." -#: FlatCAMApp.py:5586 +#: FlatCAMApp.py:5596 msgid "Enter a Grid Value:" msgstr "Введите размер сетки:" -#: FlatCAMApp.py:5594 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5604 FlatCAMApp.py:5631 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -532,56 +542,56 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите значение сетки с ненулевым значением в " "формате float." -#: FlatCAMApp.py:5600 +#: FlatCAMApp.py:5610 msgid "[success] New Grid added ..." msgstr "[success] Новая сетка добавлена ..." -#: FlatCAMApp.py:5603 +#: FlatCAMApp.py:5613 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Сетка уже существует ..." -#: FlatCAMApp.py:5606 +#: FlatCAMApp.py:5616 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Добавление новой сетки отменено ..." -#: FlatCAMApp.py:5628 +#: FlatCAMApp.py:5638 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Значение сетки не существует ..." -#: FlatCAMApp.py:5631 +#: FlatCAMApp.py:5641 msgid "[success] Grid Value deleted ..." msgstr "[success] Значение сетки удалено ..." -#: FlatCAMApp.py:5634 +#: FlatCAMApp.py:5644 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Удаление значения сетки отменено ..." -#: FlatCAMApp.py:5640 +#: FlatCAMApp.py:5650 msgid "Key Shortcut List" msgstr "Список комбинаций клавиш" -#: FlatCAMApp.py:5673 +#: FlatCAMApp.py:5683 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Нет объекта, выбранного для копирования его имени" -#: FlatCAMApp.py:5677 +#: FlatCAMApp.py:5687 msgid "Name copied on clipboard ..." msgstr "Имя скопировано в буфер обмена ..." -#: FlatCAMApp.py:5719 flatcamEditors/FlatCAMGrbEditor.py:4012 +#: FlatCAMApp.py:5728 flatcamEditors/FlatCAMGrbEditor.py:4012 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Координаты скопированы в буфер обмена." -#: FlatCAMApp.py:5975 FlatCAMApp.py:5978 FlatCAMApp.py:5981 FlatCAMApp.py:5984 -#: FlatCAMApp.py:5999 FlatCAMApp.py:6002 FlatCAMApp.py:6005 FlatCAMApp.py:6008 -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 FlatCAMApp.py:6054 FlatCAMApp.py:6057 +#: FlatCAMApp.py:5984 FlatCAMApp.py:5987 FlatCAMApp.py:5990 FlatCAMApp.py:5993 +#: FlatCAMApp.py:6008 FlatCAMApp.py:6011 FlatCAMApp.py:6014 FlatCAMApp.py:6017 +#: FlatCAMApp.py:6057 FlatCAMApp.py:6060 FlatCAMApp.py:6063 FlatCAMApp.py:6066 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} выбран" -#: FlatCAMApp.py:6174 +#: FlatCAMApp.py:6189 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -591,110 +601,110 @@ msgstr "" "Создание нового проекта удалит их.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:6195 +#: FlatCAMApp.py:6210 msgid "[success] New Project created..." msgstr "[success] Новый проект создан ..." -#: FlatCAMApp.py:6315 FlatCAMApp.py:6318 flatcamGUI/FlatCAMGUI.py:604 +#: FlatCAMApp.py:6330 FlatCAMApp.py:6333 flatcamGUI/FlatCAMGUI.py:604 #: flatcamGUI/FlatCAMGUI.py:1849 msgid "Open Gerber" msgstr "Открыть Gerber" -#: FlatCAMApp.py:6323 +#: FlatCAMApp.py:6338 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Открытие Gerber отменено." -#: FlatCAMApp.py:6344 FlatCAMApp.py:6347 flatcamGUI/FlatCAMGUI.py:605 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6362 flatcamGUI/FlatCAMGUI.py:605 #: flatcamGUI/FlatCAMGUI.py:1850 msgid "Open Excellon" msgstr "Открыть Excellon" -#: FlatCAMApp.py:6352 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Открытие Excellon отменено." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6389 FlatCAMApp.py:6392 msgid "Open G-Code" msgstr "Открыть G-Code" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6397 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Открытие G-Code отменено." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6415 FlatCAMApp.py:6418 msgid "Open Project" msgstr "Открыть проект" -#: FlatCAMApp.py:6411 +#: FlatCAMApp.py:6426 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Открытие проекта отменено." -#: FlatCAMApp.py:6430 FlatCAMApp.py:6433 +#: FlatCAMApp.py:6445 FlatCAMApp.py:6448 msgid "Open Configuration File" msgstr "Открыть файл конфигурации" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6452 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Открытие конфигурации отменено." -#: FlatCAMApp.py:6452 FlatCAMApp.py:6705 FlatCAMApp.py:8951 FlatCAMApp.py:8971 -#: FlatCAMApp.py:8992 FlatCAMApp.py:9014 +#: FlatCAMApp.py:6467 FlatCAMApp.py:6720 FlatCAMApp.py:9000 FlatCAMApp.py:9020 +#: FlatCAMApp.py:9041 FlatCAMApp.py:9063 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Нет выбранных объектов." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6706 +#: FlatCAMApp.py:6468 FlatCAMApp.py:6721 msgid "Please Select a Geometry object to export" msgstr "Выберите объект Geometry для экспорта" -#: FlatCAMApp.py:6466 +#: FlatCAMApp.py:6481 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Можно использовать только объекты Geometry, Gerber и CNCJob." -#: FlatCAMApp.py:6479 FlatCAMApp.py:6483 +#: FlatCAMApp.py:6494 FlatCAMApp.py:6498 msgid "Export SVG" msgstr "Экспорт SVG" -#: FlatCAMApp.py:6488 +#: FlatCAMApp.py:6503 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Экспорт SVG отменён." -#: FlatCAMApp.py:6507 +#: FlatCAMApp.py:6522 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Данные должны быть 3D массивом с последним размером 3 или 4" -#: FlatCAMApp.py:6513 FlatCAMApp.py:6517 +#: FlatCAMApp.py:6528 FlatCAMApp.py:6532 msgid "Export PNG Image" msgstr "Экспорт PNG изображения" -#: FlatCAMApp.py:6522 +#: FlatCAMApp.py:6537 msgid "Export PNG cancelled." msgstr "Экспорт PNG отменён." -#: FlatCAMApp.py:6541 +#: FlatCAMApp.py:6556 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6546 FlatCAMApp.py:6669 +#: FlatCAMApp.py:6561 FlatCAMApp.py:6684 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Ошибка. Только объекты Gerber могут быть сохранены как файлы " "Gerber..." -#: FlatCAMApp.py:6558 +#: FlatCAMApp.py:6573 msgid "Save Gerber source file" msgstr "Сохранить исходный файл Gerber" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6578 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Сохранение исходного кода файла Gerber отменено." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6597 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -702,22 +712,22 @@ msgstr "" "[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите Excellon объект для " "экспорта." -#: FlatCAMApp.py:6587 FlatCAMApp.py:6628 +#: FlatCAMApp.py:6602 FlatCAMApp.py:6643 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Ошибка. Только объекты Excellon могут быть сохранены как файлы " "Excellon..." -#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 +#: FlatCAMApp.py:6610 FlatCAMApp.py:6614 msgid "Save Excellon source file" msgstr "Сохранить исходный файл Excellon" -#: FlatCAMApp.py:6604 +#: FlatCAMApp.py:6619 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Сохранение исходного кода файла Excellon отменено." -#: FlatCAMApp.py:6623 +#: FlatCAMApp.py:6638 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -725,95 +735,95 @@ msgstr "" "[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите отличный объект для " "экспорта." -#: FlatCAMApp.py:6636 FlatCAMApp.py:6640 +#: FlatCAMApp.py:6651 FlatCAMApp.py:6655 msgid "Export Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:6645 +#: FlatCAMApp.py:6660 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Экспорт Excellon отменен." -#: FlatCAMApp.py:6664 +#: FlatCAMApp.py:6679 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6677 FlatCAMApp.py:6681 +#: FlatCAMApp.py:6692 FlatCAMApp.py:6696 msgid "Export Gerber" msgstr "Экспорт Gerber" -#: FlatCAMApp.py:6686 +#: FlatCAMApp.py:6701 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Экспорт Gerber отменен." -#: FlatCAMApp.py:6716 +#: FlatCAMApp.py:6731 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Можно использовать только объекты Geometry." -#: FlatCAMApp.py:6730 FlatCAMApp.py:6734 +#: FlatCAMApp.py:6745 FlatCAMApp.py:6749 msgid "Export DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:6740 +#: FlatCAMApp.py:6755 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Экспорт DXF отменен." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6763 +#: FlatCAMApp.py:6775 FlatCAMApp.py:6778 msgid "Import SVG" msgstr "Импорт SVG" -#: FlatCAMApp.py:6772 +#: FlatCAMApp.py:6787 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Открытие SVG отменено." -#: FlatCAMApp.py:6791 FlatCAMApp.py:6795 +#: FlatCAMApp.py:6806 FlatCAMApp.py:6810 msgid "Import DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:6804 +#: FlatCAMApp.py:6819 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Открытие DXF отменено." -#: FlatCAMApp.py:6822 +#: FlatCAMApp.py:6837 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6842 +#: FlatCAMApp.py:6857 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Выберите файл Gerber или Excellon для просмотра исходного " "кода." -#: FlatCAMApp.py:6849 +#: FlatCAMApp.py:6864 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" "[WARNING_NOTCL] Нет выбранного объекта, для просмотра исходного кода файла." -#: FlatCAMApp.py:6857 +#: FlatCAMApp.py:6872 msgid "Source Editor" msgstr "Редактор исходного кода" -#: FlatCAMApp.py:6867 +#: FlatCAMApp.py:6882 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6879 FlatCAMApp.py:8024 FlatCAMObj.py:5677 +#: FlatCAMApp.py:6894 FlatCAMApp.py:8073 FlatCAMObj.py:5593 #: flatcamTools/ToolSolderPaste.py:1284 msgid "Code Editor" msgstr "Редактор кода" -#: FlatCAMApp.py:6891 +#: FlatCAMApp.py:6906 msgid "Script Editor" msgstr "Редактор сценариев" -#: FlatCAMApp.py:6894 +#: FlatCAMApp.py:6909 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -857,98 +867,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6917 FlatCAMApp.py:6920 +#: FlatCAMApp.py:6932 FlatCAMApp.py:6935 msgid "Open TCL script" msgstr "Открыть сценарий TCL" -#: FlatCAMApp.py:6928 +#: FlatCAMApp.py:6943 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Открытие сценария отменено." -#: FlatCAMApp.py:6940 +#: FlatCAMApp.py:6955 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6966 FlatCAMApp.py:6969 +#: FlatCAMApp.py:6981 FlatCAMApp.py:6984 msgid "Run TCL script" msgstr "Запустить сценарий TCL" -#: FlatCAMApp.py:6977 +#: FlatCAMApp.py:6992 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Запуск сценария отменен." -#: FlatCAMApp.py:7029 FlatCAMApp.py:7033 +#: FlatCAMApp.py:7044 FlatCAMApp.py:7048 msgid "Save Project As ..." msgstr "Сохранить проект как..." -#: FlatCAMApp.py:7030 +#: FlatCAMApp.py:7045 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:7038 +#: FlatCAMApp.py:7053 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Сохранение проекта отменено." -#: FlatCAMApp.py:7083 +#: FlatCAMApp.py:7098 msgid "Exporting SVG" msgstr "Экспортирование SVG" -#: FlatCAMApp.py:7117 FlatCAMApp.py:7223 FlatCAMApp.py:7338 +#: FlatCAMApp.py:7138 FlatCAMApp.py:7249 FlatCAMApp.py:7370 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Файл SVG экспортируется в %s" -#: FlatCAMApp.py:7148 FlatCAMApp.py:7269 +#: FlatCAMApp.py:7169 FlatCAMApp.py:7295 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Нет объекта Box. Используйте взамен %s" -#: FlatCAMApp.py:7226 FlatCAMApp.py:7341 +#: FlatCAMApp.py:7252 FlatCAMApp.py:7373 msgid "Generating Film ... Please wait." msgstr "Создание фильма ... Пожалуйста, подождите." -#: FlatCAMApp.py:7489 +#: FlatCAMApp.py:7532 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Файл Excellon экспортируется в %s" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7539 msgid "Exporting Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:7501 FlatCAMApp.py:7508 +#: FlatCAMApp.py:7544 FlatCAMApp.py:7551 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Excellon." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7655 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Файл Gerber экспортируется в %s" -#: FlatCAMApp.py:7613 +#: FlatCAMApp.py:7662 msgid "Exporting Gerber" msgstr "Экспортирование Gerber" -#: FlatCAMApp.py:7618 FlatCAMApp.py:7625 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7674 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Gerber." -#: FlatCAMApp.py:7665 +#: FlatCAMApp.py:7714 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Файл DXF экспортируется в %s" -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7720 msgid "Exporting DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:7676 FlatCAMApp.py:7683 +#: FlatCAMApp.py:7725 FlatCAMApp.py:7732 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[WARNING_NOTCL] Не удалось экспортировать файл DXF." -#: FlatCAMApp.py:7703 FlatCAMApp.py:7745 FlatCAMApp.py:7789 +#: FlatCAMApp.py:7752 FlatCAMApp.py:7794 FlatCAMApp.py:7838 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -956,97 +966,98 @@ msgstr "" "[ERROR_NOTCL] В качестве параметра выбран не поддерживаемый тип. " "Поддерживаются только Geometry и Gerber" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7762 msgid "Importing SVG" msgstr "Импортирование SVG" -#: FlatCAMApp.py:7724 FlatCAMApp.py:7766 FlatCAMApp.py:7809 FlatCAMApp.py:7886 -#: FlatCAMApp.py:7947 FlatCAMApp.py:8010 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7773 FlatCAMApp.py:7815 FlatCAMApp.py:7858 FlatCAMApp.py:7935 +#: FlatCAMApp.py:7996 FlatCAMApp.py:8059 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Открыт: %s" -#: FlatCAMApp.py:7755 +#: FlatCAMApp.py:7804 msgid "Importing DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:7797 +#: FlatCAMApp.py:7846 msgid "Importing Image" msgstr "Импорт изображения" -#: FlatCAMApp.py:7838 FlatCAMApp.py:7840 +#: FlatCAMApp.py:7887 FlatCAMApp.py:7889 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл: %s" -#: FlatCAMApp.py:7843 +#: FlatCAMApp.py:7892 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Не удалось проанализировать файл: {name}. {error}" -#: FlatCAMApp.py:7850 flatcamEditors/FlatCAMGrbEditor.py:3832 +#: FlatCAMApp.py:7899 FlatCAMObj.py:4296 +#: flatcamEditors/FlatCAMGrbEditor.py:3832 msgid "[ERROR] An internal error has occurred. See shell.\n" msgstr "[ERROR] Произошла внутренняя ошибка. Смотрите командную строку.\n" -#: FlatCAMApp.py:7859 +#: FlatCAMApp.py:7908 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Объект не является файлом Gerber или пустым. Прерывание " "создания объекта." -#: FlatCAMApp.py:7867 +#: FlatCAMApp.py:7916 msgid "Opening Gerber" msgstr "Открытие Gerber" -#: FlatCAMApp.py:7877 +#: FlatCAMApp.py:7926 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Открыть Gerber не удалось. Вероятно это не Gerber файл." -#: FlatCAMApp.py:7910 flatcamTools/ToolPcbWizard.py:418 +#: FlatCAMApp.py:7959 flatcamTools/ToolPcbWizard.py:418 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Это не Excellon файл." -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7962 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Не удается открыть файл: %s" -#: FlatCAMApp.py:7918 flatcamTools/ToolPcbWizard.py:427 +#: FlatCAMApp.py:7967 flatcamTools/ToolPcbWizard.py:427 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Произошла внутренняя ошибка. Смотрите командную строку.\n" -#: FlatCAMApp.py:7931 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7980 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:440 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Геометрия не найдена в файле: %s" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7983 msgid "Opening Excellon." msgstr "Открытие Excellon." -#: FlatCAMApp.py:7940 +#: FlatCAMApp.py:7989 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Не удалось открыть файл Excellon. Вероятно это не файл " "Excellon." -#: FlatCAMApp.py:7977 +#: FlatCAMApp.py:8026 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Не удалось открыть %s" -#: FlatCAMApp.py:7987 +#: FlatCAMApp.py:8036 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Это не GCODE" -#: FlatCAMApp.py:7993 +#: FlatCAMApp.py:8042 msgid "Opening G-Code." msgstr "Открытие G-Code." -#: FlatCAMApp.py:8001 +#: FlatCAMApp.py:8050 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " @@ -1056,26 +1067,26 @@ msgstr "" " Попытка создать объект Flatcam CNCJob из файла G-кода не удалась во время " "обработки" -#: FlatCAMApp.py:8041 +#: FlatCAMApp.py:8090 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл конфигурации: %s" -#: FlatCAMApp.py:8067 FlatCAMApp.py:8084 +#: FlatCAMApp.py:8116 FlatCAMApp.py:8133 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл проекта: %s" -#: FlatCAMApp.py:8107 +#: FlatCAMApp.py:8156 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Проект загружен из: %s" -#: FlatCAMApp.py:8213 +#: FlatCAMApp.py:8262 msgid "Available commands:\n" msgstr "Доступные команды:\n" -#: FlatCAMApp.py:8215 +#: FlatCAMApp.py:8264 msgid "" "\n" "\n" @@ -1087,37 +1098,37 @@ msgstr "" "Для дополнительной информации ведите help <имя_команды> .\n" "Пример: help open_gerber" -#: FlatCAMApp.py:8365 +#: FlatCAMApp.py:8414 msgid "Shows list of commands." msgstr "Показывает список команд." -#: FlatCAMApp.py:8422 +#: FlatCAMApp.py:8471 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Не удалось загрузить список недавних файлов." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8478 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Не удалось прочитать список недавних файлов." -#: FlatCAMApp.py:8439 +#: FlatCAMApp.py:8488 msgid "[ERROR_NOTCL] Failed to load recent projects item list." msgstr "" "[ERROR_NOTCL] Не удалось загрузить список элементов последних проектов." -#: FlatCAMApp.py:8446 +#: FlatCAMApp.py:8495 msgid "[ERROR_NOTCL] Failed to parse recent project item list." msgstr "" "[ERROR_NOTCL] Не удалось проанализировать список последних элементов проекта." -#: FlatCAMApp.py:8505 FlatCAMApp.py:8528 +#: FlatCAMApp.py:8554 FlatCAMApp.py:8577 msgid "Clear Recent files" msgstr "Очистить список" -#: FlatCAMApp.py:8545 flatcamGUI/FlatCAMGUI.py:970 +#: FlatCAMApp.py:8594 flatcamGUI/FlatCAMGUI.py:970 msgid "Shortcut Key List" msgstr "Список комбинаций клавиш" -#: FlatCAMApp.py:8552 +#: FlatCAMApp.py:8601 msgid "" "\n" "

    Selected Tab - Choose an Item from " @@ -1212,25 +1223,25 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8659 +#: FlatCAMApp.py:8708 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Не удалось проверить обновление программы. Отсутствует " "интернет подключение ." -#: FlatCAMApp.py:8666 +#: FlatCAMApp.py:8715 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "[ERROR_NOTCL] Не удается обработать информацию о последней версии." -#: FlatCAMApp.py:8676 +#: FlatCAMApp.py:8725 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM в актуальном состоянии!" -#: FlatCAMApp.py:8681 +#: FlatCAMApp.py:8730 msgid "Newer Version Available" msgstr "Доступна новая версия" -#: FlatCAMApp.py:8682 +#: FlatCAMApp.py:8731 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1238,57 +1249,57 @@ msgstr "" "Новая версия FlatCAM доступна для загрузки:\n" "\n" -#: FlatCAMApp.py:8684 +#: FlatCAMApp.py:8733 msgid "info" msgstr "инфо" -#: FlatCAMApp.py:8703 +#: FlatCAMApp.py:8752 msgid "[success] All plots disabled." msgstr "[success] Все участки отключены." -#: FlatCAMApp.py:8709 +#: FlatCAMApp.py:8758 msgid "[success] All non selected plots disabled." msgstr "[success] Все невыбранные участки отключены." -#: FlatCAMApp.py:8715 +#: FlatCAMApp.py:8764 msgid "[success] All plots enabled." msgstr "[success] Все участки включены." -#: FlatCAMApp.py:8721 +#: FlatCAMApp.py:8770 msgid "[success] Selected plots enabled..." msgstr "[success] Выбранные участки включены..." -#: FlatCAMApp.py:8729 +#: FlatCAMApp.py:8778 msgid "[success] Selected plots disabled..." msgstr "[success] Выбранные участки отключены..." -#: FlatCAMApp.py:8739 FlatCAMApp.py:8766 FlatCAMApp.py:8783 +#: FlatCAMApp.py:8788 FlatCAMApp.py:8815 FlatCAMApp.py:8832 msgid "Working ..." msgstr "Обработка…" -#: FlatCAMApp.py:8820 +#: FlatCAMApp.py:8869 msgid "Saving FlatCAM Project" msgstr "Сохранение проекта FlatCAM" -#: FlatCAMApp.py:8841 FlatCAMApp.py:8872 +#: FlatCAMApp.py:8890 FlatCAMApp.py:8921 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Проект сохранён в: %s" -#: FlatCAMApp.py:8859 +#: FlatCAMApp.py:8908 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Не удалось проверить файл проекта: %s. Повторите попытку." -#: FlatCAMApp.py:8866 +#: FlatCAMApp.py:8915 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Не удалось проанализировать сохраняемый файл проекта: %s. " "Повторите попытку сохранения." -#: FlatCAMApp.py:8874 +#: FlatCAMApp.py:8923 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1299,77 +1310,78 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Имя изменено с {old} на {new}" -#: FlatCAMObj.py:555 FlatCAMObj.py:2095 FlatCAMObj.py:3366 FlatCAMObj.py:5570 +#: FlatCAMObj.py:558 FlatCAMObj.py:2098 FlatCAMObj.py:3354 FlatCAMObj.py:5486 msgid "Basic" msgstr "Базовый" -#: FlatCAMObj.py:567 FlatCAMObj.py:2111 FlatCAMObj.py:3388 FlatCAMObj.py:5576 +#: FlatCAMObj.py:570 FlatCAMObj.py:2114 FlatCAMObj.py:3376 FlatCAMObj.py:5492 msgid "Advanced" msgstr "Расширенный" -#: FlatCAMObj.py:920 FlatCAMObj.py:1018 +#: FlatCAMObj.py:923 FlatCAMObj.py:1021 msgid "[ERROR_NOTCL] Isolation geometry could not be generated." msgstr "[ERROR_NOTCL] Геометрия изоляции не может быть сгенерирована." -#: FlatCAMObj.py:957 FlatCAMObj.py:3061 FlatCAMObj.py:3323 FlatCAMObj.py:3632 +#: FlatCAMObj.py:960 FlatCAMObj.py:3049 FlatCAMObj.py:3311 FlatCAMObj.py:3589 msgid "Rough" msgstr "Грубый" -#: FlatCAMObj.py:975 FlatCAMObj.py:1034 +#: FlatCAMObj.py:978 FlatCAMObj.py:1037 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Создана геометрия изоляции: %s" -#: FlatCAMObj.py:1213 +#: FlatCAMObj.py:1216 msgid "Plotting Apertures" msgstr "Создание отверстия" -#: FlatCAMObj.py:1936 flatcamEditors/FlatCAMExcEditor.py:1369 +#: FlatCAMObj.py:1939 flatcamEditors/FlatCAMExcEditor.py:1369 msgid "Total Drills" msgstr "Всего отверстий" -#: FlatCAMObj.py:1962 flatcamEditors/FlatCAMExcEditor.py:1401 +#: FlatCAMObj.py:1965 flatcamEditors/FlatCAMExcEditor.py:1401 msgid "Total Slots" msgstr "Всего пазов" -#: FlatCAMObj.py:2169 FlatCAMObj.py:3440 FlatCAMObj.py:3771 FlatCAMObj.py:3962 -#: FlatCAMObj.py:3975 FlatCAMObj.py:4095 FlatCAMObj.py:4511 FlatCAMObj.py:4747 -#: FlatCAMObj.py:5151 flatcamEditors/FlatCAMExcEditor.py:1475 +#: FlatCAMObj.py:2172 FlatCAMObj.py:3427 FlatCAMObj.py:3717 FlatCAMObj.py:3904 +#: FlatCAMObj.py:3915 FlatCAMObj.py:4033 FlatCAMObj.py:4438 FlatCAMObj.py:4664 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1475 #: flatcamTools/ToolCalculators.py:304 flatcamTools/ToolCalculators.py:315 #: flatcamTools/ToolCalculators.py:327 flatcamTools/ToolCalculators.py:342 #: flatcamTools/ToolCalculators.py:355 flatcamTools/ToolCalculators.py:369 #: flatcamTools/ToolCalculators.py:380 flatcamTools/ToolCalculators.py:391 #: flatcamTools/ToolCalculators.py:402 flatcamTools/ToolFilm.py:241 -#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:481 -#: flatcamTools/ToolNonCopperClear.py:553 -#: flatcamTools/ToolNonCopperClear.py:630 -#: flatcamTools/ToolNonCopperClear.py:647 flatcamTools/ToolPaint.py:537 -#: flatcamTools/ToolPaint.py:609 flatcamTools/ToolPaint.py:746 -#: flatcamTools/ToolPaint.py:846 flatcamTools/ToolPaint.py:1000 -#: flatcamTools/ToolPanelize.py:387 flatcamTools/ToolPanelize.py:399 -#: flatcamTools/ToolPanelize.py:412 flatcamTools/ToolPanelize.py:425 -#: flatcamTools/ToolPanelize.py:437 flatcamTools/ToolPanelize.py:448 -#: flatcamTools/ToolSolderPaste.py:758 flatcamTools/ToolSolderPaste.py:830 +#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:554 +#: flatcamTools/ToolNonCopperClear.py:626 +#: flatcamTools/ToolNonCopperClear.py:703 +#: flatcamTools/ToolNonCopperClear.py:720 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolPaint.py:615 flatcamTools/ToolPaint.py:752 +#: flatcamTools/ToolPaint.py:925 flatcamTools/ToolPaint.py:1079 +#: flatcamTools/ToolPaint.py:1379 flatcamTools/ToolPanelize.py:387 +#: flatcamTools/ToolPanelize.py:399 flatcamTools/ToolPanelize.py:412 +#: flatcamTools/ToolPanelize.py:425 flatcamTools/ToolPanelize.py:437 +#: flatcamTools/ToolPanelize.py:448 flatcamTools/ToolSolderPaste.py:758 +#: flatcamTools/ToolSolderPaste.py:830 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Неправильно введен формат значения, используйте числа." -#: FlatCAMObj.py:2393 FlatCAMObj.py:2485 FlatCAMObj.py:2608 +#: FlatCAMObj.py:2396 FlatCAMObj.py:2488 FlatCAMObj.py:2611 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Пожалуйста, выберите один или несколько инструментов из списка " "и попробуйте еще раз." -#: FlatCAMObj.py:2400 +#: FlatCAMObj.py:2403 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "[ERROR_NOTCL] Сверло больше, чем размер отверстия. Отмена." -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Tool_nr" msgstr "№ инструмента" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 #: flatcamEditors/FlatCAMExcEditor.py:820 #: flatcamEditors/FlatCAMExcEditor.py:2021 flatcamGUI/ObjectUI.py:553 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1377,22 +1389,22 @@ msgstr "№ инструмента" msgid "Diameter" msgstr "Диаметр" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Drills_Nr" msgstr "№ отверстия" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Slots_Nr" msgstr "№ паза" -#: FlatCAMObj.py:2495 +#: FlatCAMObj.py:2498 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Инструмент для прорезания пазов больше, чем размер отверстия. " "Отмена." -#: FlatCAMObj.py:2670 FlatCAMObj.py:4400 FlatCAMObj.py:4615 FlatCAMObj.py:4926 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4331 FlatCAMObj.py:4537 FlatCAMObj.py:4843 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1400,7 +1412,7 @@ msgstr "" "[ERROR_NOTCL] Неправильный формат значения для self.defaults[\"z_pdepth\"] " "или self.options[\"z_pdepth\"]" -#: FlatCAMObj.py:2682 FlatCAMObj.py:4412 FlatCAMObj.py:4627 FlatCAMObj.py:4938 +#: FlatCAMObj.py:2682 FlatCAMObj.py:4341 FlatCAMObj.py:4547 FlatCAMObj.py:4853 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1408,12 +1420,12 @@ msgstr "" "[ERROR_NOTCL] Неправильный формат значения для self.defaults[\"feedrate_probe" "\"] или self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2714 FlatCAMObj.py:4814 FlatCAMObj.py:4819 FlatCAMObj.py:4969 +#: FlatCAMObj.py:2712 FlatCAMObj.py:4733 FlatCAMObj.py:4738 FlatCAMObj.py:4885 msgid "Generating CNC Code" msgstr "Генерация кода ЧПУ" -#: FlatCAMObj.py:2740 FlatCAMObj.py:5111 camlib.py:5179 camlib.py:5638 -#: camlib.py:5901 +#: FlatCAMObj.py:2737 FlatCAMObj.py:5027 camlib.py:5181 camlib.py:5640 +#: camlib.py:5903 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1423,57 +1435,57 @@ msgstr "" "формате (x, y)\n" "но теперь есть только одно значение, а не два. " -#: FlatCAMObj.py:3061 FlatCAMObj.py:4017 FlatCAMObj.py:4018 FlatCAMObj.py:4027 +#: FlatCAMObj.py:3049 FlatCAMObj.py:3956 FlatCAMObj.py:3957 FlatCAMObj.py:3966 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:3061 +#: FlatCAMObj.py:3049 msgid "Finish" msgstr "Конец" -#: FlatCAMObj.py:3359 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 +#: FlatCAMObj.py:3347 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 #: flatcamGUI/FlatCAMGUI.py:1629 flatcamGUI/FlatCAMGUI.py:1968 #: flatcamGUI/ObjectUI.py:997 msgid "Copy" msgstr "Копировать" -#: FlatCAMObj.py:3602 +#: FlatCAMObj.py:3559 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Пожалуйста, введите нужный диаметр инструмента в формате числа " "с плавающей точкой." -#: FlatCAMObj.py:3677 +#: FlatCAMObj.py:3633 msgid "[success] Tool added in Tool Table." msgstr "[success] Инструмент добавлен в таблицу инструментов." -#: FlatCAMObj.py:3682 +#: FlatCAMObj.py:3636 msgid "[WARNING_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[WARNING_NOTCL] Добавлен инструмент по умолчанию. Введен неправильный формат " "значения." -#: FlatCAMObj.py:3716 FlatCAMObj.py:3726 +#: FlatCAMObj.py:3668 FlatCAMObj.py:3676 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Ошибка. Выберите инструмент для копирования." -#: FlatCAMObj.py:3755 +#: FlatCAMObj.py:3703 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Инструмент скопирован в таблицу инструментов." -#: FlatCAMObj.py:3788 +#: FlatCAMObj.py:3732 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Инструмент был изменён в таблице инструментов." -#: FlatCAMObj.py:3817 FlatCAMObj.py:3825 +#: FlatCAMObj.py:3760 FlatCAMObj.py:3768 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Ошибка. Выберите инструмент для удаления." -#: FlatCAMObj.py:3847 +#: FlatCAMObj.py:3790 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Инструмент был удален из таблицы инструментов." -#: FlatCAMObj.py:4281 +#: FlatCAMObj.py:4219 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1481,25 +1493,21 @@ msgstr "" "[WARNING_NOTCL] Эта Geometry не может быть обработана, так как это %s " "геометрия." -#: FlatCAMObj.py:4298 +#: FlatCAMObj.py:4235 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Неверный формат ввода диаметра инструмента, используйте цифры." -#: FlatCAMObj.py:4325 +#: FlatCAMObj.py:4260 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "[ERROR_NOTCL] Ошибка. Инструмент не выбран в таблице инструментов ..." -#: FlatCAMObj.py:4362 flatcamEditors/FlatCAMExcEditor.py:2078 -msgid "[ERROR] An internal error has ocurred. See shell.\n" -msgstr "[ERROR] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" - -#: FlatCAMObj.py:4363 +#: FlatCAMObj.py:4297 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4520 FlatCAMObj.py:4754 +#: FlatCAMObj.py:4444 FlatCAMObj.py:4670 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1508,51 +1516,51 @@ msgstr "" "указано.\n" "Добавьте смещение инструмента или измените тип смещения." -#: FlatCAMObj.py:4639 flatcamTools/ToolSolderPaste.py:1112 +#: FlatCAMObj.py:4557 flatcamTools/ToolSolderPaste.py:1112 #: flatcamTools/ToolSolderPaste.py:1168 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Отмена. Пустой файл, он не имеет геометрии..." -#: FlatCAMObj.py:5002 FlatCAMObj.py:5011 camlib.py:3360 camlib.py:3369 +#: FlatCAMObj.py:4918 FlatCAMObj.py:4927 camlib.py:3362 camlib.py:3371 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Коэффициент масштабирования должен быть числом: целочисленным " "или с плавающей запятой." -#: FlatCAMObj.py:5048 +#: FlatCAMObj.py:4964 msgid "[success] Geometry Scale done." msgstr "[success] Масштабирование Geometry выполнено." -#: FlatCAMObj.py:5065 camlib.py:3438 +#: FlatCAMObj.py:4981 camlib.py:3440 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." msgstr "" "[ERROR_NOTCL] Необходима пара значений (x,y). Возможно, вы ввели только одно." -#: FlatCAMObj.py:5084 +#: FlatCAMObj.py:5000 msgid "[success] Geometry Offset done." msgstr "[success] Смещение Geometry выполнено." -#: FlatCAMObj.py:5638 FlatCAMObj.py:5643 flatcamTools/ToolSolderPaste.py:1368 +#: FlatCAMObj.py:5554 FlatCAMObj.py:5559 flatcamTools/ToolSolderPaste.py:1368 msgid "Export Machine Code ..." msgstr "Экспорт GCode ..." -#: FlatCAMObj.py:5649 flatcamTools/ToolSolderPaste.py:1371 +#: FlatCAMObj.py:5565 flatcamTools/ToolSolderPaste.py:1371 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Экспорт GCode отменен ..." -#: FlatCAMObj.py:5666 +#: FlatCAMObj.py:5582 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Файл GCode сохранён в: %s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5604 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5721 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1561,11 +1569,11 @@ msgstr "" "[WARNING_NOTCL] CNCJob объект %s не может быть обработан, так как он " "является объектом CNCJob." -#: FlatCAMObj.py:5858 +#: FlatCAMObj.py:5774 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code не имеет кода единиц измерения: G20 или G21" -#: FlatCAMObj.py:5871 +#: FlatCAMObj.py:5787 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1573,16 +1581,16 @@ msgstr "" "[ERROR_NOTCL] Отмена. Пользовательский код смены инструмента включен, но он " "пуст." -#: FlatCAMObj.py:5878 +#: FlatCAMObj.py:5794 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] G-code смены инструмента был заменен на пользовательский код." -#: FlatCAMObj.py:5893 flatcamTools/ToolSolderPaste.py:1397 +#: FlatCAMObj.py:5808 flatcamTools/ToolSolderPaste.py:1397 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Нет такого файла или каталога" -#: FlatCAMObj.py:5913 FlatCAMObj.py:5925 +#: FlatCAMObj.py:5832 FlatCAMObj.py:5844 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1590,7 +1598,7 @@ msgstr "" "[WARNING_NOTCL] Используемый файл постпроцессора должен иметь имя: " "'toolchange_custom'" -#: FlatCAMObj.py:5931 +#: FlatCAMObj.py:5850 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Это не файл постпроцессора." @@ -1622,40 +1630,40 @@ msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "" "[ERROR_NOTCL] self.solid_geometry не является базовой геометрией или списком." -#: camlib.py:1402 +#: camlib.py:1404 msgid "[success] Object was mirrored ..." msgstr "[success] Объект был отзеркалирован ..." -#: camlib.py:1404 +#: camlib.py:1406 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" msgstr "[ERROR_NOTCL] Не удалось зеркалировать. Объект не выбран" -#: camlib.py:1440 +#: camlib.py:1442 msgid "[success] Object was rotated ..." msgstr "[success] Объект был повернут ..." -#: camlib.py:1442 +#: camlib.py:1444 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" msgstr "[ERROR_NOTCL] Не удалось повернуть. Объект не выбран" -#: camlib.py:1476 +#: camlib.py:1478 msgid "[success] Object was skewed ..." msgstr "[success] Объект был наклонён ..." -#: camlib.py:1478 +#: camlib.py:1480 msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Не удалось наклонить. Объект не выбран" -#: camlib.py:2740 camlib.py:2825 +#: camlib.py:2742 camlib.py:2827 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Координаты отсутствуют, строка игнорируется: %s" -#: camlib.py:2741 camlib.py:2826 +#: camlib.py:2743 camlib.py:2828 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "[WARNING_NOTCL] Файл GERBER может быть поврежден. Проверьте файл !!!" -#: camlib.py:2790 +#: camlib.py:2792 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1664,7 +1672,7 @@ msgstr "" "[ERROR] Региону не хватает точек. Файл будет обработан, но есть ошибки " "разбора. Номер строки: %s" -#: camlib.py:3182 +#: camlib.py:3184 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1673,32 +1681,32 @@ msgstr "" "[ERROR]Ошибка разбора Gerber.\n" "%s:" -#: camlib.py:3406 +#: camlib.py:3408 msgid "[success] Gerber Scale done." msgstr "[success] Масштабирование Gerber выполнено." -#: camlib.py:3471 +#: camlib.py:3473 msgid "[success] Gerber Offset done." msgstr "[success] Смещение Gerber выполнено." -#: camlib.py:3525 +#: camlib.py:3527 msgid "[success] Gerber Mirror done." msgstr "[success] Зеркалирование Gerber выполнено." -#: camlib.py:3571 +#: camlib.py:3573 msgid "[success] Gerber Skew done." msgstr "[success] Наклон Gerber выполнен." -#: camlib.py:3609 +#: camlib.py:3611 msgid "[success] Gerber Rotate done." msgstr "[success] Вращение Gerber выполнено." -#: camlib.py:3890 +#: camlib.py:3892 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] Это метка GCODE: %s" -#: camlib.py:4005 +#: camlib.py:4007 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1715,7 +1723,7 @@ msgstr "" "Пользователю необходимо отредактировать полученный объект Excellon и " "изменить диаметры, чтобы отразить реальные диаметры." -#: camlib.py:4470 +#: camlib.py:4472 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1724,7 +1732,7 @@ msgstr "" "[ERROR] Ошибка разбора Excellon.\n" "Ошибка разбора. Строка {l_nr}: {line}\n" -#: camlib.py:4549 +#: camlib.py:4551 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1734,12 +1742,12 @@ msgstr "" "из-за отсутствия связанного инструмента.\n" "Проверьте полученный GCode." -#: camlib.py:5088 +#: camlib.py:5090 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] Такого параметра нет: %s" -#: camlib.py:5158 +#: camlib.py:5160 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1753,7 +1761,7 @@ msgstr "" "предполагая, что это опечатка, приложение преобразует значение в " "отрицательное. Проверьте полученный CNC code (Gcode и т. д.)." -#: camlib.py:5165 camlib.py:5661 camlib.py:5924 +#: camlib.py:5167 camlib.py:5663 camlib.py:5926 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" @@ -1761,15 +1769,15 @@ msgstr "" "[WARNING] Параметр \"Глубина резания\" равен нулю. Обрезки не будет , " "пропускается файл %s" -#: camlib.py:5394 camlib.py:5491 camlib.py:5549 +#: camlib.py:5396 camlib.py:5493 camlib.py:5551 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] загруженный файл Excellon не имеет отверстий ..." -#: camlib.py:5496 +#: camlib.py:5498 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Выбран неправильный тип оптимизации." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5651 camlib.py:5914 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1777,7 +1785,7 @@ msgstr "" "[ERROR_NOTCL] Параметр \"Глубина резания\" равен None или пуст. Скорее всего " "неудачное сочетание других параметров." -#: camlib.py:5654 camlib.py:5917 +#: camlib.py:5656 camlib.py:5919 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1791,11 +1799,11 @@ msgstr "" "предполагая, что это опечатка, приложение преобразует значение в " "отрицательное. Проверьте полученный CNC code (Gcode и т. д.)." -#: camlib.py:5666 camlib.py:5929 +#: camlib.py:5668 camlib.py:5931 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] Параметр \"Отвод по Z\" равен None или пуст." -#: camlib.py:5670 camlib.py:5933 +#: camlib.py:5672 camlib.py:5935 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1809,7 +1817,7 @@ msgstr "" "что это опечатка, приложение преобразует значение в положительное. Проверьте " "полученный CNC code (Gcode и т. д.)." -#: camlib.py:5677 camlib.py:5940 +#: camlib.py:5679 camlib.py:5942 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" @@ -1817,19 +1825,19 @@ msgstr "" "[WARNING] Параметр \"Отвод по Z\" равен нулю. Это опасно, пропускается файл " "%s" -#: camlib.py:5807 +#: camlib.py:5809 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR]Ожидалась Geometry, получили %s" -#: camlib.py:5813 +#: camlib.py:5815 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." msgstr "" "[ERROR_NOTCL] Попытка создать CNC Job из объекта Geometry без solid_geometry." -#: camlib.py:5852 +#: camlib.py:5854 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1839,7 +1847,7 @@ msgstr "" "current_geometry.\n" "Увеличте значение (в модуле) и повторите попытку." -#: camlib.py:6064 +#: camlib.py:6066 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "[ERROR_NOTCL] В геометрии SolderPaste нет данных инструмента." @@ -2181,6 +2189,10 @@ msgid "" "creation." msgstr "[ERROR_NOTCL] В файле нет инструментов. Прерывание создания Excellon." +#: flatcamEditors/FlatCAMExcEditor.py:2078 +msgid "[ERROR] An internal error has ocurred. See shell.\n" +msgstr "[ERROR] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" + #: flatcamEditors/FlatCAMExcEditor.py:2084 msgid "Creating Excellon." msgstr "Создание Excellon." @@ -2281,12 +2293,12 @@ msgstr "Инструменты" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4080 #: flatcamGUI/FlatCAMGUI.py:5189 flatcamGUI/FlatCAMGUI.py:5623 -#: flatcamGUI/FlatCAMGUI.py:5900 flatcamGUI/FlatCAMGUI.py:6055 +#: flatcamGUI/FlatCAMGUI.py:5913 flatcamGUI/FlatCAMGUI.py:6068 #: flatcamGUI/ObjectUI.py:259 msgid "Tool dia:" msgstr "Диам. инструм.:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6057 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6070 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2295,7 +2307,7 @@ msgstr "" "используемого в этой операции." #: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5806 -#: flatcamGUI/FlatCAMGUI.py:6066 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamGUI/FlatCAMGUI.py:6079 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Частота перекрытия:" @@ -2328,13 +2340,13 @@ msgstr "" "из-за большого количества путей." #: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5822 -#: flatcamGUI/FlatCAMGUI.py:5923 flatcamGUI/FlatCAMGUI.py:6076 +#: flatcamGUI/FlatCAMGUI.py:5936 flatcamGUI/FlatCAMGUI.py:6089 #: flatcamTools/ToolCutOut.py:101 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Отступ:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6078 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6091 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2343,12 +2355,12 @@ msgid "" msgstr "Расстояние, которое не закрашивать до края полигона." #: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5831 -#: flatcamGUI/FlatCAMGUI.py:6087 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamGUI/FlatCAMGUI.py:6100 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Метод:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6089 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6102 msgid "" "Algorithm to paint the polygon:
    Standard: Fixed step inwards." "
    Seed-based: Outwards from seed." @@ -2357,31 +2369,31 @@ msgstr "" "
    По кругу: От центра наружу." #: flatcamEditors/FlatCAMGeoEditor.py:480 flatcamGUI/FlatCAMGUI.py:5840 -#: flatcamGUI/FlatCAMGUI.py:6095 flatcamTools/ToolNonCopperClear.py:199 +#: flatcamGUI/FlatCAMGUI.py:6108 flatcamTools/ToolNonCopperClear.py:199 #: flatcamTools/ToolPaint.py:197 msgid "Standard" msgstr "Стандартный" #: flatcamEditors/FlatCAMGeoEditor.py:481 flatcamGUI/FlatCAMGUI.py:5841 -#: flatcamGUI/FlatCAMGUI.py:6096 flatcamTools/ToolNonCopperClear.py:200 +#: flatcamGUI/FlatCAMGUI.py:6109 flatcamTools/ToolNonCopperClear.py:200 #: flatcamTools/ToolPaint.py:198 msgid "Seed-based" msgstr "От центра по кругу" #: flatcamEditors/FlatCAMGeoEditor.py:482 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6097 flatcamTools/ToolNonCopperClear.py:201 +#: flatcamGUI/FlatCAMGUI.py:6110 flatcamTools/ToolNonCopperClear.py:201 #: flatcamTools/ToolPaint.py:199 msgid "Straight lines" msgstr "Прямая линия" #: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5847 -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamGUI/FlatCAMGUI.py:6115 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Подключение:" #: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5849 -#: flatcamGUI/FlatCAMGUI.py:6104 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2391,13 +2403,13 @@ msgstr "" " для минимизации подъёма инструмента." #: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5856 -#: flatcamGUI/FlatCAMGUI.py:6112 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamGUI/FlatCAMGUI.py:6125 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Контур:" #: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5858 -#: flatcamGUI/FlatCAMGUI.py:6114 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamGUI/FlatCAMGUI.py:6127 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2412,7 +2424,7 @@ msgstr "Нарисовать" #: flatcamEditors/FlatCAMGeoEditor.py:527 flatcamGUI/FlatCAMGUI.py:639 #: flatcamGUI/FlatCAMGUI.py:1883 flatcamGUI/ObjectUI.py:1320 -#: flatcamTools/ToolPaint.py:340 +#: flatcamTools/ToolPaint.py:343 msgid "Paint Tool" msgstr "Рисование" @@ -2449,7 +2461,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2707 #: flatcamEditors/FlatCAMGeoEditor.py:2733 #: flatcamEditors/FlatCAMGeoEditor.py:2759 -#: flatcamTools/ToolNonCopperClear.py:817 flatcamTools/ToolProperties.py:104 +#: flatcamTools/ToolNonCopperClear.py:916 flatcamTools/ToolProperties.py:104 msgid "Tools" msgstr "Инструменты" @@ -2613,7 +2625,7 @@ msgid "Scale Y" msgstr "Масштаб Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6461 +#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6474 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Ссылка" @@ -2628,7 +2640,7 @@ msgstr "" "используя коэффициент X для обеих осей." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6482 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Scale Reference" @@ -4540,7 +4552,7 @@ msgid "&Cutout Tool" msgstr "&Обрезка платы" #: flatcamGUI/FlatCAMGUI.py:638 flatcamGUI/FlatCAMGUI.py:1882 -#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:285 +#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:336 msgid "NCC Tool" msgstr "Очистка меди" @@ -6138,8 +6150,8 @@ msgid "Replace With" msgstr "Заменить" #: flatcamGUI/FlatCAMGUI.py:1667 flatcamGUI/FlatCAMGUI.py:5556 -#: flatcamGUI/FlatCAMGUI.py:6129 flatcamGUI/ObjectUI.py:1369 -#: flatcamTools/ToolPaint.py:248 +#: flatcamGUI/FlatCAMGUI.py:6143 flatcamGUI/ObjectUI.py:1369 +#: flatcamTools/ToolPaint.py:249 msgid "All" msgstr "Все" @@ -6883,7 +6895,7 @@ msgstr "" "пределами полигонов." #: flatcamGUI/FlatCAMGUI.py:4082 flatcamGUI/FlatCAMGUI.py:4761 -#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/ObjectUI.py:785 +#: flatcamGUI/FlatCAMGUI.py:5915 flatcamGUI/ObjectUI.py:785 #: flatcamGUI/ObjectUI.py:801 msgid "Diameter of the cutting tool." msgstr "Диаметр режущего инструмента." @@ -7148,10 +7160,10 @@ msgstr "TZ" #: flatcamGUI/FlatCAMGUI.py:4352 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/FlatCAMGUI.py:5496 flatcamGUI/FlatCAMGUI.py:5788 -#: flatcamGUI/FlatCAMGUI.py:5889 flatcamGUI/FlatCAMGUI.py:5983 -#: flatcamGUI/FlatCAMGUI.py:6042 flatcamGUI/FlatCAMGUI.py:6145 -#: flatcamGUI/FlatCAMGUI.py:6206 flatcamGUI/FlatCAMGUI.py:6405 -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/FlatCAMGUI.py:5996 +#: flatcamGUI/FlatCAMGUI.py:6055 flatcamGUI/FlatCAMGUI.py:6158 +#: flatcamGUI/FlatCAMGUI.py:6219 flatcamGUI/FlatCAMGUI.py:6418 +#: flatcamGUI/FlatCAMGUI.py:6545 msgid "Parameters:" msgstr "Параметры:" @@ -7389,7 +7401,7 @@ msgstr "" "для этого сверлите объект." #: flatcamGUI/FlatCAMGUI.py:4635 flatcamGUI/FlatCAMGUI.py:5222 -#: flatcamGUI/FlatCAMGUI.py:6341 flatcamGUI/ObjectUI.py:592 +#: flatcamGUI/FlatCAMGUI.py:6354 flatcamGUI/ObjectUI.py:592 #: flatcamGUI/ObjectUI.py:1068 flatcamTools/ToolCalculators.py:106 msgid "Cut Z:" msgstr "Глубина резания:" @@ -8284,7 +8296,7 @@ msgstr "" msgid "NCC Tool Options" msgstr "Очистка меди" -#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6543 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6556 msgid "Tools dia:" msgstr "Диам. инстр.:" @@ -8351,11 +8363,36 @@ msgstr "" "не удалось очистить предыдущим инструментом.\n" "Если флажок не установлен, используется стандартный алгоритм." -#: flatcamGUI/FlatCAMGUI.py:5886 +#: flatcamGUI/FlatCAMGUI.py:5879 flatcamTools/ToolNonCopperClear.py:239 +msgid "Itself" +msgstr "Сам" + +#: flatcamGUI/FlatCAMGUI.py:5880 flatcamGUI/FlatCAMGUI.py:6031 +#: flatcamTools/ToolDblSided.py:132 flatcamTools/ToolNonCopperClear.py:240 +msgid "Box" +msgstr "Рамка" + +#: flatcamGUI/FlatCAMGUI.py:5881 flatcamTools/ToolNonCopperClear.py:241 +msgid "Reference:" +msgstr "Ссылка:" + +#: flatcamGUI/FlatCAMGUI.py:5883 +msgid "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." +msgstr "" +"При выборе опции «Сама» степень очистки без меди\n" +"основан на объекте, который очищен от меди.\n" +"Выбор опции «Kоробка» сделает очистку без меди внутри коробки\n" +"указан другим объектом, отличным от того, который очищен от меди." + +#: flatcamGUI/FlatCAMGUI.py:5899 msgid "Cutout Tool Options" msgstr "Обрезка платы" -#: flatcamGUI/FlatCAMGUI.py:5891 flatcamGUI/ObjectUI.py:399 +#: flatcamGUI/FlatCAMGUI.py:5904 flatcamGUI/ObjectUI.py:399 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8364,11 +8401,11 @@ msgstr "" "Создание траектории обрезки печатной платы и отделения её от\n" "заготовки." -#: flatcamGUI/FlatCAMGUI.py:5909 flatcamTools/ToolCutOut.py:77 +#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:77 msgid "Obj kind:" msgstr "Вид объекта:" -#: flatcamGUI/FlatCAMGUI.py:5911 flatcamTools/ToolCutOut.py:79 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:79 msgid "" "Choice of what kind the object we want to cutout is.
    - Single: " "contain a single PCB Gerber outline object.
    - Panel: a panel PCB " @@ -8380,16 +8417,16 @@ msgstr "" "Гербера PCB панели, который сделан\n" "из множества отдельных печатных плат очертания." -#: flatcamGUI/FlatCAMGUI.py:5918 flatcamGUI/FlatCAMGUI.py:6128 +#: flatcamGUI/FlatCAMGUI.py:5931 flatcamGUI/FlatCAMGUI.py:6141 #: flatcamTools/ToolCutOut.py:85 flatcamTools/ToolPaint.py:247 msgid "Single" msgstr "Одиночный" -#: flatcamGUI/FlatCAMGUI.py:5919 flatcamTools/ToolCutOut.py:86 +#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:86 msgid "Panel" msgstr "Панель" -#: flatcamGUI/FlatCAMGUI.py:5925 +#: flatcamGUI/FlatCAMGUI.py:5938 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -8397,11 +8434,11 @@ msgstr "" "Расстояние от объектов вокруг которых\n" "будет нарисовано очертание." -#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:111 +#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:111 msgid "Gap size:" msgstr "Размер перемычки:" -#: flatcamGUI/FlatCAMGUI.py:5934 +#: flatcamGUI/FlatCAMGUI.py:5947 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8410,11 +8447,11 @@ msgstr "" "Размер перемычек для удержания\n" "печатной платы в заготовке." -#: flatcamGUI/FlatCAMGUI.py:5942 flatcamTools/ToolCutOut.py:149 +#: flatcamGUI/FlatCAMGUI.py:5955 flatcamTools/ToolCutOut.py:149 msgid "Gaps:" msgstr "Вариант:" -#: flatcamGUI/FlatCAMGUI.py:5944 +#: flatcamGUI/FlatCAMGUI.py:5957 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8436,19 +8473,19 @@ msgstr "" "- 2tb - 2*сверху + 2*снизу \n" "- 8 - 2*слева + 2*справа + 2*сверху + 2*снизу" -#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolCutOut.py:130 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolCutOut.py:130 msgid "Convex Sh.:" msgstr "Закруглять углы:" -#: flatcamGUI/FlatCAMGUI.py:5967 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "Create a convex shape surrounding the entire PCB." msgstr "Создайте выпуклую форму, окружающую печатную плату." -#: flatcamGUI/FlatCAMGUI.py:5980 +#: flatcamGUI/FlatCAMGUI.py:5993 msgid "2Sided Tool Options" msgstr "2-х сторонняя плата" -#: flatcamGUI/FlatCAMGUI.py:5985 +#: flatcamGUI/FlatCAMGUI.py:5998 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8456,36 +8493,32 @@ msgstr "" "Инструмент, помогающий создать двухстороннюю\n" "печатную плату с использованием центрирующих отверстий." -#: flatcamGUI/FlatCAMGUI.py:5995 flatcamTools/ToolDblSided.py:234 +#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:234 msgid "Drill diam.:" msgstr "Диам. сверла.:" -#: flatcamGUI/FlatCAMGUI.py:5997 flatcamTools/ToolDblSided.py:225 +#: flatcamGUI/FlatCAMGUI.py:6010 flatcamTools/ToolDblSided.py:225 #: flatcamTools/ToolDblSided.py:236 msgid "Diameter of the drill for the alignment holes." msgstr "Диаметр сверла для контрольных отверстий." -#: flatcamGUI/FlatCAMGUI.py:6006 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Зеркальное отражение:" -#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:6021 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Отразить по вертикали (X) или горизонтали (Y)." -#: flatcamGUI/FlatCAMGUI.py:6017 flatcamTools/ToolDblSided.py:131 +#: flatcamGUI/FlatCAMGUI.py:6030 flatcamTools/ToolDblSided.py:131 msgid "Point" msgstr "Точка" -#: flatcamGUI/FlatCAMGUI.py:6018 flatcamTools/ToolDblSided.py:132 -msgid "Box" -msgstr "Рамка" - -#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:6032 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Указатель оси:" -#: flatcamGUI/FlatCAMGUI.py:6021 +#: flatcamGUI/FlatCAMGUI.py:6034 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8495,11 +8528,11 @@ msgstr "" " указанное поле (в Geometry объект) в\n" "середине." -#: flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamGUI/FlatCAMGUI.py:6050 msgid "Paint Tool Options" msgstr "Рисование" -#: flatcamGUI/FlatCAMGUI.py:6044 flatcamGUI/ObjectUI.py:1311 +#: flatcamGUI/FlatCAMGUI.py:6057 flatcamGUI/ObjectUI.py:1311 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8510,7 +8543,7 @@ msgstr "" "всей площади полигона(удаляется вся медь).\n" "Будет предложено нажать на нужный полигон." -#: flatcamGUI/FlatCAMGUI.py:6068 +#: flatcamGUI/FlatCAMGUI.py:6081 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8518,19 +8551,23 @@ msgstr "" "Размер части ширины инструмента \n" "который будет перекрываться за каждый проход." -#: flatcamGUI/FlatCAMGUI.py:6122 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6135 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Выбор:" -#: flatcamGUI/FlatCAMGUI.py:6124 +#: flatcamGUI/FlatCAMGUI.py:6137 msgid "How to select the polygons to paint." msgstr "Как выбирать полигоны для рисования." -#: flatcamGUI/FlatCAMGUI.py:6142 +#: flatcamGUI/FlatCAMGUI.py:6142 flatcamTools/ToolPaint.py:248 +msgid "Area" +msgstr "Площадь" + +#: flatcamGUI/FlatCAMGUI.py:6155 msgid "Film Tool Options" msgstr "Плёнка" -#: flatcamGUI/FlatCAMGUI.py:6147 +#: flatcamGUI/FlatCAMGUI.py:6160 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8540,11 +8577,11 @@ msgstr "" "Объект FlatCAM.\n" "Файл сохраняется в формате SVG." -#: flatcamGUI/FlatCAMGUI.py:6158 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Тип плёнки:" -#: flatcamGUI/FlatCAMGUI.py:6160 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8560,11 +8597,11 @@ msgstr "" "белым на черном холсте.\n" "Формат плёнки - SVG." -#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6184 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Отступ:" -#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8584,11 +8621,11 @@ msgstr "" "белый цвет как у остальных и который может смешаться с\n" "окружение, если бы не эта граница." -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Масштаб обводки:" -#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8600,11 +8637,11 @@ msgstr "" "тоньше,\n" "поэтому этот параметр может в большей степени влиять на мелкие объекты." -#: flatcamGUI/FlatCAMGUI.py:6203 +#: flatcamGUI/FlatCAMGUI.py:6216 msgid "Panelize Tool Options" msgstr "Панелизация" -#: flatcamGUI/FlatCAMGUI.py:6208 +#: flatcamGUI/FlatCAMGUI.py:6221 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8614,11 +8651,11 @@ msgstr "" "каждый элемент является копией исходного объекта с интервалом\n" "на расстоянии X, Y расстояние друг от друга." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6232 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Интервал столбцов:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6234 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8626,11 +8663,11 @@ msgstr "" "Расстояние между столбцами нужной панели.\n" "В текущих единицах измерения." -#: flatcamGUI/FlatCAMGUI.py:6229 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6242 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Интервал строк:" -#: flatcamGUI/FlatCAMGUI.py:6231 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6244 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8638,35 +8675,35 @@ msgstr "" "Расстояние между строками нужной панели.\n" "В текущих единицах измерения." -#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6252 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Столбцы:" -#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6254 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Количество столбцов нужной панели" -#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6261 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Строки:" -#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6263 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Количество строк нужной панели" -#: flatcamGUI/FlatCAMGUI.py:6256 flatcamTools/ToolPanelize.py:181 +#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:181 msgid "Gerber" msgstr "Gerber" -#: flatcamGUI/FlatCAMGUI.py:6257 flatcamTools/ToolPanelize.py:182 +#: flatcamGUI/FlatCAMGUI.py:6270 flatcamTools/ToolPanelize.py:182 msgid "Geo" msgstr "Гео" -#: flatcamGUI/FlatCAMGUI.py:6258 +#: flatcamGUI/FlatCAMGUI.py:6271 msgid "Panel Type:" msgstr "Тип панели:" -#: flatcamGUI/FlatCAMGUI.py:6260 +#: flatcamGUI/FlatCAMGUI.py:6273 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8676,11 +8713,11 @@ msgstr "" "- Гербера\n" "- Геометрия" -#: flatcamGUI/FlatCAMGUI.py:6269 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "Constrain within:" msgstr "Ограничить в пределах:" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6284 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8694,11 +8731,11 @@ msgstr "" "последняя панель будет иметь столько столбцов и строк, как\n" "они полностью вписываются в выбранную область." -#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6293 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Ширина (DX):" -#: flatcamGUI/FlatCAMGUI.py:6282 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6295 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8706,11 +8743,11 @@ msgstr "" "Ширина (DX), в пределах которой должна поместиться панель.\n" "В текущих единицах измерения." -#: flatcamGUI/FlatCAMGUI.py:6289 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6302 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Высота (DY):" -#: flatcamGUI/FlatCAMGUI.py:6291 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6304 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8718,15 +8755,15 @@ msgstr "" "Высота (DY), в пределах которой должна поместиться панель.\n" "В текущих единицах измерения." -#: flatcamGUI/FlatCAMGUI.py:6305 +#: flatcamGUI/FlatCAMGUI.py:6318 msgid "Calculators Tool Options" msgstr "Калькулятор" -#: flatcamGUI/FlatCAMGUI.py:6308 +#: flatcamGUI/FlatCAMGUI.py:6321 msgid "V-Shape Tool Calculator:" msgstr "Калькулятор V-образного инструмента:" -#: flatcamGUI/FlatCAMGUI.py:6310 +#: flatcamGUI/FlatCAMGUI.py:6323 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8736,11 +8773,11 @@ msgstr "" "учитывая диаметр наконечника, угол наклона наконечника и\n" "глубину резания в качестве параметров." -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:92 +#: flatcamGUI/FlatCAMGUI.py:6334 flatcamTools/ToolCalculators.py:92 msgid "Tip Diameter:" msgstr "Диаметр наконечника:" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6336 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8748,11 +8785,11 @@ msgstr "" "Это диаметр наконечника инструмента.\n" "Это указано производителем." -#: flatcamGUI/FlatCAMGUI.py:6331 +#: flatcamGUI/FlatCAMGUI.py:6344 msgid "Tip angle:" msgstr "Угол наклона:" -#: flatcamGUI/FlatCAMGUI.py:6333 +#: flatcamGUI/FlatCAMGUI.py:6346 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8760,7 +8797,7 @@ msgstr "" "Это угол на кончике инструмента.\n" "Это указано производителем." -#: flatcamGUI/FlatCAMGUI.py:6343 +#: flatcamGUI/FlatCAMGUI.py:6356 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8768,11 +8805,11 @@ msgstr "" "Это глубина для того чтобы отрезать в материал.\n" "В объекте задания ЧПУ это параметр CutZ." -#: flatcamGUI/FlatCAMGUI.py:6350 +#: flatcamGUI/FlatCAMGUI.py:6363 msgid "ElectroPlating Calculator:" msgstr "Калькулятор электронных плат:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:148 +#: flatcamGUI/FlatCAMGUI.py:6365 flatcamTools/ToolCalculators.py:148 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8783,27 +8820,27 @@ msgstr "" "используя метод как чернила гранита или чернила гипофосфита кальция или " "хлорид палладия." -#: flatcamGUI/FlatCAMGUI.py:6362 flatcamTools/ToolCalculators.py:157 +#: flatcamGUI/FlatCAMGUI.py:6375 flatcamTools/ToolCalculators.py:157 msgid "Board Length:" msgstr "Длина платы:" -#: flatcamGUI/FlatCAMGUI.py:6364 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:161 msgid "This is the board length. In centimeters." msgstr "Это длина доски. В сантиметрах." -#: flatcamGUI/FlatCAMGUI.py:6370 flatcamTools/ToolCalculators.py:163 +#: flatcamGUI/FlatCAMGUI.py:6383 flatcamTools/ToolCalculators.py:163 msgid "Board Width:" msgstr "Ширина платы:" -#: flatcamGUI/FlatCAMGUI.py:6372 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6385 flatcamTools/ToolCalculators.py:167 msgid "This is the board width.In centimeters." msgstr "Это совет директоров width.In сантиметры." -#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:169 +#: flatcamGUI/FlatCAMGUI.py:6390 flatcamTools/ToolCalculators.py:169 msgid "Current Density:" msgstr "Текущая плотность:" -#: flatcamGUI/FlatCAMGUI.py:6380 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6393 flatcamTools/ToolCalculators.py:173 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8811,11 +8848,11 @@ msgstr "" "Плотность тока для прохождения через плату. \n" "В Амперах на квадратный метр АЧС." -#: flatcamGUI/FlatCAMGUI.py:6386 flatcamTools/ToolCalculators.py:176 +#: flatcamGUI/FlatCAMGUI.py:6399 flatcamTools/ToolCalculators.py:176 msgid "Copper Growth:" msgstr "Медный слой:" -#: flatcamGUI/FlatCAMGUI.py:6389 flatcamTools/ToolCalculators.py:180 +#: flatcamGUI/FlatCAMGUI.py:6402 flatcamTools/ToolCalculators.py:180 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8823,11 +8860,11 @@ msgstr "" "Насколько толстым должен быть медный рост.\n" "В микронах." -#: flatcamGUI/FlatCAMGUI.py:6402 +#: flatcamGUI/FlatCAMGUI.py:6415 msgid "Transform Tool Options" msgstr "Трансформация" -#: flatcamGUI/FlatCAMGUI.py:6407 +#: flatcamGUI/FlatCAMGUI.py:6420 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8835,47 +8872,47 @@ msgstr "" "Различные преобразования, которые могут быть применены\n" "на объекте FlatCAM." -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6430 msgid "Rotate Angle:" msgstr "Угол Поворота:" -#: flatcamGUI/FlatCAMGUI.py:6419 +#: flatcamGUI/FlatCAMGUI.py:6432 msgid "Angle for rotation. In degrees." msgstr "Угол поворота. В градусах." -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Skew_X angle:" msgstr "Угол наклона_X:" -#: flatcamGUI/FlatCAMGUI.py:6428 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Угол наклона/сдвига по оси X. В градусах." -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Skew_Y angle:" msgstr "Угол наклона_Y:" -#: flatcamGUI/FlatCAMGUI.py:6437 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Угол наклона/сдвига по оси Y. В градусах." -#: flatcamGUI/FlatCAMGUI.py:6444 +#: flatcamGUI/FlatCAMGUI.py:6457 msgid "Scale_X factor:" msgstr "Коэф. X:" -#: flatcamGUI/FlatCAMGUI.py:6446 +#: flatcamGUI/FlatCAMGUI.py:6459 msgid "Factor for scaling on X axis." msgstr "Коэффициент масштабирования по оси X." -#: flatcamGUI/FlatCAMGUI.py:6453 +#: flatcamGUI/FlatCAMGUI.py:6466 msgid "Scale_Y factor:" msgstr "Коэф Y:" -#: flatcamGUI/FlatCAMGUI.py:6455 +#: flatcamGUI/FlatCAMGUI.py:6468 msgid "Factor for scaling on Y axis." msgstr "Коэффициент масштабирования по оси Y." -#: flatcamGUI/FlatCAMGUI.py:6463 +#: flatcamGUI/FlatCAMGUI.py:6476 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8883,7 +8920,7 @@ msgstr "" "Масштабирование выбранных объектов)\n" "использование коэффициента Scale_X для обеих осей." -#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6484 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8895,27 +8932,27 @@ msgstr "" "а по центру большой прямоугольник \n" "из выбранных объектов, если флажок снят." -#: flatcamGUI/FlatCAMGUI.py:6480 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "Offset_X val:" msgstr "Смещение Х:" -#: flatcamGUI/FlatCAMGUI.py:6482 +#: flatcamGUI/FlatCAMGUI.py:6495 msgid "Distance to offset on X axis. In current units." msgstr "Расстояние смещения по оси X. В текущих единицах." -#: flatcamGUI/FlatCAMGUI.py:6489 +#: flatcamGUI/FlatCAMGUI.py:6502 msgid "Offset_Y val:" msgstr "Смещение Y:" -#: flatcamGUI/FlatCAMGUI.py:6491 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Distance to offset on Y axis. In current units." msgstr "Расстояние смещения по оси Y. В текущих единицах." -#: flatcamGUI/FlatCAMGUI.py:6497 +#: flatcamGUI/FlatCAMGUI.py:6510 msgid "Mirror Reference" msgstr "Точка зеркалтрования" -#: flatcamGUI/FlatCAMGUI.py:6499 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -8937,11 +8974,11 @@ msgstr "" "Или введите координаты в формате (x, y) в поле\n" "Поле ввода точки и нажмите кнопку флип на X(Y)" -#: flatcamGUI/FlatCAMGUI.py:6510 +#: flatcamGUI/FlatCAMGUI.py:6523 msgid " Mirror Ref. Point:" msgstr " Точка зеркалирования:" -#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6525 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -8952,11 +8989,11 @@ msgstr "" "'x' в (x, y) будет использоваться при отражении по X и\n" "'y' в (x, y) будет использоваться при отражении по Y" -#: flatcamGUI/FlatCAMGUI.py:6529 +#: flatcamGUI/FlatCAMGUI.py:6542 msgid "SolderPaste Tool Options" msgstr "Паяльная паста" -#: flatcamGUI/FlatCAMGUI.py:6534 +#: flatcamGUI/FlatCAMGUI.py:6547 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -8964,49 +9001,49 @@ msgstr "" "Инструмент для создания GCode для дозирования\n" "нанесения паяльной пасты на печатную плату." -#: flatcamGUI/FlatCAMGUI.py:6545 +#: flatcamGUI/FlatCAMGUI.py:6558 msgid "Diameters of nozzle tools, separated by ','" msgstr "Диаметры сопловых инструментов, разделенные ','" -#: flatcamGUI/FlatCAMGUI.py:6552 +#: flatcamGUI/FlatCAMGUI.py:6565 msgid "New Nozzle Dia:" msgstr "Новый диам. сопла:" -#: flatcamGUI/FlatCAMGUI.py:6554 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" "Диаметр для нового инструмента сопла, который нужно добавить в таблице " "инструмента" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6575 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Z начала нанесения:" -#: flatcamGUI/FlatCAMGUI.py:6564 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "Высота (Z), когда начинается выдача паяльной пасты." -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6584 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Z нанесения:" -#: flatcamGUI/FlatCAMGUI.py:6573 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "Высота (Z) при выполнении дозирования паяльной пасты." -#: flatcamGUI/FlatCAMGUI.py:6580 flatcamTools/ToolSolderPaste.py:182 +#: flatcamGUI/FlatCAMGUI.py:6593 flatcamTools/ToolSolderPaste.py:182 msgid "Z Dispense Stop:" msgstr "Z конца нанесения:" -#: flatcamGUI/FlatCAMGUI.py:6582 flatcamTools/ToolSolderPaste.py:184 +#: flatcamGUI/FlatCAMGUI.py:6595 flatcamTools/ToolSolderPaste.py:184 msgid "The height (Z) when solder paste dispensing stops." msgstr "Высота (Z) при остановке выдачи паяльной пасты." -#: flatcamGUI/FlatCAMGUI.py:6589 flatcamTools/ToolSolderPaste.py:190 +#: flatcamGUI/FlatCAMGUI.py:6602 flatcamTools/ToolSolderPaste.py:190 msgid "Z Travel:" msgstr "Z перемещения:" -#: flatcamGUI/FlatCAMGUI.py:6591 flatcamTools/ToolSolderPaste.py:192 +#: flatcamGUI/FlatCAMGUI.py:6604 flatcamTools/ToolSolderPaste.py:192 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -9014,19 +9051,19 @@ msgstr "" "Высота (Z) для перемещения между колодками\n" "(без дозирования паяльной пасты)." -#: flatcamGUI/FlatCAMGUI.py:6599 flatcamTools/ToolSolderPaste.py:199 +#: flatcamGUI/FlatCAMGUI.py:6612 flatcamTools/ToolSolderPaste.py:199 msgid "Z Toolchange:" msgstr "Z смены инструмента:" -#: flatcamGUI/FlatCAMGUI.py:6601 flatcamTools/ToolSolderPaste.py:201 +#: flatcamGUI/FlatCAMGUI.py:6614 flatcamTools/ToolSolderPaste.py:201 msgid "The height (Z) for tool (nozzle) change." msgstr "Высота (Z) для изменения инструмента (сопла)." -#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:207 +#: flatcamGUI/FlatCAMGUI.py:6621 flatcamTools/ToolSolderPaste.py:207 msgid "XY Toolchange:" msgstr "XY смены инструмента:" -#: flatcamGUI/FlatCAMGUI.py:6610 flatcamTools/ToolSolderPaste.py:209 +#: flatcamGUI/FlatCAMGUI.py:6623 flatcamTools/ToolSolderPaste.py:209 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -9034,19 +9071,19 @@ msgstr "" "Положение X, Y для изменения инструмента (сопла).\n" "Формат (x, y), где x и y-действительные числа." -#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:216 +#: flatcamGUI/FlatCAMGUI.py:6631 flatcamTools/ToolSolderPaste.py:216 msgid "Feedrate X-Y:" msgstr "Скорость подачи X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6620 flatcamTools/ToolSolderPaste.py:218 +#: flatcamGUI/FlatCAMGUI.py:6633 flatcamTools/ToolSolderPaste.py:218 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Скорость подачи при движении по плоскости X-Y." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:224 +#: flatcamGUI/FlatCAMGUI.py:6640 flatcamTools/ToolSolderPaste.py:224 msgid "Feedrate Z:" msgstr "Скорость подачи Z:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:226 +#: flatcamGUI/FlatCAMGUI.py:6642 flatcamTools/ToolSolderPaste.py:226 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." @@ -9054,11 +9091,11 @@ msgstr "" "Скорость подачи (скорость) при движении по вертикали\n" "(на плоскости Z)." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:233 +#: flatcamGUI/FlatCAMGUI.py:6650 flatcamTools/ToolSolderPaste.py:233 msgid "Feedrate Z Dispense:" msgstr "Скорость подачи Z Диспенсер:" -#: flatcamGUI/FlatCAMGUI.py:6639 +#: flatcamGUI/FlatCAMGUI.py:6652 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -9066,11 +9103,11 @@ msgstr "" "Скорость подачи (скорость) при движении вверх по вертикали\n" "распределить положение (на плоскости Z)." -#: flatcamGUI/FlatCAMGUI.py:6647 flatcamTools/ToolSolderPaste.py:242 +#: flatcamGUI/FlatCAMGUI.py:6660 flatcamTools/ToolSolderPaste.py:242 msgid "Spindle Speed FWD:" msgstr "Скорость прям. вр. шпинделя:" -#: flatcamGUI/FlatCAMGUI.py:6649 flatcamTools/ToolSolderPaste.py:244 +#: flatcamGUI/FlatCAMGUI.py:6662 flatcamTools/ToolSolderPaste.py:244 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -9078,19 +9115,19 @@ msgstr "" "Диспенсер скорости при нажатии паяльной пасты\n" "через сопло дозатора." -#: flatcamGUI/FlatCAMGUI.py:6657 flatcamTools/ToolSolderPaste.py:251 +#: flatcamGUI/FlatCAMGUI.py:6670 flatcamTools/ToolSolderPaste.py:251 msgid "Dwell FWD:" msgstr "Задержка В НАЧАЛЕ:" -#: flatcamGUI/FlatCAMGUI.py:6659 flatcamTools/ToolSolderPaste.py:253 +#: flatcamGUI/FlatCAMGUI.py:6672 flatcamTools/ToolSolderPaste.py:253 msgid "Pause after solder dispensing." msgstr "Пауза после выдачи паяльной пасты." -#: flatcamGUI/FlatCAMGUI.py:6666 flatcamTools/ToolSolderPaste.py:259 +#: flatcamGUI/FlatCAMGUI.py:6679 flatcamTools/ToolSolderPaste.py:259 msgid "Spindle Speed REV:" msgstr "Скорость обратн. вр. шпинделя:" -#: flatcamGUI/FlatCAMGUI.py:6668 flatcamTools/ToolSolderPaste.py:261 +#: flatcamGUI/FlatCAMGUI.py:6681 flatcamTools/ToolSolderPaste.py:261 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -9098,11 +9135,11 @@ msgstr "" "Скорость распределителя пока втягивающ затир припоя\n" "через сопло дозатора." -#: flatcamGUI/FlatCAMGUI.py:6676 flatcamTools/ToolSolderPaste.py:268 +#: flatcamGUI/FlatCAMGUI.py:6689 flatcamTools/ToolSolderPaste.py:268 msgid "Dwell REV:" msgstr "Задержка В КОНЦЕ:" -#: flatcamGUI/FlatCAMGUI.py:6678 flatcamTools/ToolSolderPaste.py:270 +#: flatcamGUI/FlatCAMGUI.py:6691 flatcamTools/ToolSolderPaste.py:270 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -9110,23 +9147,23 @@ msgstr "" "Пауза после того, как дозатор паяльной пасты будет убран,\n" "чтобы обеспечить равномерное выдавливание." -#: flatcamGUI/FlatCAMGUI.py:6685 flatcamTools/ToolSolderPaste.py:276 +#: flatcamGUI/FlatCAMGUI.py:6698 flatcamTools/ToolSolderPaste.py:276 msgid "PostProcessors:" msgstr "Постпроцессоры:" -#: flatcamGUI/FlatCAMGUI.py:6687 flatcamTools/ToolSolderPaste.py:278 +#: flatcamGUI/FlatCAMGUI.py:6700 flatcamTools/ToolSolderPaste.py:278 msgid "Files that control the GCode generation." msgstr "Файлы контролирующие генерацию GCode." -#: flatcamGUI/FlatCAMGUI.py:6717 flatcamGUI/FlatCAMGUI.py:6723 +#: flatcamGUI/FlatCAMGUI.py:6730 flatcamGUI/FlatCAMGUI.py:6736 msgid "Idle." msgstr "Нет заданий." -#: flatcamGUI/FlatCAMGUI.py:6747 +#: flatcamGUI/FlatCAMGUI.py:6760 msgid "Application started ..." msgstr "Приложение запущено ..." -#: flatcamGUI/FlatCAMGUI.py:6748 +#: flatcamGUI/FlatCAMGUI.py:6761 msgid "Hello!" msgstr "Привет!" @@ -9331,7 +9368,7 @@ msgstr "" msgid "Clear N-copper:" msgstr "Очистка меди:" -#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:240 +#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:285 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -10398,7 +10435,9 @@ msgstr "" "объекта геометрии, используемой в качестве геометрии выреза." #: flatcamTools/ToolCutOut.py:358 flatcamTools/ToolCutOut.py:552 -#: flatcamTools/ToolNonCopperClear.py:669 flatcamTools/ToolPaint.py:768 +#: flatcamTools/ToolNonCopperClear.py:743 +#: flatcamTools/ToolNonCopperClear.py:751 +#: flatcamTools/ToolNonCopperClear.py:759 flatcamTools/ToolPaint.py:774 #: flatcamTools/ToolPanelize.py:353 flatcamTools/ToolPanelize.py:368 #: flatcamTools/ToolSub.py:239 flatcamTools/ToolSub.py:252 #: flatcamTools/ToolSub.py:432 flatcamTools/ToolSub.py:445 @@ -10469,7 +10508,7 @@ msgstr "" msgid "[success] Any form CutOut operation finished." msgstr "[success] Операция обрезки закончена." -#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:772 +#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:778 #: flatcamTools/ToolPanelize.py:359 #, python-format msgid "[ERROR_NOTCL] Object not found: %s" @@ -10613,15 +10652,15 @@ msgstr "" "и щелкните левой кнопкой мыши на холсте или вы можете ввести координаты " "вручную." -#: flatcamTools/ToolDblSided.py:182 +#: flatcamTools/ToolDblSided.py:182 flatcamTools/ToolNonCopperClear.py:260 msgid "Gerber Reference Box Object" msgstr "Gerber объект указателя рамки" -#: flatcamTools/ToolDblSided.py:183 +#: flatcamTools/ToolDblSided.py:183 flatcamTools/ToolNonCopperClear.py:261 msgid "Excellon Reference Box Object" msgstr "Excellon объект указателя рамки" -#: flatcamTools/ToolDblSided.py:184 +#: flatcamTools/ToolDblSided.py:184 flatcamTools/ToolNonCopperClear.py:262 msgid "Geometry Reference Box Object" msgstr "Geometry объект указателя рамки" @@ -11253,32 +11292,66 @@ msgstr "" "больше нет меди для очистки или больше нет инструментов.\n" "Если не проверено, используйте стандартный алгоритм." -#: flatcamTools/ToolNonCopperClear.py:238 +#: flatcamTools/ToolNonCopperClear.py:243 +msgid "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." +msgstr "" +"- «Сам»: степень очистки без меди\n" +"основан на объекте, который очищен от меди.\n" +"- «Kоробка»: очистка от меди внутри коробки\n" +"указанным объектом, выбранным в работе. Объектный ящик." + +#: flatcamTools/ToolNonCopperClear.py:254 +msgid "Ref. Type:" +msgstr "Тип ссылки:" + +#: flatcamTools/ToolNonCopperClear.py:256 +msgid "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." +msgstr "" +"Тип объекта FlatCAM, который будет использоваться в качестве справки по " +"очистке без использования меди.\n" +"Это может быть Gerber, Excellon или Геометрия." + +#: flatcamTools/ToolNonCopperClear.py:267 +msgid "Ref. Object:" +msgstr "Кон. объект:" + +#: flatcamTools/ToolNonCopperClear.py:269 +msgid "The FlatCAM object to be used as non copper clearing reference." +msgstr "" +"Объект FlatCAM, который будет использоваться как ссылка на очистку от меди." + +#: flatcamTools/ToolNonCopperClear.py:283 msgid "Generate Geometry" msgstr "Создать объект" -#: flatcamTools/ToolNonCopperClear.py:486 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolNonCopperClear.py:559 flatcamTools/ToolPaint.py:549 #: flatcamTools/ToolSolderPaste.py:763 msgid "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." msgstr "" "[WARNING_NOTCL] Пожалуйста, введите диаметр инструмента для добавления в " "формате Float." -#: flatcamTools/ToolNonCopperClear.py:515 flatcamTools/ToolPaint.py:567 +#: flatcamTools/ToolNonCopperClear.py:588 flatcamTools/ToolPaint.py:573 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "" "[WARNING_NOTCL] Добавление инструмента отменено. Инструмент уже в таблице " "инструментов." -#: flatcamTools/ToolNonCopperClear.py:520 flatcamTools/ToolPaint.py:572 +#: flatcamTools/ToolNonCopperClear.py:593 flatcamTools/ToolPaint.py:578 msgid "[success] New tool added to Tool Table." msgstr "[success] Новый инструмент добавлен в таблицу инструментов." -#: flatcamTools/ToolNonCopperClear.py:562 flatcamTools/ToolPaint.py:617 +#: flatcamTools/ToolNonCopperClear.py:635 flatcamTools/ToolPaint.py:623 msgid "[success] Tool from Tool Table was edited." msgstr "[success] Инструмент был изменён в таблице инструментов." -#: flatcamTools/ToolNonCopperClear.py:573 flatcamTools/ToolPaint.py:628 +#: flatcamTools/ToolNonCopperClear.py:646 flatcamTools/ToolPaint.py:634 #: flatcamTools/ToolSolderPaste.py:850 msgid "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " @@ -11287,46 +11360,53 @@ msgstr "" "[WARNING_NOTCL] Правка отменена. Новое значение диаметра уже находится в " "таблице инструментов." -#: flatcamTools/ToolNonCopperClear.py:613 flatcamTools/ToolPaint.py:727 +#: flatcamTools/ToolNonCopperClear.py:686 flatcamTools/ToolPaint.py:733 msgid "[WARNING_NOTCL] Delete failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Ошибка удаления. Выберите инструмент для удаления." -#: flatcamTools/ToolNonCopperClear.py:618 flatcamTools/ToolPaint.py:732 +#: flatcamTools/ToolNonCopperClear.py:691 flatcamTools/ToolPaint.py:738 msgid "[success] Tool(s) deleted from Tool Table." msgstr "[success] Инструмент удалён из таблицы инструментов." -#: flatcamTools/ToolNonCopperClear.py:636 flatcamTools/ToolPaint.py:751 +#: flatcamTools/ToolNonCopperClear.py:709 flatcamTools/ToolPaint.py:757 msgid "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " msgstr "" "[ERROR_NOTCL] Значение перекрытия должно быть от 0 (включитение) до 1 " "(исключение), " -#: flatcamTools/ToolNonCopperClear.py:677 -msgid "[ERROR_NOTCL] No Gerber file available." -msgstr "[ERROR_NOTCL] Нет доступных Gerber-файлов ." +#: flatcamTools/ToolNonCopperClear.py:772 +msgid "[ERROR_NOTCL] No object available." +msgstr "[ERROR_NOTCL] Нет доступных объектов." -#: flatcamTools/ToolNonCopperClear.py:715 -#: flatcamTools/ToolNonCopperClear.py:837 +#: flatcamTools/ToolNonCopperClear.py:781 +msgid "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." +msgstr "" +"[ERROR_NOTCL] Не удалось получить размер области, не подлежащей очистке от " +"меди." + +#: flatcamTools/ToolNonCopperClear.py:814 +#: flatcamTools/ToolNonCopperClear.py:936 msgid "Clearing Non-Copper areas." msgstr "Очистка областей от меди." -#: flatcamTools/ToolNonCopperClear.py:733 +#: flatcamTools/ToolNonCopperClear.py:832 #, python-format msgid "[success] Non-Copper Clearing with ToolDia = %s started." msgstr "" "[success] Началась очистка от меди с помощью инструмента диаметром = %s." -#: flatcamTools/ToolNonCopperClear.py:802 +#: flatcamTools/ToolNonCopperClear.py:901 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" -#: flatcamTools/ToolNonCopperClear.py:807 +#: flatcamTools/ToolNonCopperClear.py:906 msgid "[success] NCC Tool finished." msgstr "[success] NCC Tool завершён." -#: flatcamTools/ToolNonCopperClear.py:809 +#: flatcamTools/ToolNonCopperClear.py:908 msgid "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." @@ -11334,19 +11414,19 @@ msgstr "" "[WARNING_NOTCL] Инструмент NCC закончен, но некоторые функции печатной платы " "не могут быть очищены. Проверить результаты." -#: flatcamTools/ToolNonCopperClear.py:855 +#: flatcamTools/ToolNonCopperClear.py:954 #, python-format msgid "[success] Non-Copper Rest Clearing with ToolDia = %s started." msgstr "" "[success] Началась очистка от остатков меди с помощью инструмента диаметром " "= %s." -#: flatcamTools/ToolNonCopperClear.py:953 +#: flatcamTools/ToolNonCopperClear.py:1052 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" msgstr "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" -#: flatcamTools/ToolNonCopperClear.py:961 +#: flatcamTools/ToolNonCopperClear.py:1060 msgid "" "[ERROR_NOTCL] NCC Tool finished but could not clear the object with current " "settings." @@ -11471,35 +11551,48 @@ msgstr "" "рисование начнется после щелчка.
    Будет создан новый объект Geometry с " "путями инструмента
    ." -#: flatcamTools/ToolPaint.py:736 +#: flatcamTools/ToolPaint.py:742 msgid "geometry_on_paint_button" msgstr "геометрия на кнопке рисования" -#: flatcamTools/ToolPaint.py:755 flatcamTools/ToolPaint.py:791 +#: flatcamTools/ToolPaint.py:761 flatcamTools/ToolPaint.py:797 msgid "[WARNING_NOTCL] Click inside the desired polygon." msgstr "[WARNING_NOTCL] Нажмите внутри нужного многоугольника." -#: flatcamTools/ToolPaint.py:778 +#: flatcamTools/ToolPaint.py:784 msgid "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." msgstr "[ERROR_NOTCL] Невозможно окрашивание multi-geo Geometries ..." -#: flatcamTools/ToolPaint.py:800 flatcamTools/ToolPaint.py:1004 +#: flatcamTools/ToolPaint.py:806 flatcamTools/ToolPaint.py:1083 +#: flatcamTools/ToolPaint.py:1383 msgid "Painting polygon..." msgstr "Отрисовка полигона..." -#: flatcamTools/ToolPaint.py:853 +#: flatcamTools/ToolPaint.py:825 +msgid "[WARNING_NOTCL] Click the start point of the paint area." +msgstr "[WARNING_NOTCL] Нажмите на начальную точку области рисования." + +#: flatcamTools/ToolPaint.py:836 +msgid "[WARNING_NOTCL] Click the end point of the paint area." +msgstr "[WARNING_NOTCL] Нажмите на конечную точку области рисования." + +#: flatcamTools/ToolPaint.py:842 +msgid "Done." +msgstr "Готово." + +#: flatcamTools/ToolPaint.py:932 msgid "[WARNING] No polygon found." msgstr "[WARNING] Полигон не найден." -#: flatcamTools/ToolPaint.py:856 +#: flatcamTools/ToolPaint.py:935 msgid "Painting polygon." msgstr "Отрисовка безмедного полигона." -#: flatcamTools/ToolPaint.py:898 +#: flatcamTools/ToolPaint.py:977 msgid "[ERROR_NOTCL] Geometry could not be painted completely" msgstr "[ERROR_NOTCL] Геометрия не может быть окрашена полностью" -#: flatcamTools/ToolPaint.py:924 +#: flatcamTools/ToolPaint.py:1003 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -11510,16 +11603,18 @@ msgstr "" "другой способ рисования\n" "%s" -#: flatcamTools/ToolPaint.py:966 +#: flatcamTools/ToolPaint.py:1045 #, python-format msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:972 flatcamTools/ToolPaint.py:1271 +#: flatcamTools/ToolPaint.py:1051 flatcamTools/ToolPaint.py:1350 +#: flatcamTools/ToolPaint.py:1641 msgid "Polygon Paint started ..." msgstr "Запущена отрисовка полигона ..." -#: flatcamTools/ToolPaint.py:1125 flatcamTools/ToolPaint.py:1216 +#: flatcamTools/ToolPaint.py:1204 flatcamTools/ToolPaint.py:1295 +#: flatcamTools/ToolPaint.py:1495 flatcamTools/ToolPaint.py:1586 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11530,7 +11625,7 @@ msgstr "" "другой способ рисования\n" "%s" -#: flatcamTools/ToolPaint.py:1149 +#: flatcamTools/ToolPaint.py:1228 flatcamTools/ToolPaint.py:1519 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11542,11 +11637,11 @@ msgstr "" "Geometry .\n" "Измените параметры рисования и повторите попытку." -#: flatcamTools/ToolPaint.py:1158 +#: flatcamTools/ToolPaint.py:1237 flatcamTools/ToolPaint.py:1528 msgid "[success] Paint All Done." msgstr "[success] Paint All выполнено." -#: flatcamTools/ToolPaint.py:1246 +#: flatcamTools/ToolPaint.py:1325 flatcamTools/ToolPaint.py:1616 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11558,7 +11653,7 @@ msgstr "" "Geometry.\n" "Измените параметры рисования и повторите попытку." -#: flatcamTools/ToolPaint.py:1255 +#: flatcamTools/ToolPaint.py:1334 flatcamTools/ToolPaint.py:1625 msgid "[success] Paint All with Rest-Machining done." msgstr "[success] Paint All with Rest-Machining done." @@ -12208,7 +12303,7 @@ msgstr "[ERROR] ToolSolderPaste.on_view_gcode() -->%s" msgid "Export GCode ..." msgstr "Экспорт GCode ..." -#: flatcamTools/ToolSolderPaste.py:1403 +#: flatcamTools/ToolSolderPaste.py:1407 #, python-format msgid "[success] Solder paste dispenser GCode file saved to: %s" msgstr "[success] Файл GCode дозатора паяльной пасты сохранён в: %s" diff --git a/locale_template/strings.pot b/locale_template/strings.pot index e1a9d677..7888bfbd 100644 --- a/locale_template/strings.pot +++ b/locale_template/strings.pot @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-08-06 10:37+0300\n" +"POT-Creation-Date: 2019-08-10 18:17+0300\n" "PO-Revision-Date: 2019-03-25 15:08+0200\n" "Last-Translator: \n" "Language-Team: \n" @@ -23,153 +23,161 @@ msgstr "" "X-Poedit-SearchPathExcluded-1: doc\n" "X-Poedit-SearchPathExcluded-2: tests\n" -#: FlatCAMApp.py:940 +#: FlatCAMApp.py:942 msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" -#: FlatCAMApp.py:1854 +#: FlatCAMApp.py:1856 msgid "" "(Type help to get started)\n" "\n" msgstr "" -#: FlatCAMApp.py:2042 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:2044 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 #: flatcamTools/ToolPcbWizard.py:296 flatcamTools/ToolPcbWizard.py:319 msgid "Open cancelled." msgstr "" -#: FlatCAMApp.py:2056 +#: FlatCAMApp.py:2058 msgid "Open Config file failed." msgstr "" -#: FlatCAMApp.py:2070 +#: FlatCAMApp.py:2072 msgid "Open Script file failed." msgstr "" -#: FlatCAMApp.py:2276 +#: FlatCAMApp.py:2278 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" -#: FlatCAMApp.py:2286 +#: FlatCAMApp.py:2288 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" "Edit only one geometry at a time." msgstr "" -#: FlatCAMApp.py:2341 +#: FlatCAMApp.py:2343 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "" -#: FlatCAMApp.py:2359 +#: FlatCAMApp.py:2361 msgid "Do you want to save the edited object?" msgstr "" -#: FlatCAMApp.py:2360 flatcamGUI/FlatCAMGUI.py:1632 +#: FlatCAMApp.py:2362 flatcamGUI/FlatCAMGUI.py:1632 msgid "Close Editor" msgstr "" -#: FlatCAMApp.py:2363 FlatCAMApp.py:3474 FlatCAMApp.py:5306 FlatCAMApp.py:6179 +#: FlatCAMApp.py:2365 FlatCAMApp.py:3481 FlatCAMApp.py:5316 FlatCAMApp.py:6194 #: FlatCAMTranslation.py:96 FlatCAMTranslation.py:169 #: flatcamGUI/FlatCAMGUI.py:3756 msgid "Yes" msgstr "" -#: FlatCAMApp.py:2364 FlatCAMApp.py:3475 FlatCAMApp.py:5307 FlatCAMApp.py:6180 +#: FlatCAMApp.py:2366 FlatCAMApp.py:3482 FlatCAMApp.py:5317 FlatCAMApp.py:6195 #: FlatCAMTranslation.py:97 FlatCAMTranslation.py:170 #: flatcamGUI/FlatCAMGUI.py:3757 msgid "No" msgstr "" -#: FlatCAMApp.py:2365 FlatCAMApp.py:3476 FlatCAMApp.py:3907 FlatCAMApp.py:6181 +#: FlatCAMApp.py:2367 FlatCAMApp.py:3483 FlatCAMApp.py:3914 FlatCAMApp.py:6196 msgid "Cancel" msgstr "" -#: FlatCAMApp.py:2392 +#: FlatCAMApp.py:2394 msgid "[WARNING] Object empty after edit." msgstr "" -#: FlatCAMApp.py:2414 FlatCAMApp.py:2433 FlatCAMApp.py:2445 +#: FlatCAMApp.py:2416 FlatCAMApp.py:2435 FlatCAMApp.py:2447 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" -#: FlatCAMApp.py:2417 +#: FlatCAMApp.py:2419 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "" -#: FlatCAMApp.py:2782 +#: FlatCAMApp.py:2784 msgid "[ERROR] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2794 +#: FlatCAMApp.py:2796 msgid "[ERROR] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2815 FlatCAMApp.py:2819 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2821 msgid "Import FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2825 +#: FlatCAMApp.py:2827 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "" -#: FlatCAMApp.py:2833 FlatCAMApp.py:2887 FlatCAMApp.py:3353 +#: FlatCAMApp.py:2835 FlatCAMApp.py:2894 FlatCAMApp.py:3360 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2841 FlatCAMApp.py:3362 +#: FlatCAMApp.py:2843 FlatCAMApp.py:3369 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2844 +#: FlatCAMApp.py:2847 #, python-format msgid "[success] Imported Defaults from %s" msgstr "" -#: FlatCAMApp.py:2859 FlatCAMApp.py:2864 +#: FlatCAMApp.py:2862 FlatCAMApp.py:2867 msgid "Export FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2871 +#: FlatCAMApp.py:2874 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "" -#: FlatCAMApp.py:2906 FlatCAMApp.py:3407 +#: FlatCAMApp.py:2882 FlatCAMApp.py:4683 FlatCAMApp.py:7131 FlatCAMApp.py:7241 +#: FlatCAMApp.py:7362 FlatCAMApp.py:7417 FlatCAMApp.py:7525 FlatCAMApp.py:7648 +#: FlatCAMObj.py:5812 flatcamTools/ToolSolderPaste.py:1400 +msgid "" +"[WARNING] Permission denied, saving not possible.\n" +"Most likely another app is holding the file open and not accessible." +msgstr "" + +#: FlatCAMApp.py:2913 FlatCAMApp.py:3414 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "" -#: FlatCAMApp.py:2966 +#: FlatCAMApp.py:2973 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" -#: FlatCAMApp.py:2976 +#: FlatCAMApp.py:2983 msgid "[ERROR_NOTCL] Failed to open recent projects file for writing." msgstr "" -#: FlatCAMApp.py:3053 camlib.py:4469 +#: FlatCAMApp.py:3060 camlib.py:4471 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:3054 +#: FlatCAMApp.py:3061 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" "\n" msgstr "" -#: FlatCAMApp.py:3074 +#: FlatCAMApp.py:3081 msgid "Converting units to " msgstr "" -#: FlatCAMApp.py:3153 FlatCAMApp.py:3156 FlatCAMApp.py:3159 FlatCAMApp.py:3162 +#: FlatCAMApp.py:3160 FlatCAMApp.py:3163 FlatCAMApp.py:3166 FlatCAMApp.py:3169 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}" msgstr "" -#: FlatCAMApp.py:3258 +#: FlatCAMApp.py:3265 #, python-brace-format msgid "" "FlatCAM
    Version {version} {beta} ({date}) - " @@ -183,45 +191,45 @@ msgid "" "downloads/\">here.
    " msgstr "" -#: FlatCAMApp.py:3291 +#: FlatCAMApp.py:3298 msgid "Close" msgstr "" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5315 +#: FlatCAMApp.py:3418 FlatCAMApp.py:5325 msgid "[success] Defaults saved." msgstr "" -#: FlatCAMApp.py:3432 +#: FlatCAMApp.py:3439 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" -#: FlatCAMApp.py:3441 +#: FlatCAMApp.py:3448 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" -#: FlatCAMApp.py:3455 +#: FlatCAMApp.py:3462 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" -#: FlatCAMApp.py:3459 +#: FlatCAMApp.py:3466 msgid "Factory defaults saved." msgstr "" -#: FlatCAMApp.py:3464 flatcamGUI/FlatCAMGUI.py:3132 +#: FlatCAMApp.py:3471 flatcamGUI/FlatCAMGUI.py:3132 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "" -#: FlatCAMApp.py:3469 FlatCAMTranslation.py:164 +#: FlatCAMApp.py:3476 FlatCAMTranslation.py:164 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:3472 FlatCAMApp.py:6177 FlatCAMTranslation.py:167 +#: FlatCAMApp.py:3479 FlatCAMApp.py:6192 FlatCAMTranslation.py:167 msgid "Save changes" msgstr "" -#: FlatCAMApp.py:3539 +#: FlatCAMApp.py:3546 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -231,128 +239,128 @@ msgid "" "Check the generated GCODE." msgstr "" -#: FlatCAMApp.py:3580 +#: FlatCAMApp.py:3587 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" -#: FlatCAMApp.py:3602 +#: FlatCAMApp.py:3609 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" -#: FlatCAMApp.py:3617 FlatCAMApp.py:3642 +#: FlatCAMApp.py:3624 FlatCAMApp.py:3649 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" -#: FlatCAMApp.py:3621 FlatCAMApp.py:3646 +#: FlatCAMApp.py:3628 FlatCAMApp.py:3653 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "" -#: FlatCAMApp.py:3634 +#: FlatCAMApp.py:3641 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "" -#: FlatCAMApp.py:3660 +#: FlatCAMApp.py:3667 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "" -#: FlatCAMApp.py:3901 +#: FlatCAMApp.py:3908 msgid "Toggle Units" msgstr "" -#: FlatCAMApp.py:3903 +#: FlatCAMApp.py:3910 msgid "Change project units ..." msgstr "" -#: FlatCAMApp.py:3904 +#: FlatCAMApp.py:3911 msgid "" "Changing the units of the project causes all geometrical properties of all " "objects to be scaled accordingly.\n" "Continue?" msgstr "" -#: FlatCAMApp.py:3906 FlatCAMApp.py:4756 FlatCAMApp.py:6456 FlatCAMApp.py:6469 -#: FlatCAMApp.py:6709 FlatCAMApp.py:6719 +#: FlatCAMApp.py:3913 FlatCAMApp.py:4766 FlatCAMApp.py:6471 FlatCAMApp.py:6484 +#: FlatCAMApp.py:6724 FlatCAMApp.py:6734 msgid "Ok" msgstr "" -#: FlatCAMApp.py:3954 +#: FlatCAMApp.py:3961 #, python-format msgid "[success] Converted units to %s" msgstr "" -#: FlatCAMApp.py:3965 +#: FlatCAMApp.py:3972 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "" -#: FlatCAMApp.py:4625 +#: FlatCAMApp.py:4632 msgid "Open file" msgstr "" -#: FlatCAMApp.py:4656 FlatCAMApp.py:4661 +#: FlatCAMApp.py:4663 FlatCAMApp.py:4668 msgid "Export G-Code ..." msgstr "" -#: FlatCAMApp.py:4664 +#: FlatCAMApp.py:4671 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "" -#: FlatCAMApp.py:4674 +#: FlatCAMApp.py:4680 msgid "[WARNING] No such file or directory" msgstr "" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4691 #, python-format msgid "Saved to: %s" msgstr "" -#: FlatCAMApp.py:4744 FlatCAMApp.py:4777 FlatCAMApp.py:4788 FlatCAMApp.py:4799 -#: flatcamTools/ToolNonCopperClear.py:490 flatcamTools/ToolSolderPaste.py:767 +#: FlatCAMApp.py:4754 FlatCAMApp.py:4787 FlatCAMApp.py:4798 FlatCAMApp.py:4809 +#: flatcamTools/ToolNonCopperClear.py:563 flatcamTools/ToolSolderPaste.py:767 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:4749 FlatCAMApp.py:4782 FlatCAMApp.py:4793 FlatCAMApp.py:4804 +#: FlatCAMApp.py:4759 FlatCAMApp.py:4792 FlatCAMApp.py:4803 FlatCAMApp.py:4814 #: flatcamGUI/FlatCAMGUI.py:3027 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "" -#: FlatCAMApp.py:4752 +#: FlatCAMApp.py:4762 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." msgstr "" -#: FlatCAMApp.py:4864 +#: FlatCAMApp.py:4874 msgid "Object(s) deleted ..." msgstr "" -#: FlatCAMApp.py:4868 +#: FlatCAMApp.py:4878 msgid "Failed. No object(s) selected..." msgstr "" -#: FlatCAMApp.py:4870 +#: FlatCAMApp.py:4880 msgid "Save the work in Editor and try again ..." msgstr "" -#: FlatCAMApp.py:4904 +#: FlatCAMApp.py:4914 msgid "Click to set the origin ..." msgstr "" -#: FlatCAMApp.py:4916 +#: FlatCAMApp.py:4926 msgid "Jump to ..." msgstr "" -#: FlatCAMApp.py:4917 +#: FlatCAMApp.py:4927 msgid "Enter the coordinates in format X,Y:" msgstr "" -#: FlatCAMApp.py:4924 +#: FlatCAMApp.py:4934 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "" -#: FlatCAMApp.py:4942 flatcamEditors/FlatCAMExcEditor.py:2321 +#: FlatCAMApp.py:4952 flatcamEditors/FlatCAMExcEditor.py:2321 #: flatcamEditors/FlatCAMExcEditor.py:2328 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -366,98 +374,98 @@ msgstr "" msgid "[success] Done." msgstr "" -#: FlatCAMApp.py:5074 FlatCAMApp.py:5141 +#: FlatCAMApp.py:5084 FlatCAMApp.py:5151 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" -#: FlatCAMApp.py:5182 +#: FlatCAMApp.py:5192 msgid "[success] Origin set ..." msgstr "" -#: FlatCAMApp.py:5201 flatcamGUI/GUIElements.py:1375 +#: FlatCAMApp.py:5211 flatcamGUI/GUIElements.py:1375 msgid "Preferences" msgstr "" -#: FlatCAMApp.py:5267 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] Preferences edited but not saved." msgstr "" -#: FlatCAMApp.py:5301 +#: FlatCAMApp.py:5311 msgid "" "One or more values are changed.\n" "Do you want to save the Preferences?" msgstr "" -#: FlatCAMApp.py:5303 flatcamGUI/FlatCAMGUI.py:953 +#: FlatCAMApp.py:5313 flatcamGUI/FlatCAMGUI.py:953 msgid "Save Preferences" msgstr "" -#: FlatCAMApp.py:5330 +#: FlatCAMApp.py:5340 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "" -#: FlatCAMApp.py:5355 +#: FlatCAMApp.py:5365 msgid "[success] Flip on Y axis done." msgstr "" -#: FlatCAMApp.py:5357 FlatCAMApp.py:5397 +#: FlatCAMApp.py:5367 FlatCAMApp.py:5407 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5498 flatcamTools/ToolTransform.py:747 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "" -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "" -#: FlatCAMApp.py:5395 +#: FlatCAMApp.py:5405 msgid "[success] Flip on X axis done." msgstr "" -#: FlatCAMApp.py:5410 +#: FlatCAMApp.py:5420 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Transform" msgstr "" -#: FlatCAMApp.py:5413 FlatCAMApp.py:5458 FlatCAMApp.py:5489 +#: FlatCAMApp.py:5423 FlatCAMApp.py:5468 FlatCAMApp.py:5499 msgid "Enter the Angle value:" msgstr "" -#: FlatCAMApp.py:5443 +#: FlatCAMApp.py:5453 msgid "[success] Rotation done." msgstr "" -#: FlatCAMApp.py:5445 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5455 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5427 flatcamTools/ToolTransform.py:676 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" -#: FlatCAMApp.py:5456 +#: FlatCAMApp.py:5466 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" -#: FlatCAMApp.py:5477 +#: FlatCAMApp.py:5487 msgid "[success] Skew on X axis done." msgstr "" -#: FlatCAMApp.py:5487 +#: FlatCAMApp.py:5497 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" -#: FlatCAMApp.py:5508 +#: FlatCAMApp.py:5518 msgid "[success] Skew on Y axis done." msgstr "" -#: FlatCAMApp.py:5558 +#: FlatCAMApp.py:5568 msgid "Grid On/Off" msgstr "" -#: FlatCAMApp.py:5571 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5581 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2424 #: flatcamEditors/FlatCAMGrbEditor.py:5016 flatcamGUI/ObjectUI.py:989 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:207 @@ -467,7 +475,7 @@ msgstr "" msgid "Add" msgstr "" -#: FlatCAMApp.py:5572 FlatCAMObj.py:3361 +#: FlatCAMApp.py:5582 FlatCAMObj.py:3349 #: flatcamEditors/FlatCAMGrbEditor.py:2429 flatcamGUI/FlatCAMGUI.py:523 #: flatcamGUI/FlatCAMGUI.py:723 flatcamGUI/FlatCAMGUI.py:1630 #: flatcamGUI/FlatCAMGUI.py:1970 flatcamGUI/ObjectUI.py:1005 @@ -476,282 +484,282 @@ msgstr "" msgid "Delete" msgstr "" -#: FlatCAMApp.py:5585 +#: FlatCAMApp.py:5595 msgid "New Grid ..." msgstr "" -#: FlatCAMApp.py:5586 +#: FlatCAMApp.py:5596 msgid "Enter a Grid Value:" msgstr "" -#: FlatCAMApp.py:5594 FlatCAMApp.py:5621 +#: FlatCAMApp.py:5604 FlatCAMApp.py:5631 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:5600 +#: FlatCAMApp.py:5610 msgid "[success] New Grid added ..." msgstr "" -#: FlatCAMApp.py:5603 +#: FlatCAMApp.py:5613 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "" -#: FlatCAMApp.py:5606 +#: FlatCAMApp.py:5616 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "" -#: FlatCAMApp.py:5628 +#: FlatCAMApp.py:5638 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "" -#: FlatCAMApp.py:5631 +#: FlatCAMApp.py:5641 msgid "[success] Grid Value deleted ..." msgstr "" -#: FlatCAMApp.py:5634 +#: FlatCAMApp.py:5644 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "" -#: FlatCAMApp.py:5640 +#: FlatCAMApp.py:5650 msgid "Key Shortcut List" msgstr "" -#: FlatCAMApp.py:5673 +#: FlatCAMApp.py:5683 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "" -#: FlatCAMApp.py:5677 +#: FlatCAMApp.py:5687 msgid "Name copied on clipboard ..." msgstr "" -#: FlatCAMApp.py:5719 flatcamEditors/FlatCAMGrbEditor.py:4012 +#: FlatCAMApp.py:5728 flatcamEditors/FlatCAMGrbEditor.py:4012 msgid "[success] Coordinates copied to clipboard." msgstr "" -#: FlatCAMApp.py:5975 FlatCAMApp.py:5978 FlatCAMApp.py:5981 FlatCAMApp.py:5984 -#: FlatCAMApp.py:5999 FlatCAMApp.py:6002 FlatCAMApp.py:6005 FlatCAMApp.py:6008 -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 FlatCAMApp.py:6054 FlatCAMApp.py:6057 +#: FlatCAMApp.py:5984 FlatCAMApp.py:5987 FlatCAMApp.py:5990 FlatCAMApp.py:5993 +#: FlatCAMApp.py:6008 FlatCAMApp.py:6011 FlatCAMApp.py:6014 FlatCAMApp.py:6017 +#: FlatCAMApp.py:6057 FlatCAMApp.py:6060 FlatCAMApp.py:6063 FlatCAMApp.py:6066 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "" -#: FlatCAMApp.py:6174 +#: FlatCAMApp.py:6189 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:6195 +#: FlatCAMApp.py:6210 msgid "[success] New Project created..." msgstr "" -#: FlatCAMApp.py:6315 FlatCAMApp.py:6318 flatcamGUI/FlatCAMGUI.py:604 +#: FlatCAMApp.py:6330 FlatCAMApp.py:6333 flatcamGUI/FlatCAMGUI.py:604 #: flatcamGUI/FlatCAMGUI.py:1849 msgid "Open Gerber" msgstr "" -#: FlatCAMApp.py:6323 +#: FlatCAMApp.py:6338 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6344 FlatCAMApp.py:6347 flatcamGUI/FlatCAMGUI.py:605 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6362 flatcamGUI/FlatCAMGUI.py:605 #: flatcamGUI/FlatCAMGUI.py:1850 msgid "Open Excellon" msgstr "" -#: FlatCAMApp.py:6352 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6374 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6389 FlatCAMApp.py:6392 msgid "Open G-Code" msgstr "" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6397 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "" -#: FlatCAMApp.py:6400 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6415 FlatCAMApp.py:6418 msgid "Open Project" msgstr "" -#: FlatCAMApp.py:6411 +#: FlatCAMApp.py:6426 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "" -#: FlatCAMApp.py:6430 FlatCAMApp.py:6433 +#: FlatCAMApp.py:6445 FlatCAMApp.py:6448 msgid "Open Configuration File" msgstr "" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6452 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "" -#: FlatCAMApp.py:6452 FlatCAMApp.py:6705 FlatCAMApp.py:8951 FlatCAMApp.py:8971 -#: FlatCAMApp.py:8992 FlatCAMApp.py:9014 +#: FlatCAMApp.py:6467 FlatCAMApp.py:6720 FlatCAMApp.py:9000 FlatCAMApp.py:9020 +#: FlatCAMApp.py:9041 FlatCAMApp.py:9063 msgid "[WARNING_NOTCL] No object selected." msgstr "" -#: FlatCAMApp.py:6453 FlatCAMApp.py:6706 +#: FlatCAMApp.py:6468 FlatCAMApp.py:6721 msgid "Please Select a Geometry object to export" msgstr "" -#: FlatCAMApp.py:6466 +#: FlatCAMApp.py:6481 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" -#: FlatCAMApp.py:6479 FlatCAMApp.py:6483 +#: FlatCAMApp.py:6494 FlatCAMApp.py:6498 msgid "Export SVG" msgstr "" -#: FlatCAMApp.py:6488 +#: FlatCAMApp.py:6503 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "" -#: FlatCAMApp.py:6507 +#: FlatCAMApp.py:6522 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" -#: FlatCAMApp.py:6513 FlatCAMApp.py:6517 +#: FlatCAMApp.py:6528 FlatCAMApp.py:6532 msgid "Export PNG Image" msgstr "" -#: FlatCAMApp.py:6522 +#: FlatCAMApp.py:6537 msgid "Export PNG cancelled." msgstr "" -#: FlatCAMApp.py:6541 +#: FlatCAMApp.py:6556 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6546 FlatCAMApp.py:6669 +#: FlatCAMApp.py:6561 FlatCAMApp.py:6684 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" -#: FlatCAMApp.py:6558 +#: FlatCAMApp.py:6573 msgid "Save Gerber source file" msgstr "" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6578 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "" -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6597 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6587 FlatCAMApp.py:6628 +#: FlatCAMApp.py:6602 FlatCAMApp.py:6643 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" -#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 +#: FlatCAMApp.py:6610 FlatCAMApp.py:6614 msgid "Save Excellon source file" msgstr "" -#: FlatCAMApp.py:6604 +#: FlatCAMApp.py:6619 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "" -#: FlatCAMApp.py:6623 +#: FlatCAMApp.py:6638 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6636 FlatCAMApp.py:6640 +#: FlatCAMApp.py:6651 FlatCAMApp.py:6655 msgid "Export Excellon" msgstr "" -#: FlatCAMApp.py:6645 +#: FlatCAMApp.py:6660 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6664 +#: FlatCAMApp.py:6679 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6677 FlatCAMApp.py:6681 +#: FlatCAMApp.py:6692 FlatCAMApp.py:6696 msgid "Export Gerber" msgstr "" -#: FlatCAMApp.py:6686 +#: FlatCAMApp.py:6701 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6716 +#: FlatCAMApp.py:6731 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "" -#: FlatCAMApp.py:6730 FlatCAMApp.py:6734 +#: FlatCAMApp.py:6745 FlatCAMApp.py:6749 msgid "Export DXF" msgstr "" -#: FlatCAMApp.py:6740 +#: FlatCAMApp.py:6755 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "" -#: FlatCAMApp.py:6760 FlatCAMApp.py:6763 +#: FlatCAMApp.py:6775 FlatCAMApp.py:6778 msgid "Import SVG" msgstr "" -#: FlatCAMApp.py:6772 +#: FlatCAMApp.py:6787 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "" -#: FlatCAMApp.py:6791 FlatCAMApp.py:6795 +#: FlatCAMApp.py:6806 FlatCAMApp.py:6810 msgid "Import DXF" msgstr "" -#: FlatCAMApp.py:6804 +#: FlatCAMApp.py:6819 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "" -#: FlatCAMApp.py:6822 +#: FlatCAMApp.py:6837 #, python-format msgid "%s" msgstr "" -#: FlatCAMApp.py:6842 +#: FlatCAMApp.py:6857 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" -#: FlatCAMApp.py:6849 +#: FlatCAMApp.py:6864 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" -#: FlatCAMApp.py:6857 +#: FlatCAMApp.py:6872 msgid "Source Editor" msgstr "" -#: FlatCAMApp.py:6867 +#: FlatCAMApp.py:6882 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "" -#: FlatCAMApp.py:6879 FlatCAMApp.py:8024 FlatCAMObj.py:5677 +#: FlatCAMApp.py:6894 FlatCAMApp.py:8073 FlatCAMObj.py:5593 #: flatcamTools/ToolSolderPaste.py:1284 msgid "Code Editor" msgstr "" -#: FlatCAMApp.py:6891 +#: FlatCAMApp.py:6906 msgid "Script Editor" msgstr "" -#: FlatCAMApp.py:6894 +#: FlatCAMApp.py:6909 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -775,215 +783,216 @@ msgid "" "\n" msgstr "" -#: FlatCAMApp.py:6917 FlatCAMApp.py:6920 +#: FlatCAMApp.py:6932 FlatCAMApp.py:6935 msgid "Open TCL script" msgstr "" -#: FlatCAMApp.py:6928 +#: FlatCAMApp.py:6943 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6940 +#: FlatCAMApp.py:6955 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "" -#: FlatCAMApp.py:6966 FlatCAMApp.py:6969 +#: FlatCAMApp.py:6981 FlatCAMApp.py:6984 msgid "Run TCL script" msgstr "" -#: FlatCAMApp.py:6977 +#: FlatCAMApp.py:6992 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "" -#: FlatCAMApp.py:7029 FlatCAMApp.py:7033 +#: FlatCAMApp.py:7044 FlatCAMApp.py:7048 msgid "Save Project As ..." msgstr "" -#: FlatCAMApp.py:7030 +#: FlatCAMApp.py:7045 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "" -#: FlatCAMApp.py:7038 +#: FlatCAMApp.py:7053 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "" -#: FlatCAMApp.py:7083 +#: FlatCAMApp.py:7098 msgid "Exporting SVG" msgstr "" -#: FlatCAMApp.py:7117 FlatCAMApp.py:7223 FlatCAMApp.py:7338 +#: FlatCAMApp.py:7138 FlatCAMApp.py:7249 FlatCAMApp.py:7370 #, python-format msgid "[success] SVG file exported to %s" msgstr "" -#: FlatCAMApp.py:7148 FlatCAMApp.py:7269 +#: FlatCAMApp.py:7169 FlatCAMApp.py:7295 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "" -#: FlatCAMApp.py:7226 FlatCAMApp.py:7341 +#: FlatCAMApp.py:7252 FlatCAMApp.py:7373 msgid "Generating Film ... Please wait." msgstr "" -#: FlatCAMApp.py:7489 +#: FlatCAMApp.py:7532 #, python-format msgid "[success] Excellon file exported to %s" msgstr "" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7539 msgid "Exporting Excellon" msgstr "" -#: FlatCAMApp.py:7501 FlatCAMApp.py:7508 +#: FlatCAMApp.py:7544 FlatCAMApp.py:7551 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "" -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7655 #, python-format msgid "[success] Gerber file exported to %s" msgstr "" -#: FlatCAMApp.py:7613 +#: FlatCAMApp.py:7662 msgid "Exporting Gerber" msgstr "" -#: FlatCAMApp.py:7618 FlatCAMApp.py:7625 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7674 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "" -#: FlatCAMApp.py:7665 +#: FlatCAMApp.py:7714 #, python-format msgid "[success] DXF file exported to %s" msgstr "" -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7720 msgid "Exporting DXF" msgstr "" -#: FlatCAMApp.py:7676 FlatCAMApp.py:7683 +#: FlatCAMApp.py:7725 FlatCAMApp.py:7732 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "" -#: FlatCAMApp.py:7703 FlatCAMApp.py:7745 FlatCAMApp.py:7789 +#: FlatCAMApp.py:7752 FlatCAMApp.py:7794 FlatCAMApp.py:7838 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7762 msgid "Importing SVG" msgstr "" -#: FlatCAMApp.py:7724 FlatCAMApp.py:7766 FlatCAMApp.py:7809 FlatCAMApp.py:7886 -#: FlatCAMApp.py:7947 FlatCAMApp.py:8010 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7773 FlatCAMApp.py:7815 FlatCAMApp.py:7858 FlatCAMApp.py:7935 +#: FlatCAMApp.py:7996 FlatCAMApp.py:8059 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "" -#: FlatCAMApp.py:7755 +#: FlatCAMApp.py:7804 msgid "Importing DXF" msgstr "" -#: FlatCAMApp.py:7797 +#: FlatCAMApp.py:7846 msgid "Importing Image" msgstr "" -#: FlatCAMApp.py:7838 FlatCAMApp.py:7840 +#: FlatCAMApp.py:7887 FlatCAMApp.py:7889 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "" -#: FlatCAMApp.py:7843 +#: FlatCAMApp.py:7892 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "" -#: FlatCAMApp.py:7850 flatcamEditors/FlatCAMGrbEditor.py:3832 +#: FlatCAMApp.py:7899 FlatCAMObj.py:4296 +#: flatcamEditors/FlatCAMGrbEditor.py:3832 msgid "[ERROR] An internal error has occurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7859 +#: FlatCAMApp.py:7908 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" -#: FlatCAMApp.py:7867 +#: FlatCAMApp.py:7916 msgid "Opening Gerber" msgstr "" -#: FlatCAMApp.py:7877 +#: FlatCAMApp.py:7926 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" -#: FlatCAMApp.py:7910 flatcamTools/ToolPcbWizard.py:418 +#: FlatCAMApp.py:7959 flatcamTools/ToolPcbWizard.py:418 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "" -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7962 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "" -#: FlatCAMApp.py:7918 flatcamTools/ToolPcbWizard.py:427 +#: FlatCAMApp.py:7967 flatcamTools/ToolPcbWizard.py:427 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7931 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7980 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:440 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7983 msgid "Opening Excellon." msgstr "" -#: FlatCAMApp.py:7940 +#: FlatCAMApp.py:7989 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" -#: FlatCAMApp.py:7977 +#: FlatCAMApp.py:8026 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "" -#: FlatCAMApp.py:7987 +#: FlatCAMApp.py:8036 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "" -#: FlatCAMApp.py:7993 +#: FlatCAMApp.py:8042 msgid "Opening G-Code." msgstr "" -#: FlatCAMApp.py:8001 +#: FlatCAMApp.py:8050 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" msgstr "" -#: FlatCAMApp.py:8041 +#: FlatCAMApp.py:8090 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "" -#: FlatCAMApp.py:8067 FlatCAMApp.py:8084 +#: FlatCAMApp.py:8116 FlatCAMApp.py:8133 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "" -#: FlatCAMApp.py:8107 +#: FlatCAMApp.py:8156 #, python-format msgid "[success] Project loaded from: %s" msgstr "" -#: FlatCAMApp.py:8213 +#: FlatCAMApp.py:8262 msgid "Available commands:\n" msgstr "" -#: FlatCAMApp.py:8215 +#: FlatCAMApp.py:8264 msgid "" "\n" "\n" @@ -991,35 +1000,35 @@ msgid "" " Example: help open_gerber" msgstr "" -#: FlatCAMApp.py:8365 +#: FlatCAMApp.py:8414 msgid "Shows list of commands." msgstr "" -#: FlatCAMApp.py:8422 +#: FlatCAMApp.py:8471 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "" -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8478 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" -#: FlatCAMApp.py:8439 +#: FlatCAMApp.py:8488 msgid "[ERROR_NOTCL] Failed to load recent projects item list." msgstr "" -#: FlatCAMApp.py:8446 +#: FlatCAMApp.py:8495 msgid "[ERROR_NOTCL] Failed to parse recent project item list." msgstr "" -#: FlatCAMApp.py:8505 FlatCAMApp.py:8528 +#: FlatCAMApp.py:8554 FlatCAMApp.py:8577 msgid "Clear Recent files" msgstr "" -#: FlatCAMApp.py:8545 flatcamGUI/FlatCAMGUI.py:970 +#: FlatCAMApp.py:8594 flatcamGUI/FlatCAMGUI.py:970 msgid "Shortcut Key List" msgstr "" -#: FlatCAMApp.py:8552 +#: FlatCAMApp.py:8601 msgid "" "\n" "

    Selected Tab - Choose an Item from " @@ -1069,76 +1078,76 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8659 +#: FlatCAMApp.py:8708 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" -#: FlatCAMApp.py:8666 +#: FlatCAMApp.py:8715 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" -#: FlatCAMApp.py:8676 +#: FlatCAMApp.py:8725 msgid "[success] FlatCAM is up to date!" msgstr "" -#: FlatCAMApp.py:8681 +#: FlatCAMApp.py:8730 msgid "Newer Version Available" msgstr "" -#: FlatCAMApp.py:8682 +#: FlatCAMApp.py:8731 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" msgstr "" -#: FlatCAMApp.py:8684 +#: FlatCAMApp.py:8733 msgid "info" msgstr "" -#: FlatCAMApp.py:8703 +#: FlatCAMApp.py:8752 msgid "[success] All plots disabled." msgstr "" -#: FlatCAMApp.py:8709 +#: FlatCAMApp.py:8758 msgid "[success] All non selected plots disabled." msgstr "" -#: FlatCAMApp.py:8715 +#: FlatCAMApp.py:8764 msgid "[success] All plots enabled." msgstr "" -#: FlatCAMApp.py:8721 +#: FlatCAMApp.py:8770 msgid "[success] Selected plots enabled..." msgstr "" -#: FlatCAMApp.py:8729 +#: FlatCAMApp.py:8778 msgid "[success] Selected plots disabled..." msgstr "" -#: FlatCAMApp.py:8739 FlatCAMApp.py:8766 FlatCAMApp.py:8783 +#: FlatCAMApp.py:8788 FlatCAMApp.py:8815 FlatCAMApp.py:8832 msgid "Working ..." msgstr "" -#: FlatCAMApp.py:8820 +#: FlatCAMApp.py:8869 msgid "Saving FlatCAM Project" msgstr "" -#: FlatCAMApp.py:8841 FlatCAMApp.py:8872 +#: FlatCAMApp.py:8890 FlatCAMApp.py:8921 #, python-format msgid "[success] Project saved to: %s" msgstr "" -#: FlatCAMApp.py:8859 +#: FlatCAMApp.py:8908 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8866 +#: FlatCAMApp.py:8915 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8874 +#: FlatCAMApp.py:8923 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1148,75 +1157,76 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "" -#: FlatCAMObj.py:555 FlatCAMObj.py:2095 FlatCAMObj.py:3366 FlatCAMObj.py:5570 +#: FlatCAMObj.py:558 FlatCAMObj.py:2098 FlatCAMObj.py:3354 FlatCAMObj.py:5486 msgid "Basic" msgstr "" -#: FlatCAMObj.py:567 FlatCAMObj.py:2111 FlatCAMObj.py:3388 FlatCAMObj.py:5576 +#: FlatCAMObj.py:570 FlatCAMObj.py:2114 FlatCAMObj.py:3376 FlatCAMObj.py:5492 msgid "Advanced" msgstr "" -#: FlatCAMObj.py:920 FlatCAMObj.py:1018 +#: FlatCAMObj.py:923 FlatCAMObj.py:1021 msgid "[ERROR_NOTCL] Isolation geometry could not be generated." msgstr "" -#: FlatCAMObj.py:957 FlatCAMObj.py:3061 FlatCAMObj.py:3323 FlatCAMObj.py:3632 +#: FlatCAMObj.py:960 FlatCAMObj.py:3049 FlatCAMObj.py:3311 FlatCAMObj.py:3589 msgid "Rough" msgstr "" -#: FlatCAMObj.py:975 FlatCAMObj.py:1034 +#: FlatCAMObj.py:978 FlatCAMObj.py:1037 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "" -#: FlatCAMObj.py:1213 +#: FlatCAMObj.py:1216 msgid "Plotting Apertures" msgstr "" -#: FlatCAMObj.py:1936 flatcamEditors/FlatCAMExcEditor.py:1369 +#: FlatCAMObj.py:1939 flatcamEditors/FlatCAMExcEditor.py:1369 msgid "Total Drills" msgstr "" -#: FlatCAMObj.py:1962 flatcamEditors/FlatCAMExcEditor.py:1401 +#: FlatCAMObj.py:1965 flatcamEditors/FlatCAMExcEditor.py:1401 msgid "Total Slots" msgstr "" -#: FlatCAMObj.py:2169 FlatCAMObj.py:3440 FlatCAMObj.py:3771 FlatCAMObj.py:3962 -#: FlatCAMObj.py:3975 FlatCAMObj.py:4095 FlatCAMObj.py:4511 FlatCAMObj.py:4747 -#: FlatCAMObj.py:5151 flatcamEditors/FlatCAMExcEditor.py:1475 +#: FlatCAMObj.py:2172 FlatCAMObj.py:3427 FlatCAMObj.py:3717 FlatCAMObj.py:3904 +#: FlatCAMObj.py:3915 FlatCAMObj.py:4033 FlatCAMObj.py:4438 FlatCAMObj.py:4664 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1475 #: flatcamTools/ToolCalculators.py:304 flatcamTools/ToolCalculators.py:315 #: flatcamTools/ToolCalculators.py:327 flatcamTools/ToolCalculators.py:342 #: flatcamTools/ToolCalculators.py:355 flatcamTools/ToolCalculators.py:369 #: flatcamTools/ToolCalculators.py:380 flatcamTools/ToolCalculators.py:391 #: flatcamTools/ToolCalculators.py:402 flatcamTools/ToolFilm.py:241 -#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:481 -#: flatcamTools/ToolNonCopperClear.py:553 -#: flatcamTools/ToolNonCopperClear.py:630 -#: flatcamTools/ToolNonCopperClear.py:647 flatcamTools/ToolPaint.py:537 -#: flatcamTools/ToolPaint.py:609 flatcamTools/ToolPaint.py:746 -#: flatcamTools/ToolPaint.py:846 flatcamTools/ToolPaint.py:1000 -#: flatcamTools/ToolPanelize.py:387 flatcamTools/ToolPanelize.py:399 -#: flatcamTools/ToolPanelize.py:412 flatcamTools/ToolPanelize.py:425 -#: flatcamTools/ToolPanelize.py:437 flatcamTools/ToolPanelize.py:448 -#: flatcamTools/ToolSolderPaste.py:758 flatcamTools/ToolSolderPaste.py:830 +#: flatcamTools/ToolFilm.py:248 flatcamTools/ToolNonCopperClear.py:554 +#: flatcamTools/ToolNonCopperClear.py:626 +#: flatcamTools/ToolNonCopperClear.py:703 +#: flatcamTools/ToolNonCopperClear.py:720 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolPaint.py:615 flatcamTools/ToolPaint.py:752 +#: flatcamTools/ToolPaint.py:925 flatcamTools/ToolPaint.py:1079 +#: flatcamTools/ToolPaint.py:1379 flatcamTools/ToolPanelize.py:387 +#: flatcamTools/ToolPanelize.py:399 flatcamTools/ToolPanelize.py:412 +#: flatcamTools/ToolPanelize.py:425 flatcamTools/ToolPanelize.py:437 +#: flatcamTools/ToolPanelize.py:448 flatcamTools/ToolSolderPaste.py:758 +#: flatcamTools/ToolSolderPaste.py:830 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "" -#: FlatCAMObj.py:2393 FlatCAMObj.py:2485 FlatCAMObj.py:2608 +#: FlatCAMObj.py:2396 FlatCAMObj.py:2488 FlatCAMObj.py:2611 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" -#: FlatCAMObj.py:2400 +#: FlatCAMObj.py:2403 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Tool_nr" msgstr "" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 #: flatcamEditors/FlatCAMExcEditor.py:820 #: flatcamEditors/FlatCAMExcEditor.py:2021 flatcamGUI/ObjectUI.py:553 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1224,191 +1234,187 @@ msgstr "" msgid "Diameter" msgstr "" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Drills_Nr" msgstr "" -#: FlatCAMObj.py:2414 FlatCAMObj.py:2509 FlatCAMObj.py:2628 +#: FlatCAMObj.py:2417 FlatCAMObj.py:2512 FlatCAMObj.py:2631 msgid "Slots_Nr" msgstr "" -#: FlatCAMObj.py:2495 +#: FlatCAMObj.py:2498 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" -#: FlatCAMObj.py:2670 FlatCAMObj.py:4400 FlatCAMObj.py:4615 FlatCAMObj.py:4926 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4331 FlatCAMObj.py:4537 FlatCAMObj.py:4843 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" msgstr "" -#: FlatCAMObj.py:2682 FlatCAMObj.py:4412 FlatCAMObj.py:4627 FlatCAMObj.py:4938 +#: FlatCAMObj.py:2682 FlatCAMObj.py:4341 FlatCAMObj.py:4547 FlatCAMObj.py:4853 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" msgstr "" -#: FlatCAMObj.py:2714 FlatCAMObj.py:4814 FlatCAMObj.py:4819 FlatCAMObj.py:4969 +#: FlatCAMObj.py:2712 FlatCAMObj.py:4733 FlatCAMObj.py:4738 FlatCAMObj.py:4885 msgid "Generating CNC Code" msgstr "" -#: FlatCAMObj.py:2740 FlatCAMObj.py:5111 camlib.py:5179 camlib.py:5638 -#: camlib.py:5901 +#: FlatCAMObj.py:2737 FlatCAMObj.py:5027 camlib.py:5181 camlib.py:5640 +#: camlib.py:5903 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" "but now there is only one value, not two. " msgstr "" -#: FlatCAMObj.py:3061 FlatCAMObj.py:4017 FlatCAMObj.py:4018 FlatCAMObj.py:4027 +#: FlatCAMObj.py:3049 FlatCAMObj.py:3956 FlatCAMObj.py:3957 FlatCAMObj.py:3966 msgid "Iso" msgstr "" -#: FlatCAMObj.py:3061 +#: FlatCAMObj.py:3049 msgid "Finish" msgstr "" -#: FlatCAMObj.py:3359 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 +#: FlatCAMObj.py:3347 flatcamGUI/FlatCAMGUI.py:522 flatcamGUI/FlatCAMGUI.py:721 #: flatcamGUI/FlatCAMGUI.py:1629 flatcamGUI/FlatCAMGUI.py:1968 #: flatcamGUI/ObjectUI.py:997 msgid "Copy" msgstr "" -#: FlatCAMObj.py:3602 +#: FlatCAMObj.py:3559 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" -#: FlatCAMObj.py:3677 +#: FlatCAMObj.py:3633 msgid "[success] Tool added in Tool Table." msgstr "" -#: FlatCAMObj.py:3682 +#: FlatCAMObj.py:3636 msgid "[WARNING_NOTCL] Default Tool added. Wrong value format entered." msgstr "" -#: FlatCAMObj.py:3716 FlatCAMObj.py:3726 +#: FlatCAMObj.py:3668 FlatCAMObj.py:3676 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" -#: FlatCAMObj.py:3755 +#: FlatCAMObj.py:3703 msgid "[success] Tool was copied in Tool Table." msgstr "" -#: FlatCAMObj.py:3788 +#: FlatCAMObj.py:3732 msgid "[success] Tool was edited in Tool Table." msgstr "" -#: FlatCAMObj.py:3817 FlatCAMObj.py:3825 +#: FlatCAMObj.py:3760 FlatCAMObj.py:3768 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" -#: FlatCAMObj.py:3847 +#: FlatCAMObj.py:3790 msgid "[success] Tool was deleted in Tool Table." msgstr "" -#: FlatCAMObj.py:4281 +#: FlatCAMObj.py:4219 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" -#: FlatCAMObj.py:4298 +#: FlatCAMObj.py:4235 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" -#: FlatCAMObj.py:4325 +#: FlatCAMObj.py:4260 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" -#: FlatCAMObj.py:4362 flatcamEditors/FlatCAMExcEditor.py:2078 -msgid "[ERROR] An internal error has ocurred. See shell.\n" -msgstr "" - -#: FlatCAMObj.py:4363 +#: FlatCAMObj.py:4297 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "" -#: FlatCAMObj.py:4520 FlatCAMObj.py:4754 +#: FlatCAMObj.py:4444 FlatCAMObj.py:4670 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." msgstr "" -#: FlatCAMObj.py:4639 flatcamTools/ToolSolderPaste.py:1112 +#: FlatCAMObj.py:4557 flatcamTools/ToolSolderPaste.py:1112 #: flatcamTools/ToolSolderPaste.py:1168 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "" -#: FlatCAMObj.py:5002 FlatCAMObj.py:5011 camlib.py:3360 camlib.py:3369 +#: FlatCAMObj.py:4918 FlatCAMObj.py:4927 camlib.py:3362 camlib.py:3371 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" -#: FlatCAMObj.py:5048 +#: FlatCAMObj.py:4964 msgid "[success] Geometry Scale done." msgstr "" -#: FlatCAMObj.py:5065 camlib.py:3438 +#: FlatCAMObj.py:4981 camlib.py:3440 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." msgstr "" -#: FlatCAMObj.py:5084 +#: FlatCAMObj.py:5000 msgid "[success] Geometry Offset done." msgstr "" -#: FlatCAMObj.py:5638 FlatCAMObj.py:5643 flatcamTools/ToolSolderPaste.py:1368 +#: FlatCAMObj.py:5554 FlatCAMObj.py:5559 flatcamTools/ToolSolderPaste.py:1368 msgid "Export Machine Code ..." msgstr "" -#: FlatCAMObj.py:5649 flatcamTools/ToolSolderPaste.py:1371 +#: FlatCAMObj.py:5565 flatcamTools/ToolSolderPaste.py:1371 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "" -#: FlatCAMObj.py:5666 +#: FlatCAMObj.py:5582 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5604 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5721 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." msgstr "" -#: FlatCAMObj.py:5858 +#: FlatCAMObj.py:5774 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "" -#: FlatCAMObj.py:5871 +#: FlatCAMObj.py:5787 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." msgstr "" -#: FlatCAMObj.py:5878 +#: FlatCAMObj.py:5794 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" -#: FlatCAMObj.py:5893 flatcamTools/ToolSolderPaste.py:1397 +#: FlatCAMObj.py:5808 flatcamTools/ToolSolderPaste.py:1397 msgid "[WARNING_NOTCL] No such file or directory" msgstr "" -#: FlatCAMObj.py:5913 FlatCAMObj.py:5925 +#: FlatCAMObj.py:5832 FlatCAMObj.py:5844 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" msgstr "" -#: FlatCAMObj.py:5931 +#: FlatCAMObj.py:5850 msgid "[ERROR] There is no postprocessor file." msgstr "" @@ -1439,79 +1445,79 @@ msgstr "" msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "" -#: camlib.py:1402 +#: camlib.py:1404 msgid "[success] Object was mirrored ..." msgstr "" -#: camlib.py:1404 +#: camlib.py:1406 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" msgstr "" -#: camlib.py:1440 +#: camlib.py:1442 msgid "[success] Object was rotated ..." msgstr "" -#: camlib.py:1442 +#: camlib.py:1444 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" msgstr "" -#: camlib.py:1476 +#: camlib.py:1478 msgid "[success] Object was skewed ..." msgstr "" -#: camlib.py:1478 +#: camlib.py:1480 msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "" -#: camlib.py:2740 camlib.py:2825 +#: camlib.py:2742 camlib.py:2827 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "" -#: camlib.py:2741 camlib.py:2826 +#: camlib.py:2743 camlib.py:2828 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" -#: camlib.py:2790 +#: camlib.py:2792 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " "are parser errors. Line number: %s" msgstr "" -#: camlib.py:3182 +#: camlib.py:3184 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" "%s:" msgstr "" -#: camlib.py:3406 +#: camlib.py:3408 msgid "[success] Gerber Scale done." msgstr "" -#: camlib.py:3471 +#: camlib.py:3473 msgid "[success] Gerber Offset done." msgstr "" -#: camlib.py:3525 +#: camlib.py:3527 msgid "[success] Gerber Mirror done." msgstr "" -#: camlib.py:3571 +#: camlib.py:3573 msgid "[success] Gerber Skew done." msgstr "" -#: camlib.py:3609 +#: camlib.py:3611 msgid "[success] Gerber Rotate done." msgstr "" -#: camlib.py:3890 +#: camlib.py:3892 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "" -#: camlib.py:4005 +#: camlib.py:4007 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1522,26 +1528,26 @@ msgid "" "diameters to reflect the real diameters." msgstr "" -#: camlib.py:4470 +#: camlib.py:4472 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" "Parsing Failed. Line {l_nr}: {line}\n" msgstr "" -#: camlib.py:4549 +#: camlib.py:4551 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" "Check the resulting GCode." msgstr "" -#: camlib.py:5088 +#: camlib.py:5090 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "" -#: camlib.py:5158 +#: camlib.py:5160 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1550,27 +1556,27 @@ msgid "" "CNC code (Gcode etc)." msgstr "" -#: camlib.py:5165 camlib.py:5661 camlib.py:5924 +#: camlib.py:5167 camlib.py:5663 camlib.py:5926 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" -#: camlib.py:5394 camlib.py:5491 camlib.py:5549 +#: camlib.py:5396 camlib.py:5493 camlib.py:5551 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "" -#: camlib.py:5496 +#: camlib.py:5498 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "" -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5651 camlib.py:5914 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." msgstr "" -#: camlib.py:5654 camlib.py:5917 +#: camlib.py:5656 camlib.py:5919 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1579,11 +1585,11 @@ msgid "" "code (Gcode etc)." msgstr "" -#: camlib.py:5666 camlib.py:5929 +#: camlib.py:5668 camlib.py:5931 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "" -#: camlib.py:5670 camlib.py:5933 +#: camlib.py:5672 camlib.py:5935 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1592,31 +1598,31 @@ msgid "" "code (Gcode etc)." msgstr "" -#: camlib.py:5677 camlib.py:5940 +#: camlib.py:5679 camlib.py:5942 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" msgstr "" -#: camlib.py:5807 +#: camlib.py:5809 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "" -#: camlib.py:5813 +#: camlib.py:5815 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." msgstr "" -#: camlib.py:5852 +#: camlib.py:5854 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" "Raise the value (in module) and try again." msgstr "" -#: camlib.py:6064 +#: camlib.py:6066 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" @@ -1927,6 +1933,10 @@ msgid "" "creation." msgstr "" +#: flatcamEditors/FlatCAMExcEditor.py:2078 +msgid "[ERROR] An internal error has ocurred. See shell.\n" +msgstr "" + #: flatcamEditors/FlatCAMExcEditor.py:2084 msgid "Creating Excellon." msgstr "" @@ -2021,19 +2031,19 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4080 #: flatcamGUI/FlatCAMGUI.py:5189 flatcamGUI/FlatCAMGUI.py:5623 -#: flatcamGUI/FlatCAMGUI.py:5900 flatcamGUI/FlatCAMGUI.py:6055 +#: flatcamGUI/FlatCAMGUI.py:5913 flatcamGUI/FlatCAMGUI.py:6068 #: flatcamGUI/ObjectUI.py:259 msgid "Tool dia:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6057 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6070 msgid "" "Diameter of the tool to\n" "be used in the operation." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5806 -#: flatcamGUI/FlatCAMGUI.py:6066 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamGUI/FlatCAMGUI.py:6079 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "" @@ -2054,13 +2064,13 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5822 -#: flatcamGUI/FlatCAMGUI.py:5923 flatcamGUI/FlatCAMGUI.py:6076 +#: flatcamGUI/FlatCAMGUI.py:5936 flatcamGUI/FlatCAMGUI.py:6089 #: flatcamTools/ToolCutOut.py:101 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6078 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6091 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2069,43 +2079,43 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5831 -#: flatcamGUI/FlatCAMGUI.py:6087 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamGUI/FlatCAMGUI.py:6100 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6089 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6102 msgid "" "Algorithm to paint the polygon:
    Standard: Fixed step inwards." "
    Seed-based: Outwards from seed." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:480 flatcamGUI/FlatCAMGUI.py:5840 -#: flatcamGUI/FlatCAMGUI.py:6095 flatcamTools/ToolNonCopperClear.py:199 +#: flatcamGUI/FlatCAMGUI.py:6108 flatcamTools/ToolNonCopperClear.py:199 #: flatcamTools/ToolPaint.py:197 msgid "Standard" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:481 flatcamGUI/FlatCAMGUI.py:5841 -#: flatcamGUI/FlatCAMGUI.py:6096 flatcamTools/ToolNonCopperClear.py:200 +#: flatcamGUI/FlatCAMGUI.py:6109 flatcamTools/ToolNonCopperClear.py:200 #: flatcamTools/ToolPaint.py:198 msgid "Seed-based" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:482 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6097 flatcamTools/ToolNonCopperClear.py:201 +#: flatcamGUI/FlatCAMGUI.py:6110 flatcamTools/ToolNonCopperClear.py:201 #: flatcamTools/ToolPaint.py:199 msgid "Straight lines" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5847 -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamGUI/FlatCAMGUI.py:6115 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5849 -#: flatcamGUI/FlatCAMGUI.py:6104 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2113,13 +2123,13 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5856 -#: flatcamGUI/FlatCAMGUI.py:6112 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamGUI/FlatCAMGUI.py:6125 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5858 -#: flatcamGUI/FlatCAMGUI.py:6114 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamGUI/FlatCAMGUI.py:6127 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2132,7 +2142,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:527 flatcamGUI/FlatCAMGUI.py:639 #: flatcamGUI/FlatCAMGUI.py:1883 flatcamGUI/ObjectUI.py:1320 -#: flatcamTools/ToolPaint.py:340 +#: flatcamTools/ToolPaint.py:343 msgid "Paint Tool" msgstr "" @@ -2163,7 +2173,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2707 #: flatcamEditors/FlatCAMGeoEditor.py:2733 #: flatcamEditors/FlatCAMGeoEditor.py:2759 -#: flatcamTools/ToolNonCopperClear.py:817 flatcamTools/ToolProperties.py:104 +#: flatcamTools/ToolNonCopperClear.py:916 flatcamTools/ToolProperties.py:104 msgid "Tools" msgstr "" @@ -2312,7 +2322,7 @@ msgid "Scale Y" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6461 +#: flatcamEditors/FlatCAMGrbEditor.py:4875 flatcamGUI/FlatCAMGUI.py:6474 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "" @@ -2325,7 +2335,7 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamEditors/FlatCAMGrbEditor.py:4883 flatcamGUI/FlatCAMGUI.py:6482 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "" @@ -4094,7 +4104,7 @@ msgid "&Cutout Tool" msgstr "" #: flatcamGUI/FlatCAMGUI.py:638 flatcamGUI/FlatCAMGUI.py:1882 -#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:285 +#: flatcamGUI/ObjectUI.py:389 flatcamTools/ToolNonCopperClear.py:336 msgid "NCC Tool" msgstr "" @@ -5069,8 +5079,8 @@ msgid "Replace With" msgstr "" #: flatcamGUI/FlatCAMGUI.py:1667 flatcamGUI/FlatCAMGUI.py:5556 -#: flatcamGUI/FlatCAMGUI.py:6129 flatcamGUI/ObjectUI.py:1369 -#: flatcamTools/ToolPaint.py:248 +#: flatcamGUI/FlatCAMGUI.py:6143 flatcamGUI/ObjectUI.py:1369 +#: flatcamTools/ToolPaint.py:249 msgid "All" msgstr "" @@ -5702,7 +5712,7 @@ msgid "" msgstr "" #: flatcamGUI/FlatCAMGUI.py:4082 flatcamGUI/FlatCAMGUI.py:4761 -#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/ObjectUI.py:785 +#: flatcamGUI/FlatCAMGUI.py:5915 flatcamGUI/ObjectUI.py:785 #: flatcamGUI/ObjectUI.py:801 msgid "Diameter of the cutting tool." msgstr "" @@ -5921,10 +5931,10 @@ msgstr "" #: flatcamGUI/FlatCAMGUI.py:4352 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/FlatCAMGUI.py:5496 flatcamGUI/FlatCAMGUI.py:5788 -#: flatcamGUI/FlatCAMGUI.py:5889 flatcamGUI/FlatCAMGUI.py:5983 -#: flatcamGUI/FlatCAMGUI.py:6042 flatcamGUI/FlatCAMGUI.py:6145 -#: flatcamGUI/FlatCAMGUI.py:6206 flatcamGUI/FlatCAMGUI.py:6405 -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:5902 flatcamGUI/FlatCAMGUI.py:5996 +#: flatcamGUI/FlatCAMGUI.py:6055 flatcamGUI/FlatCAMGUI.py:6158 +#: flatcamGUI/FlatCAMGUI.py:6219 flatcamGUI/FlatCAMGUI.py:6418 +#: flatcamGUI/FlatCAMGUI.py:6545 msgid "Parameters:" msgstr "" @@ -6100,7 +6110,7 @@ msgid "" msgstr "" #: flatcamGUI/FlatCAMGUI.py:4635 flatcamGUI/FlatCAMGUI.py:5222 -#: flatcamGUI/FlatCAMGUI.py:6341 flatcamGUI/ObjectUI.py:592 +#: flatcamGUI/FlatCAMGUI.py:6354 flatcamGUI/ObjectUI.py:592 #: flatcamGUI/ObjectUI.py:1068 flatcamTools/ToolCalculators.py:106 msgid "Cut Z:" msgstr "" @@ -6840,7 +6850,7 @@ msgstr "" msgid "NCC Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6543 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamGUI/FlatCAMGUI.py:6556 msgid "Tools dia:" msgstr "" @@ -6886,22 +6896,43 @@ msgid "" "If not checked, use the standard algorithm." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5886 +#: flatcamGUI/FlatCAMGUI.py:5879 flatcamTools/ToolNonCopperClear.py:239 +msgid "Itself" +msgstr "" + +#: flatcamGUI/FlatCAMGUI.py:5880 flatcamGUI/FlatCAMGUI.py:6031 +#: flatcamTools/ToolDblSided.py:132 flatcamTools/ToolNonCopperClear.py:240 +msgid "Box" +msgstr "" + +#: flatcamGUI/FlatCAMGUI.py:5881 flatcamTools/ToolNonCopperClear.py:241 +msgid "Reference:" +msgstr "" + +#: flatcamGUI/FlatCAMGUI.py:5883 +msgid "" +"When choosing the 'Itself' option the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" Choosing the 'Box' option will do non copper clearing within the box\n" +"specified by another object different than the one that is copper cleared." +msgstr "" + +#: flatcamGUI/FlatCAMGUI.py:5899 msgid "Cutout Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5891 flatcamGUI/ObjectUI.py:399 +#: flatcamGUI/FlatCAMGUI.py:5904 flatcamGUI/ObjectUI.py:399 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" "the original board." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5909 flatcamTools/ToolCutOut.py:77 +#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:77 msgid "Obj kind:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5911 flatcamTools/ToolCutOut.py:79 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:79 msgid "" "Choice of what kind the object we want to cutout is.
    - Single: " "contain a single PCB Gerber outline object.
    - Panel: a panel PCB " @@ -6909,37 +6940,37 @@ msgid "" "out of many individual PCB outlines." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5918 flatcamGUI/FlatCAMGUI.py:6128 +#: flatcamGUI/FlatCAMGUI.py:5931 flatcamGUI/FlatCAMGUI.py:6141 #: flatcamTools/ToolCutOut.py:85 flatcamTools/ToolPaint.py:247 msgid "Single" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5919 flatcamTools/ToolCutOut.py:86 +#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:86 msgid "Panel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5925 +#: flatcamGUI/FlatCAMGUI.py:5938 msgid "" "Distance from objects at which\n" "to draw the cutout." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5932 flatcamTools/ToolCutOut.py:111 +#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:111 msgid "Gap size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5934 +#: flatcamGUI/FlatCAMGUI.py:5947 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" "board in place." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5942 flatcamTools/ToolCutOut.py:149 +#: flatcamGUI/FlatCAMGUI.py:5955 flatcamTools/ToolCutOut.py:149 msgid "Gaps:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5944 +#: flatcamGUI/FlatCAMGUI.py:5957 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -6952,65 +6983,61 @@ msgid "" "- 8 - 2*left + 2*right +2*top + 2*bottom" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolCutOut.py:130 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolCutOut.py:130 msgid "Convex Sh.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5967 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "Create a convex shape surrounding the entire PCB." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5980 +#: flatcamGUI/FlatCAMGUI.py:5993 msgid "2Sided Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5985 +#: flatcamGUI/FlatCAMGUI.py:5998 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5995 flatcamTools/ToolDblSided.py:234 +#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:234 msgid "Drill diam.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5997 flatcamTools/ToolDblSided.py:225 +#: flatcamGUI/FlatCAMGUI.py:6010 flatcamTools/ToolDblSided.py:225 #: flatcamTools/ToolDblSided.py:236 msgid "Diameter of the drill for the alignment holes." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6006 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6008 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:6021 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6017 flatcamTools/ToolDblSided.py:131 +#: flatcamGUI/FlatCAMGUI.py:6030 flatcamTools/ToolDblSided.py:131 msgid "Point" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6018 flatcamTools/ToolDblSided.py:132 -msgid "Box" -msgstr "" - -#: flatcamGUI/FlatCAMGUI.py:6019 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:6032 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6021 +#: flatcamGUI/FlatCAMGUI.py:6034 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" "the middle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamGUI/FlatCAMGUI.py:6050 msgid "Paint Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6044 flatcamGUI/ObjectUI.py:1311 +#: flatcamGUI/FlatCAMGUI.py:6057 flatcamGUI/ObjectUI.py:1311 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -7018,36 +7045,40 @@ msgid "" "to click on the desired polygon." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6068 +#: flatcamGUI/FlatCAMGUI.py:6081 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6122 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6135 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6124 +#: flatcamGUI/FlatCAMGUI.py:6137 msgid "How to select the polygons to paint." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6142 +#: flatcamGUI/FlatCAMGUI.py:6142 flatcamTools/ToolPaint.py:248 +msgid "Area" +msgstr "" + +#: flatcamGUI/FlatCAMGUI.py:6155 msgid "Film Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6147 +#: flatcamGUI/FlatCAMGUI.py:6160 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" "The file is saved in SVG format." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6158 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6160 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -7057,11 +7088,11 @@ msgid "" "The Film format is SVG." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6171 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6184 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6173 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -7073,11 +7104,11 @@ msgid "" "surroundings if not for this border." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -7085,77 +7116,77 @@ msgid "" "therefore the fine features may be more affected by this parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6203 +#: flatcamGUI/FlatCAMGUI.py:6216 msgid "Panelize Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6208 +#: flatcamGUI/FlatCAMGUI.py:6221 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" "at a X distance, Y distance of each other." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6232 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6234 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6229 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6242 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6231 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6244 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6252 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6254 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6261 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6263 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6256 flatcamTools/ToolPanelize.py:181 +#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:181 msgid "Gerber" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6257 flatcamTools/ToolPanelize.py:182 +#: flatcamGUI/FlatCAMGUI.py:6270 flatcamTools/ToolPanelize.py:182 msgid "Geo" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6258 +#: flatcamGUI/FlatCAMGUI.py:6271 msgid "Panel Type:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6260 +#: flatcamGUI/FlatCAMGUI.py:6273 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" "- Geometry" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6269 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "Constrain within:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6284 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -7164,171 +7195,171 @@ msgid "" "they fit completely within selected area." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6293 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6282 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6295 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6289 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6302 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6291 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6304 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6305 +#: flatcamGUI/FlatCAMGUI.py:6318 msgid "Calculators Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6308 +#: flatcamGUI/FlatCAMGUI.py:6321 msgid "V-Shape Tool Calculator:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6310 +#: flatcamGUI/FlatCAMGUI.py:6323 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" "depth-of-cut as parameters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:92 +#: flatcamGUI/FlatCAMGUI.py:6334 flatcamTools/ToolCalculators.py:92 msgid "Tip Diameter:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6336 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6331 +#: flatcamGUI/FlatCAMGUI.py:6344 msgid "Tip angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6333 +#: flatcamGUI/FlatCAMGUI.py:6346 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6343 +#: flatcamGUI/FlatCAMGUI.py:6356 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6350 +#: flatcamGUI/FlatCAMGUI.py:6363 msgid "ElectroPlating Calculator:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:148 +#: flatcamGUI/FlatCAMGUI.py:6365 flatcamTools/ToolCalculators.py:148 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " "chloride." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6362 flatcamTools/ToolCalculators.py:157 +#: flatcamGUI/FlatCAMGUI.py:6375 flatcamTools/ToolCalculators.py:157 msgid "Board Length:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6364 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:161 msgid "This is the board length. In centimeters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6370 flatcamTools/ToolCalculators.py:163 +#: flatcamGUI/FlatCAMGUI.py:6383 flatcamTools/ToolCalculators.py:163 msgid "Board Width:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6372 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6385 flatcamTools/ToolCalculators.py:167 msgid "This is the board width.In centimeters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6377 flatcamTools/ToolCalculators.py:169 +#: flatcamGUI/FlatCAMGUI.py:6390 flatcamTools/ToolCalculators.py:169 msgid "Current Density:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6380 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6393 flatcamTools/ToolCalculators.py:173 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6386 flatcamTools/ToolCalculators.py:176 +#: flatcamGUI/FlatCAMGUI.py:6399 flatcamTools/ToolCalculators.py:176 msgid "Copper Growth:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6389 flatcamTools/ToolCalculators.py:180 +#: flatcamGUI/FlatCAMGUI.py:6402 flatcamTools/ToolCalculators.py:180 msgid "" "How thick the copper growth is intended to be.\n" "In microns." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6402 +#: flatcamGUI/FlatCAMGUI.py:6415 msgid "Transform Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6407 +#: flatcamGUI/FlatCAMGUI.py:6420 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6430 msgid "Rotate Angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6419 +#: flatcamGUI/FlatCAMGUI.py:6432 msgid "Angle for rotation. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Skew_X angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6428 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Skew_Y angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6437 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6444 +#: flatcamGUI/FlatCAMGUI.py:6457 msgid "Scale_X factor:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6446 +#: flatcamGUI/FlatCAMGUI.py:6459 msgid "Factor for scaling on X axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6453 +#: flatcamGUI/FlatCAMGUI.py:6466 msgid "Scale_Y factor:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6455 +#: flatcamGUI/FlatCAMGUI.py:6468 msgid "Factor for scaling on Y axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6463 +#: flatcamGUI/FlatCAMGUI.py:6476 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6484 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -7336,27 +7367,27 @@ msgid "" "of the selected objects when unchecked." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6480 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "Offset_X val:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6482 +#: flatcamGUI/FlatCAMGUI.py:6495 msgid "Distance to offset on X axis. In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6489 +#: flatcamGUI/FlatCAMGUI.py:6502 msgid "Offset_Y val:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6491 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Distance to offset on Y axis. In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6497 +#: flatcamGUI/FlatCAMGUI.py:6510 msgid "Mirror Reference" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6499 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -7369,174 +7400,174 @@ msgid "" "Point Entry field and click Flip on X(Y)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6510 +#: flatcamGUI/FlatCAMGUI.py:6523 msgid " Mirror Ref. Point:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6512 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6525 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" "the 'y' in (x, y) will be used when using Flip on Y and" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6529 +#: flatcamGUI/FlatCAMGUI.py:6542 msgid "SolderPaste Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6534 +#: flatcamGUI/FlatCAMGUI.py:6547 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6545 +#: flatcamGUI/FlatCAMGUI.py:6558 msgid "Diameters of nozzle tools, separated by ','" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6552 +#: flatcamGUI/FlatCAMGUI.py:6565 msgid "New Nozzle Dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6554 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6575 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6564 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6584 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6573 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6580 flatcamTools/ToolSolderPaste.py:182 +#: flatcamGUI/FlatCAMGUI.py:6593 flatcamTools/ToolSolderPaste.py:182 msgid "Z Dispense Stop:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6582 flatcamTools/ToolSolderPaste.py:184 +#: flatcamGUI/FlatCAMGUI.py:6595 flatcamTools/ToolSolderPaste.py:184 msgid "The height (Z) when solder paste dispensing stops." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6589 flatcamTools/ToolSolderPaste.py:190 +#: flatcamGUI/FlatCAMGUI.py:6602 flatcamTools/ToolSolderPaste.py:190 msgid "Z Travel:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6591 flatcamTools/ToolSolderPaste.py:192 +#: flatcamGUI/FlatCAMGUI.py:6604 flatcamTools/ToolSolderPaste.py:192 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6599 flatcamTools/ToolSolderPaste.py:199 +#: flatcamGUI/FlatCAMGUI.py:6612 flatcamTools/ToolSolderPaste.py:199 msgid "Z Toolchange:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6601 flatcamTools/ToolSolderPaste.py:201 +#: flatcamGUI/FlatCAMGUI.py:6614 flatcamTools/ToolSolderPaste.py:201 msgid "The height (Z) for tool (nozzle) change." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:207 +#: flatcamGUI/FlatCAMGUI.py:6621 flatcamTools/ToolSolderPaste.py:207 msgid "XY Toolchange:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6610 flatcamTools/ToolSolderPaste.py:209 +#: flatcamGUI/FlatCAMGUI.py:6623 flatcamTools/ToolSolderPaste.py:209 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:216 +#: flatcamGUI/FlatCAMGUI.py:6631 flatcamTools/ToolSolderPaste.py:216 msgid "Feedrate X-Y:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6620 flatcamTools/ToolSolderPaste.py:218 +#: flatcamGUI/FlatCAMGUI.py:6633 flatcamTools/ToolSolderPaste.py:218 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:224 +#: flatcamGUI/FlatCAMGUI.py:6640 flatcamTools/ToolSolderPaste.py:224 msgid "Feedrate Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:226 +#: flatcamGUI/FlatCAMGUI.py:6642 flatcamTools/ToolSolderPaste.py:226 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:233 +#: flatcamGUI/FlatCAMGUI.py:6650 flatcamTools/ToolSolderPaste.py:233 msgid "Feedrate Z Dispense:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6639 +#: flatcamGUI/FlatCAMGUI.py:6652 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6647 flatcamTools/ToolSolderPaste.py:242 +#: flatcamGUI/FlatCAMGUI.py:6660 flatcamTools/ToolSolderPaste.py:242 msgid "Spindle Speed FWD:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6649 flatcamTools/ToolSolderPaste.py:244 +#: flatcamGUI/FlatCAMGUI.py:6662 flatcamTools/ToolSolderPaste.py:244 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6657 flatcamTools/ToolSolderPaste.py:251 +#: flatcamGUI/FlatCAMGUI.py:6670 flatcamTools/ToolSolderPaste.py:251 msgid "Dwell FWD:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6659 flatcamTools/ToolSolderPaste.py:253 +#: flatcamGUI/FlatCAMGUI.py:6672 flatcamTools/ToolSolderPaste.py:253 msgid "Pause after solder dispensing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6666 flatcamTools/ToolSolderPaste.py:259 +#: flatcamGUI/FlatCAMGUI.py:6679 flatcamTools/ToolSolderPaste.py:259 msgid "Spindle Speed REV:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6668 flatcamTools/ToolSolderPaste.py:261 +#: flatcamGUI/FlatCAMGUI.py:6681 flatcamTools/ToolSolderPaste.py:261 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6676 flatcamTools/ToolSolderPaste.py:268 +#: flatcamGUI/FlatCAMGUI.py:6689 flatcamTools/ToolSolderPaste.py:268 msgid "Dwell REV:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6678 flatcamTools/ToolSolderPaste.py:270 +#: flatcamGUI/FlatCAMGUI.py:6691 flatcamTools/ToolSolderPaste.py:270 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6685 flatcamTools/ToolSolderPaste.py:276 +#: flatcamGUI/FlatCAMGUI.py:6698 flatcamTools/ToolSolderPaste.py:276 msgid "PostProcessors:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6687 flatcamTools/ToolSolderPaste.py:278 +#: flatcamGUI/FlatCAMGUI.py:6700 flatcamTools/ToolSolderPaste.py:278 msgid "Files that control the GCode generation." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6717 flatcamGUI/FlatCAMGUI.py:6723 +#: flatcamGUI/FlatCAMGUI.py:6730 flatcamGUI/FlatCAMGUI.py:6736 msgid "Idle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6747 +#: flatcamGUI/FlatCAMGUI.py:6760 msgid "Application started ..." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6748 +#: flatcamGUI/FlatCAMGUI.py:6761 msgid "Hello!" msgstr "" @@ -7701,7 +7732,7 @@ msgstr "" msgid "Clear N-copper:" msgstr "" -#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:240 +#: flatcamGUI/ObjectUI.py:391 flatcamTools/ToolNonCopperClear.py:285 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -8539,7 +8570,9 @@ msgid "" msgstr "" #: flatcamTools/ToolCutOut.py:358 flatcamTools/ToolCutOut.py:552 -#: flatcamTools/ToolNonCopperClear.py:669 flatcamTools/ToolPaint.py:768 +#: flatcamTools/ToolNonCopperClear.py:743 +#: flatcamTools/ToolNonCopperClear.py:751 +#: flatcamTools/ToolNonCopperClear.py:759 flatcamTools/ToolPaint.py:774 #: flatcamTools/ToolPanelize.py:353 flatcamTools/ToolPanelize.py:368 #: flatcamTools/ToolSub.py:239 flatcamTools/ToolSub.py:252 #: flatcamTools/ToolSub.py:432 flatcamTools/ToolSub.py:445 @@ -8593,7 +8626,7 @@ msgstr "" msgid "[success] Any form CutOut operation finished." msgstr "" -#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:772 +#: flatcamTools/ToolCutOut.py:556 flatcamTools/ToolPaint.py:778 #: flatcamTools/ToolPanelize.py:359 #, python-format msgid "[ERROR_NOTCL] Object not found: %s" @@ -8712,15 +8745,15 @@ msgid "" "and left mouse button click on canvas or you can enter the coords manually." msgstr "" -#: flatcamTools/ToolDblSided.py:182 +#: flatcamTools/ToolDblSided.py:182 flatcamTools/ToolNonCopperClear.py:260 msgid "Gerber Reference Box Object" msgstr "" -#: flatcamTools/ToolDblSided.py:183 +#: flatcamTools/ToolDblSided.py:183 flatcamTools/ToolNonCopperClear.py:261 msgid "Excellon Reference Box Object" msgstr "" -#: flatcamTools/ToolDblSided.py:184 +#: flatcamTools/ToolDblSided.py:184 flatcamTools/ToolNonCopperClear.py:262 msgid "Geometry Reference Box Object" msgstr "" @@ -9238,87 +9271,118 @@ msgid "" "If not checked, use the standard algorithm." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:238 +#: flatcamTools/ToolNonCopperClear.py:243 +msgid "" +"- 'Itself': the non copper clearing extent\n" +"is based on the object that is copper cleared.\n" +" - 'Box': will do non copper clearing within the box\n" +"specified by the object selected in the Ref. Object combobox." +msgstr "" + +#: flatcamTools/ToolNonCopperClear.py:254 +msgid "Ref. Type:" +msgstr "" + +#: flatcamTools/ToolNonCopperClear.py:256 +msgid "" +"The type of FlatCAM object to be used as non copper clearing reference.\n" +"It can be Gerber, Excellon or Geometry." +msgstr "" + +#: flatcamTools/ToolNonCopperClear.py:267 +msgid "Ref. Object:" +msgstr "" + +#: flatcamTools/ToolNonCopperClear.py:269 +msgid "The FlatCAM object to be used as non copper clearing reference." +msgstr "" + +#: flatcamTools/ToolNonCopperClear.py:283 msgid "Generate Geometry" msgstr "" -#: flatcamTools/ToolNonCopperClear.py:486 flatcamTools/ToolPaint.py:543 +#: flatcamTools/ToolNonCopperClear.py:559 flatcamTools/ToolPaint.py:549 #: flatcamTools/ToolSolderPaste.py:763 msgid "[WARNING_NOTCL] Please enter a tool diameter to add, in Float format." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:515 flatcamTools/ToolPaint.py:567 +#: flatcamTools/ToolNonCopperClear.py:588 flatcamTools/ToolPaint.py:573 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:520 flatcamTools/ToolPaint.py:572 +#: flatcamTools/ToolNonCopperClear.py:593 flatcamTools/ToolPaint.py:578 msgid "[success] New tool added to Tool Table." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:562 flatcamTools/ToolPaint.py:617 +#: flatcamTools/ToolNonCopperClear.py:635 flatcamTools/ToolPaint.py:623 msgid "[success] Tool from Tool Table was edited." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:573 flatcamTools/ToolPaint.py:628 +#: flatcamTools/ToolNonCopperClear.py:646 flatcamTools/ToolPaint.py:634 #: flatcamTools/ToolSolderPaste.py:850 msgid "" "[WARNING_NOTCL] Edit cancelled. New diameter value is already in the Tool " "Table." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:613 flatcamTools/ToolPaint.py:727 +#: flatcamTools/ToolNonCopperClear.py:686 flatcamTools/ToolPaint.py:733 msgid "[WARNING_NOTCL] Delete failed. Select a tool to delete." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:618 flatcamTools/ToolPaint.py:732 +#: flatcamTools/ToolNonCopperClear.py:691 flatcamTools/ToolPaint.py:738 msgid "[success] Tool(s) deleted from Tool Table." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:636 flatcamTools/ToolPaint.py:751 +#: flatcamTools/ToolNonCopperClear.py:709 flatcamTools/ToolPaint.py:757 msgid "" "[ERROR_NOTCL] Overlap value must be between 0 (inclusive) and 1 (exclusive), " msgstr "" -#: flatcamTools/ToolNonCopperClear.py:677 -msgid "[ERROR_NOTCL] No Gerber file available." +#: flatcamTools/ToolNonCopperClear.py:772 +msgid "[ERROR_NOTCL] No object available." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:715 -#: flatcamTools/ToolNonCopperClear.py:837 +#: flatcamTools/ToolNonCopperClear.py:781 +msgid "" +"[ERROR_NOTCL] Could not get the extent of the area to be non copper cleared." +msgstr "" + +#: flatcamTools/ToolNonCopperClear.py:814 +#: flatcamTools/ToolNonCopperClear.py:936 msgid "Clearing Non-Copper areas." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:733 +#: flatcamTools/ToolNonCopperClear.py:832 #, python-format msgid "[success] Non-Copper Clearing with ToolDia = %s started." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:802 +#: flatcamTools/ToolNonCopperClear.py:901 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper() --> %s" msgstr "" -#: flatcamTools/ToolNonCopperClear.py:807 +#: flatcamTools/ToolNonCopperClear.py:906 msgid "[success] NCC Tool finished." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:809 +#: flatcamTools/ToolNonCopperClear.py:908 msgid "" "[WARNING_NOTCL] NCC Tool finished but some PCB features could not be " "cleared. Check the result." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:855 +#: flatcamTools/ToolNonCopperClear.py:954 #, python-format msgid "[success] Non-Copper Rest Clearing with ToolDia = %s started." msgstr "" -#: flatcamTools/ToolNonCopperClear.py:953 +#: flatcamTools/ToolNonCopperClear.py:1052 #, python-format msgid "[ERROR_NOTCL] NCCTool.clear_non_copper_rest() --> %s" msgstr "" -#: flatcamTools/ToolNonCopperClear.py:961 +#: flatcamTools/ToolNonCopperClear.py:1060 msgid "" "[ERROR_NOTCL] NCC Tool finished but could not clear the object with current " "settings." @@ -9417,35 +9481,48 @@ msgid "" "created." msgstr "" -#: flatcamTools/ToolPaint.py:736 +#: flatcamTools/ToolPaint.py:742 msgid "geometry_on_paint_button" msgstr "" -#: flatcamTools/ToolPaint.py:755 flatcamTools/ToolPaint.py:791 +#: flatcamTools/ToolPaint.py:761 flatcamTools/ToolPaint.py:797 msgid "[WARNING_NOTCL] Click inside the desired polygon." msgstr "" -#: flatcamTools/ToolPaint.py:778 +#: flatcamTools/ToolPaint.py:784 msgid "[ERROR_NOTCL] Can't do Paint on MultiGeo geometries ..." msgstr "" -#: flatcamTools/ToolPaint.py:800 flatcamTools/ToolPaint.py:1004 +#: flatcamTools/ToolPaint.py:806 flatcamTools/ToolPaint.py:1083 +#: flatcamTools/ToolPaint.py:1383 msgid "Painting polygon..." msgstr "" -#: flatcamTools/ToolPaint.py:853 +#: flatcamTools/ToolPaint.py:825 +msgid "[WARNING_NOTCL] Click the start point of the paint area." +msgstr "" + +#: flatcamTools/ToolPaint.py:836 +msgid "[WARNING_NOTCL] Click the end point of the paint area." +msgstr "" + +#: flatcamTools/ToolPaint.py:842 +msgid "Done." +msgstr "" + +#: flatcamTools/ToolPaint.py:932 msgid "[WARNING] No polygon found." msgstr "" -#: flatcamTools/ToolPaint.py:856 +#: flatcamTools/ToolPaint.py:935 msgid "Painting polygon." msgstr "" -#: flatcamTools/ToolPaint.py:898 +#: flatcamTools/ToolPaint.py:977 msgid "[ERROR_NOTCL] Geometry could not be painted completely" msgstr "" -#: flatcamTools/ToolPaint.py:924 +#: flatcamTools/ToolPaint.py:1003 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -9453,16 +9530,18 @@ msgid "" "%s" msgstr "" -#: flatcamTools/ToolPaint.py:966 +#: flatcamTools/ToolPaint.py:1045 #, python-format msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "" -#: flatcamTools/ToolPaint.py:972 flatcamTools/ToolPaint.py:1271 +#: flatcamTools/ToolPaint.py:1051 flatcamTools/ToolPaint.py:1350 +#: flatcamTools/ToolPaint.py:1641 msgid "Polygon Paint started ..." msgstr "" -#: flatcamTools/ToolPaint.py:1125 flatcamTools/ToolPaint.py:1216 +#: flatcamTools/ToolPaint.py:1204 flatcamTools/ToolPaint.py:1295 +#: flatcamTools/ToolPaint.py:1495 flatcamTools/ToolPaint.py:1586 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -9470,7 +9549,7 @@ msgid "" "%s" msgstr "" -#: flatcamTools/ToolPaint.py:1149 +#: flatcamTools/ToolPaint.py:1228 flatcamTools/ToolPaint.py:1519 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -9478,11 +9557,11 @@ msgid "" "Change the painting parameters and try again." msgstr "" -#: flatcamTools/ToolPaint.py:1158 +#: flatcamTools/ToolPaint.py:1237 flatcamTools/ToolPaint.py:1528 msgid "[success] Paint All Done." msgstr "" -#: flatcamTools/ToolPaint.py:1246 +#: flatcamTools/ToolPaint.py:1325 flatcamTools/ToolPaint.py:1616 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -9490,7 +9569,7 @@ msgid "" "Change the painting parameters and try again." msgstr "" -#: flatcamTools/ToolPaint.py:1255 +#: flatcamTools/ToolPaint.py:1334 flatcamTools/ToolPaint.py:1625 msgid "[success] Paint All with Rest-Machining done." msgstr "" @@ -10033,7 +10112,7 @@ msgstr "" msgid "Export GCode ..." msgstr "" -#: flatcamTools/ToolSolderPaste.py:1403 +#: flatcamTools/ToolSolderPaste.py:1407 #, python-format msgid "[success] Solder paste dispenser GCode file saved to: %s" msgstr ""