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);
}