diff --git a/core/resources/l10n/messages_zh_CN.properties b/core/resources/l10n/messages_zh_CN.properties new file mode 100644 index 000000000..1ce3e7905 --- /dev/null +++ b/core/resources/l10n/messages_zh_CN.properties @@ -0,0 +1,1888 @@ +# +# Simplified Chinese translation file +# +# Should you need to add new logical keys here is the proposed method +# +# className.ComponentType.componentName +# +# +# Text tokens within braces should not be translated, e.g. +# "The file '{filename}' exists." +# They are pieces that are inserted dynamically. +# + + + +debug.currentFile = messages_zh_CN.properties + +! RocketActions +RocketActions.checkbox.Donotaskmeagain = \u4e0d\u518d\u63d0\u793a +RocketActions.lbl.Youcanchangedefop = \u4f60\u53ef\u4ee5\u4fee\u6539\u7f3a\u7701\u8bbe\u7f6e +RocketActions.showConfirmDialog.lbl1 = \u5220\u9664\u9009\u5b9a\u4eff\u771f? +RocketActions.showConfirmDialog.lbl2 = \u8be5\u64cd\u4f5c\u65e0\u6cd5\u64a4\u9500 +RocketActions.showConfirmDialog.title = \u5220\u9664\u4eff\u771f +RocketActions.DelCompAct.Delete = \u5220\u9664 +RocketActions.DelCompAct.ttip.Delete = \u5220\u9664\u9009\u5b9a\u7ec4\u4ef6 +RocketActions.DelSimuAct.Delete = \u5220\u9664 +RocketActions.DelSimuAct.ttip.Delete = \u5220\u9664\u9009\u5b9a\u4eff\u771f +RocketActions.DelAct.Delete = \u5220\u9664 +RocketActions.DelAct.ttip.Delete = \u5220\u9664\u9009\u5b9a\u90e8\u4ef6\u6216\u4eff\u771f +RocketActions.CutAction.Cut = \u526a\u5207 +RocketActions.CutAction.ttip.Cut = \u526a\u5207\u7ec4\u4ef6\u6216\u4eff\u771f\u5230\u526a\u5207\u677f\u5e76\u4ece\u8bbe\u8ba1\u4e2d\u79fb\u9664 +RocketActions.CopyAct.Copy = \u590d\u5236 +RocketActions.CopyAct.ttip.Copy = \u590d\u5236\u7ec4\u4ef6 (\u53ca\u5b50\u7ec4\u4ef6) \u5230\u526a\u8d34\u677f +RocketActions.PasteAct.Paste = \u7c98\u8d34 +RocketActions.PasteAct.ttip.Paste = \u5c06\u526a\u8d34\u677f\u91cc\u7684\u90e8\u4ef6\u6216\u4eff\u771f\u7c98\u8d34\u5230\u8be5\u8bbe\u8ba1\u4e2d +RocketActions.EditAct.Edit = \u7f16\u8f91 +RocketActions.EditAct.ttip.Edit = \u7f16\u8f91\u9009\u4e2d\u7ec4\u4ef6 +RocketActions.NewStageAct.Newstage = \u65b0\u5efa\u4e00\u7ea7 +RocketActions.NewStageAct.ttip.Newstage = \u5728\u8bbe\u8ba1\u4e2d\u65b0\u5efa\u4e00\u7ea7 +RocketActions.ActBoosterstage = \u52a9\u63a8\u7ea7 +RocketActions.MoveUpAct.Moveup = \u5411\u4e0a\u79fb\u52a8 +RocketActions.MoveUpAct.ttip.Moveup = \u5411\u4e0a\u79fb\u52a8\u8be5\u90e8\u4ef6 +RocketActions.MoveDownAct.Movedown = \u5411\u4e0b\u79fb\u52a8 +RocketActions.MoveDownAct.ttip.Movedown = \u5411\u4e0b\u79fb\u52a8\u8be5\u90e8\u4ef6 + +! RocketPanel +RocketPanel.FigTypeAct.Sideview = \u4fa7\u89c6\u56fe +RocketPanel.FigTypeAct.Backview = \u540e\u89c6\u56fe +RocketPanel.FigTypeAct.Figure3D = \u4e09\u7ef4\u56fe +RocketPanel.FigTypeAct.Finished = \u4e09\u7ef4\u7cbe\u7ec6\u56fe +RocketPanel.FigTypeAct.Unfinished = \u4e09\u7ef4\u8349\u56fe + + +RocketPanel.lbl.Flightcfg = \u98de\u884c\u8bbe\u7f6e: +RocketPanel.lbl.infoMessage = \u5355\u51fb\u9009\u62e9    Shift+\u5355\u51fb\u9009\u62e9\u5176\u4ed6    \u53cc\u51fb\u7f16\u8f91    \u5355\u51fb+\u62d6\u52a8\u79fb\u52a8\u7ec4\u4ef6 +RocketPanel.lbl.ViewType = \u89c6\u56fe\u7c7b\u578b: + +! BasicFrame +BasicFrame.tab.Rocketdesign = \u706b\u7bad\u8bbe\u8ba1 +BasicFrame.tab.Flightconfig = \u7ec4\u4ef6\u8bbe\u7f6e +BasicFrame.tab.Flightsim = \u98de\u884c\u4eff\u771f +BasicFrame.title.Addnewcomp = \u6dfb\u52a0\u65b0\u7ec4\u4ef6 +BasicFrame.dlg.lbl1 = \u8bbe\u8ba1\u7a3f ' +BasicFrame.dlg.lbl2 = ' \u5c1a\u672a\u4fdd\u5b58 +BasicFrame.dlg.lbl3 = \u662f\u5426\u4fdd\u5b58? +BasicFrame.dlg.title = \u653e\u5f03\u4fdd\u5b58 +BasicFrame.StageName.Sustainer = \u4e3b\u53d1\u52a8\u673a +BasicFrame.WarningDialog.txt1 = \u6253\u5f00\u8bbe\u8ba1\u7a3f\u65f6\u9047\u5230\u4ee5\u4e0b\u95ee\u9898 +BasicFrame.WarningDialog.txt2 = \u67d0\u4e9b\u8bbe\u8ba1\u5185\u5bb9\u6ca1\u6709\u88ab\u6b63\u786e\u8f7d\u5165 +BasicFrame.WarningDialog.title = \u6253\u5f00\u6587\u4ef6\u65f6\u8b66\u544a + + +! General error messages used in multiple contexts +error.fileExists.title = \u6587\u4ef6\u5df2\u5b58\u5728 +error.fileExists.desc = \u6587\u4ef6 '{filename}' \u5df2\u5b58\u5728\uff0c\u8986\u76d6? + +error.writing.title = \u6587\u4ef6\u5199\u5165\u5931\u8d25 +error.writing.desc = \u4fdd\u5b58\u6587\u4ef6\u65f6\u53d1\u751f\u9519\u8bef: +Configuration.lbl.override = \u8be5\u53c2\u6570\u53ef\u5728\u4e0d\u540c\u7684\u8bbe\u7f6e\u6587\u4ef6\u4e2d\u88ab\u8986\u5199. + + +! Labels used in buttons of dialog windows +# TODO: Rename these to "btn.xxx" +button.ok = OK +button.cancel = \u53d6\u6d88 +button.close = \u5173\u95ed + +! Common labels used in buttons of dialog windows +dlg.but.ok = OK +dlg.but.cancel = \u53d6\u6d88 +dlg.but.close = \u5173\u95ed + +! General file type names +filetypes.pdf = PDF \u6587\u4ef6 (*.pdf) +BasicFrame.SimpleFileFilter1 = \u652f\u6301\u7684\u706b\u7bad\u8bbe\u8ba1\u7a3f(*.ork; *.rkt) +BasicFrame.SimpleFileFilter2 = OpenRocket\u8bbe\u8ba1\u7a3f(*.ork) +BasicFrame.SimpleFileFilter3 = RockSim\u8bbe\u8ba1\u7a3f(*.rkt) +BasicFrame.SimpleFileFilter4 = OpenRocket\u914d\u7f6e(*.orc) +filetypes.images = \u56fe\u50cf\u6587\u4ef6 + + +! About Dialog +AboutDialog.lbl.version = \u7248\u672c +! The texts below provide additional credits for the translation maintainer +! - In AboutDialog.lbl.translation replace "English" with the current language. +! - AboutDialog.lbl.translator is the translator / group name (may be empty) +! - AboutDialog.lbl.translatorWebsite is a URL to the translator / group (may be empty) +! - AboutDialog.lbl.translatorIcon is the file name of an icon under pix/translators/ (may be empty) +AboutDialog.lbl.translation = \u7b80\u4f53\u4e2d\u6587\u7ffb\u8bd1: +AboutDialog.lbl.translator = Yilun Zhu +AboutDialog.lbl.translatorWebsite = http://sa.kechuang.org/ +AboutDialog.lbl.translatorIcon = logoKCSASimplifiedChinese.png + + +! Print dialog +PrintDialog.title = \u6253\u5370\u6216\u5bfc\u51fa +PrintDialog.but.previewAndPrint = \u9884\u89c8 & \u6253\u5370 +PrintDialog.checkbox.showByStage = \u6309\u7ea7\u663e\u793a +PrintDialog.lbl.selectElements = \u9009\u62e9\u4ee5\u4e0b\u5143\u7d20: +printdlg.but.saveaspdf = \u4fdd\u5b58\u4e3a PDF +printdlg.but.preview = \u9884\u89c8 +printdlg.but.settings = \u8bbe\u7f6e +PrintDialog.error.preview.title = \u65e0\u6cd5\u6253\u5f00\u9884\u89c8 +PrintDialog.error.preview.desc1 = \u65e0\u6cd5\u6253\u5f00PDF\u9884\u89c8 +PrintDialog.error.preview.desc2 = \u8bf7\u6539\u7528"\u4fdd\u5b58\u4e3aPDF"\u9009\u9879 + +!PrintSettingsDialog +PrintSettingsDialog.title = \u6253\u5370\u8bbe\u7f6e +PrintSettingsDialog.lbl.Templatefillcolor = \u6a21\u677f\u5b9e\u5fc3\u8272: +PrintSettingsDialog.lbl.Templatebordercolor = \u6a21\u677f\u80cc\u666f\u8272: +PrintSettingsDialog.lbl.Papersize = \u7eb8\u5f20\u5927\u5c0f: +PrintSettingsDialog.lbl.Paperorientation = \u6253\u5370\u65b9\u5411: +PrintSettingsDialog.but.Reset = \u91cd\u7f6e +PrintSettingsDialog.but.Close = \u5173\u95ed + + +! Bug Report dialog +bugreport.dlg.title = \u9519\u8bef\u62a5\u544a +bugreport.dlg.but.Sendbugreport = \u53d1\u9001\u9519\u8bef\u62a5\u544a +bugreport.dlg.but.Sendbugreport.Ttip = \u81ea\u52a8\u53d1\u9001\u9519\u8bef\u62a5\u544a\u7ed9OpenRocket\u5f00\u53d1\u7ec4 +bugreport.dlg.successmsg1 = \u9519\u8bef\u62a5\u544a\u5df2\u53d1\u9001 +bugreport.dlg.successmsg2 = \u611f\u8c22\u60a8\u5bf9OpenRocket\u7684\u652f\u6301\uff01 +bugreport.dlg.successmsg3 = \u9519\u8bef\u62a5\u544a\u5df2\u53d1\u9001 +bugreport.dlg.connectedInternet = \u5982\u679c\u8fde\u63a5\u5230\u4e92\u8054\u7f51\uff0c\u70b9\u51fb\u53d1\u9001\u9519\u8bef\u62a5\u544a\u5373\u53ef +bugreport.dlg.otherwise = \u5426\u5219\u8bf7\u5c06\u9519\u8bef\u62a5\u544a\u53d1\u9001\u5230: +bugreport.lbl.Theinformation = \u4ee5\u4e0a\u4fe1\u606f\u53ef\u80fd\u4f1a\u88ab\u5199\u5165\u9519\u8bef\u62a5\u544a\u4e2d. \u8bf7\u786e\u8ba4\u6ca1\u6709\u5305\u542b\u4efb\u4f55\u60a8\u4e0d\u613f\u610f\u516c\u5f00\u7684\u654f\u611f\u4fe1\u606f +bugreport.dlg.failedmsg1 = OpenRocket\u65e0\u6cd5\u53d1\u9001\u9519\u8bef\u62a5\u544a: +bugreport.dlg.failedmsg2 = \u8bf7\u624b\u52a8\u53d1\u9001\u9519\u8bef\u62a5\u544a\u81f3 +bugreport.dlg.failedmsg3 = \u53d1\u9001\u65f6\u53d1\u751f\u9519\u8bef +bugreport.reportDialog.txt = \u60a8\u53ef\u4ee5\u586b\u5199\u5e76\u53d1\u9001\u4ee5\u4e0b\u8868\u683c\u5411OpenRocket\u62a5\u544a\u9519\u8bef
\u60a8\u4e5f\u53ef\u4ee5\u5728OpenRocket\u7f51\u7ad9\u62a5\u544a\u9519\u8bef\u5e76\u9644\u4e0a\u76f8\u5173\u6587\u4ef6 +bugreport.reportDialog.txt2 = \u8bf7\u7b80\u8ff0\u5f53\u5f02\u5e38\u53d1\u751f\u7684\u65f6\u5019\u60a8\u6b63\u5728\u505a\u4ec0\u4e48 +bugreport.dlg.provideDescription = \u8bf7\u9996\u5148\u63d0\u4f9b\u9519\u8bef\u63cf\u8ff0. +bugreport.dlg.provideDescription.title = \u7f3a\u5c11\u9519\u8bef\u63cf\u8ff0 + + +! Debug log dialog +debuglogdlg.but.clear = \u6e05\u7a7a +debuglogdlg.OpenRocketdebuglog = OpenRocket \u8c03\u8bd5\u8bb0\u5f55 +debuglogdlg.Displayloglines = \u663e\u793a\u8bb0\u5f55\u884c: +debuglogdlg.Follow = \u8ddf\u8e2a +debuglogdlg.col.Time = \u65f6\u95f4 +debuglogdlg.col.Level = \u7ea7\u522b +debuglogdlg.col.Location = \u4f4d\u7f6e +debuglogdlg.col.Message = \u4fe1\u606f +debuglogdlg.lbl.Loglinenbr = \u8c03\u8bd5\u4fe1\u606f\u884c: +debuglogdlg.lbl.Time = \u65f6\u95f4: +debuglogdlg.lbl.Level = \u7ea7\u522b: +debuglogdlg.lbl.Location = \u4f4d\u7f6e: +debuglogdlg.lbl.Logmessage = \u8c03\u8bd5\u4fe1\u606f: +debuglogdlg.lbl.Stacktrace = \u5806\u6808\u8ddf\u8e2a: + + +! MotorChooserDialog +MotorChooserDialog.title = \u9009\u62e9\u706b\u7bad\u53d1\u52a8\u673a + +! Edit Motor configuration dialog +edtmotorconfdlg.col.configuration +edtmotorconfdlg.but.Removeconfiguration = \u79fb\u9664 +edtmotorconfdlg.but.Renameconfiguration = \u91cd\u547d\u540d +edtmotorconfdlg.but.Newconfiguration = \u65b0\u5efa +edtmotorconfdlg.but.Copyconfiguration = \u590d\u5236 +edtmotorconfdlg.title.Editmotorconf = \u7f16\u8f91\u98de\u884c\u914d\u7f6e +edtmotorconfdlg.title.Renameconf = \u91cd\u547d\u540d\u98de\u884c\u914d\u7f6e +edtmotorconfdlg.title.Selectdeploymentconf = \u9009\u62e9\u90e8\u7f72\u914d\u7f6e +edtmotorconfdlg.title.Selectignitionconf = \u9009\u62e9\u70b9\u706b\u914d\u7f6e +edtmotorconfdlg.title.Selectseparationconf = \u9009\u62e9\u5206\u79bb\u914d\u7f6e +edtmotorconfdlg.lbl.Selectedconf = \u9009\u62e9\u98de\u884c\u914d\u7f6e: +edtmotorconfdlg.selectcomp = \u6307\u5b9a\u53d1\u52a8\u673a\u5ea7\u7ec4\u4ef6: +edtmotorconfdlg.lbl.Configname = \u914d\u7f6e\u540d\u79f0: +edtmotorconfdlg.lbl.Motortab = \u53d1\u52a8\u673a +edtmotorconfdlg.lbl.Recoverytab = \u56de\u6536 +edtmotorconfdlg.lbl.Stagetab = \u7ea7 +edtmotorconfdlg.tbl.None = \u65e0 +edtmotorconfdlg.tbl.Motorheader = \u53d1\u52a8\u673a +edtmotorconfdlg.tbl.Mountheader = \u53d1\u52a8\u673a\u5ea7 +edtmotorconfdlg.tbl.Ignitionheader = \u70b9\u706b +edtmotorconfdlg.but.Resetdeployment = \u91cd\u7f6e\u5230\u9ed8\u8ba4\u503c +edtmotorconfdlg.but.Selectdeployment = \u9009\u62e9\u90e8\u7f72 +edtmotorconfdlg.tbl.Recoveryheader = \u56de\u6536\u8bbe\u5907 +edtmotorconfdlg.tbl.Deploymentheader = \u90e8\u7f72 +edtmotorconfdlg.but.Resetseparation = \u91cd\u7f6e\u5230\u9ed8\u8ba4\u503c +edtmotorconfdlg.but.Selectseparation = \u9009\u62e9\u8131\u79bb +edtmotorconfdlg.tbl.Stageheader = \u7ea7 +edtmotorconfdlg.tbl.Separationheader = \u5206\u79bb + +! Rename FlightConfiguration Dialog +RenameConfigDialog.title = \u91cd\u547d\u540d\u914d\u7f6e +RenameConfigDialog.lbl.name = \u98de\u884c\u914d\u7f6e\u540d\u79f0: +RenameConfigDialog.but.reset = \u91cd\u7f6e\u5230\u9ed8\u8ba4\u503c + +! Example design dialog +exdesigndlg.but.open = \u6253\u5f00 +exdesigndlg.lbl.Selectexample = \u9009\u62e9\u8303\u4f8b\u8bbe\u8ba1\u7a3f: +exdesigndlg.lbl.Openexampledesign = \u6253\u5f00\u8303\u4f8b\u8bbe\u8ba1\u7a3f +exdesigndlg.lbl.Exampledesignsnotfound = \u8303\u4f8b\u8bbe\u8ba1\u7a3f\u672a\u627e\u5230 +exdesigndlg.lbl.Examplesnotfound = \u8303\u4f8b\u672a\u627e\u5230 + + +! Material edit panel +matedtpan.but.new = \u65b0\u5efa +matedtpan.but.edit = \u7f16\u8f91 +matedtpan.but.delete = \u5220\u9664 +matedtpan.but.revertall = \u6062\u590d\u6240\u6709 +matedtpan.col.Material = \u6750\u6599 +matedtpan.col.Type = \u7c7b\u578b +matedtpan.col.Density = \u5bc6\u5ea6 +matedtpan.col.but.ttip.New = \u65b0\u52a0\u4e00\u79cd\u65b0\u7684\u6750\u6599 +matedtpan.title.Addcustmaterial = \u65b0\u52a0\u81ea\u5b9a\u4e49\u6750\u6599 +matedtpan.but.ttip.edit = \u7f16\u8f91\u5df2\u5b58\u5728\u7684\u6750\u6599 +matedtpan.title.Editmaterial = \u7f16\u8f91\u6750\u6599\u53c2\u6570 +matedtpan.title2.Editmaterial = \u65e0\u6cd5\u4fee\u6539\u5185\u5efa\u6750\u6599 +matedtpan.but.ttip.delete = \u5220\u9664\u81ea\u5b9a\u4e49\u6750\u6599 +matedtpan.but.ttip.revertall = \u5220\u9664\u6240\u6709\u81ea\u5b9a\u4e49\u6750\u6599 +matedtpan.title.Deletealluser-defined = \u5220\u9664\u6240\u6709\u81ea\u5b9a\u4e49\u6750\u6599? +matedtpan.title.Revertall = \u5168\u90e8\u590d\u539f? +matedtpan.lbl.edtmaterials = \u7f16\u8f91\u6750\u6599\u4e0d\u4f1a\u5f71\u54cd\u5f53\u524d\u7684\u706b\u7bad\u8bbe\u8ba1 + +!MaterialModel +MaterialModel.title.Material = \u6750\u6599 +MaterialModel.title.Defcustmat = \u8bbe\u7f6e\u81ea\u5b9a\u4e49\u6750\u6599 + + +! Preference dialog +pref.dlg.but.add = \u589e\u52a0 +pref.dlg.but.reset = \u91cd\u7f6e +pref.dlg.but.checknow = \u68c0\u67e5 +pref.dlg.but.openlast = \u5728\u542f\u52a8\u7684\u65f6\u5019\u6253\u5f00\u4e0a\u6b21\u8bbe\u8ba1 +pref.dlg.but.defaultmetric = \u7f3a\u7701\u516c\u5236 +pref.dlg.but.defaultimperial = \u7f3a\u7701\u82f1\u5236 +pref.dlg.title.Preferences = \u9996\u9009\u9879 +pref.dlg.tab.Units = \u5355\u4f4d\u5236 +pref.dlg.tab.Defaultunits = \u7f3a\u7701\u5355\u4f4d +pref.dlg.tab.Materials = \u6750\u6599 +pref.dlg.tab.Custommaterials = \u81ea\u5b9a\u4e49\u6750\u6599 +pref.dlg.tab.Options = \u9009\u9879 +pref.dlg.tab.Miscellaneousoptions = \u6742\u9879 + +pref.dlg.tab.Graphics = \u56fe\u50cf +pref.dlg.lbl.DecalEditor = \u56fe\u50cf\u7f16\u8f91\u5668 +pref.dlg.opengl.lbl.title = \u4e09\u7ef4\u56fe\u50cf +pref.dlg.opengl.but.enableGL = \u542f\u7528\u4e09\u7ef4\u56fe\u50cf +pref.dlg.opengl.but.enableAA = \u542f\u7528\u53cd\u952f\u9f7f +pref.dlg.opengl.lbl.useFBO = \u79bb\u7ebf\u6e32\u67d3 + + +pref.dlg.lbl.Positiontoinsert = \u65b0\u7ec4\u4ef6\u63d2\u5165\u4f4d\u7f6e: +pref.dlg.lbl.Confirmdeletion = \u786e\u8ba4\u5220\u9664\u4eff\u771f: +pref.dlg.lbl.User-definedthrust = \u81ea\u5b9a\u4e49\u63a8\u529b\u66f2\u7ebf: +pref.dlg.lbl.Windspeed = \u98ce\u901f +pref.dlg.Allthrustcurvefiles = \u652f\u6301\u7684\u63a8\u529b\u66f2\u7ebf\u6587\u4ef6(*.eng; *.rse; *.zip; \u6587\u4ef6\u5939) +pref.dlg.RASPfiles = RASP\u53d1\u52a8\u673a\u6587\u4ef6(*.eng) +pref.dlg.RockSimfiles = RockSim\u53d1\u52a8\u673a\u6587\u4ef6(*.rse) +pref.dlg.ZIParchives = ZIP\u538b\u7f29\u5305(*.zip) +pref.dlg.checkbox.Checkupdates = \u542f\u52a8\u65f6\u68c0\u67e5\u66f4\u65b0 +pref.dlg.ttip.Checkupdatesnow = \u73b0\u5728\u68c0\u67e5\u8f6f\u4ef6\u66f4\u65b0 +pref.dlg.lbl.Selectprefunits = \u8bf7\u9009\u62e9\u5355\u4f4d\u5236: +pref.dlg.lbl.Rocketdimensions = \u706b\u7bad\u5c3a\u5bf8: +pref.dlg.lbl.Linedensity = \u7ebf\u6027\u5bc6\u5ea6: +pref.dlg.lbl.Motordimensions = \u53d1\u52a8\u673a\u5c3a\u5bf8: +pref.dlg.lbl.Surfacedensity = \u8868\u9762\u5bc6\u5ea6: +pref.dlg.lbl.Distance = \u8ddd\u79bb: +pref.dlg.lbl.Bulkdensity = \u4f53\u79ef\u5bc6\u5ea6: +pref.dlg.lbl.Velocity = \u901f\u7387: +pref.dlg.lbl.Surfaceroughness = \u8868\u9762\u7c97\u7cd9\u5ea6: +pref.dlg.lbl.Acceleration = \u52a0\u901f\u5ea6: +pref.dlg.lbl.Area = \u9762\u79ef: +pref.dlg.lbl.Mass = \u8d28\u91cf: +pref.dlg.lbl.Angle = \u89d2\u5ea6: +pref.dlg.lbl.Force = \u529b: +pref.dlg.lbl.Rollrate = \u89d2\u901f\u5ea6: +pref.dlg.lbl.Totalimpulse = \u603b\u51b2\u91cf: +pref.dlg.lbl.Temperature = \u6e29\u5ea6: +pref.dlg.lbl.Momentofinertia = \u8f6c\u52a8\u60ef\u91cf: +pref.dlg.lbl.Pressure = \u538b\u529b: +pref.dlg.lbl.Stability = \u7a33\u5b9a\u6027: +pref.dlg.lbl.FlightTime = \u98de\u884c\u65f6\u95f4: +pref.dlg.lbl.effect1 = \u66f4\u6539\u5c06\u5728\u4e0b\u6b21\u542f\u52a8\u7a97\u53e3\u540e\u751f\u6548 +pref.dlg.lbl.Checkingupdates = \u6b63\u5728\u68c0\u67e5\u66f4\u65b0... +pref.dlg.lbl.msg1 = \u8fde\u63a5\u5230\u670d\u52a1\u5668\u662f\u53d1\u751f\u9519\u8bef +pref.dlg.lbl.msg2 = \u65e0\u6cd5\u83b7\u53d6\u66f4\u65b0\u4fe1\u606f +pref.dlg.lbl.msg3 = \u60a8\u4f7f\u7528\u7684\u5df2\u7ecf\u662fOpenRocket\u6700\u65b0\u7248\u672c +pref.dlg.lbl.msg4 = \u65e0\u53ef\u7528\u66f4\u65b0 +pref.dlg.PrefChoiseSelector1 = \u603b\u662f\u8be2\u95ee +pref.dlg.PrefChoiseSelector2 = \u63d2\u5728\u4e2d\u95f4 +pref.dlg.PrefChoiseSelector3 = \u63d2\u5728\u6700\u540e +pref.dlg.PrefBooleanSelector1 = \u5220\u9664 +pref.dlg.PrefBooleanSelector2 = \u786e\u8ba4 +pref.dlg.Add = \u6dfb\u52a0 +pref.dlg.DescriptionArea.Adddirectories = \u4efb\u4f55\u65b0\u6dfb\u52a0\u7684RASP\u53d1\u52a8\u673a\u6587\u4ef6(*.eng), RockSim\u53d1\u52a8\u673a\u6587\u4ef6(*.rse), ZIP\u538b\u7f29\u5305\u6216\u6587\u4ef6\u5939\u6240\u5305\u542b\u7684\u63a8\u529b\u66f2\u7ebf\u5c06\u5728\u4e0b\u6b21\u542f\u52a8OpenRocket\u540e\u751f\u6548 + +PreferencesDialog.lbl.language = \u754c\u9762\u8bed\u8a00: +PreferencesDialog.languages.default = \u7cfb\u7edf\u9ed8\u8ba4 +PreferencesDialog.lbl.languageEffect = \u8bed\u8a00\u8bbe\u7f6e\u5c06\u4f1a\u5728OpenRocket\u4e0b\u6b21\u542f\u52a8\u65f6\u751f\u6548 + +! Simulation edit dialog +simedtdlg.but.runsimulation = \u8fd0\u884c\u4eff\u771f +simedtdlg.but.resettodefault = \u6062\u590d\u9ed8\u8ba4 +simedtdlg.but.savedefault = \u8bbe\u4e3a\u9ed8\u8ba4 +simedtdlg.but.add = \u6dfb\u52a0 +simedtdlg.but.remove = \u79fb\u9664 +simedtdlg.title.Editsim = \u7f16\u8f91\u4eff\u771f +simedtdlg.lbl.Simname = \u4eff\u771f\u540d\u79f0: +simedtdlg.tab.Launchcond = \u53d1\u5c04\u6761\u4ef6 +simedtdlg.tab.Simopt = \u6a21\u62df\u9009\u9879 +simedtdlg.tab.Plotdata = \u6570\u636e\u7ed8\u56fe +simedtdlg.tab.CustomExpressions = \u81ea\u5b9a\u4e49\u8868\u8fbe\u5f0f +simedtdlg.tab.Exportdata = \u8f93\u51fa\u6570\u636e +simedtdlg.lbl.Flightcfg = \u98de\u884c\u914d\u7f6e: +simedtdlg.lbl.ttip.Flightcfg = \u9009\u62e9\u8981\u4f7f\u7528\u7684\u98de\u884c\u914d\u7f6e. +simedtdlg.combo.ttip.Flightcfg = \u9009\u62e9\u8981\u4f7f\u7528\u7684\u98de\u884c\u914d\u7f6e. +simedtdlg.lbl.Wind = \u98ce\u573a\u6761\u4ef6 +simedtdlg.lbl.Averwindspeed = \u5e73\u5747\u98ce\u901f: +simedtdlg.lbl.ttip.Averwindspeed = \u76f8\u5bf9\u4e8e\u5730\u9762\u7684\u5e73\u5747\u98ce\u901f +simedtdlg.lbl.Stddeviation = \u6807\u51c6\u5dee: +simedtdlg.lbl.ttip.Stddeviation = \u98ce\u901f\u7684\u6807\u51c6\u504f\u5dee.
\u98ce\u901f\u572895%\u7684\u65f6\u95f4\u5185\u5e94\u5904\u4e8e\u4e24\u500d\u7684\u6807\u51c6\u5dee\u4ee5\u5185. +simedtdlg.lbl.Turbulenceintensity = \u6e4d\u6d41\u5f3a\u5ea6: +simedtdlg.lbl.ttip.Turbulenceintensity1 = \u6e4d\u6d41\u5f3a\u5ea6\u8fd1\u4f3c\u4e3a\u6807\u51c6\u5dee\u9664\u4ee5\u5e73\u5747\u98ce\u901f.
+simedtdlg.lbl.ttip.Turbulenceintensity2 = \u5178\u578b\u53d6\u503c\u8303\u56f4\u662f\u4ece +simedtdlg.lbl.ttip.Turbulenceintensity3 = \u5230 +simedtdlg.border.Atmoscond = \u5927\u6c14\u6761\u4ef6 +simedtdlg.checkbox.InterStdAtmosphere = \u4f7f\u7528\u56fd\u9645\u6807\u51c6\u5927\u6c14\u6a21\u578b +simedtdlg.checkbox.ttip.InterStdAtmosphere1 = \u9009\u62e9\u4f7f\u7528\u56fd\u9645\u6807\u51c6\u5927\u6c14\u6a21\u578b.
\u8be5\u6a21\u578b\u7684\u5927\u6c14\u6e29\u5ea6\u4e3a +simedtdlg.checkbox.ttip.InterStdAtmosphere2 = , \u5927\u6c14\u538b\u4e3a +simedtdlg.checkbox.ttip.InterStdAtmosphere3 = \u4e14\u5747\u4e3a\u6d77\u5e73\u9762\u503c. +simedtdlg.lbl.Temperature = \u6e29\u5ea6: +simedtdlg.lbl.ttip.Temperature = \u53d1\u5c04\u5730\u70b9\u7684\u6e29\u5ea6. +simedtdlg.lbl.Pressure = \u538b\u529b: +simedtdlg.lbl.ttip.Pressure = \u53d1\u5c04\u5730\u70b9\u7684\u5927\u6c14\u538b\u529b. +simedtdlg.lbl.Launchsite = \u53d1\u5c04\u5730\u70b9 +simedtdlg.lbl.Latitude = \u7eac\u5ea6: +simedtdlg.lbl.ttip.Latitude = \u53d1\u5c04\u5730\u70b9\u7684\u7eac\u5ea6\u4f1a\u5f71\u54cd\u5730\u7403\u7684\u5f15\u529b.
\u5317\u534a\u7403\u4e3a\u6b63\u503c,\u5357\u534a\u7403\u4e3a\u8d1f\u503c. + +simedtdlg.lbl.Longitude = \u7ecf\u5ea6: +simedtdlg.lbl.ttip.Longitude = \u9700\u8981\u5929\u6c14\u9884\u62a5\u4ee5\u53ca\u9ad8\u7a0b\u6a21\u578b. + +simedtdlg.lbl.Altitude = \u6d77\u62d4\u9ad8\u5ea6: +simedtdlg.lbl.ttip.Altitude = \u53d1\u5c04\u9ad8\u5ea6\u57fa\u4e8e\u6d77\u5e73\u9762.
\u8fd9\u4f1a\u5f71\u54cd\u5927\u6c14\u6a21\u578b\u4e2d\u706b\u7bad\u7684\u4f4d\u7f6e. +simedtdlg.border.Launchrod = \u53d1\u5c04\u67b6 +simedtdlg.lbl.Length = \u957f\u5ea6: +simedtdlg.lbl.ttip.Length = \u53d1\u5c04\u67b6\u7684\u603b\u957f\u5ea6. +simedtdlg.lbl.Angle = \u89d2\u5ea6: +simedtdlg.lbl.ttip.Angle = \u53d1\u5c04\u67b6\u76f8\u5bf9\u4e8e\u5782\u76f4\u65b9\u5411\u7684\u89d2\u5ea6 +simedtdlg.lbl.Direction = \u65b9\u5411: +simedtdlg.lbl.ttip.Direction1 = \u53d1\u5c04\u67b6\u76f8\u5bf9\u4e8e\u98ce\u7684\u65b9\u5411.
+simedtdlg.lbl.ttip.Direction2 +simedtdlg.lbl.ttip.Direction3 +simedtdlg.border.Simopt = \u4eff\u771f\u9009\u9879 +simedtdlg.lbl.Calcmethod = \u8ba1\u7b97\u65b9\u6cd5: +simedtdlg.lbl.ttip.Calcmethod = Extended Barrowman\u7b97\u6cd5\u662f\u901a\u8fc7
\u6269\u5c55Barrowman\u65b9\u7a0b\u5f0f\u6765\u9002\u5e94\u66f4\u591a\u7ec4\u4ef6. +simedtdlg.lbl.ExtBarrowman = Extended Barrowman +simedtdlg.lbl.Simmethod = \u4eff\u771f\u65b9\u6cd5: +simedtdlg.lbl.ttip.Simmethod1 = 6\u81ea\u7531\u5ea6\u6a21\u62df\u53ef\u4ee5\u6a21\u62df\u706b\u7bad\u7684\u5404\u79cd\u98de\u884c\u60c5\u51b5.
+simedtdlg.lbl.ttip.Simmethod2 = \u79ef\u5206\u65b9\u6cd5\u91c7\u75284\u9636Runge-Kutta\u6570\u503c\u79ef\u5206. +simedtdlg.lbl.GeodeticMethod = \u5927\u5730\u6d4b\u91cf\u8ba1\u7b97: +simedtdlg.lbl.ttip.GeodeticMethodTip = \u76f8\u5bf9\u4e8e\u5730\u7403\u7684\u5750\u6807\u8ba1\u7b97. \u53ef\u8ba1\u7b97\u79d1\u91cc\u5965\u5229\u6548\u5e94. +simedtdlg.lbl.Timestep = \u65f6\u95f4\u6b65\u957f: +simedtdlg.lbl.ttip.Timestep1 = \u4eff\u771f\u6b65\u9aa4\u4e4b\u95f4\u7684\u65f6\u95f4.
\u66f4\u5c0f\u7684\u65f6\u95f4\u6b65\u957f\u8ba1\u7b97\u66f4\u6162, \u7ed3\u679c\u66f4\u7cbe\u786e.
+simedtdlg.lbl.ttip.Timestep2 = 4\u9636\u6a21\u62df\u65b9\u6cd5\u975e\u5e38\u7cbe\u786e\uff0c\u5982\u679c\u65f6\u95f4\u6b65\u957f\u4e3a +simedtdlg.but.ttip.resettodefault = \u91cd\u7f6e\u65f6\u95f4\u6b65\u957f\u4e3a\u7f3a\u7701\u503c ( +simedtdlg.border.Simlist = \u4eff\u771f\u76d1\u542c\u5668 +simedtdlg.txt.longA1 = \u4eff\u771f\u76d1\u542c\u5668(Simulation Listener)\u662f\u4e00\u4e2a\u9ad8\u7ea7\u7279\u6027,\u5141\u8bb8\u7528\u6237\u81ea\u5b9a\u4e49\u4ee3\u7801\u4e0e\u4eff\u771f\u8fc7\u7a0b\u4ea4\u4e92 +simedtdlg.txt.longA2 = \u5173\u4e8e\u4eff\u771f\u76d1\u542c\u5668\u7684\u8be6\u7ec6\u4fe1\u606f,\u8bf7\u53c2\u9605OpenRocket\u76f8\u5173\u6280\u672f\u6587\u6863. +simedtdlg.lbl.Curlist = \u5f53\u524d\u7684\u76d1\u542c\u5668 +simedtdlg.lbl.Addsimlist = \u6dfb\u52a0\u4eff\u771f\u76d1\u542c\u5668 +simedtdlg.lbl.Noflightdata = \u65e0\u53ef\u7528\u98de\u884c\u6570\u636e +simedtdlg.lbl.runsimfirst = \u8bf7\u5148\u8fd0\u884c\u4eff\u771f +simedtdlg.chart.Simflight = \u5df2\u4eff\u771f\u7684\u98de\u884c +simedtdlg.dlg.Simres = \u4eff\u771f\u7ed3\u679c +simedtdlg.IntensityDesc.None = \u65e0 +simedtdlg.IntensityDesc.Verylow = \u5f88\u4f4e +simedtdlg.IntensityDesc.Low = \u4f4e +simedtdlg.IntensityDesc.Medium = \u4e2d +simedtdlg.IntensityDesc.High = \u9ad8 +simedtdlg.IntensityDesc.Veryhigh = \u5f88\u9ad8 +simedtdlg.IntensityDesc.Extreme = \u6781\u9ad8 + +SimulationEditDialog.btn.plot = \u6570\u636e\u56fe +SimulationEditDialog.btn.export = \u5bfc\u51fa +SimulationEditDialog.btn.edit = \u7f16\u8f91 +SimulationEditDialog.btn.simulate = \u4eff\u771f +SimulationEditDialog.btn.simulateAndPlot = \u4eff\u771f & \u6570\u636e\u56fe + +GeodeticComputationStrategy.flat.name = \u5e73\u9762\u5730\u7403 +GeodeticComputationStrategy.flat.desc = \u5728\u8ba1\u7b97\u65f6\u628a\u5730\u9762\u5f53\u6210\u5e73\u9762, \u9002\u7528\u4e8e\u4f4e\u7a7a\u98de\u884c. +GeodeticComputationStrategy.spherical.name = \u7403\u5f62 +GeodeticComputationStrategy.spherical.desc = \u8ba1\u7b97\u5927\u5730\u6d4b\u91cf\u65f6\u4f7f\u7528\u7403\u5f62\u5730\u7403.
\u5bf9\u51e0\u4e4e\u6216\u6709\u7684\u8ba1\u7b97\u60c5\u51b5\u90fd\u5f88\u7cbe\u786e. +GeodeticComputationStrategy.wgs84.name = WGS84 \u692d\u5706 +GeodeticComputationStrategy.wgs84.desc = \u8ba1\u7b97\u5927\u5730\u6d4b\u91cf\u65f6\u4f7f\u7528\u4f7f\u7528WGS84\u4ee5\u53caVincenty\u8ddd\u79bb\u516c\u5f0f.
\u975e\u5e38\u6162. + + + + +! Simulation Panel +simpanel.but.newsimulation = \u65b0\u5efa\u4eff\u771f +simpanel.but.editsimulation = \u7f16\u8f91\u4eff\u771f +simpanel.but.runsimulations = \u8fd0\u884c\u4eff\u771f +simpanel.but.deletesimulations = \u5220\u9664\u4eff\u771f +simpanel.but.plotexport = \u7ed8\u56fe/\u8f93\u51fa +simpanel.but.ttip.newsimulation = \u6dfb\u52a0\u4e00\u4e2a\u65b0\u7684\u4eff\u771f +simpanel.but.ttip.editsim = \u7f16\u8f91\u9009\u4e2d\u7684\u4eff\u771f +simpanel.but.ttip.runsimu = \u91cd\u65b0\u8fd0\u884c\u9009\u4e2d\u7684\u4eff\u771f +simpanel.but.ttip.deletesim = \u5220\u9664\u9009\u4e2d\u7684\u4eff\u771f +simpanel.checkbox.donotask = \u4e0d\u518d\u8be2\u95ee +simpanel.lbl.defpref = \u60a8\u53ef\u5728\u9996\u9009\u9879\u4e2d\u4fee\u6539\u9ed8\u8ba4\u64cd\u4f5c. +simpanel.dlg.lbl.DeleteSim1 = \u5220\u9664\u9009\u4e2d\u7684\u4eff\u771f? +simpanel.dlg.lbl.DeleteSim2 = \u8be5\u64cd\u4f5c\u65e0\u6cd5\u64a4\u9500. +simpanel.dlg.lbl.DeleteSim3 = \u5220\u9664\u4eff\u771f +simpanel.col.Name = \u540d\u79f0 +simpanel.col.Motors = \u53d1\u52a8\u673a +simpanel.col.Configuration = \u914d\u7f6e +simpanel.col.Velocityoffrod = \u79bb\u67b6\u901f\u5ea6 +simpanel.col.Velocityatdeploy = \u6709\u6548\u8d1f\u8377\u901f\u5ea6 +simpanel.col.Apogee = \u6700\u9ad8\u70b9 +simpanel.col.Maxvelocity = \u6700\u5927\u901f\u5ea6 +simpanel.col.Maxacceleration = \u6700\u5927\u52a0\u901f\u5ea6 +simpanel.col.Timetoapogee = \u6700\u9ad8\u70b9\u65f6\u95f4 +simpanel.col.Flighttime = \u98de\u884c\u65f6\u95f4 +simpanel.col.Groundhitvelocity = \u649e\u51fb\u5730\u9762\u901f\u5ea6 +simpanel.ttip.uptodate = \u6700\u65b0\u7684\u6570\u636e +simpanel.ttip.loaded = \u4ece\u6587\u4ef6\u8f7d\u5165\u6570\u636e +simpanel.ttip.outdated = \u6570\u636e\u5df2\u8fc7\u671f
\u70b9\u51fb\u8fd0\u884c\u4eff\u771f\u91cd\u65b0\u8ba1\u7b97. +simpanel.ttip.external = \u5bfc\u5165\u7684\u6570\u636e +simpanel.ttip.notSimulated = \u672a\u8fdb\u884c\u8fc7\u4eff\u771f
\u70b9\u51fb\u8fd0\u884c\u4eff\u771f. +simpanel.ttip.noData = \u6ca1\u6709\u53ef\u7528\u7684\u4eff\u771f\u6570\u636e. +simpanel.ttip.noWarnings = \u6ca1\u6709\u8b66\u544a. +simpanel.ttip.warnings = \u8b66\u544a: + +! SimulationRunDialog +SimuRunDlg.title.RunSim = \u8fd0\u884c\u4eff\u771f... +SimuRunDlg.lbl.Running = \u6b63\u5728\u4eff\u771f ... +SimuRunDlg.lbl.Simutime = \u4eff\u771f\u65f6\u95f4: +SimuRunDlg.lbl.Altitude = \u9ad8\u5ea6: +SimuRunDlg.lbl.Velocity = \u901f\u5ea6: +SimuRunDlg.msg.Unabletosim = \u65e0\u6cd5\u8fd0\u884c\u4eff\u771f: +SimuRunDlg.msg.errorOccurred = \u4eff\u771f\u65f6\u51fa\u73b0\u9519\u8bef: + + +RK4SimulationStepper.error.valuesTooLarge = \u4eff\u771f\u6570\u503c\u8d85\u51fa\u9650\u5236. \u8bf7\u7f29\u5c0f\u65f6\u95f4\u6b65\u957f. + +SimulationModifierTree.OptimizationParameters = \u4f18\u5316\u53c2\u6570 + +! SimulationExportPanel +SimExpPan.desc = CSV\u6570\u636e\u6587\u4ef6 (*.csv) +SimExpPan.border.Vartoexport = \u5bfc\u51fa\u53d8\u91cf +SimExpPan.border.Stage = \u5bfc\u51fa\u706b\u7bad\u7ea7 +SimExpPan.but.Selectall = \u5168\u9009 +SimExpPan.but.Selectnone = \u53d6\u6d88\u5168\u9009 +SimExpPan.border.Fieldsep = \u6570\u636e\u5206\u9694\u7b26 +SimExpPan.lbl.Fieldsepstr = \u6570\u636e\u5206\u9694\u5b57\u7b26\u4e32: +SimExpPan.lbl.longA1 = \u5b57\u7b26\u4e32\u7528\u4e8e\u5206\u9694\u8f93\u51fa\u6587\u4ef6\u4e2d\u7684\u6570\u636e\u57df.
+SimExpPan.lbl.longA2 = \u4f7f\u7528 ',' \u4f5c\u4e3aCSV\u6570\u636e\u7684\u5206\u9694\u7b26. +SimExpPan.checkbox.Includesimudesc = \u4eff\u771f\u63cf\u8ff0 +SimExpPan.checkbox.ttip.Includesimudesc = \u5728\u6587\u4ef6\u5934\u52a0\u4e0a\u6ce8\u91ca\u884c\u7528\u4e8e\u63cf\u8ff0\u4eff\u771f\u5185\u5bb9. +SimExpPan.border.Comments = \u6ce8\u91ca +SimExpPan.checkbox.Includefielddesc = \u6570\u636e\u57df\u63cf\u8ff0 +SimExpPan.checkbox.ttip.Includefielddesc = \u6ce8\u91ca\u884c\u7528\u4e8e\u63cf\u8ff0\u8f93\u51fa\u53d8\u91cf. +SimExpPan.checkbox.Incflightevents = \u98de\u884c\u4e8b\u4ef6 +SimExpPan.checkbox.ttip.Incflightevents = \u6ce8\u91ca\u884c\u7528\u4e8e\u63cf\u8ff0\u98de\u884c\u4e8b\u4ef6. +SimExpPan.lbl.Commentchar = \u6ce8\u91ca\u6807\u8bc6\u7b26: +SimExpPan.lbl.ttip.Commentchar = \u7528\u4e8e\u6807\u8bb0\u6ce8\u91ca\u884c\u7684\u6807\u8bc6\u7b26. +SimExpPan.Fileexists.desc1 = \u6587\u4ef6 \" +SimExpPan.Fileexists.desc2 = \" \u5df2\u5b58\u5728. \u8986\u76d6? +SimExpPan.Fileexists.title = \u6587\u4ef6\u5df2\u5b58\u5728 +SimExpPan.ExportingVar.desc1 = \u8f93\u51fa1\u4e2a\u53d8\u91cf\uff0c\u5171\u8ba1 +SimExpPan.ExportingVar.desc2 = \u8f93\u51fa +SimExpPan.ExportingVar.desc3 = \u4e2a\u53d8\u91cf, \u5171\u8ba1 +SimExpPan.Col.Variable = \u53d8\u91cf +SimExpPan.Col.Unit = \u5355\u4f4d + + +CsvOptionPanel.separator.space = \u7a7a\u683c +CsvOptionPanel.separator.tab = \u5236\u8868\u7b26(Tab) + + +! Custom expression general stuff +customExpression.Name = \u540d\u79f0 +customExpression.Symbol = \u7b26\u53f7 +customExpression.Expression = \u8868\u8fbe\u5f0f +customExpression.Units = \u5355\u4f4d +customExpression.Operator = \u7b97\u5b50 +customExpression.Description = \u63cf\u8ff0 + +! Custom expression panel +customExpressionPanel.but.NewExpression = \u65b0\u5efa\u8868\u8fbe\u5f0f +customExpressionPanel.but.ttip.NewExpression = \u65b0\u5efa\u4e00\u4e2a\u81ea\u5b9a\u4e49\u8868\u8fbe\u5f0f +customExpressionPanel.but.Import = \u5bfc\u5165 +customExpressionPanel.but.ttip.Import = \u4ece\u5916\u90e8.ork\u6587\u4ef6\u5bfc\u5165\u8868\u8fbe\u5f0f +customExpressionPanel.lbl.UpdateNote = \u8bf7\u5148\u8fd0\u884c\u4eff\u771f, \u7136\u540e\u518d\u7ed8\u56fe. +customExpressionPanel.lbl.CalcNote = \u8868\u8fbe\u5f0f\u5c06\u6309\u663e\u793a\u987a\u5e8f\u8fdb\u884c\u8ba1\u7b97. +customExpressionPanel.lbl.CustomExpressions = \u81ea\u5b9a\u4e49\u8868\u8fbe\u5f0f +customExpression.Units.but.ttip.Remove = \u79fb\u9664\u8868\u8fbe\u5f0f +customExpression.Units.but.ttip.Edit = \u7f16\u8f91\u8868\u8fbe\u5f0f +customExpression.Units.but.ttip.MoveUp = \u63d0\u524d\u8868\u8fbe\u5f0f\u8ba1\u7b97\u987a\u5e8f +customExpression.Units.but.ttip.MoveDown = \u5ef6\u540e\u8868\u8fbe\u5f0f\u8ba1\u7b97\u987a\u5e8f + + +! Custom expression builder window +ExpressionBuilderDialog.title = \u8868\u8fbe\u5f0f\u751f\u6210\u5668 +ExpressionBuilderDialog.InsertVariable = \u63d2\u5165\u53d8\u91cf +ExpressionBuilderDialog.InsertOperator = \u63d2\u5165\u7b97\u5b50 +ExpressionBuilderDialog.led.ttip.Name = \u540d\u79f0\u4e0d\u80fd\u91cd\u590d +ExpressionBuilderDialog.led.ttip.Symbol = \u7b26\u53f7\u4e0d\u80fd\u91cd\u590d +ExpressionBuilderDialog.led.ttip.Expression = \u8868\u8fbe\u5f0f\u5fc5\u987b\u4f7f\u7528\u5b9a\u4e49\u8fc7\u7684\u7b26\u53f7\u548c\u7b97\u5b50 +ExpressionBuilderDialog.CopyToOtherSimulations = \u590d\u5236\u5230\u5176\u4ed6\u4eff\u771f +ExpressionBuilderDialog.CopyToOtherSimulations.ttip = \u5c06\u8868\u8fbe\u5f0f\u590d\u5236\u5230\u5176\u4ed6\u8bbe\u8ba1\u7a3f.
\u4e0d\u4f1a\u8986\u76d6\u5df2\u5b58\u5728\u7684\u8868\u8fbe\u5f0f. + +! Custom expression variable selector +CustomVariableSelector.title = \u9009\u62e9\u53d8\u91cf + +! Custom operator selector +CustomOperatorSelector.title = \u9009\u62e9\u7b97\u5b50 + +! Operators +Operator.plus = \u52a0 +Operator.minus = \u51cf +Operator.star = \u4e58 +Operator.div = \u9664 +Operator.mod = \u6a21 +Operator.pow = \u6307\u6570 +Operator.abs = \u7edd\u5bf9\u503c +Operator.ceil = \u5411\u4e0a\u53d6\u6574 +Operator.floor = \u5411\u4e0b\u53d6\u6574 +Operator.sqrt = \u5e73\u65b9\u6839 +Operator.cbrt = \u7acb\u65b9\u6839 +Operator.exp = \u6307\u6570\u51fd\u6570 (e^x) +Operator.ln = \u81ea\u7136\u5bf9\u6570 +Operator.sin = \u6b63\u5f26 Sin +Operator.cos = \u4f59\u5f26 Cos +Operator.tan = \u6b63\u5207 Tan +Operator.asin = \u53cd\u6b63\u5f26 ArcSin +Operator.acos = \u53cd\u4f59\u5f26 ArcCos +Operator.atan = \u53cd\u6b63\u5207 ArcTan +Operator.hsin = \u53cc\u66f2\u6b63\u5f26 Sinh +Operator.hcos = \u53cc\u66f2\u4f59\u5f26 Cosh +Operator.htan = \u53cc\u66f2\u6b63\u5207 Tanh +Operator.log10 = \u5e38\u7528\u5bf9\u6570 (\u5e95\u6570\u4e3a10) +Operator.round = \u56db\u820d\u4e94\u5165 +Operator.random = \u4ea7\u751f\u4e00\u4e2a\u4ecb\u4e8e0\u5230\u8bbe\u5b9a\u503c\u4e4b\u95f4\u7684\u968f\u673a\u6570 +Operator.expm1 = \u548c exp(x)-1 \u4e00\u6837, \u4f46\u5bf9\u4e8e\u8f83\u5c0f\u7684\u6570\u5b57x\u66f4\u7cbe\u786e +Operator.mean = \u7b97\u672f\u5e73\u5747\u6570 +Operator.min = \u53d6\u6700\u5c0f\u503c +Operator.max = \u53d6\u6700\u5927\u503c +Operator.var = \u65b9\u5dee +Operator.stdev = \u6807\u51c6\u5dee +Operator.rms = \u5747\u65b9\u6839 +Operator.lclip = \u9650\u5236\u6570\u503c(\u53c2\u65701)\u4e0d\u5c0f\u4e8e\u53e6\u4e00\u4e2a\u6570\u503c(\u53c2\u65702) +Operator.uclip = \u9650\u5236\u6570\u503c(\u53c2\u65701)\u4e0d\u5927\u4e8e\u53e6\u4e00\u4e2a\u6570\u503c(\u53c2\u65702) +Operator.binf = \u7ed9\u51fa\u6570\u503c(\u53c2\u65701)\u76f8\u5bf9\u4e8e\u4e0b\u754c(\u53c2\u65702)\u548c\u4e0a\u754c(\u53c2\u65703)\u7684\u6bd4\u4f8b +Operator.trapz = \u5bf9\u4e8e\u7ed9\u5b9a\u8303\u56f4\u4f7f\u7528\u68af\u5f62\u79ef\u5206 +Operator.tnear = \u7ed9\u51fa\u6570\u636e\u70b9(\u53c2\u65701)\u6700\u63a5\u8fd1\u6570\u503c(\u53c2\u65702)\u7684\u65f6\u95f4 + +! MotorPlot +MotorPlot.title.Motorplot = \u53d1\u52a8\u673a\u56fe\u8868 +MotorPlot.but.Select = \u9009\u62e9 +MotorPlot.Chart.Motorthrustcurve = \u53d1\u52a8\u673a\u63a8\u529b\u66f2\u7ebf +MotorPlot.Chart.Time = \u65f6\u95f4 / s +MotorPlot.Chart.Thrust = \u63a8\u529b / N +MotorPlot.txt.Designation = \u578b\u53f7: +MotorPlot.txt.Manufacturer = \u5236\u9020\u5546: +MotorPlot.txt.Type = \u7c7b\u522b: +MotorPlot.txt.Delays = \u5ef6\u65f6: +MotorPlot.txt.Comment = \u6ce8\u91ca:\n + +! Simulation plot panel +simplotpanel.lbl.Presetplotconf = \u9884\u8bbe\u7ed8\u56fe\u5e03\u5c40: +simplotpanel.lbl.Xaxistype = X\u8f74\u7c7b\u522b: +simplotpanel.lbl.Unit = \u5355\u4f4d: +simplotpanel.lbl.Yaxistypes = Y\u8f74\u7c7b\u522b: +simplotpanel.lbl.Flightevents = \u98de\u884c\u4e8b\u4ef6: +simplotpanel.but.All = \u5168\u9009\u4e8b\u4ef6 +simplotpanel.but.None = \u53d6\u6d88\u5168\u9009\u4e8b\u4ef6 +simplotpanel.but.NewYaxisplottype = \u65b0\u5efaY\u8f74\u7c7b\u522b +simplotpanel.lbl.Axis = \u8f74: +simplotpanel.but.ttip.Removethisplot = \u5220\u9664\u8be5Y\u8f74\u7c7b\u522b +simplotpanel.Desc = \u6570\u636e\u5c06\u6309\u65f6\u95f4\u987a\u5e8f\u7ed8\u5236, \u5373\u4f7fX\u8f74\u4e0d\u662f\u65f6\u95f4. +simplotpanel.OptionPane.lbl1 = \u6700\u591a\u7ed8\u523615\u5e45\u56fe. +simplotpanel.OptionPane.lbl2 = \u65e0\u6cd5\u65b0\u589e\u7ed8\u56fe +simplotpanel.AUTO_NAME = \u81ea\u52a8 +simplotpanel.LEFT_NAME = \u5de6 +simplotpanel.RIGHT_NAME = \u53f3 +simplotpanel.CUSTOM = \u81ea\u5b9a\u4e49 +SimulationPlotPanel.error.noPlotSelected = \u8bf7\u5728Y\u8f74\u6dfb\u52a0\u81f3\u5c111\u4e2a\u53d8\u91cf. +SimulationPlotPanel.error.noPlotSelected.title = \u6ca1\u6709\u6570\u636e + +! Component add buttons +compaddbuttons.Bodycompandfinsets = \u7bad\u4f53\u90e8\u4ef6\u548c\u7a33\u5b9a\u7ffc +compaddbuttons.Nosecone = \u5934\u9525 +compaddbuttons.Bodytube = \u7bad\u4f53 +compaddbuttons.Transition = \u7ea7\u95f4\u6bb5 +compaddbuttons.Trapezoidal = \u68af\u5f62\u7a33\u5b9a\u7ffc +compaddbuttons.Elliptical = \u692d\u5706\u7a33\u5b9a\u7ffc +compaddbuttons.Freeform = \u81ea\u7531\u66f2\u9762 +compaddbuttons.Launchlug = \u53d1\u5c04\u5957\u67c4 +compaddbuttons.Innercomponent = \u5185\u90e8\u90e8\u4ef6 +compaddbuttons.Innertube = \u5185\u7b52 +compaddbuttons.Coupler = \u8fde\u63a5\u5668 +compaddbuttons.Centeringring = \u4e2d\u5fc3\u73af +compaddbuttons.Bulkhead = \u9694\u677f +compaddbuttons.Engineblock = \u53d1\u52a8\u673a +compaddbuttons.Massobjects = \u8f7d\u8377\u90e8\u4ef6 +compaddbuttons.Parachute = \u964d\u843d\u4f1e +compaddbuttons.Streamer = \u98d8\u5e26 +compaddbuttons.Shockcord = \u51cf\u9707\u7d22 +compaddbuttons.Masscomponent = \u4e3b\u8f7d\u8377 +compaddbuttons.Donotaskmeagain = \u4e0d\u518d\u8be2\u95ee +compaddbuttons.Selectcomppos = \u9009\u62e9\u90e8\u4ef6\u4f4d\u7f6e +compaddbuttons.lbl.Youcanchange = \u4f60\u53ef\u4ee5\u5728\u9996\u9009\u9879\u4e2d\u8bbe\u5b9a\u9ed8\u8ba4\u64cd\u4f5c. +compaddbuttons.lbl.insertcomp = \u7d27\u63a5\u5f53\u524d\u7ec4\u4ef6\u6dfb\u52a0\u65b0\u7ec4\u4ef6\u6216\u5728\u5c3e\u90e8\u6dfb\u52a0\u65b0\u7ec4\u4ef6 +compaddbuttons.askPosition.Inserthere = \u5728\u6b64\u63d2\u5165 +compaddbuttons.askPosition.Addtotheend = \u5728\u5c3e\u90e8\u6dfb\u52a0 +compaddbuttons.askPosition.Cancel = \u53d6\u6d88 + +! Component Analysis Dialog +componentanalysisdlg.componentanalysis = \u7ec4\u4ef6\u5206\u6790 +componentanalysisdlg.lbl.winddir = \u98ce\u5411: +componentanalysisdlg.TitledBorder.warnings = \u8b66\u544a: +componentanalysisdlg.ToggleBut.worst = \u6700\u574f\u60c5\u51b5 +componentanalysisdlg.lbl.angleofattack = \u653b\u89d2: +componentanalysisdlg.lbl.machnumber = \u9a6c\u8d6b: +componentanalysisdlg.lbl.rollrate = \u89d2\u901f\u5ea6: +componentanalysisdlg.lbl.activestages = \u6709\u6548\u7ea7: +componentanalysisdlg.lbl.motorconf = \u53d1\u52a8\u673a\u8bbe\u7f6e: +componentanalysisdlg.TabStability.Col = \u7ec4\u4ef6 +componentanalysisdlg.TabStability.Col.CG = \u91cd\u5fc3 +componentanalysisdlg.TabStability.Col.Mass = \u8d28\u91cf +componentanalysisdlg.TabStability.Col.CP = \u538b\u5fc3 +componentanalysisdlg.TabStability = \u7a33\u5b9a\u6027 +componentanalysisdlg.TabStability.ttip = \u7a33\u5b9a\u6027\u4fe1\u606f +componentanalysisdlg.dragTableModel.Col.Component = \u7ec4\u4ef6 +componentanalysisdlg.dragTableModel.Col.Pressure = \u538b\u529b CD +componentanalysisdlg.dragTableModel.Col.Base = \u57fa\u51c6 CD +componentanalysisdlg.dragTableModel.Col.friction = \u6469\u64e6 CD +componentanalysisdlg.dragTableModel.Col.total = \u603b CD +componentanalysisdlg.dragTabchar = \u963b\u529b\u7279\u6027 +componentanalysisdlg.dragTabchar.ttip = \u963b\u529b\u7279\u6027 +componentanalysisdlg.rollTableModel.Col.component = \u7ec4\u4ef6 +componentanalysisdlg.rollTableModel.Col.rollforc = \u6eda\u8f6c\u529b\u7cfb\u6570 +componentanalysisdlg.rollTableModel.Col.rolldamp = \u6eda\u8f6c\u963b\u5c3c\u7cfb\u6570 +componentanalysisdlg.rollTableModel.Col.total = \u603b Cl +componentanalysisdlg.rollTableModel = \u6eda\u8f6c\u52a8\u529b\u5b66 +componentanalysisdlg.rollTableModel.ttip = \u6eda\u8f6c\u52a8\u529b\u5b66 +componentanalysisdlg.println.closingmethod = \u8c03\u7528\u5173\u95ed\u4e8b\u4ef6: +componentanalysisdlg.println.settingnam = \u8bbe\u7f6e\u975e\u6570\u5b57\u503c +componentanalysisdlg.lbl.reflenght = \u53c2\u8003\u957f\u5ea6: +componentanalysisdlg.lbl.refarea = \u53c2\u8003\u9762\u79ef: +!componentanalysisdlg.But.close = \u5173\u95ed +componentanalysisdlg.TabStability.Col.Component = \u7ec4\u4ef6 +componentanalysisdlg.TOTAL = \u603b\u5171 +componentanalysisdlg.noWarnings = \u6ca1\u6709\u8b66\u544a. + +! Custom Material dialog +custmatdlg.title.Custommaterial = \u81ea\u5b9a\u4e49\u6750\u6599 +custmatdlg.lbl.Materialname = \u6750\u6599\u540d\u79f0: +custmatdlg.lbl.Materialtype = \u6750\u6599\u7c7b\u578b: +custmatdlg.lbl.Materialdensity = \u6750\u6599\u5bc6\u5ea6: +custmatdlg.checkbox.Addmaterial = \u6dfb\u52a0\u6750\u6599\u5230\u6570\u636e\u5e93 + + +! Ring Component Config +ringcompcfg.OuterRadius = \u5916\u76f4\u5f84 +ringcompcfg.Automatic = \u81ea\u52a8 +ringcompcfg.InnerRadius = \u5185\u76f4\u5f84 +ringcompcfg.Thickness = \u539a\u5ea6 +ringcompcfg.Length = \u957f\u5ea6 +ringcompcfg.Positionrelativeto = \u76f8\u5bf9\u4f4d\u7f6e\u81ea: +ringcompcfg.plus = \u52a0 +ringcompcfg.PositionValue = \u4f4d\u7f6e\u503c +ringcompcfg.Radialdistance = \u5f84\u5411\u8ddd\u79bb: +ringcompcfg.Distancefrom = \u5230\u706b\u7bad\u4e2d\u5fc3\u7ebf\u7684\u8ddd\u79bb +ringcompcfg.Radialdirection = \u5f84\u5411: +ringcompcfg.radialdirectionfrom = \u4ece\u706b\u7bad\u4e2d\u5fc3\u7ebf\u6cbf\u5f84\u5411 +ringcompcfg.but.Reset = \u91cd\u7f6e +ringcompcfg.but.Resetcomponant = \u91cd\u7f6e\u6240\u6709\u7ec4\u4ef6\u5bf9\u9f50\u4e2d\u5fc3\u7ebf +ringcompcfg.EngineBlock.desc = \u53d1\u52a8\u673a\u5ea7\u7528\u4e8e\u9632\u6b62\u53d1\u52a8\u673a\u5411\u524d\u7a9c\u51fa\u7bad\u4f53.

\u6dfb\u52a0\u53d1\u52a8\u673a\u524d\u8bf7\u5148\u6dfb\u52a0\u7bad\u4f53\u6216\u5185\u7ba1\u5e76\u5728\u53d1\u52a8\u673a\u9875\u9762\u4e0a\u6807\u8bb0\u4e3a\u53d1\u52a8\u673a\u5ea7. +ringcompcfg.note.desc = \u6ce8\u610f: \u5185\u7ba1\u4e0d\u4f1a\u5f71\u54cd\u7a7a\u6c14\u52a8\u529b\u5b66(\u5373\u4f7f\u662f\u8d85\u51fa\u7bad\u4f53\u4e5f\u4e0d\u4f1a). + + +! Body Tube Config +BodyTubecfg.lbl.Bodytubelength = \u7bad\u4f53\u957f\u5ea6: +BodyTubecfg.lbl.Outerdiameter = \u5916\u76f4\u5f84: +BodyTubecfg.lbl.Innerdiameter = \u5185\u76f4\u5f84: +BodyTubecfg.lbl.Wallthickness = \u58c1\u539a: +BodyTubecfg.tab.General = \u5e38\u89c4 +BodyTubecfg.tab.Generalproperties = \u5e38\u89c4\u5c5e\u6027 +BodyTubecfg.tab.Motor = \u53d1\u52a8\u673a +BodyTubecfg.tab.Motormountconf = \u53d1\u52a8\u673a\u5ea7\u8bbe\u7f6e +BodyTubecfg.checkbox.Automatic = \u81ea\u52a8 +BodyTubecfg.checkbox.Filled = \u5b9e\u5fc3 + +! FinSetConfig +FinSetConfig.tab.Fintabs = \u7a33\u5b9a\u7ffc +FinSetConfig.tab.Through-the-wall = \u7a7f\u8fc7\u7ba1\u58c1\u7684\u5c3e\u7ffc +FinSetConfig.but.Converttofreeform = \u8f6c\u4e3a\u81ea\u7531\u66f2\u9762 +FinSetConfig.but.Converttofreeform.ttip = \u5c06\u7ffc\u8f6c\u6362\u4e3a\u81ea\u7531\u66f2\u9762\u7ffc +FinSetConfig.Convertfinset = \u8f6c\u6362\u7ffc +FinSetConfig.but.Splitfins = \u5206\u79bb\u7ffc +FinSetConfig.but.Splitfins.ttip = \u5c06\u4e00\u4e2a\u7ffc\u5206\u6210\u591a\u4e2a\u7ffc +FinSetConfig.but.AutoCalc = \u81ea\u52a8\u8ba1\u7b97 +FinSetConfig.lbl.Through-the-wall = \u7a7f\u8fc7\u7ba1\u58c1\u7684\u5c3e\u7ffc: +FinSetConfig.lbl.Tablength = \u677f\u957f: +FinSetConfig.ttip.Tablength = \u7ffc\u677f\u7684\u957f\u5ea6. +FinSetConfig.lbl.Tabheight = \u677f\u9ad8: +FinSetConfig.ttip.Tabheight = \u7ffc\u5c55\u65b9\u5411\u7684\u9ad8\u5ea6. +FinSetConfig.lbl.Tabposition = \u4f4d\u7f6e: +FinSetConfig.ttip.Tabposition = \u7ffc\u677f\u7684\u4f4d\u7f6e. +FinSetConfig.lbl.relativeto = \u76f8\u5bf9\u4e8e + +!FinMarkingGuide +FinMarkingGuide.lbl.Front = \u524d + +! MotorDatabaseLoadingDialog +MotorDbLoadDlg.title = \u8bfb\u53d6\u53d1\u52a8\u673a\u6570\u636e +MotorDbLoadDlg.Loadingmotors = \u6b63\u5728\u8bfb\u53d6\u53d1\u52a8\u673a\u6570\u636e... + +! AppearanceConfig +AppearanceCfg.lbl.Appearance = \u5916\u89c2 +AppearanceCfg.lbl.Usedefault = \u4f7f\u7528\u9ed8\u8ba4 +AppearanceCfg.but.edit = \u7f16\u8f91 +AppearanceCfg.but.savedefault = \u8bbe\u4e3a\u9ed8\u8ba4\u5916\u89c2 +AppearanceCfg.lbl.Texture = \u7eb9\u7406: +AppearanceCfg.lbl.shine = \u5149\u4eae: +AppearanceCfg.lbl.color.Color = \u8272\u5f69: +AppearanceCfg.lbl.color.diffuse = \u6269\u6563\u8272\u5f69: +AppearanceCfg.lbl.color.ambient = \u73af\u5883\u8272: +AppearanceCfg.lbl.color.specular = \u9ad8\u5149\u989c\u8272: +AppearanceCfg.lbl.texture.scale = \u7f29\u653e: +AppearanceCfg.lbl.texture.offset = \u4f4d\u79fb: +AppearanceCfg.lbl.texture.center = \u5c45\u4e2d: +AppearanceCfg.lbl.texture.rotation = \u65cb\u8f6c: +AppearanceCfg.lbl.texture.repeat = \u91cd\u590d: + +! Texture Wrap Modes +TextureWrap.Repeat = \u91cd\u590d +TextureWrap.Mirror = \u91cd\u590d & \u955c\u50cf +TextureWrap.Clamp = \u56fa\u5b9a\u8fb9\u7f18\u50cf\u7d20 +TextureWrap.Sticker = \u8d34\u7eb8 + +! RocketConfig +RocketCfg.lbl.Designname = \u8bbe\u8ba1\u7a3f\u540d\u79f0: +RocketCfg.lbl.Designer = \u8bbe\u8ba1\u4eba: +RocketCfg.lbl.Comments = \u6ce8\u91ca: +RocketCfg.lbl.Revisionhistory = \u4fee\u8ba2\u5386\u53f2: +RocketCfg.lbl.Material = \u6750\u6599: + +! ShockCordConfig +ShockCordCfg.lbl.Shockcordlength = \u51cf\u9707\u7d22\u957f\u5ea6: + +! RocketComponentConfig +RocketCompCfg.lbl.Componentname = \u7ec4\u4ef6\u540d\u79f0: +RocketCompCfg.ttip.Thecomponentname = \u7ec4\u4ef6\u540d\u79f0. +RocketCompCfg.tab.Override = \u8986\u5199 +RocketCompCfg.tab.MassandCGoverride = \u8d28\u91cf\u53ca\u91cd\u5fc3\u9009\u9879 +RocketCompCfg.tab.Figure = \u6837\u5f0f +RocketCompCfg.tab.Figstyleopt = \u6837\u5f0f\u9009\u9879 +RocketCompCfg.tab.Comment = \u6ce8\u91ca +RocketCompCfg.tab.Specifyacomment = \u7ec4\u4ef6\u6ce8\u91ca +RocketCompCfg.tab.Appearance = \u5916\u89c2 +RocketCompCfg.lbl.Mass = \u8d28\u91cf: +RocketCompCfg.lbl.Componentmass = \u7ec4\u4ef6\u8d28\u91cf: +RocketCompCfg.lbl.overriddento = (\u8986\u5199\u5230 +RocketCompCfg.lbl.overriddenby = (\u88ab\u8986\u5199 +RocketCompCfg.lbl.Componentmaterial = \u7ec4\u4ef6\u6750\u6599: +RocketCompCfg.lbl.Componentfinish = \u7ec4\u4ef6\u8868\u9762\u5904\u7406: +RocketCompCfg.lbl.ttip.componentmaterialaffects = \u7ec4\u4ef6\u6750\u6599\u5c06\u4f1a\u5f71\u54cd\u5230\u7ec4\u4ef6\u91cd\u91cf. +RocketCompCfg.combo.ttip.componentmaterialaffects = \u7ec4\u4ef6\u6750\u6599\u5c06\u4f1a\u5f71\u54cd\u5230\u7ec4\u4ef6\u91cd\u91cf. +RocketCompCfg.lbl.longA1 = \u8868\u9762\u5904\u7406\u5c06\u4f1a\u5f71\u54cd\u5230\u7ec4\u4ef6\u7684\u7a7a\u6c14\u52a8\u529b.
+RocketCompCfg.lbl.longA2 = \u8be5\u6570\u503c\u4e3a\u5e73\u5747\u8868\u9762\u7c97\u7cd9\u5ea6. +RocketCompCfg.but.Setforall = \u8bbe\u7f6e\u6240\u6709 +RocketCompCfg.but.ttip.Setforall = \u5bf9\u6240\u6709\u7684\u7ec4\u4ef6\u4f7f\u7528\u540c\u79cd\u8868\u9762\u5904\u7406. +RocketCompCfg.lbl.Overridemassorcenter = \u8986\u5199\u91cd\u91cf\u6216\u91cd\u5fc3 +RocketCompCfg.checkbox.Overridemass = \u8986\u5199\u8d28\u91cf: +RocketCompCfg.checkbox.Overridecenterofgrav = \u8986\u5199\u91cd\u5fc3: +RocketCompCfg.checkbox.OverridemassandCG = \u8986\u5199\u6240\u6709\u7ec4\u4ef6\u7684\u91cd\u91cf\u548c\u91cd\u5fc3 +RocketCompCfg.lbl.longB1 = \u8986\u5199\u8d28\u91cf\u4e0d\u5305\u62ec\u53d1\u52a8\u673a.
+RocketCompCfg.lbl.longB2 = \u91cd\u5fc3\u4ece\u5934\u90e8\u5f00\u59cb\u8ba1\u7b97 +RocketCompCfg.lbl.Commentsonthe = \u6ce8\u91ca +RocketCompCfg.lbl.Figurestyle = \u6837\u5f0f: +RocketCompCfg.lbl.Componentcolor = \u7ec4\u4ef6\u989c\u8272: +RocketCompCfg.lbl.Choosecolor = \u989c\u8272\u9009\u62e9 +RocketCompCfg.checkbox.Usedefaultcolor = \u9ed8\u8ba4\u989c\u8272 +RocketCompCfg.lbl.Complinestyle = \u7ec4\u4ef6\u7ebf\u578b: +RocketCompCfg.but.Saveasdefstyle = \u4fdd\u5b58\u4e3a\u9ed8\u8ba4\u6837\u5f0f +RocketCompCfg.lbl.Diameter = \u76f4\u5f84: +RocketCompCfg.lbl.Length = \u957f\u5ea6: +RocketCompCfg.lbl.Thickness = \u539a\u5ea6: +RocketCompCfg.checkbox.Endcapped = \u6709\u7aef\u76d6 +RocketCompCfg.ttip.Endcapped = \u8fde\u63a5\u5904\u7ec8\u7aef\u662f\u5426\u6709\u76d6. +RocketCompCfg.title.Noseconeshoulder = \u5934\u9525\u8fde\u63a5\u5904 +RocketCompCfg.title.Aftshoulder = \u524d\u8fde\u63a5\u5904 +RocketCompCfg.border.Foreshoulder = \u540e\u8fde\u63a5\u5904 +!RocketCompCfg.lbl.Length = \u957f\u5ea6: + +! BulkheadConfig +BulkheadCfg.tab.Diameter = \u76f4\u5f84: +BulkheadCfg.tab.Thickness = \u539a\u5ea6: +BulkheadCfg.tab.General = \u5e38\u89c4 +BulkheadCfg.tab.Generalproperties = \u5e38\u89c4\u5c5e\u6027 + +!CenteringRingConfig +CenteringRingCfg.tab.Outerdiam = \u5916\u76f4\u5f84: +CenteringRingCfg.tab.Innerdiam = \u5185\u76f4\u5f84: +CenteringRingCfg.tab.Thickness = \u539a\u5ea6: +CenteringRingCfg.tab.General = \u5e38\u89c4 +CenteringRingCfg.tab.Generalproperties = \u5e38\u89c4\u5c5e\u6027 + +!ComponentConfigDialog +ComponentCfgDlg.configuration = \u8bbe\u7f6e +ComponentCfgDlg.configuration1 +ComponentCfgDlg.Modify = \u4fee\u6539 + +!StageConfig +StageConfig.tab.Separation = \u5206\u79bb +StageConfig.tab.Separation.ttip = \u591a\u7ea7\u5206\u79bb\u9009\u9879 +StageConfig.separation.lbl.title = \u8bbe\u5b9a\u5206\u79bb\u65f6\u673a: +StageConfig.separation.lbl.plus = \u52a0 +StageConfig.separation.lbl.seconds = \u79d2 + +!EllipticalFinSetConfig +EllipticalFinSetCfg.Nbroffins = \u7a33\u5b9a\u7ffc\u6570\u91cf: +EllipticalFinSetCfg.Rotation = \u65cb\u5ea6: +EllipticalFinSetCfg.Fincant = \u7a33\u5b9a\u7ffc\u9762\u89d2: +EllipticalFinSetCfg.Rootchord = \u7ffc\u6839\u5f26\u957f: +EllipticalFinSetCfg.Height = \u9ad8\u5ea6: +EllipticalFinSetCfg.Positionrelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +EllipticalFinSetCfg.plus = \u52a0 +EllipticalFinSetCfg.FincrossSection = \u7a33\u5b9a\u7ffc\u6a2a\u622a\u9762: +EllipticalFinSetCfg.Thickness = \u539a\u5ea6: +EllipticalFinSetCfg.General = \u5e38\u89c4 +EllipticalFinSetCfg.Generalproperties = \u5e38\u89c4\u5c5e\u6027 +EllipticalFinSetCfg.ttip.Fincant = \u7a33\u5b9a\u7ffc\u7ffc\u9762\u4e0e\u7bad\u4f53\u4e4b\u95f4\u7684\u5939\u89d2. + +!FreeformFinSetConfig +FreeformFinSetCfg.tab.General = \u5e38\u89c4 +FreeformFinSetCfg.tab.ttip.General = \u5e38\u89c4\u5c5e\u6027 +FreeformFinSetCfg.tab.Shape = \u5f62\u72b6 +FreeformFinSetCfg.tab.ttip.Finshape = \u7a33\u5b9a\u7ffc\u5f62\u72b6 +FreeformFinSetCfg.lbl.Numberoffins = \u7a33\u5b9a\u7ffc\u6570\u91cf: +FreeformFinSetCfg.lbl.Finrotation = \u7a33\u5b9a\u7ffc\u65cb\u5ea6: +FreeformFinSetCfg.lbl.Fincant = \u7a33\u5b9a\u7ffc\u9762\u89d2: +FreeformFinSetCfg.lbl.ttip.Fincant = \u7a33\u5b9a\u7ffc\u7ffc\u9762\u4e0e\u7bad\u4f53\u4e4b\u95f4\u7684\u5939\u89d2. +FreeformFinSetCfg.lbl.Posrelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +FreeformFinSetCfg.lbl.plus = \u52a0 +FreeformFinSetCfg.lbl.FincrossSection = \u7a33\u5b9a\u7ffc\u6a2a\u5207\u9762: +FreeformFinSetCfg.lbl.Thickness = \u539a\u5ea6: +! doubleClick1 + 2 form the message "Double-click to edit", split approximately at the middle +FreeformFinSetConfig.lbl.doubleClick1 = \u53cc\u51fb +FreeformFinSetConfig.lbl.doubleClick2 = \u7f16\u8f91 +FreeformFinSetConfig.lbl.clickDrag = \u5355\u51fb+\u62d6\u62fd: \u6dfb\u52a0,\u79fb\u52a8\u70b9 +FreeformFinSetConfig.lbl.ctrlClick = Ctrl+\u5355\u51fb: \u5220\u9664\u70b9 +FreeformFinSetConfig.lbl.scaleFin = \u7f29\u653e\u7a33\u5b9a\u7ffc + + +!InnerTubeConfig +InnerTubeCfg.tab.Motor = \u53d1\u52a8\u673a +InnerTubeCfg.tab.ttip.Motor = \u53d1\u52a8\u673a\u5ea7\u8bbe\u7f6e +InnerTubeCfg.tab.Cluster = \u7c07 +InnerTubeCfg.tab.ttip.Cluster = \u7c07\u8bbe\u7f6e +InnerTubeCfg.tab.Radialpos = \u5f84\u5411\u4f4d\u7f6e +InnerTubeCfg.tab.ttip.Radialpos = \u5f84\u5411\u4f4d\u7f6e +InnerTubeCfg.lbl.Selectclustercfg = \u9009\u62e9\u7c07\u8bbe\u7f6e: +InnerTubeCfg.lbl.TubeSep = \u7bad\u4f53\u5206\u6bb5: +InnerTubeCfg.lbl.ttip.TubeSep = \u8bbe\u7f6e\u7bad\u4f53\u5206\u6bb5, 1.0 = \u7d27\u90bb +InnerTubeCfg.lbl.Rotation = \u65cb\u5ea6: +InnerTubeCfg.lbl.ttip.Rotation = \u8bbe\u7f6e\u7c07\u7684\u65cb\u5ea6\u89d2 +InnerTubeCfg.lbl.Rotangle = \u8bbe\u7f6e\u7c07\u7684\u65cb\u5ea6\u89d2 +InnerTubeCfg.but.Splitcluster = \u62c6\u5206\u7c07 +InnerTubeCfg.lbl.longA1 = \u5c06\u7c07\u62c6\u5206\u6210\u4e0d\u540c\u7684\u7ec4\u4ef6.
+InnerTubeCfg.lbl.longA2 = \u5e76\u4f1a\u590d\u5236\u5185\u7ba1\u7684\u5168\u90e8\u90e8\u4ef6. +InnerTubeCfg.but.Resetsettings = \u91cd\u7f6e\u8bbe\u7f6e +InnerTubeCfg.but.ttip.Resetsettings = \u64a4\u9500\u62c6\u5206,\u65cb\u8f6c,\u6062\u590d\u5230\u6700\u521d\u503c + +! LaunchLugConfig +LaunchLugCfg.lbl.Length = \u957f\u5ea6: +LaunchLugCfg.lbl.Outerdiam = \u5916\u76f4\u5f84: +LaunchLugCfg.lbl.Innerdiam = \u5185\u76f4\u5f84: +LaunchLugCfg.lbl.Thickness = \u539a\u5ea6: +LaunchLugCfg.lbl.Radialpos = \u5f84\u5411\u4f4d\u7f6e: +LaunchLugCfg.lbl.Posrelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +LaunchLugCfg.lbl.plus = \u52a0 +LaunchLugCfg.tab.General = \u5e38\u89c4 +LaunchLugCfg.tab.Generalprop = \u5e38\u89c4\u5c5e\u6027 + +! MassComponentConfig +MassComponentCfg.lbl.Mass = \u8d28\u91cf: +MassComponentCfg.lbl.Density = \u8fd1\u4f3c\u5bc6\u5ea6: +MassComponentCfg.lbl.Length = \u957f\u5ea6: +MassComponentCfg.lbl.Diameter = \u76f4\u5f84: +MassComponentCfg.lbl.PosRelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +MassComponentCfg.lbl.plus = \u52a0 +MassComponentCfg.tab.General = \u5e38\u89c4 +MassComponentCfg.tab.ttip.General = \u5e38\u89c4\u5c5e\u6027 +MassComponentCfg.tab.Radialpos = \u5f84\u5411\u4f4d\u7f6e +MassComponentCfg.tab.ttip.Radialpos = \u5f84\u5411\u4f4d\u7f6e\u8bbe\u7f6e +MassComponentCfg.lbl.Radialdistance = \u5f84\u5411\u8ddd\u79bb: +MassComponentCfg.lbl.Radialdirection = \u5f84\u5411\u65b9\u5411: +MassComponentCfg.but.Reset = \u91cd\u7f6e + +! MotorConfig +MotorCfg.checkbox.compmotormount = \u8be5\u7ec4\u4ef6\u4e3a\u53d1\u52a8\u673a\u5ea7 +MotorCfg.lbl.Flightcfg +MotorCfg.but.New = \u65b0\u5efa +MotorCfg.but.FlightcfgEdit = \u7f16\u8f91 +MotorCfg.lbl.Currentmotor = \u5f53\u524d\u53d1\u52a8\u673a: +MotorCfg.lbl.Motoroverhang = \u53d1\u52a8\u673a\u7a81\u51fa: +MotorCfg.lbl.Ignitionat = \u70b9\u706b\u65f6\u523b: +MotorCfg.lbl.plus = \u52a0 +MotorCfg.lbl.seconds = \u79d2 +MotorCfg.lbl.longA1 = \u5f53\u524d\u8bbe\u8ba1\u7a3f\u4e3a\u5355\u7ea7\u706b\u7bad. +MotorCfg.lbl.longA2 = \u70b9\u51fb\"\u65b0\u5efa\u7ea7\"\u5efa\u7acb\u65b0\u7684\u706b\u7bad\u7ea7. +MotorCfg.lbl.longB1 = \u5f53\u524d\u8bbe\u8ba1\u7a3f\u6709 +MotorCfg.lbl.longB2 = \u4e2a\u706b\u7bad\u7ea7. +MotorCfg.but.Selectmotor = \u9009\u62e9\u53d1\u52a8\u673a +MotorCfg.but.Removemotor = \u79fb\u9664\u53d1\u52a8\u673a +MotorCfg.lbl.motorLabel = \u65e0 + +! NoseConeConfig +NoseConeCfg.lbl.Noseconeshape = \u5934\u9525\u5916\u5f62: +NoseConeCfg.lbl.Shapeparam = \u5916\u5f62\u53c2\u6570: +NoseConeCfg.lbl.Noseconelength = \u5934\u9525\u957f\u5ea6: +NoseConeCfg.lbl.Basediam = \u5e95\u5ea7\u76f4\u5f84: +NoseConeCfg.checkbox.Automatic = \u81ea\u52a8 +NoseConeCfg.lbl.Wallthickness = \u58c1\u539a: +NoseConeCfg.checkbox.Filled = \u5b9e\u5fc3 +NoseConeCfg.tab.General = \u5e38\u89c4 +NoseConeCfg.tab.ttip.General = \u5e38\u89c4\u5c5e\u6027 +NoseConeCfg.tab.Shoulder = \u8fde\u63a5\u5904 +NoseConeCfg.tab.ttip.Shoulder = \u8fde\u63a5\u5904\u5c5e\u6027 + +! ParachuteConfig +ParachuteCfg.lbl.Canopy = \u4f1e\u8863: +ParachuteCfg.lbl.Diameter = \u76f4\u5f84: +ParachuteCfg.lbl.Material = \u6750\u6599: +ParachuteCfg.combo.MaterialModel = \u6750\u6599\u4f1a\u5f71\u54cd\u7ec4\u4ef6\u91cd\u91cf. +ParachuteCfg.lbl.longA1 = \u963b\u529b\u7cfb\u6570 CD: +ParachuteCfg.lbl.longB1 = \u963b\u529b\u7cfb\u6570\u7531\u964d\u843d\u4f1e\u9762\u79ef\u51b3\u5b9a.
+ParachuteCfg.lbl.longB2 = \u9ad8\u963b\u529b\u7cfb\u6570\u80fd\u653e\u7f13\u4e0b\u964d\u901f\u7387. +ParachuteCfg.lbl.longB3 = \u964d\u843d\u4f1e\u7684\u963b\u529b\u7cfb\u6570\u901a\u5e38\u4e3a0.8. +ParachuteCfg.but.Reset = \u91cd\u7f6e +ParachuteCfg.lbl.Shroudlines = \u540a\u7d22: +ParachuteCfg.lbl.Numberoflines = \u540a\u7d22\u6570\u91cf: +ParachuteCfg.lbl.Linelength = \u957f\u5ea6: +ParachuteCfg.lbl.Material = \u6750\u6599: +ParachuteCfg.lbl.Posrelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +ParachuteCfg.lbl.plus = \u52a0 +ParachuteCfg.lbl.Packedlength = \u4f1e\u5305\u957f\u5ea6: +ParachuteCfg.lbl.Packeddiam = \u4f1e\u5305\u76f4\u5f84: +ParachuteCfg.lbl.Deploysat = \u5c55\u5f00\u65f6\u673a: +ParachuteCfg.lbl.seconds = \u79d2 +ParachuteCfg.lbl.Altitude = \u9ad8\u5ea6: +ParachuteCfg.tab.General = \u5e38\u89c4 +ParachuteCfg.tab.ttip.General = \u5e38\u89c4\u5c5e\u6027 +ParachuteCfg.tab.Radialpos = \u5f84\u5411\u4f4d\u7f6e +ParachuteCfg.tab.ttip.Radialpos = \u5f84\u5411\u4f4d\u7f6e\u8bbe\u7f6e +ParachuteCfg.lbl.Radialdistance = \u5f84\u5411\u8ddd\u79bb: +ParachuteCfg.lbl.Radialdirection = \u5f84\u5411\u65b9\u5411: +ParachuteCfg.but.Reset = \u91cd\u7f6e +ParachuteCfg.lbl.plusdelay = \u52a0 + +! ShockCordConfig +ShockCordCfg.lbl.Shockcordlength = \u51cf\u9707\u7d22\u957f\u5ea6: +ShockCordCfg.lbl.Shockcordmaterial = \u51cf\u9707\u7d22\u6750\u6599: +ShockCordCfg.lbl.Posrelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +ShockCordCfg.lbl.plus = \u52a0 +ShockCordCfg.lbl.Packedlength = \u4f1e\u5305\u957f\u5ea6: +ShockCordCfg.lbl.Packeddiam = \u4f1e\u5305\u76f4\u5f84: +ShockCordCfg.tab.General = \u5e38\u89c4 +ShockCordCfg.tab.ttip.General = \u5e38\u89c4\u5c5e\u6027 + +!SleeveConfig +SleeveCfg.tab.Outerdiam = \u5957\u7ba1\u5916\u76f4\u5f84: +SleeveCfg.tab.Innerdiam = \u5957\u7ba1\u5185\u76f4\u5f84: +SleeveCfg.tab.Wallthickness = \u58c1\u539a: +SleeveCfg.tab.Length = \u957f\u5ea6: +SleeveCfg.tab.General = \u5e38\u89c4 +SleeveCfg.tab.Generalproperties = \u5e38\u89c4\u5c5e\u6027 + +! StreamerConfig +StreamerCfg.lbl.Striplength = \u98d8\u5e26\u957f\u5ea6: +StreamerCfg.lbl.Stripwidth = \u98d8\u5e26\u5bbd\u5ea6: +StreamerCfg.lbl.Striparea = \u98d8\u5e26\u9762\u79ef: +StreamerCfg.lbl.Aspectratio = \u9ad8\u5bbd\u6bd4: +StreamerCfg.lbl.Material = \u6750\u6599: +StreamerCfg.combo.ttip.MaterialModel = \u6750\u6599\u4f1a\u5f71\u54cd\u7ec4\u4ef6\u91cd\u91cf. +StreamerCfg.lbl.longA1 = \u963b\u529b\u7cfb\u6570 CD: +StreamerCfg.lbl.longB1 = \u963b\u529b\u7cfb\u6570\u7531\u98d8\u5e26\u9762\u79ef\u51b3\u5b9a.
+StreamerCfg.lbl.longB2 = \u9ad8\u963b\u529b\u7cfb\u6570\u80fd\u653e\u7f13\u4e0b\u964d\u901f\u7387. +StreamerCfg.lbl.Automatic = \u81ea\u52a8 +StreamerCfg.lbl.longC1 = \u963b\u529b\u7cfb\u6570\u7531\u98d8\u5e26\u9762\u79ef\u51b3\u5b9a. +StreamerCfg.lbl.Posrelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +StreamerCfg.lbl.plus = \u52a0 +StreamerCfg.lbl.Packedlength = \u98d8\u5e26\u5305\u957f\u5ea6: +StreamerCfg.lbl.Packeddiam = \u98d8\u5e26\u5305\u76f4\u5f84: +StreamerCfg.lbl.Deploysat = \u5c55\u5f00\u65f6\u673a: +StreamerCfg.lbl.seconds = \u79d2 +StreamerCfg.lbl.Altitude = \u9ad8\u5ea6: +StreamerCfg.tab.General = \u5e38\u89c4 +StreamerCfg.tab.ttip.General = \u5e38\u89c4\u5c5e\u6027 +StreamerCfg.tab.Radialpos = \u5f84\u5411\u4f4d\u7f6e +StreamerCfg.tab.ttip.Radialpos = \u5f84\u5411\u4f4d\u7f6e\u8bbe\u7f6e +StreamerCfg.lbl.Radialdistance = \u5f84\u5411\u8ddd\u79bb: +StreamerCfg.lbl.Radialdirection = \u5f84\u5411\u65b9\u5411: +StreamerCfg.but.Reset = \u91cd\u7f6e +StreamerCfg.lbl.plusdelay = \u52a0 + +! ThicknessRingComponentConfig +ThicknessRingCompCfg.tab.Outerdiam = \u5916\u76f4\u5f84: +ThicknessRingCompCfg.tab.Innerdiam = \u5185\u76f4\u5f84: +ThicknessRingCompCfg.tab.Wallthickness = \u58c1\u539a: +ThicknessRingCompCfg.tab.Length = \u957f\u5ea6: +ThicknessRingCompCfg.tab.General = \u5e38\u89c4 +ThicknessRingCompCfg.tab.Generalprop = \u5e38\u89c4\u5c5e\u6027 + +! TransitionConfig +TransitionCfg.lbl.Transitionshape = \u7ea7\u95f4\u6bb5\u5f62\u72b6: +TransitionCfg.checkbox.Clipped = \u88c1\u526a +TransitionCfg.lbl.Shapeparam = \u5f62\u72b6\u53c2\u6570: +TransitionCfg.lbl.Transitionlength = \u7ea7\u95f4\u6bb5\u76f4\u5f84: +TransitionCfg.lbl.Forediam = \u524d\u76f4\u5f84 +TransitionCfg.checkbox.Automatic = \u81ea\u52a8 +TransitionCfg.lbl.Aftdiam = \u540e\u76f4\u5f84: +TransitionCfg.lbl.Wallthickness = \u58c1\u539a: +TransitionCfg.checkbox.Filled = \u5b9e\u5fc3 +TransitionCfg.tab.General = \u5e38\u89c4 +TransitionCfg.tab.Generalproperties = \u5e38\u89c4\u5c5e\u6027 +TransitionCfg.tab.Shoulder = \u8fde\u63a5\u5904 +TransitionCfg.tab.Shoulderproperties = \u8fde\u63a5\u5904\u5c5e\u6027 + +! TrapezoidFinSetConfig +TrapezoidFinSetCfg.lbl.Nbroffins = \u7a33\u5b9a\u7ffc\u6570\u91cf: +TrapezoidFinSetCfg.lbl.ttip.Nbroffins = \u68af\u5f62\u7a33\u5b9a\u7ffc\u7684\u6570\u91cf. +TrapezoidFinSetCfg.lbl.Finrotation = \u7a33\u5b9a\u7ffc\u65cb\u89d2: +TrapezoidFinSetCfg.lbl.ttip.Finrotation = \u7a33\u5b9a\u7ffc\u7ec4\u5408\u91cc\u7b2c\u4e00\u7247\u7684\u89d2\u5ea6 +TrapezoidFinSetCfg.lbl.Fincant = \u7a33\u5b9a\u7ffc\u9762\u89d2: +TrapezoidFinSetCfg.lbl.ttip.Fincant = \u7a33\u5b9a\u7ffc\u7ffc\u9762\u4e0e\u7bad\u4f53\u4e4b\u95f4\u7684\u5939\u89d2. +TrapezoidFinSetCfg.lbl.Rootchord = \u7ffc\u6839\u5f26: +TrapezoidFinSetCfg.lbl.Tipchord = \u7ffc\u68a2\u5f26: +TrapezoidFinSetCfg.lbl.Height = \u9ad8\u5ea6: +TrapezoidFinSetCfg.lbl.Sweeplength = \u540e\u63a0\u957f\u5ea6: +TrapezoidFinSetCfg.lbl.Sweepangle = \u540e\u63a0\u89d2: +TrapezoidFinSetCfg.lbl.FincrossSection = \u7a33\u5b9a\u7ffc\u6a2a\u622a\u9762: +TrapezoidFinSetCfg.lbl.Thickness = \u539a\u5ea6: +TrapezoidFinSetCfg.lbl.Posrelativeto = \u76f8\u5bf9\u4f4d\u7f6e: +TrapezoidFinSetCfg.lbl.plus = \u52a0 +TrapezoidFinSetCfg.tab.General = \u5e38\u89c4 +TrapezoidFinSetCfg.tab.Generalproperties = \u5e38\u89c4\u5c5e\u6027 + +! StorageOptionChooser +StorageOptChooser.lbl.Simdatatostore = \u4fdd\u5b58\u4eff\u771f\u6570\u636e: +StorageOptChooser.rdbut.Allsimdata = \u6240\u6709\u4eff\u771f\u6570\u636e +StorageOptChooser.lbl.longA1 = \u4fdd\u5b58\u6240\u6709\u4eff\u771f\u6570\u636e.
+StorageOptChooser.lbl.longA2 = \u6587\u4ef6\u4f53\u79ef\u4f1a\u975e\u5e38\u5927! +StorageOptChooser.rdbut.Every = \u6bcf\u4e00\u4e2a +StorageOptChooser.lbl.longB1 = \u6bcf\u9694\u6570\u4e2a\u6570\u636e\u4fdd\u5b58\u4e00\u6b21.
+StorageOptChooser.lbl.longB2 = \u95f4\u9694\u8d8a\u5927\u6587\u4ef6\u4f53\u79ef\u8d8a\u5c0f. +StorageOptChooser.lbl.seconds = \u79d2 +StorageOptChooser.rdbut.Onlyprimfig = \u4ec5\u4fdd\u7559\u4e3b\u8981\u6570\u636e +StorageOptChooser.lbl.longC1 = \u4ec5\u4fdd\u7559\u7b80\u62a5\u8868\u683c\u4e2d\u663e\u793a\u7684\u6570\u636e.
+StorageOptChooser.lbl.longC2 = \u6587\u4ef6\u4f53\u79ef\u6700\u5c0f. +StorageOptChooser.lbl.longD1 = \u6839\u636e\u5f53\u524d\u8bbe\u7f6e\u6765\u4f30\u8ba1\u751f\u6210\u6587\u4ef6\u5927\u5927\u5c0f. +StorageOptChooser.ttip.Saveopt = \u4fdd\u5b58\u9009\u9879 +StorageOptChooser.lbl.Estfilesize = \u9884\u8ba1\u6587\u4ef6\u4f53\u79ef: +StorageOptChooser.lbl.Saveopt = \u4fdd\u5b58\u9009\u9879 + +! ThrustCurveMotorSelectionPanel +TCMotorSelPan.lbl.Selrocketmotor = \u9009\u62e9\u706b\u7bad\u53d1\u52a8\u673a: +TCMotorSelPan.checkbox.hideSimilar = \u9690\u85cf\u76f8\u4f3c\u7684\u63a8\u529b\u66f2\u7ebf +TCMotorSelPan.checkbox.hideUsed = \u9690\u85cf\u5df2\u4f7f\u7528\u7684\u53d1\u52a8\u673a +TCMotorSelPan.checkbox.limitlength = \u957f\u5ea6\u4e0d\u8d85\u8fc7\u5f53\u524d\u53d1\u52a8\u673a\u5ea7\u957f\u5ea6 +TCMotorSelPan.checkbox.limitdiameter = \u76f4\u5f84\u4e0d\u8d85\u8fc7\u5f53\u524d\u53d1\u52a8\u673a\u5ea7\u76f4\u5f84 +TCMotorSelPan.btn.details = \u663e\u793a\u8be6\u60c5 +TCMotorSelPan.btn.filter = \u8fc7\u6ee4\u53d1\u52a8\u673a +TCMotorSelPan.MotorSize = \u53d1\u52a8\u673a\u5c3a\u5bf8 +TCMotorSelPan.Diameter = \u76f4\u5f84 +TCMotorSelPan.Length = \u957f\u5ea6 +TCMotorSelPan.MotorMountDimensions = \u53d1\u52a8\u673a\u5ea7\u5c3a\u5bf8: +TCMotorSelPan.lbl.Search = \u641c\u7d22: +TCMotorSelPan.lbl.Selectthrustcurve = \u9009\u62e9\u63a8\u529b\u66f2\u7ebf: +TCMotorSelPan.lbl.Ejectionchargedelay = \u5f39\u5c04\u5ef6\u65f6: +TCMotorSelPan.equalsIgnoreCase.None = \u65e0 +TCMotorSelPan.lbl.NumberofsecondsorNone = (\u79d2\u6570\u6216\"\u65e0\") +TCMotorSelPan.lbl.Totalimpulse = \u603b\u51b2\u91cf: +TCMotorSelPan.lbl.Avgthrust = \u5e73\u5747\u63a8\u529b: +TCMotorSelPan.lbl.Maxthrust = \u6700\u5927\u63a8\u529b: +TCMotorSelPan.lbl.Burntime = \u71c3\u70e7\u65f6\u95f4: +TCMotorSelPan.lbl.Launchmass = \u53d1\u5c04\u8d28\u91cf: +TCMotorSelPan.lbl.Emptymass = \u71c3\u5c3d\u8d28\u91cf: +TCMotorSelPan.lbl.Datapoints = \u6570\u636e\u70b9: +TCMotorSelPan.lbl.Digest = \u6458\u8981: +TCMotorSelPan.title.Thrustcurve = \u63a8\u529b\u66f2\u7ebf: +TCMotorSelPan.title.Thrust = \u63a8\u529b +TCMotorSelPan.delayBox.None = \u65e0 +TCMotorSelPan.noDescription = \u63cf\u8ff0\u4e0d\u53ef\u7528. +TCMotorSelPan.btn.checkAll = \u5168\u9009 +TCMotorSelPan.btn.checkNone = \u5168\u6e05\u7a7a +TCMotorSelPan.btn.close = \u5173\u95ed + + + +! PlotDialog +PlotDialog.CheckBox.Showdatapoints = \u663e\u793a\u6570\u636e\u70b9 +PlotDialog.lbl.Chart = \u5de6\u952e\u62d6\u62fd\u79fb\u52a8\u6570\u636e\u533a. \u6eda\u8f6e\u7f29\u653e. ctrl-\u6eda\u8f6e\u4ec5\u7f29\u653eX\u8f74. ctrl-\u5de6\u952e\u62d6\u62fd\u79fb\u52a8\u89c6\u56fe. \u53f3\u952e\u8fc7\u62fd\u8c03\u6574\u663e\u793a\u5927\u5c0f. + + +! "main" prefix is used for the main application dialog + +# FIXME: Rename the description keys + +main.menu.file = \u6587\u4ef6 +main.menu.file.desc = \u6587\u4ef6\u5904\u7406\u4efb\u52a1 +main.menu.file.new = \u65b0\u5efa +main.menu.file.new.desc = \u65b0\u5efa\u706b\u7bad\u8bbe\u8ba1\u7a3f +main.menu.file.open = \u6253\u5f00... +BasicFrame.item.Openrocketdesign = \u6253\u5f00\u706b\u7bad\u8bbe\u8ba1\u7a3f +main.menu.file.openRecent = \u6700\u8fd1\u6253\u5f00... +BasicFrame.item.Openrecentrocketdesign = \u6253\u5f00\u6700\u8fd1\u706b\u7bad\u8bbe\u8ba1\u7a3f +main.menu.file.openExample = \u6253\u5f00\u8303\u4f8b... +BasicFrame.item.Openexamplerocketdesign = \u6253\u5f00\u8303\u4f8b\u8bbe\u8ba1\u7a3f +main.menu.file.save = \u4fdd\u5b58 +BasicFrame.item.SavecurRocketdesign = \u4fdd\u5b58\u5f53\u524d\u8bbe\u8ba1\u7a3f +main.menu.file.saveAs = \u53e6\u5b58\u4e3a... +BasicFrame.item.SavecurRocketdesnewfile = \u4fdd\u5b58\u5f53\u524d\u8bbe\u8ba1\u7a3f\u5230\u65b0\u6587\u4ef6 +main.menu.file.print = \u6253\u5370/\u5bfc\u51faPDF... +main.menu.file.print.desc = \u5c06\u5404\u4e2a\u7ec4\u4ef6\u6253\u5370\u6216\u4fdd\u5b58\u4e3aPDF\u6587\u4ef6 +main.menu.file.close = \u5173\u95ed +BasicFrame.item.Closedesign = \u5173\u95ed\u5f53\u524d\u8bbe\u8ba1\u7a3f +main.menu.file.quit = \u9000\u51fa +BasicFrame.item.Quitprogram = \u9000\u51faOpenRocket\u7a0b\u5e8f +main.menu.file.exportDecal = \u5bfc\u51fa\u8d34\u82b1 +main.menu.file.exportDecal.desc = \u5bfc\u51fa\u5f53\u524d\u8bbe\u8ba1\u7a3f\u7684\u8d34\u82b1\u4f9b\u5916\u90e8\u7a0b\u5e8f\u4fee\u6539\u7f16\u8f91. + +main.menu.edit = \u7f16\u8f91 +BasicFrame.menu.Rocketedt = \u7f16\u8f91\u706b\u7bad\u8bbe\u8ba1 +main.menu.edit.undo = \u64a4\u9500 +main.menu.edit.undo.desc = \u64a4\u9500\u64cd\u4f5c +main.menu.edit.redo = \u91cd\u505a +main.menu.edit.redo.desc = \u91cd\u505a\u64cd\u4f5c +main.menu.edit.cut = \u526a\u5207 +main.menu.edit.copy = \u590d\u5236 +main.menu.edit.paste = \u7c98\u8d34 +main.menu.edit.delete = \u5220\u9664 +main.menu.edit.resize = \u7f29\u653e... +main.menu.edit.resize.desc = \u7f29\u653e\u706b\u7bad\u8bbe\u8ba1\u7a3f +main.menu.edit.editpreset = \u7f16\u8f91\u7ec4\u4ef6\u9884\u8bbe\u6587\u4ef6 +main.menu.edit.preferences = \u9996\u9009\u9879 +main.menu.edit.preferences.desc = \u4fee\u6539\u5e94\u7528\u7a0b\u5e8f\u9996\u9009\u9879 + +main.menu.analyze = \u5206\u6790 +main.menu.analyze.desc = \u706b\u7bad\u5206\u6790 +main.menu.analyze.componentAnalysis = \u7ec4\u4ef6\u5206\u6790 +main.menu.analyze.componentAnalysis.desc = \u4ec5\u5206\u6790\u706b\u7bad\u90e8\u4ef6 +main.menu.analyze.optimization = \u706b\u7bad\u4f18\u5316 +main.menu.analyze.optimization.desc = \u5e38\u89c4\u706b\u7bad\u8bbe\u8ba1\u4f18\u5316 +main.menu.analyze.customExpressions = \u81ea\u5b9a\u4e49\u8868\u8fbe\u5f0f +main.menu.analyze.customExpressions.desc = \u901a\u8fc7\u81ea\u5b9a\u4e49\u7684\u6570\u5b66\u8868\u8fbe\u5f0f\u6765\u5b9a\u4e49\u65b0\u7684\u98de\u884c\u6570\u636e\u7c7b\u578b + +main.menu.help = \u5e2e\u52a9 +main.menu.help.desc = OpenRocket\u76f8\u5173\u4fe1\u606f +main.menu.help.tours = \u6559\u7a0b +main.menu.help.tours.desc = OpenRocket\u76f8\u5173\u6559\u7a0b +main.menu.help.license = \u8bb8\u53ef\u8bc1 +main.menu.help.license.desc = OpenRocket \u8bb8\u53ef\u8bc1\u4fe1\u606f +main.menu.help.bugReport = \u9519\u8bef\u62a5\u544a +main.menu.help.bugReport.desc = \u5173\u4e8e\u5982\u4f55\u62a5\u544aOpenRocket\u4e2d\u7684\u9519\u8bef +main.menu.help.debugLog = \u8c03\u8bd5\u65e5\u5fd7 +main.menu.help.debugLog.desc = \u67e5\u770bOpenRocket\u8c03\u8bd5\u65e5\u5fd7 +main.menu.help.about = \u5173\u4e8e +main.menu.help.about.desc = OpenRocket\u7248\u6743\u4fe1\u606f + +main.menu.debug = \u8c03\u8bd5 +main.menu.debug.whatisthismenu = \u8fd9\u662f\u4ec0\u4e48\u83dc\u5355? +main.menu.debug.createtestrocket = \u5efa\u7acb\u6d4b\u8bd5\u706b\u7bad + +! database +! Translate here all material database +! + +Material.CUSTOM = \u81ea\u5b9a\u4e49 + +! Material database +Databases.materials.types.Bulk = \u4f53 +Databases.materials.types.Line = \u7ebf +Databases.materials.types.Surface = \u9762 + +! BULK_MATERIAL +material.acrylic = \u4e9a\u514b\u529b +material.aluminum = \u94dd +material.balsa = \u8f7b\u6728 +material.basswood = \u6934\u6728 +material.birch = \u6866\u6728 +material.brass = \u9ec4\u94dc +material.cardboard = \u786c\u7eb8\u677f +material.carbon_fiber = \u78b3\u7ea4\u7ef4 +material.cork = \u8f6f\u6728 +material.depron_xps = Depron(\u6324\u5851\u805a\u82ef\u4e59\u70ef) +material.fiberglass = \u73bb\u7483\u7ea4\u7ef4 +material.kraft_phenolic = Kraft phenolic +material.maple = \u67ab\u6728 +material.paper_office = \u529e\u516c\u7eb8 +material.pine = \u677e\u6728 +material.plywood_birch = \u80f6\u5408\u677f(\u6866\u6728) +material.polycarbonate_lexan = \u805a\u78b3\u9178\u916f(Lexan) +material.polystyrene = \u805a\u82ef\u4e59\u70ef +material.pvc = PVC +material.spruce = \u6749\u6728 +material.steel = \u94a2\u94c1 +material.styrofoam_generic_eps = \u6ce1\u6cab\u5851\u6599 (\u53d1\u6ce1\u805a\u82ef\u4e59\u70ef) +material.styrofoam_blue_foam_xps = \u6ce1\u6cab\u5851\u6599 \"Blue foam\" (\u6324\u5851\u805a\u82ef\u4e59\u70ef) +material.titanium = \u949b +material.quantum_tubing = Quantum tubing +material.blue_tube = Blue tube +!SURFACE_MATERIAL +material.ripstop_nylon = \u683c\u5b50\u5c3c\u9f99 +material.mylar = \u805a\u916f\u8584\u819c (\u805a\u4e59\u70ef\u5bf9\u82ef\u4e8c\u9178) +material.polyethylene_thin = \u805a\u4e59\u70ef (\u8f7b\u8584) +material.polyethylene_heavy = \u805a\u4e59\u70ef (\u539a\u91cd) +material.silk = \u4e1d\u7ef8 +material.paper_office = \u529e\u516c\u7eb8 +material.cellophane = \u73bb\u7483\u7eb8 +material.crepe_paper = \u76b1\u7eb9\u7eb8 +! LINE_MATERIAL +material.thread_heavy_duty = \u7ebf (\u5927\u8f7d\u91cd) +material.elastic_cord_round_2_mm_1_16_in = \u677e\u7d27\u7ef3 (\u5706 2 mm, 1/16 in) +material.elastic_cord_flat_6_mm_1_4_in = \u677e\u7d27\u7ef3 (\u6241 6 mm, 1/4 in) +material.elastic_cord_flat_12_mm_1_2_in = \u677e\u7d27\u7ef3 (\u6241 12 mm, 1/2 in) +material.elastic_cord_flat_19_mm_3_4_in = \u677e\u7d27\u7ef3 (\u6241 19 mm, 3/4 in) +material.elastic_cord_flat_25_mm_1_in = \u677e\u7d27\u7ef3 (\u6241 25 mm, 1 in) +material.braided_nylon_2_mm_1_16_in = \u5c3c\u9f99\u7f16\u7ec7\u7ef3 (2 mm, 1/16 in) +material.braided_nylon_3_mm_1_8_in = \u5c3c\u9f99\u7f16\u7ec7\u7ef3 (3 mm, 1/8 in) +material.tubular_nylon_11_mm_7_16_in = \u5c3c\u9f99\u7f16\u7ec7\u5e26 (11 mm, 7/16 in) +material.tubular_nylon_14_mm_9_16_in = \u5c3c\u9f99\u7f16\u7ec7\u5e26 (14 mm, 9/16 in) +material.tubular_nylon_25_mm_1_in = \u5c3c\u9f99\u7f16\u7ec7\u5e26 (25 mm, 1 in) + +! ExternalComponent +ExternalComponent.Rough = \u7c97\u7cd9 +ExternalComponent.Unfinished = \u7c97\u52a0\u5de5 +ExternalComponent.Regularpaint = \u666e\u901a\u6d82\u6599 +ExternalComponent.Smoothpaint = \u5149\u6ed1\u6d82\u6599 +ExternalComponent.Polished = \u629b\u5149\u7684 + +! LineStyle +LineStyle.Solid = \u5b9e\u7ebf +LineStyle.Dashed = \u865a\u7ebf +LineStyle.Dotted = \u70b9\u865a\u7ebf +LineStyle.Dash-dotted = \u70b9\u5212\u7ebf +LineStyle.Defaultstyle = \u9ed8\u8ba4\u6837\u5f0f + +! Shape +Shape.Conical = \u5706\u9525 +Shape.Conical.desc1 = \u5706\u9525\u5934\u9525\u90e8\u9762\u56fe\u4e3a\u4e09\u89d2\u5f62. +Shape.Conical.desc2 = \u5706\u9525\u7ea7\u95f4\u6bb5\u4e3a\u76f4\u7ebf. +Shape.Ogive = \u5c16\u9876\u62f1 +Shape.Ogive.desc1 = \u5c16\u9876\u5934\u9525\u7684\u90e8\u9762\u56fe\u4e3a\u5706\u5f27\u5207\u6bb5. \u5f62\u72b6\u53c2\u65701\u4e3a\u5207\u9762\u5c16\u62f1, \u548c\u7bad\u4f53\u5e73\u6ed1\u8fc7\u6e21, \u53c2\u6570\u5c0f\u4e8e1\u4e3a\u5272\u9762\u5c16\u62f1. +Shape.Ogive.desc2 = \u5c16\u9876\u7ea7\u95f4\u6bb5\u4e3a\u5706\u5f27\u5207\u6bb5. \u5f62\u72b6\u53c2\u65701\u4e3a\u5207\u9762\u5c16\u62f1, \u548c\u540e\u7aef\u7bad\u4f53\u5e73\u6ed1\u8fc7\u6e21, \u53c2\u6570\u5c0f\u4e8e1\u4e3a\u5272\u9762\u5c16\u62f1. +Shape.Ellipsoid = \u692d\u5706\u4f53 +Shape.Ellipsoid.desc1 = \u692d\u5706\u5934\u9525\u7684\u90e8\u9762\u56fe\u4e3a\u534a\u692d\u5706, \u957f\u8f74\u662f\u77ed\u8f74\u7684\u4e24\u500d. +Shape.Ellipsoid.desc2 = \u692d\u5706\u7ea7\u95f4\u6bb5\u4e3a\u534a\u692d\u5706, \u957f\u8f74\u662f\u77ed\u8f74\u7684\u4e24\u500d. \u82e5\u672a\u88c1\u526a, \u90e8\u9762\u56fe\u5c06\u5339\u914d\u76f8\u5e94\u534a\u5f84. +Shape.Powerseries = \u5e42\u7ea7\u6570 +Shape.Powerseries.desc1 = \u5e42\u7ea7\u6570\u5934\u9525\u90e8\u9762\u56fe\u662f\u7531\u534a\u5f84 × (x / \u957f\u5ea6)k, \u5176\u4e2dk\u662f\u5f62\u72b6\u53c2\u6570. k=0.5\u65f6\u4e3a\u00bd\u5e42\u5373\u629b\u7269\u7ebf, k=0.75\u65f6\u4e3a\u00be\u5e42, k=1\u65f6\u4e3a\u5706\u9525. +Shape.Powerseries.desc2 = \u5e42\u7ea7\u6570\u7ea7\u95f4\u6bb5\u662f\u7531\u534a\u5f84 × (x / \u957f\u5ea6)k, \u5176\u4e2dk\u662f\u5f62\u72b6\u53c2\u6570. k=0.5\u65f6\u4e3a\u00bd\u5e42\u5373\u629b\u7269\u7ebf, k=0.75\u65f6\u4e3a\u00be\u5e42, k=1\u65f6\u4e3a\u5706\u9525. +Shape.Parabolicseries = \u629b\u7269\u7ebf +Shape.Parabolicseries.desc1 = \u629b\u7269\u7ebf\u5934\u9525\u90e8\u9762\u56fe\u4e3a\u629b\u7269\u7ebf. \u53c2\u6570\u51b3\u5b9a\u4e86\u629b\u7269\u7ebf\u7684\u5f62\u72b6. \u53c2\u65701.0\u4e3a\u5168\u629b\u7269\u7ebf, \u4e0e\u7bad\u4f53\u76f8\u5207, 0.75\u4e3a3/4 \u629b\u7269\u7ebf, 0.5 \u4e3a1/2 \u629b\u7269\u7ebf, 0\u4e3a\u5706\u9525. +Shape.Parabolicseries.desc2 = \u629b\u7269\u7ebf\u7ea7\u95f4\u6bb5\u4e3a\u629b\u7269\u7ebf. \u53c2\u6570\u51b3\u5b9a\u4e86\u629b\u7269\u7ebf\u7684\u5f62\u72b6. \u53c2\u65701.0\u4e3a\u5168\u629b\u7269\u7ebf, \u4e0e\u7bad\u4f53\u76f8\u5207, 0.75\u4e3a3/4 \u629b\u7269\u7ebf, 0.5 \u4e3a1/2 \u629b\u7269\u7ebf, 0\u4e3a\u5706\u9525. +Shape.Haackseries = Haack\u66f2\u7ebf +Shape.Haackseries.desc1 = Haack\u7ea7\u6570\u5934\u9525\u7528\u4e8e\u6700\u5c0f\u5316\u963b\u529b, \u5f62\u72b6\u53c2\u65700\u4ea7\u751fLD-Haack\u6216\u8005\u51af\u5361\u95e8\u5934\u9525, \u5bf9\u4e8e\u65e2\u5b9a\u7684\u957f\u5ea6\u548c\u76f4\u5f84\u963b\u529b\u6700\u5c0f; \u5f62\u72b6\u53c2\u65700.333\u4ea7\u751fLV-Haack\u5934\u9525, \u5bf9\u4e8e\u65e2\u5b9a\u7684\u957f\u5ea6\u548c\u4f53\u79ef\u963b\u529b\u6700\u5c0f. +Shape.Haackseries.desc2 = Haack\u7ea7\u6570\u5934\u9525\u7528\u4e8e\u6700\u5c0f\u5316\u963b\u529b, \u5f62\u72b6\u53c2\u65700\u4ea7\u751fLD-Haack\u6216\u8005\u51af\u5361\u95e8\u5934\u9525, \u5bf9\u4e8e\u65e2\u5b9a\u7684\u957f\u5ea6\u548c\u76f4\u5f84\u963b\u529b\u6700\u5c0f; \u5f62\u72b6\u53c2\u65700.333\u4ea7\u751fLV-Haack\u5934\u9525, \u5bf9\u4e8e\u65e2\u5b9a\u7684\u957f\u5ea6\u548c\u4f53\u79ef\u963b\u529b\u6700\u5c0f. + + +! RocketComponent +RocketComponent.Position.TOP = \u7236\u7ec4\u4ef6\u9876\u90e8 +RocketComponent.Position.MIDDLE = \u7236\u7ec4\u4ef6\u4e2d\u90e8 +RocketComponent.Position.BOTTOM = \u7236\u7ec4\u4ef6\u5e95\u90e8 +RocketComponent.Position.AFTER = \u7236\u7ec4\u4ef6\u4e4b\u540e +RocketComponent.Position.ABSOLUTE = \u5934\u9525\u5c16\u7aef + +! LaunchLug +LaunchLug.Launchlug = \u53d1\u5c04\u8854\u5957 +! NoseCone +NoseCone.NoseCone = \u5934\u9525 +! Transition +Transition.Transition = \u7ea7\u95f4\u6bb5 +!Stage +Stage.Stage = \u706b\u7bad\u7ea7 + +Stage.SeparationEvent.UPPER_IGNITION = \u4e0a\u7ea7\u53d1\u52a8\u673a\u70b9\u706b +Stage.SeparationEvent.IGNITION = \u672c\u7ea7\u53d1\u52a8\u673a\u70b9\u706b +Stage.SeparationEvent.BURNOUT = \u672c\u7ea7\u53d1\u52a8\u673a\u71c3\u5c3d +Stage.SeparationEvent.EJECTION = \u672c\u7ea7\u5f39\u5c04 +Stage.SeparationEvent.LAUNCH = \u53d1\u5c04 +Stage.SeparationEvent.NEVER = \u4ece\u4e0d + +! BodyTube +BodyTube.BodyTube = \u7bad\u4f53 +! TubeCoupler +TubeCoupler.TubeCoupler = \u8fde\u63a5\u5668 +!InnerTube +InnerTube.InnerTube = \u5185\u7ba1 +! TrapezoidFinSet +TrapezoidFinSet.TrapezoidFinSet = \u68af\u5f62\u7a33\u5b9a\u7ffc +! FreeformFinSet +FreeformFinSet.FreeformFinSet = \u81ea\u7531\u66f2\u9762\u7a33\u5b9a\u7ffc +!MassComponent +MassComponent.MassComponent = \u8d28\u91cf\u7ec4\u4ef6 +! Parachute +Parachute.Parachute = \u964d\u843d\u4f1e +! ShockCord +ShockCord.ShockCord = \u51cf\u9707\u7d22 +! Bulkhead +Bulkhead.Bulkhead = \u9694\u677f +! CenteringRing +CenteringRing.CenteringRing = \u4e2d\u5fc3\u73af +! EngineBlock +EngineBlock.EngineBlock = \u53d1\u52a8\u673a +! Streamer +Streamer.Streamer = \u5f69\u5e26 +! Sleeve +Sleeve.Sleeve = \u5c01\u5957 + +!Rocket +Rocket.motorCount.Nomotor = [\u65e0\u53d1\u52a8\u673a] +Rocket.motorCount.noStageMotors = None +Rocket.compname.Rocket = \u706b\u7bad + +!MotorMount +MotorMount.IgnitionEvent.AUTOMATIC = \u81ea\u52a8 (\u53d1\u5c04\u6216\u5f39\u5c04) +MotorMount.IgnitionEvent.LAUNCH = \u53d1\u5c04 +MotorMount.IgnitionEvent.EJECTION_CHARGE = \u524d\u7ea7\u7b2c\u4e00\u6b21\u5f39\u5c04 +MotorMount.IgnitionEvent.BURNOUT = \u524d\u7ea7\u7b2c\u4e00\u6b21\u71c3\u5c3d +MotorMount.IgnitionEvent.NEVER = \u4ece\u4e0d + +MotorMount.IgnitionEvent.short.AUTOMATIC = \u81ea\u52a8 +MotorMount.IgnitionEvent.short.LAUNCH = \u53d1\u5c04 +MotorMount.IgnitionEvent.short.EJECTION_CHARGE = \u5f39\u5c04 +MotorMount.IgnitionEvent.short.BURNOUT = \u70e7\u5c3d +MotorMount.IgnitionEvent.short.NEVER = \u4ece\u4e0d + + +!ComponentIcons +ComponentIcons.Nosecone = \u5934\u9525 +ComponentIcons.Bodytube = \u7bad\u4f53 +ComponentIcons.Transition = \u7ea7\u95f4\u6bb5 +ComponentIcons.Trapezoidalfinset = \u68af\u5f62\u7a33\u5b9a\u7ffc +ComponentIcons.Ellipticalfinset = \u692d\u5706\u7a33\u5b9a\u7ffc +ComponentIcons.Freeformfinset = \u66f2\u9762\u7a33\u5b9a\u7ffc +ComponentIcons.Launchlug = \u53d1\u5c04\u8854\u5957 +ComponentIcons.Innertube = \u5185\u7ba1 +ComponentIcons.Tubecoupler = \u8fde\u63a5\u5668 +ComponentIcons.Centeringring = \u4e2d\u5fc3\u73af +ComponentIcons.Bulkhead = \u9694\u677f +ComponentIcons.Engineblock = \u53d1\u52a8\u673a +ComponentIcons.Parachute = \u964d\u843d\u4f1e +ComponentIcons.Streamer = \u98d8\u5e26 +ComponentIcons.Shockcord = \u51cf\u9707\u7d22 +ComponentIcons.Masscomponent = \u8d28\u91cf\u7ec4\u4ef6 +ComponentIcons.disabled = (\u5df2\u7981\u7528) + +! StageAction +StageAction.Stage = \u7ea7 + +! RecoveryDevice +RecoveryDevice.DeployEvent.LAUNCH = \u53d1\u5c04 (\u52a0 NN \u79d2) +RecoveryDevice.DeployEvent.EJECTION = \u672c\u7ea7\u7b2c\u4e00\u6b21\u5f39\u5c04 +RecoveryDevice.DeployEvent.APOGEE = \u6700\u9ad8\u70b9 +RecoveryDevice.DeployEvent.ALTITUDE = \u6307\u5b9a\u4e0b\u964d\u9ad8\u5ea6 +RecoveryDevice.DeployEvent.CURRENT_STAGE_SEPARATION = \u5f53\u524d\u7ea7\u95f4\u5206\u79bb +RecoveryDevice.DeployEvent.LOWER_STAGE_SEPARATION = \u6b21\u7ea7\u7ea7\u95f4\u5206\u79bb +RecoveryDevice.DeployEvent.NEVER = \u4ece\u4e0d + +RecoveryDevice.DeployEvent.short.LAUNCH = \u53d1\u5c04 +RecoveryDevice.DeployEvent.short.EJECTION = \u5f39\u5c04 +RecoveryDevice.DeployEvent.short.APOGEE = \u6700\u9ad8\u70b9 +RecoveryDevice.DeployEvent.short.ALTITUDE = \u9ad8\u5ea6 +RecoveryDevice.DeployEvent.short.CURRENT_STAGE_SEPARATION = \u5f53\u524d\u7ea7\u95f4\u5206\u79bb +RecoveryDevice.DeployEvent.short.LOWER_STAGE_SEPARATION = \u6b21\u7ea7\u7ea7\u95f4\u5206\u79bb +RecoveryDevice.DeployEvent.short.NEVER = \u4ece\u4e0d + + +! FlightEvent +FlightEvent.Type.LAUNCH = \u53d1\u5c04 +FlightEvent.Type.IGNITION = \u53d1\u52a8\u673a\u70b9\u706b +FlightEvent.Type.LIFTOFF = \u8d77\u98de +FlightEvent.Type.LAUNCHROD = \u79bb\u67b6 +FlightEvent.Type.BURNOUT = \u53d1\u52a8\u673a\u70e7\u5c3d +FlightEvent.Type.EJECTION_CHARGE = \u5f39\u5c04 +FlightEvent.Type.STAGE_SEPARATION = \u7ea7\u95f4\u5206\u79bb +FlightEvent.Type.APOGEE = \u6700\u9ad8\u70b9 +FlightEvent.Type.RECOVERY_DEVICE_DEPLOYMENT = \u56de\u6536\u88c5\u7f6e\u542f\u52a8 +FlightEvent.Type.GROUND_HIT = \u649e\u51fb\u5730\u9762 +FlightEvent.Type.SIMULATION_END = \u4eff\u771f\u7ed3\u675f +FlightEvent.Type.ALTITUDE = \u9ad8\u5ea6\u53d8\u5316 +FlightEvent.Type.TUMBLE = \u7ffb\u6eda +FlightEvent.Type.EXCEPTION = \u5f02\u5e38 + +! ThrustCurveMotorColumns +TCurveMotorCol.MANUFACTURER = \u5236\u9020\u5546 +TCurveMotorCol.DESIGNATION = \u540d\u79f0 +TCurveMotorCol.TYPE = \u7c7b\u578b +TCurveMotorCol.DIAMETER = \u76f4\u5f84 +TCurveMotorCol.LENGTH = \u957f\u5ea6 +TCurveMotorCol.TOTAL_IMPULSE = \u603b\u51b2 + +TCurveMotor.ttip.diameter = \u76f4\u5f84: +TCurveMotor.ttip.length = \u957f\u5ea6: +TCurveMotor.ttip.maxThrust = \u6700\u5927\u63a8\u529b: +TCurveMotor.ttip.avgThrust = \u5e73\u5747\u63a8\u529b: +TCurveMotor.ttip.burnTime = \u71c3\u70e7\u65f6\u95f4: +TCurveMotor.ttip.totalImpulse = \u603b\u51b2\u529b: +TCurveMotor.ttip.launchMass = \u53d1\u5c04\u8d28\u91cf: +TCurveMotor.ttip.emptyMass = \u71c3\u5c3d\u8d28\u91cf: + +! RocketInfo +RocketInfo.lengthLine.Length = \u957f\u5ea6 +RocketInfo.lengthLine.maxdiameter = , \u6700\u5927\u76f4\u5f84 +RocketInfo.massText1 = \u542b\u53d1\u52a8\u673a\u7684\u603b\u8d28\u91cf +RocketInfo.massText2 = \u4e0d\u542b\u53d1\u52a8\u673a\u7684\u51c0\u8d28\u91cf +RocketInfo.at = at M +RocketInfo.cgText = CG(\u91cd\u5fc3): +RocketInfo.cpText = CP(\u538b\u5fc3): +RocketInfo.stabText = \u7a33\u5b9a\u6027: +RocketInfo.Warning = \u8b66\u544a: +RocketInfo.Calculating = \u8ba1\u7b97\u4e2d... +RocketInfo.Apogee = \u6700\u9ad8\u70b9: +RocketInfo.Maxvelocity = \u6700\u5927\u901f\u5ea6: +RocketInfo.Maxacceleration = \u6700\u5927\u52a0\u901f\u5ea6: +RocketInfo.apogeeValue = N/A +RocketInfo.Mach = (\u9a6c\u8d6b +RocketInfo.velocityValue = N/A +RocketInfo.accelerationValue = N/A + +! FinSet +FinSet.CrossSection.SQUARE = \u65b9\u5f62 +FinSet.CrossSection.ROUNDED = \u5706\u5f62 +FinSet.CrossSection.AIRFOIL = \u7ffc\u578b +FinSet.TabRelativePosition.FRONT = \u7ffc\u6839\u5f26\u524d\u7f18 +FinSet.TabRelativePosition.CENTER = \u7ffc\u6839\u5f26\u4e2d\u70b9 +FinSet.TabRelativePosition.END = \u7ffc\u6839\u5f26\u540e\u7f18 + +! FlightDataType +FlightDataType.TYPE_TIME = \u65f6\u95f4 +FlightDataType.TYPE_ALTITUDE = \u9ad8\u5ea6 +FlightDataType.TYPE_VELOCITY_Z = \u5782\u76f4\u901f\u5ea6 +FlightDataType.TYPE_ACCELERATION_Z = \u5782\u76f4\u52a0\u901f\u5ea6 +FlightDataType.TYPE_VELOCITY_TOTAL = \u603b\u901f\u5ea6 +FlightDataType.TYPE_ACCELERATION_TOTAL = \u603b\u52a0\u901f\u5ea6 +FlightDataType.TYPE_POSITION_X = \u8fce\u98ce\u4f4d\u7f6e +FlightDataType.TYPE_POSITION_Y = \u5e73\u884c\u98ce\u4f4d\u7f6e +FlightDataType.TYPE_POSITION_XY = \u6a2a\u5411\u8de8\u8ddd +FlightDataType.TYPE_POSITION_DIRECTION = \u6a2a\u5411\u65b9\u5411 +FlightDataType.TYPE_VELOCITY_XY = \u6a2a\u5411\u901f\u5ea6 +FlightDataType.TYPE_ACCELERATION_XY = \u6a2a\u5411\u52a0\u901f\u5ea6 +FlightDataType.TYPE_AOA = \u653b\u89d2 +FlightDataType.TYPE_ROLL_RATE = \u6eda\u8f6c\u89d2\u901f\u5ea6 +FlightDataType.TYPE_PITCH_RATE = \u4fef\u4ef0\u89d2\u901f\u5ea6 +FlightDataType.TYPE_YAW_RATE = \u504f\u822a\u89d2\u901f\u5ea6 +FlightDataType.TYPE_MASS = \u8d28\u91cf +FlightDataType.TYPE_PROPELLANT_MASS = \u63a8\u8fdb\u5242\u8d28\u91cf +FlightDataType.TYPE_LONGITUDINAL_INERTIA = \u7eb5\u5411\u8f6c\u52a8\u60ef\u91cf +FlightDataType.TYPE_ROTATIONAL_INERTIA = \u6a2a\u5411\u8f6c\u52a8\u60ef\u91cf +FlightDataType.TYPE_CP_LOCATION = CP \u538b\u5fc3\u4f4d\u7f6e +FlightDataType.TYPE_CG_LOCATION = CG \u91cd\u5fc3\u4f4d\u7f6e +FlightDataType.TYPE_STABILITY = \u7a33\u5b9a\u88d5\u91cf +FlightDataType.TYPE_MACH_NUMBER = \u9a6c\u8d6b\u6570 +FlightDataType.TYPE_REYNOLDS_NUMBER = \u96f7\u8bfa\u6570 +FlightDataType.TYPE_THRUST_FORCE = \u63a8\u529b +FlightDataType.TYPE_DRAG_FORCE = \u963b\u529b +FlightDataType.TYPE_DRAG_COEFF = \u963b\u529b\u7cfb\u6570 +FlightDataType.TYPE_AXIAL_DRAG_COEFF = \u8f74\u5411\u963b\u529b\u7cfb\u6570 +FlightDataType.TYPE_FRICTION_DRAG_COEFF = \u6469\u64e6\u963b\u529b\u7cfb\u6570 +FlightDataType.TYPE_PRESSURE_DRAG_COEFF = \u538b\u5dee\u963b\u529b\u7cfb\u6570 +FlightDataType.TYPE_BASE_DRAG_COEFF = \u57fa\u51c6\u963b\u529b\u7cfb\u6570 +FlightDataType.TYPE_NORMAL_FORCE_COEFF = \u6cd5\u5411\u529b\u7cfb\u6570 +FlightDataType.TYPE_PITCH_MOMENT_COEFF = \u4fef\u4ef0\u529b\u77e9\u7cfb\u6570 +FlightDataType.TYPE_YAW_MOMENT_COEFF = \u504f\u822a\u529b\u77e9\u7cfb\u6570 +FlightDataType.TYPE_SIDE_FORCE_COEFF = \u4fa7\u5411\u529b\u7cfb\u6570 +FlightDataType.TYPE_ROLL_MOMENT_COEFF = \u6eda\u8f6c\u529b\u77e9\u7cfb\u6570 +FlightDataType.TYPE_ROLL_FORCING_COEFF = \u6eda\u8f6c\u529b\u7cfb\u6570 +FlightDataType.TYPE_ROLL_DAMPING_COEFF = \u6eda\u8f6c\u963b\u5c3c\u7cfb\u6570 +FlightDataType.TYPE_PITCH_DAMPING_MOMENT_COEFF = \u4fef\u4ef0\u963b\u5c3c\u7cfb\u6570 +FlightDataType.TYPE_YAW_DAMPING_MOMENT_COEFF = \u504f\u822a\u963b\u5c3c\u7cfb\u6570 +FlightDataType.TYPE_REFERENCE_LENGTH = \u53c2\u8003\u957f\u5ea6 +FlightDataType.TYPE_REFERENCE_AREA = \u53c2\u8003\u9762\u79ef +FlightDataType.TYPE_ORIENTATION_THETA = \u5782\u76f4\u65b9\u5411 (zenith) +FlightDataType.TYPE_ORIENTATION_PHI = \u4fa7\u5411\u65b9\u5411 (azimuth) +FlightDataType.TYPE_WIND_VELOCITY = \u98ce\u901f +FlightDataType.TYPE_AIR_TEMPERATURE = \u7a7a\u6c14\u6e29\u5ea6 +FlightDataType.TYPE_AIR_PRESSURE = \u7a7a\u6c14\u538b\u529b +FlightDataType.TYPE_SPEED_OF_SOUND = \u58f0\u901f +FlightDataType.TYPE_TIME_STEP = \u6a21\u62df\u65f6\u95f4\u6b65 +FlightDataType.TYPE_COMPUTATION_TIME = \u8ba1\u7b97\u65f6\u95f4 +FlightDataType.TYPE_LATITUDE = \u7eac\u5ea6: +FlightDataType.TYPE_LONGITUDE = \u7ecf\u5ea6: +FlightDataType.TYPE_CORIOLIS_ACCELERATION = \u79d1\u91cc\u5965\u5229\u52a0\u901f\u5ea6 +FlightDataType.TYPE_GRAVITY = \u91cd\u529b\u52a0\u901f\u5ea6 + +! PlotConfiguration +PlotConfiguration.Verticalmotion = \u5782\u76f4\u8fd0\u52a8 vs. \u65f6\u95f4 +PlotConfiguration.Totalmotion = \u603b\u4f53\u4f4d\u79fb vs. \u65f6\u95f4 +PlotConfiguration.Flightside = \u98de\u884c\u4fa7\u89c6\u5256\u9762 +PlotConfiguration.Stability = \u7a33\u5b9a\u6027 vs. \u65f6\u95f4 +PlotConfiguration.Dragcoef = \u963b\u529b\u7cfb\u6570 vs. Mach \u6570 +PlotConfiguration.Rollcharacteristics = \u6eda\u8f6c\u7279\u5f81 +PlotConfiguration.Angleofattack = \u653b\u89d2\u548c\u65b9\u5411 vs. \u65f6\u95f4 +PlotConfiguration.Simulationtime = \u6a21\u62df\u65f6\u95f4\u6b65\u957f vs. \u8ba1\u7b97\u65f6\u95f4 + +! Warning +Warning.LargeAOA.str1 = \u653b\u89d2\u592a\u5927. +Warning.LargeAOA.str2 = \u653b\u89d2\u592a\u5927 ( +Warning.DISCONTINUITY = \u7bad\u4f53\u76f4\u5f84\u4e0d\u8fde\u7eed. +Warning.THICK_FIN = \u539a\u7ffc\u6a21\u578b\u53ef\u80fd\u4e0d\u51c6\u786e. +Warning.JAGGED_EDGED_FIN = \u952f\u9f7f\u7ffc\u9884\u6d4b\u53ef\u80fd\u4e0d\u51c6\u786e. +Warning.LISTENERS_AFFECTED = \u76d1\u542c\u5668\u4fee\u6539\u4e86\u98de\u884c\u4eff\u771f +Warning.RECOVERY_DEPLOYMENT_WHILE_BURNING = \u5728\u5f15\u64ce\u4ecd\u7136\u5de5\u4f5c\u7684\u65f6\u5019\u56de\u6536\u8bbe\u5907\u6253\u5f00. +Warning.FILE_INVALID_PARAMETER = \u65e0\u6548\u53c2\u6570, \u5ffd\u7565. +Warning.PARALLEL_FINS = \u592a\u591a\u5e73\u884c\u7684\u5c3e\u7ffc +Warning.SUPERSONIC = \u8d85\u97f3\u901f\u73af\u5883\u4e0b\u7684\u8ba1\u7b97\u7ed3\u679c\u53ef\u80fd\u4e0d\u51c6\u786e. +Warning.RECOVERY_LAUNCH_ROD = \u56de\u6536\u88c5\u7f6e\u5728\u53d1\u5c04\u67b6\u4e0a\u89e6\u53d1. +Warning.RECOVERY_HIGH_SPEED = \u56de\u6536\u88c5\u7f6e\u5206\u79bb\u65f6\u901f\u5ea6\u592a\u9ad8 + + +! Scale dialog +ScaleDialog.lbl.scaleRocket = \u6574\u4e2a\u706b\u7bad +ScaleDialog.lbl.scaleSubselection = \u9009\u4e2d\u7ec4\u4ef6\u53ca\u6240\u6709\u5b50\u7ec4\u4ef6 +ScaleDialog.lbl.scaleSelection = \u4ec5\u9009\u4e2d\u7ec4\u4ef6 +ScaleDialog.title = \u7f29\u653e +ScaleDialog.lbl.scale = \u7f29\u653e: +ScaleDialog.lbl.scale.ttip = \u9009\u62e9\u7f29\u653e\u6574\u4e2a\u8bbe\u8ba1\u56fe\u6216\u4ec5\u7f29\u653e\u9009\u4e2d\u7ec4\u4ef6 +ScaleDialog.lbl.scaling = \u7f29\u653e\u6bd4\u4f8b: +ScaleDialog.lbl.scaling.ttip = \u5927\u4e8e100%\u8868\u793a\u653e\u5927, \u5c0f\u4e8e100%\u8868\u793a\u7f29\u5c0f. +! The scaleFrom/scaleTo pair creates a phrase "Scale from [...] to [...]" +ScaleDialog.lbl.scaleFrom = \u7f29\u653e\u81ea +ScaleDialog.lbl.scaleTo = \u5230 +ScaleDialog.lbl.scaleFromTo.ttip = \u6839\u636e\u539f\u59cb\u5927\u5c0f\u548c\u76ee\u6807\u5927\u5c0f\u786e\u5b9a\u7f29\u653e\u6bd4\u4f8b. +ScaleDialog.checkbox.scaleMass = \u66f4\u65b0\u8d28\u91cf\u503c +ScaleDialog.checkbox.scaleMass.ttip = \u6839\u636e\u539f\u59cb\u7f29\u653e\u503c, \u7acb\u65b9\u5173\u7cfb\u7f29\u653e\u7ec4\u4ef6\u8d28\u91cf +ScaleDialog.button.scale = \u7f29\u653e +ScaleDialog.undo.scaleRocket = \u7f29\u653e\u706b\u7bad +ScaleDialog.undo.scaleComponent = \u7f29\u653e\u5355\u4e2a\u7ec4\u4ef6 +ScaleDialog.undo.scaleComponents = \u7f29\u653e\u591a\u4e2a\u7ec4\u4ef6 + +!icons +Icons.Undo = \u64a4\u9500 +Icons.Redo = \u91cd\u505a + +OpenRocketPrintable.Partsdetail = \u90e8\u4ef6\u4fe1\u606f +OpenRocketPrintable.Fintemplates = \u5c3e\u7ffc\u6a21\u677f +OpenRocketPrintable.Transitiontemplates = \u7ea7\u95f4\u6bb5\u6a21\u677f +OpenRocketPrintable.Noseconetemplates = \u5934\u9525\u6a21\u677f +OpenRocketPrintable.Finmarkingguide = \u5c3e\u7ffc\u5236\u4f5c\u5411\u5bfc +OpenRocketPrintable.DesignReport = \u8bbe\u8ba1\u62a5\u544a +OpenRocketPrintable.Centeringringtemplates = \u4e2d\u5fc3\u73af\u6a21\u677f + +OpenRocketDocument.Redo = \u64a4\u9500 +OpenRocketDocument.Undo = \u91cd\u505a + +!EllipticalFinSet +EllipticalFinSet.Ellipticalfinset = \u692d\u5706\u7a33\u5b9a\u7ffc + +! Optimization + +! Modifiers + +optimization.modifier.nosecone.length = \u957f\u5ea6 +optimization.modifier.nosecone.length.desc = \u4f18\u5316\u5934\u9525\u957f\u5ea6. +optimization.modifier.nosecone.diameter = \u76f4\u5f84 +optimization.modifier.nosecone.diameter.desc = \u4f18\u5316\u5934\u9525\u76f4\u5f84. +optimization.modifier.nosecone.thickness = \u539a\u5ea6 +optimization.modifier.nosecone.thickness.desc = \u4f18\u5316\u5934\u9525\u58c1\u539a\u5ea6. +optimization.modifier.nosecone.shapeparameter = \u5916\u5f62\u53c2\u6570 +optimization.modifier.nosecone.shapeparameter.desc = \u4f18\u5316\u5934\u9525\u5916\u5f62\u53c2\u6570. + +optimization.modifier.transition.length = \u957f\u5ea6 +optimization.modifier.transition.length.desc = \u4f18\u5316\u7ea7\u95f4\u6bb5\u957f\u5ea6. +optimization.modifier.transition.forediameter = \u524d\u76f4\u5f84 +optimization.modifier.transition.forediameter.desc = \u4f18\u5316\u7ea7\u95f4\u6bb5\u524d\u76f4\u5f84. +optimization.modifier.transition.aftdiameter = \u540e\u76f4\u5f84 +optimization.modifier.transition.aftdiameter.desc = \u4f18\u5316\u7ea7\u95f4\u6bb5\u540e\u76f4\u5f84. +optimization.modifier.transition.thickness = \u539a\u5ea6 +optimization.modifier.transition.thickness.desc = \u4f18\u5316\u7ea7\u95f4\u6bb5\u58c1\u539a\u5ea6. +optimization.modifier.transition.shapeparameter = \u5916\u5f62\u53c2\u6570 +optimization.modifier.transition.shapeparameter.desc = \u4f18\u5316\u7ea7\u95f4\u6bb5\u5916\u5f62\u53c2\u6570. + +optimization.modifier.bodytube.length = \u957f\u5ea6 +optimization.modifier.bodytube.length.desc = \u4f18\u5316\u7bad\u4f53\u957f\u5ea6. +optimization.modifier.bodytube.outerDiameter = \u5916\u76f4\u5f84 +optimization.modifier.bodytube.outerDiameter.desc = \u4f18\u5316\u7bad\u7b52\u5916\u76f4\u5f84, \u540c\u65f6\u4fdd\u6301\u58c1\u539a\u5ea6\u4e0d\u53d8. +optimization.modifier.bodytube.thickness = \u539a\u5ea6 +optimization.modifier.bodytube.thickness.desc = \u4f18\u5316\u7bad\u7b52\u58c1\u539a\u5ea6. + +optimization.modifier.trapezoidfinset.rootChord = \u7ffc\u6839\u5f26 +optimization.modifier.trapezoidfinset.rootChord.desc = \u4f18\u5316\u7ffc\u6839\u5f26\u957f\u5ea6 (\u7a33\u5b9a\u7ffc\u4e0e\u7bad\u4f53\u76f8\u63a5\u7684\u8fb9\u7684\u957f\u5ea6). +optimization.modifier.trapezoidfinset.tipChord = \u7ffc\u68a2\u5f26 +optimization.modifier.trapezoidfinset.tipChord.desc = \u4f18\u5316\u7ffc\u68a2\u5f26\u957f\u5ea6 (\u7a33\u5b9a\u7ffc\u5916\u7f18\u957f\u5ea6). +optimization.modifier.trapezoidfinset.sweep = \u63a0\u7ffc +optimization.modifier.trapezoidfinset.sweep.desc = \u4f18\u5316\u7a33\u5b9a\u7ffc\u63a0\u7ffc\u957f\u5ea6 (\u63a0\u7ffc\u524d\u7f18\u5411\u540e\u4f38\u5c55\u7684\u957f\u5ea6). +optimization.modifier.trapezoidfinset.height = \u9ad8\u5ea6 +optimization.modifier.trapezoidfinset.height.desc = \u4f18\u5316\u7a33\u5b9a\u7ffc\u9ad8\u5ea6 (\u534a\u7ffc\u5c55). + +optimization.modifier.ellipticalfinset.length = \u7ffc\u6839\u5f26 +optimization.modifier.ellipticalfinset.length.desc = \u4f18\u5316\u7ffc\u6839\u5f26\u957f\u5ea6. +optimization.modifier.ellipticalfinset.height = \u9ad8\u5ea6 +optimization.modifier.ellipticalfinset.height.desc = \u4f18\u5316\u7a33\u5b9a\u7ffc\u9ad8\u5ea6 (\u534a\u7ffc\u5c55). + +optimization.modifier.finset.cant = \u9762\u89d2\u89d2\u5ea6 +optimization.modifier.finset.cant.desc = \u4f18\u5316\u7a33\u5b9a\u7ffc\u9762\u89d2\u89d2\u5ea6. +optimization.modifier.finset.position = \u4f4d\u7f6e +optimization.modifier.finset.position.desc = \u4f18\u5316\u7a33\u5b9a\u7ffc\u5b89\u88c5\u4e8e\u7bad\u4f53\u7684\u4f4d\u7f6e. + +optimization.modifier.launchlug.length = \u957f\u5ea6 +optimization.modifier.launchlug.length.desc = \u4f18\u5316\u53d1\u5c04\u5bfc\u5411\u7b52\u957f\u5ea6. +optimization.modifier.launchlug.outerDiameter = \u5916\u76f4\u5f84 +optimization.modifier.launchlug.outerDiameter.desc = \u4f18\u5316\u53d1\u5c04\u5bfc\u5411\u7b52\u7684\u5916\u76f4\u5f84. +optimization.modifier.launchlug.thickness = \u539a\u5ea6 +optimization.modifier.launchlug.thickness.desc = \u4f18\u5316\u5bfc\u5411\u7b52\u539a\u5ea6\u4f46\u662f\u4fdd\u6301\u5916\u76f4\u5f84. +optimization.modifier.launchlug.position = \u4f4d\u7f6e +optimization.modifier.launchlug.position.desc = \u4f18\u5316\u5bfc\u5411\u7b52\u5728\u7bad\u4f53\u4e0a\u7684\u4f4d\u7f6e. + + +optimization.modifier.internalcomponent.position = \u4f4d\u7f6e +optimization.modifier.internalcomponent.position.desc = \u4f18\u5316\u7ec4\u4ef6\u76f8\u5bf9\u4e8e\u7236\u7ec4\u4ef6\u7684\u4f4d\u7f6e. + +optimization.modifier.masscomponent.mass = \u8d28\u91cf +optimization.modifier.masscomponent.mass.desc = \u4f18\u5316\u8d28\u91cf\u7ec4\u4ef6. + +optimization.modifier.parachute.diameter = \u76f4\u5f84 +optimization.modifier.parachute.diameter.desc = \u4f18\u5316\u964d\u843d\u4f1e\u4f1e\u8863\u76f4\u5f84. +optimization.modifier.parachute.coefficient = \u963b\u529b\u7cfb\u6570 +optimization.modifier.parachute.coefficient.desc = \u4f18\u5316\u964d\u843d\u4f1e\u963b\u529b\u7cfb\u6570. \u964d\u843d\u4f1e\u963b\u529b\u7cfb\u6570\u4e00\u822c\u4e3a0.8. + +optimization.modifier.streamer.length = \u957f\u5ea6 +optimization.modifier.streamer.length.desc = \u4f18\u5316\u98d8\u5e26\u957f\u5ea6. +optimization.modifier.streamer.width = \u5bbd\u5ea6 +optimization.modifier.streamer.width.desc = \u4f18\u5316\u98d8\u5e26\u5bbd\u5ea6. +optimization.modifier.streamer.aspectRatio = \u957f\u5bbd\u6bd4 +optimization.modifier.streamer.aspectRatio.desc = \u4f18\u5316\u98d8\u5e26\u957f\u5bbd\u6bd4 (\u957f\u5ea6/\u5bbd\u5ea6). \u8be5\u6570\u503c\u4e0d\u80fd\u540c\u65f6\u5e94\u7528\u5728\u957f\u5ea6\u6216\u8005\u5bbd\u5ea6\u4e0a. +optimization.modifier.streamer.coefficient = \u963b\u529b\u7cfb\u6570 +optimization.modifier.streamer.coefficient.desc = \u4f18\u5316\u98d8\u5e26\u963b\u529b\u7cfb\u6570. + +optimization.modifier.recoverydevice.deployDelay = \u6fc0\u53d1\u5ef6\u65f6 +optimization.modifier.recoverydevice.deployDelay.desc = \u4f18\u5316\u56de\u6536\u8bbe\u5907\u6fc0\u53d1\u5ef6\u65f6. +optimization.modifier.recoverydevice.deployAltitude = \u6fc0\u53d1\u9ad8\u5ea6 +optimization.modifier.recoverydevice.deployAltitude.desc = \u4f18\u5316\u56de\u6536\u8bbe\u5907\u6fc0\u53d1\u9ad8\u5ea6. + +optimization.modifier.rocketcomponent.overrideMass = \u8986\u5199\u8d28\u91cf +optimization.modifier.rocketcomponent.overrideMass.desc = \u4f18\u5316\u7ec4\u4ef6\u8986\u5199\u8d28\u91cf. +optimization.modifier.rocketcomponent.overrideCG = \u8986\u5199\u91cd\u5fc3 +optimization.modifier.rocketcomponent.overrideCG.desc = \u4f18\u5316\u7ec4\u4ef6\u8986\u5199\u91cd\u5fc3. + +optimization.modifier.motormount.overhang = \u53d1\u52a8\u673a\u7a81\u51fa +optimization.modifier.motormount.overhang.desc = \u4f18\u5316\u53d1\u52a8\u673a\u7a81\u51fa. +optimization.modifier.motormount.delay = \u53d1\u52a8\u673a\u70b9\u706b\u5ef6\u65f6 +optimization.modifier.motormount.delay.desc = \u4f18\u5316\u53d1\u52a8\u673a\u70b9\u706b\u5ef6\u65f6. + + + + +! General rocket design optimization dialog + +GeneralOptimizationDialog.title = \u706b\u7bad\u4f18\u5316 +GeneralOptimizationDialog.goal.maximize = \u6700\u5927\u503c +GeneralOptimizationDialog.goal.minimize = \u6700\u5c0f\u503c +GeneralOptimizationDialog.goal.seek = \u76ee\u6807\u503c +GeneralOptimizationDialog.btn.start = \u5f00\u59cb\u53c2\u6570\u4f18\u5316 +GeneralOptimizationDialog.btn.stop = \u505c\u6b62\u53c2\u6570\u4f18\u5316 +GeneralOptimizationDialog.lbl.paramsToOptimize = \u4f18\u5316\u53c2\u6570: +GeneralOptimizationDialog.btn.add = \u6dfb\u52a0 +GeneralOptimizationDialog.btn.add.ttip = \u6dfb\u52a0\u9009\u62e9\u53c2\u6570\u5230\u4f18\u5316\u5217\u8868 +GeneralOptimizationDialog.btn.remove = \u79fb\u9664 +GeneralOptimizationDialog.btn.remove.ttip = \u79fb\u9664\u4f18\u5316\u5217\u8868\u4e2d\u7684\u53c2\u6570 +GeneralOptimizationDialog.btn.removeAll = \u79fb\u9664\u6240\u6709 +GeneralOptimizationDialog.btn.removeAll.ttip = \u79fb\u9664\u4f18\u5316\u5217\u8868\u4e2d\u7684\u6240\u6709\u53c2\u6570 +GeneralOptimizationDialog.lbl.availableParams = \u53ef\u7528\u53c2\u6570: +GeneralOptimizationDialog.lbl.optimizationOpts = \u4f18\u5316\u9009\u9879 +GeneralOptimizationDialog.lbl.optimizeSim = \u4f18\u5316\u4eff\u771f: +GeneralOptimizationDialog.lbl.optimizeSim.ttip = \u9009\u62e9\u9700\u8981\u4f18\u5316\u7684\u4eff\u771f +GeneralOptimizationDialog.lbl.optimizeValue = \u4f18\u5316\u6307\u6807: +GeneralOptimizationDialog.lbl.optimizeValue.ttip = \u9009\u62e9\u9700\u8981\u4f18\u5316\u7684\u6307\u6807 +GeneralOptimizationDialog.lbl.optimizeGoal = \u4f18\u5316\u76ee\u6807: +GeneralOptimizationDialog.lbl.optimizeGoal.ttip = \u9009\u62e9\u9700\u8981\u4f18\u5316\u7684\u76ee\u6807 +GeneralOptimizationDialog.lbl.optimizeGoalValue.ttip = \u786e\u5b9a\u76ee\u6807\u503c +GeneralOptimizationDialog.lbl.requireStability = \u7a33\u5b9a\u6027\u9700\u6c42 +GeneralOptimizationDialog.lbl.requireMinStability = \u6700\u5c0f\u7a33\u5b9a\u6027: +GeneralOptimizationDialog.lbl.requireMinStability.ttip = \u9700\u8981\u5b9a\u4e49\u8bbe\u8ba1\u7684\u6700\u5c0f\u9759\u7a33\u5b9a\u6027\u8fb9\u754c +GeneralOptimizationDialog.lbl.requireMaxStability = \u6700\u5927\u7a33\u5b9a\u6027: +GeneralOptimizationDialog.lbl.requireMaxStability.ttip = \u9700\u8981\u5b9a\u4e49\u8bbe\u8ba1\u7684\u6700\u5927\u9759\u7a33\u5b9a\u6027\u8fb9\u754c +GeneralOptimizationDialog.status.bestValue = \u6700\u4f73\u503c: +GeneralOptimizationDialog.status.bestValue.ttip = \u76ee\u524d\u5f97\u5230\u7684\u6700\u4f73\u4f18\u5316\u503c. +GeneralOptimizationDialog.status.stepCount = \u4f18\u5316\u6b65\u6570: +GeneralOptimizationDialog.status.stepCount.ttip = \u5df2\u6267\u884c\u7684\u4f18\u5316\u6b65\u6570. +GeneralOptimizationDialog.status.evalCount = \u8bc4\u4f30\u6b21\u6570: +GeneralOptimizationDialog.status.evalCount.ttip = \u5df2\u6267\u884c\u7684\u8bc4\u4f30\u6b21\u6570. +GeneralOptimizationDialog.status.stepSize = \u6b65\u957f\u5927\u5c0f: +GeneralOptimizationDialog.status.stepSize.ttip = \u76ee\u524d\u4f18\u5316\u6b65\u957f\u5927\u5c0f (\u76f8\u5bf9\u4e8e\u4f18\u5316\u53c2\u6570\u8303\u56f4) +GeneralOptimizationDialog.btn.plotPath = \u7ed8\u5236\u4f18\u5316\u8def\u5f84 +GeneralOptimizationDialog.btn.plotPath.ttip = \u7ed8\u5236\u4f18\u5316\u8def\u5f84 (\u4ec5\u4f7f\u75281\u7ef4\u548c2\u7ef4\u4f18\u5316) +GeneralOptimizationDialog.btn.save = \u4fdd\u5b58\u4f18\u5316\u8def\u5f84 +GeneralOptimizationDialog.btn.save.ttip = \u4fdd\u5b58\u6a21\u62df\u7684\u51fd\u6570\u8ba1\u7b97\u503c\u5230 CSV \u6587\u4ef6. +GeneralOptimizationDialog.btn.apply = \u5e94\u7528\u4f18\u5316 +GeneralOptimizationDialog.btn.apply.ttip = \u5e94\u7528\u4f18\u5316\u7ed3\u679c\u5230\u706b\u7bad\u8bbe\u8ba1\u4e2d +GeneralOptimizationDialog.btn.reset = \u91cd\u7f6e +GeneralOptimizationDialog.btn.reset.ttip = \u91cd\u7f6e\u706b\u7bad\u8bbe\u8ba1\u4e3a\u5f53\u524d\u706b\u7bad\u8bbe\u8ba1 +GeneralOptimizationDialog.btn.close = \u5173\u95ed +GeneralOptimizationDialog.btn.close.ttip = \u5173\u95ed\u7a97\u53e3\u4e0d\u6539\u53d8\u706b\u7bad\u8bbe\u8ba1 +GeneralOptimizationDialog.error.selectParams.text = \u8bf7\u9996\u5148\u9009\u62e9\u53ef\u7528\u4f18\u5316\u53c2\u6570. +GeneralOptimizationDialog.error.selectParams.title = \u786e\u5b9a\u4f18\u5316\u53c2\u6570 +GeneralOptimizationDialog.error.optimizationFailure.text = \u4f18\u5316\u8fd0\u884c\u5931\u8d25: +GeneralOptimizationDialog.error.optimizationFailure.title = \u4f18\u5316\u5931\u8d25 +GeneralOptimizationDialog.undoText = \u5e94\u7528\u4f18\u5316 +GeneralOptimizationDialog.basicSimulationName = \u57fa\u672c\u4eff\u771f +GeneralOptimizationDialog.noSimulationName = \u6ca1\u6709\u4eff\u771f +GeneralOptimizationDialog.table.col.parameter = \u53c2\u6570 +GeneralOptimizationDialog.table.col.current = \u76ee\u524d\u503c +GeneralOptimizationDialog.table.col.min = \u6700\u5c0f\u503c +GeneralOptimizationDialog.table.col.max = \u6700\u5927\u503c +GeneralOptimizationDialog.export.header = \u5305\u62ec\u6807\u9898\u884c +GeneralOptimizationDialog.export.header.ttip = \u6807\u9898\u884c\u8bb0\u5f55\u4e86\u6570\u636e\u57df\u63cf\u8ff0. +GeneralOptimizationDialog.export.stability = \u7a33\u5b9a\u6027 + + +! Dialog for plotting optimization results +OptimizationPlotDialog.title = \u4f18\u5316\u7ed3\u679c +OptimizationPlotDialog.lbl.zoomInstructions = \u70b9\u4e2d\u540c\u65f6\u5411\u53f3\u62d6\u52a8\u653e\u5927, \u5411\u5de6\u62d6\u52a8\u7f29\u5c0f +OptimizationPlotDialog.plot1d.title = \u4f18\u5316\u7ed3\u679c +OptimizationPlotDialog.plot1d.series = \u4f18\u5316\u7ed3\u679c +OptimizationPlotDialog.plot2d.title = \u4f18\u5316\u8def\u5f84 +OptimizationPlotDialog.plot2d.path = \u4f18\u5316\u8def\u5f84 +OptimizationPlotDialog.plot2d.evals = \u76ee\u6807\u51fd\u6570\u8ba1\u7b97 +OptimizationPlotDialog.plot.ttip.stability = \u7a33\u5b9a\u6027: +OptimizationPlotDialog.plot.label.optimum = \u6700\u4f18\u503c + +! Optimization parameters +MaximumAltitudeParameter.name = \u6700\u9ad8\u70b9\u9ad8\u5ea6 +MaximumVelocityParameter.name = \u6700\u5927\u901f\u5ea6 +MaximumAccelerationParameter.name = \u6700\u5927\u52a0\u901f\u5ea6 +StabilityParameter.name = \u7a33\u5b9a\u6027 +GroundHitVelocityParameter.name = \u649e\u51fb\u5730\u9762\u901f\u5ea6 +LandingDistanceParameter.name = \u843d\u5730\u8ddd\u79bb +TotalFlightTimeParameter.name = \u603b\u98de\u884c\u65f6\u95f4 +DeploymentVelocityParameter.name = \u964d\u843d\u4f1e\u91ca\u653e\u65f6\u901f\u5ea6 + + +! Compass directions drawn on a compass rose. +CompassRose.lbl.north = N +CompassRose.lbl.east = E +CompassRose.lbl.south = S +CompassRose.lbl.west = W + +! Compass directions with subdirections. These might not be localized even if the directions on the compass rose are. +CompassSelectionButton.lbl.N = N +CompassSelectionButton.lbl.NE = NE +CompassSelectionButton.lbl.E = E +CompassSelectionButton.lbl.SE = SE +CompassSelectionButton.lbl.S = S +CompassSelectionButton.lbl.SW = SW +CompassSelectionButton.lbl.W = W +CompassSelectionButton.lbl.NW = NW + + +SlideShowDialog.btn.next = \u4e0b\u4e00\u9875 +SlideShowDialog.btn.prev = \u4e0a\u4e00\u9875 + +SlideShowLinkListener.error.title = \u6ca1\u6709\u627e\u5230\u76f8\u5173\u6559\u7a0b +SlideShowLinkListener.error.msg = \u5f88\u62b1\u6b49, \u6240\u9009\u7684\u6559\u7a0b\u8fd8\u672a\u5b8c\u6210. + +GuidedTourSelectionDialog.title = \u6307\u5bfc\u6559\u7a0b +GuidedTourSelectionDialog.lbl.selectTour = \u9009\u62e9\u6307\u5bfc\u6559\u7a0b: +GuidedTourSelectionDialog.lbl.description = \u6559\u7a0b\u63cf\u8ff0: +GuidedTourSelectionDialog.lbl.length = \u5e7b\u706f\u7247\u9875\u6570: +GuidedTourSelectionDialog.btn.start = \u5f00\u59cb\u6559\u7a0b! + + +! Custom Fin BMP Importer +CustomFinImport.button.label = \u5bfc\u5165\u56fe\u7247\u6587\u4ef6 +CustomFinImport.badFinImage = \u65e0\u6548\u5c3e\u7ffc\u56fe\u7247. \u8bf7\u786e\u8ba4\u7a33\u5b9a\u7ffc\u533a\u57df\u4e3a\u6df1\u8272\u5e76\u4e14\u548c\u56fe\u7247\u5e95\u8fb9\u63a5\u58e4. +CustomFinImport.errorLoadingFile = \u6587\u4ef6\u8bfb\u53d6\u9519\u8bef: +CustomFinImport.errorParsingFile = \u89e3\u6790\u5c3e\u7ffc\u56fe\u7247\u662f\u53d1\u751f\u9519\u8bef: +CustomFinImport.undo = \u5bfc\u5165\u66f2\u9762\u7a33\u5b9a\u7ffc\u5f62\u72b6 +CustomFinImport.error.title = \u8bfb\u53d6\u7ffc\u6570\u636e\u51fa\u9519 +CustomFinImport.error.badimage = \u65e0\u6cd5\u4ece\u56fe\u50cf\u7f29\u51cf\u7a33\u5b9a\u7ffc\u5f62\u72b6. +CustomFinImport.description = \u56fe\u50cf\u5c06\u4f1a\u88ab\u8f6c\u6362\u4e3a\u9ed1\u767d\u56fe\u50cf(\u7a33\u5b9a\u7ffc\u4e3a\u9ed1\u8272\u533a\u57df), \u8bf7\u4fdd\u8bc1\u6df1\u8272\u533a\u57df\u4e3a\u7a33\u5b9a\u7ffc, \u6d45\u8272\u533a\u57df\u4e3a\u80cc\u666f. \u7a33\u5b9a\u7ffc\u5fc5\u987b\u548c\u56fe\u7247\u5e95\u8fb9\u63a5\u58e4\uff0c\u63a5\u89e6\u533a\u57df\u5373\u662f\u7a33\u5b9a\u7ffc\u4e0e\u7bad\u4f53\u7684\u8fde\u63a5\u70b9. + + +PresetModel.lbl.select = \u9009\u62e9\u9884\u8bbe +PresetModel.lbl.database = \u4ece\u6570\u636e\u5e93... + +DecalModel.lbl.select = <\u65e0> +DecalModel.lbl.choose = \u4ece\u6587\u4ef6... + +! Export Decal Dialog +ExportDecalDialog.title = \u5bfc\u51fa\u8d34\u82b1 +ExportDecalDialog.decalList.lbl = \u8d34\u82b1 +ExportDecalDialog.exception = \u65e0\u6cd5\u4fdd\u5b58\u8d34\u82b1\u5230\u6587\u4ef6 ''{0}'' + +! Component Preset Chooser Dialog +ComponentPresetChooserDialog.title = \u9009\u62e9\u7ec4\u4ef6\u9884\u8bbe +ComponentPresetChooserDialog.filter.label = \u6587\u672c\u8fc7\u6ee4: +ComponentPresetChooserDialog.checkbox.filterAftDiameter = \u5339\u914d\u540e\u76f4\u5f84 +ComponentPresetChooserDialog.checkbox.filterForeDiameter = \u5339\u914d\u524d\u76f4\u5f84 +ComponentPresetChooserDialog.menu.sortAsc = \u5347\u5e8f +ComponentPresetChooserDialog.menu.sortDesc = \u964d\u5e8f +ComponentPresetChooserDialog.menu.units = \u5355\u4f4d +ComponentPresetChooserDialog.checkbox.showAllCompatible = \u663e\u793a\u6240\u6709\u517c\u5bb9\u7ec4\u4ef6 +ComponentPresetChooserDialog.lbl.favorites = \u6dfb\u52a0\u5230\u9884\u8bbe\u4e0b\u62c9\u6846 +table.column.Favorite = \u6536\u85cf +table.column.Manufacturer = \u5236\u9020\u5546 +table.column.PartNo = \u578b\u53f7 +table.column.Description = \u7b80\u4ecb +table.column.Type = \u7c7b\u578b +table.column.Length = \u957f +table.column.Width = \u5bbd +table.column.InnerDiameter = \u5185\u76f4\u5f84 +table.column.OuterDiameter = \u5916\u76f4\u5f84 +table.column.AftOuterDiameter = \u524d\u90e8\u5916\u76f4\u5f84 +table.column.AftShoulderLength = \u524d\u90e8\u8fde\u63a5\u5668\u957f\u5ea6 +table.column.AftShoulderDiameter = \u524d\u90e8\u8fde\u63a5\u5668\u76f4\u5f84 +table.column.ForeShoulderLength = \u540e\u90e8\u8fde\u63a5\u5668\u957f\u5ea6 +table.column.ForeShoulderDiameter = \u540e\u90e8\u8fde\u63a5\u5668\u76f4\u5f84 +table.column.ForeOuterDiameter = \u540e\u90e8\u5916\u76f4\u5f84 +table.column.Shape = \u5f62\u72b6 +table.column.Material = \u6750\u6599 +table.column.Finish = \u8868\u9762\u5904\u7406 +table.column.Thickness = \u539a\u5ea6 +table.column.Filled = \u5b9e\u5fc3 +table.column.Mass = \u8d28\u91cf +table.column.Diameter = \u76f4\u5f84 +table.column.Sides = \u8fb9\u957f +table.column.LineCount = \u7ef3\u7d22\u6570\u91cf +table.column.LineLength = \u7ef3\u7d22\u957f\u5ea6 +table.column.LineMaterial = \u7ef3\u7d22\u6750\u6599 + +! Edit Decal Dialog +EditDecalDialog.title = \u7f16\u8f91\u8d34\u82b1 +EditDecalDialog.lbl.prompt = \u8be2\u95ee\u7528\u6237 +EditDecalDialog.lbl.select = \u9009\u62e9\u7f16\u8f91\u5668 +EditDecalDialog.lbl.system = \u4f7f\u7528\u9ed8\u8ba4\u7f16\u8f91\u5668 +EditDecalDialog.lbl.cmdline = \u547d\u4ee4\u884c +EditDecalDialog.lbl.cmdline.help = \u6587\u4ef6\u540d\u5c06\u88ab\u8f6c\u6362\u4e3a ''%%'' +EditDecalDialog.lbl.always = \u603b\u4f7f\u7528\u8fd9\u4e9b\u8bbe\u7f6e +EditDecalDialog.btn.chooser = \u9009\u62e9\u56fe\u7247\u7f16\u8f91\u7a0b\u5e8f +EditDecalHelper.createFileException = \u65e0\u6cd5\u521b\u5efa\u4e34\u65f6\u6587\u4ef6 {0} +EditDecalHelper.launchSystemEditorException = \u65e0\u6cd5\u542f\u52a8\u7cfb\u7edf\u56fe\u7247\u7f16\u8f91\u7a0b\u5e8f +EditDecalHelper.launchCustomEditorException = C\u65e0\u6cd5\u6839\u636e\u547d\u4ee4 ''{0}'' \u6765\u542f\u52a8\u56fe\u7247\u7f16\u8f91\u7a0b\u5e8f +EditDecalHelper.editPreferencesHelp = \u56fe\u7247\u7f16\u8f91\u7a0b\u5e8f\u53ef\u4ee5\u5728\u9996\u9009\u9879\u4e2d\u4fee\u6539. + +MotorConfigurationPanel.lbl.motorMounts = \u53d1\u52a8\u673a\u5ea7: +MotorConfigurationPanel.lbl.motorConfiguration = \u53d1\u52a8\u673a\u914d\u7f6e: +MotorConfigurationPanel.btn.removeMotor = \u79fb\u9664\u53d1\u52a8\u673a +MotorConfigurationPanel.btn.selectMotor = \u9009\u62e9\u53d1\u52a8\u673a +MotorConfigurationPanel.btn.selectIgnition = \u9009\u62e9\u70b9\u706b +MotorConfigurationPanel.btn.resetIgnition = \u91cd\u7f6e\u70b9\u706b + +MotorConfigurationTableModel.table.ignition.default = \u9ed8\u8ba4 ({0}) +RecoveryConfigurationPanel.table.deployment.default = \u9ed8\u8ba4 ({0}) +SeparationConfigurationPanel.table.separation.default = \u9ed8\u8ba4 ({0}) + +IgnitionSelectionDialog.opt.title = \u53d7\u5230\u5f71\u54cd\u7684\u98de\u884c\u914d\u7f6e: +IgnitionSelectionDialog.opt.default = \u6839\u636e\u9ed8\u8ba4\u70b9\u706b\u4e8b\u4ef6\u66f4\u65b0\u6240\u6709\u914d\u7f6e +IgnitionSelectionDialog.opt.override = \u4ec5\u66f4\u65b0 {0} \u98de\u884c\u914d\u7f6e + +DeploymentSelectionDialog.opt.title = \u53d7\u5230\u5f71\u54cd\u7684\u98de\u884c\u914d\u7f6e: +DeploymentSelectionDialog.opt.default = \u6839\u636e\u9ed8\u8ba4\u91ca\u653e\u4e8b\u4ef6\u66f4\u65b0\u6240\u6709\u914d\u7f6e +DeploymentSelectionDialog.opt.override = \u4ec5\u66f4\u65b0 {0} \u98de\u884c\u914d\u7f6e + +SeparationSelectionDialog.opt.title = \u53d7\u5230\u5f71\u54cd\u7684\u98de\u884c\u914d\u7f6e: +SeparationSelectionDialog.opt.default = \u6839\u636e\u9ed8\u8ba4\u5206\u79bb\u4e8b\u4ef6\u66f4\u65b0\u6240\u6709\u914d\u7f6e +SeparationSelectionDialog.opt.override = \u4ec5\u66f4\u65b0 {0} \u98de\u884c\u914d\u7f6e + +MotorConfigurationPanel.description = \u9009\u62e9\u53d1\u52a8\u673a\u4ee5\u53ca\u70b9\u706b\u4e8b\u4ef6\u5e94\u7528\u4e0e\u5f53\u524d\u914d\u7f6e.
\u53d1\u52a8\u673a\u5ea7: \u9009\u62e9\u4f5c\u4e3a\u53d1\u52a8\u673a\u5ea7\u7684\u7ec4\u4ef6.
\u53d1\u52a8\u673a\u914d\u7f6e: \u4e3a\u6bcf\u4e00\u4e2a\u53d1\u52a8\u673a\u5ea7\u9009\u62e9\u53d1\u52a8\u673a\u53ca\u70b9\u706b\u4e8b\u4ef6. + +MotorDescriptionSubstitutor.description = \u914d\u7f6e\u9009\u9879\u4e2d\u7684\u53d1\u52a8\u673a \ No newline at end of file diff --git a/core/resources/pix/translators/logoKCSASimplifiedChinese.png b/core/resources/pix/translators/logoKCSASimplifiedChinese.png new file mode 100644 index 000000000..fb860bf6c Binary files /dev/null and b/core/resources/pix/translators/logoKCSASimplifiedChinese.png differ diff --git a/swing/src/net/sf/openrocket/gui/util/SwingPreferences.java b/swing/src/net/sf/openrocket/gui/util/SwingPreferences.java index 9bdb5f2e9..5b03fc056 100644 --- a/swing/src/net/sf/openrocket/gui/util/SwingPreferences.java +++ b/swing/src/net/sf/openrocket/gui/util/SwingPreferences.java @@ -45,6 +45,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences { for (String lang : new String[] { "en", "de", "es", "fr", "it", "ru", "cs", "pl", "ja", "pt" }) { list.add(new Locale(lang)); } + list.add(new Locale("zh","CN")); SUPPORTED_LOCALES = Collections.unmodifiableList(list); }