diff --git a/core/resources/l10n/messages_zh_CN.properties b/core/resources/l10n/messages_zh_CN.properties
index 364cddaac..28ad7cd47 100644
--- a/core/resources/l10n/messages_zh_CN.properties
+++ b/core/resources/l10n/messages_zh_CN.properties
@@ -1,5 +1,3 @@
-#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
-#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
#
# Simplified Chinese translation file
#
@@ -9,1970 +7,2038 @@
#
#
# Text tokens within braces should not be translated, e.g.
-# "The file '{filename}' exists."
+# "The file '{filename}' exists."
# They are pieces that are inserted dynamically.
#
+
+! Set to the name of the current translation file (used for debugging purposes)
+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\uff0c\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\u914d\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 = \u672a\u4fdd\u5b58
+BasicFrame.StageName.Sustainer = \u4e3b\u53d1\u52a8\u673a
+BasicFrame.WarningDialog.txt1 = \u6253\u5f00\u8bbe\u8ba1\u7a3f\u65f6\u53d1\u751f\u4ee5\u4e0b\u95ee\u9898
+BasicFrame.WarningDialog.txt2 = \u90e8\u5206\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 = \u786e\u5b9a
+button.cancel = \u53d6\u6d88
+button.close = \u5173\u95ed
+
+! Common labels used in buttons of dialog windows
+dlg.but.ok = \u786e\u5b9a
+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.translatorIcon = logoKCSASimplifiedChinese.png
+AboutDialog.lbl.translation = \u7b80\u4f53\u4e2d\u6587\u7ffb\u8bd1:
+AboutDialog.lbl.translator = Yilun Zhu
AboutDialog.lbl.translatorWebsite = http://sa.kechuang.org/
-! About Dialog
-AboutDialog.lbl.version = \u7248\u672C
+AboutDialog.lbl.translatorIcon = logoKCSASimplifiedChinese.png
-AppearanceCfg.but.edit = \u7F16\u8F91
-AppearanceCfg.but.savedefault = \u8BBE\u4E3A\u9ED8\u8BA4\u5916\u89C2
-! AppearanceConfig
-AppearanceCfg.lbl.Appearance = \u5916\u89C2
-AppearanceCfg.lbl.Texture = \u7EB9\u7406:
-AppearanceCfg.lbl.Usedefault = \u4F7F\u7528\u9ED8\u8BA4
-AppearanceCfg.lbl.color.Color = \u8272\u5F69:
-AppearanceCfg.lbl.color.ambient = \u73AF\u5883\u8272:
-AppearanceCfg.lbl.color.diffuse = \u6269\u6563\u8272\u5F69:
-AppearanceCfg.lbl.color.specular = \u9AD8\u5149\u989C\u8272:
-AppearanceCfg.lbl.shine = \u5149\u4EAE:
-AppearanceCfg.lbl.texture.center = \u5C45\u4E2D:
-AppearanceCfg.lbl.texture.offset = \u4F4D\u79FB:
-AppearanceCfg.lbl.texture.repeat = \u91CD\u590D:
-AppearanceCfg.lbl.texture.rotation = \u65CB\u8F6C:
-AppearanceCfg.lbl.texture.scale = \u7F29\u653E:
-BasicEventSimulationEngine.error.NaNResult = \u6A21\u62DF\u7ED3\u679C\u975E\u6570\u503C,\u8BF7\u6C47\u62A5bug
-BasicEventSimulationEngine.error.earlyMotorBurnout = \u53D1\u52A8\u673A\u8D77\u98DE\u524D\u5DF2\u71C3\u5C3D.
-BasicEventSimulationEngine.error.noIgnition = \u53D1\u52A8\u673A\u672A\u70B9\u706B
-BasicEventSimulationEngine.error.noMotorsDefined = \u53D1\u52A8\u673A\u672A\u5B9A\u4E49
+! Print dialog
+PrintDialog.title = \u6253\u5370/\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\u4e3aPDF
+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
-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)
-BasicFrame.StageName.Sustainer = \u4E3B\u53D1\u52A8\u673A
-BasicFrame.WarningDialog.title = \u6253\u5F00\u6587\u4EF6\u65F6\u8B66\u544A
-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.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.item.Closedesign = \u5173\u95ED\u5F53\u524D\u8BBE\u8BA1\u7A3F
-BasicFrame.item.Openexamplerocketdesign = \u6253\u5F00\u8303\u4F8B\u8BBE\u8BA1\u7A3F
-BasicFrame.item.Openrecentrocketdesign = \u6253\u5F00\u6700\u8FD1\u706B\u7BAD\u8BBE\u8BA1\u7A3F
-BasicFrame.item.Openrocketdesign = \u6253\u5F00\u706B\u7BAD\u8BBE\u8BA1\u7A3F
-BasicFrame.item.Quitprogram = \u9000\u51FA\u7A0B\u5E8F
-BasicFrame.item.SavecurRocketdesign = \u4FDD\u5B58\u5F53\u524D\u8BBE\u8BA1\u7A3F
-BasicFrame.item.SavecurRocketdesnewfile = \u4FDD\u5B58\u5F53\u524D\u8BBE\u8BA1\u7A3F\u5230\u65B0\u6587\u4EF6
-BasicFrame.menu.Rocketedt = \u7F16\u8F91\u706B\u7BAD\u8BBE\u8BA1
-BasicFrame.tab.Flightconfig = \u7EC4\u4EF6\u8BBE\u7F6E
-BasicFrame.tab.Flightsim = \u98DE\u884C\u4EFF\u771F
-! BasicFrame
-BasicFrame.tab.Rocketdesign = \u706B\u7BAD\u8BBE\u8BA1
-BasicFrame.title.Addnewcomp = \u6DFB\u52A0\u65B0\u7EC4\u4EF6
+!PrintSettingsDialog
+PrintSettingsDialog.title = \u6253\u5370\u8bbe\u7f6e
+PrintSettingsDialog.lbl.Templatefillcolor = \u6a21\u677f\u586b\u5145\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
-! BodyTube
-BodyTube.BodyTube = \u7BAD\u4F53
-BodyTubecfg.checkbox.Automatic = \u81EA\u52A8
-BodyTubecfg.checkbox.Filled = \u5B9E\u5FC3
-! Body Tube Config
-BodyTubecfg.lbl.Bodytubelength = \u7BAD\u4F53\u957F\u5EA6:
-BodyTubecfg.lbl.Innerdiameter = \u5185\u76F4\u5F84:
-BodyTubecfg.lbl.Outerdiameter = \u5916\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
+! 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!
+bugreport.dlg.successmsg3 = \u9519\u8bef\u62a5\u544a\u5df2\u53d1\u9001
+bugreport.dlg.connectedInternet = \u5982\u679c\u8fde\u63a5\u5230\u4e92\u8054\u7f51,\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
-! Bulkhead
-Bulkhead.Bulkhead = \u9694\u677F
-!RocketCompCfg.lbl.Length = \u957f\u5ea6:
-! BulkheadConfig
-BulkheadCfg.tab.Diameter = \u76F4\u5F84:
-BulkheadCfg.tab.General = \u5E38\u89C4
-BulkheadCfg.tab.Generalproperties = \u5E38\u89C4\u5C5E\u6027
-BulkheadCfg.tab.Thickness = \u539A\u5EA6:
+! Debug log dialog
+debuglogdlg.but.clear = \u6e05\u7a7a
+debuglogdlg.OpenRocketdebuglog = OpenRocket \u8c03\u8bd5\u65e5\u5fd7
+debuglogdlg.Displayloglines = \u663e\u793a\u65e5\u5fd7\u884c:
+debuglogdlg.Follow = \u8ddf\u968f
+debuglogdlg.col.Time = \u65f6\u95f4
+debuglogdlg.col.Level = \u7ea7\u522b
+debuglogdlg.col.Location = \u4f4d\u7f6e
+debuglogdlg.col.Message = \u6d88\u606f
+debuglogdlg.lbl.Loglinenbr = \u65e5\u5fd7\u884c\u53f7:
+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:
-! CenteringRing
-CenteringRing.CenteringRing = \u4E2D\u5FC3\u73AF
-CenteringRingCfg.tab.General = \u5E38\u89C4
-CenteringRingCfg.tab.Generalproperties = \u5E38\u89C4\u5C5E\u6027
-CenteringRingCfg.tab.Innerdiam = \u5185\u76F4\u5F84:
-!CenteringRingConfig
-CenteringRingCfg.tab.Outerdiam = \u5916\u76F4\u5F84:
-CenteringRingCfg.tab.Thickness = \u539A\u5EA6:
+! MotorChooserDialog
+MotorChooserDialog.title = \u9009\u62e9\u706b\u7bad\u53d1\u52a8\u673a
-CompassRose.lbl.east = E
-! Compass directions drawn on a compass rose.
-CompassRose.lbl.north = N
-CompassRose.lbl.south = S
-CompassRose.lbl.west = W
+! Edit Motor configuration dialog
+edtmotorconfdlg.col.configuration = \u914d\u7f6e
+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
-CompassSelectionButton.lbl.E = E
-! 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.NW = NW
-CompassSelectionButton.lbl.S = S
-CompassSelectionButton.lbl.SE = SE
-CompassSelectionButton.lbl.SW = SW
-CompassSelectionButton.lbl.W = W
+! 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
-ComponentCfgDlg.Modify = \u4FEE\u6539
-!ComponentConfigDialog
-ComponentCfgDlg.configuration = \u8BBE\u7F6E
+! 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
-ComponentIcons.Altimeter = \u9AD8\u5EA6\u8BA1
-ComponentIcons.Battery = \u7535\u6C60
-ComponentIcons.Bodytube = \u7BAD\u4F53
-ComponentIcons.Bulkhead = \u9694\u677F
-ComponentIcons.Centeringring = \u4E2D\u5FC3\u73AF
-ComponentIcons.Deploymentcharge = \u5F00\u4F1E\u836F
-ComponentIcons.Ellipticalfinset = \u692D\u5706\u7A33\u5B9A\u7FFC
-ComponentIcons.Engineblock = \u53D1\u52A8\u673A
-ComponentIcons.Flightcomputer = \u98DE\u63A7
-ComponentIcons.Freeformfinset = \u66F2\u9762\u7A33\u5B9A\u7FFC
-ComponentIcons.Innertube = \u5185\u7BA1
-ComponentIcons.Launchlug = \u53D1\u5C04\u8854\u5957
-ComponentIcons.Masscomponent = \u8D28\u91CF\u7EC4\u4EF6
-!ComponentIcons
-ComponentIcons.Nosecone = \u5934\u9525
-ComponentIcons.Parachute = \u964D\u843D\u4F1E
-ComponentIcons.Payload = \u6709\u6548\u8F7D\u8377
-ComponentIcons.Recoveryhardware = \u56DE\u6536\u8BBE\u5907
-ComponentIcons.Shockcord = \u51CF\u9707\u7D22
-ComponentIcons.Streamer = \u98D8\u5E26
-ComponentIcons.Tracker = \u8DDF\u8E2A\u5668
-ComponentIcons.Transition = \u7EA7\u95F4\u6BB5
-ComponentIcons.Trapezoidalfinset = \u68AF\u5F62\u7A33\u5B9A\u7FFC
-ComponentIcons.Tubecoupler = \u8FDE\u63A5\u5668
-ComponentIcons.Tubefinset = \u7BA1\u5F62\u7FFC
-ComponentIcons.disabled = (\u5DF2\u7981\u7528)
-ComponentPresetChooserDialog.checkbox.filterAftDiameter = \u5339\u914D\u540E\u76F4\u5F84
-ComponentPresetChooserDialog.checkbox.filterForeDiameter = \u5339\u914D\u524D\u76F4\u5F84
-ComponentPresetChooserDialog.checkbox.showAllCompatible = \u663E\u793A\u6240\u6709\u517C\u5BB9\u7EC4\u4EF6
-ComponentPresetChooserDialog.filter.label = \u6587\u672C\u8FC7\u6EE4:
-ComponentPresetChooserDialog.lbl.favorites = \u6DFB\u52A0\u5230\u9884\u8BBE\u4E0B\u62C9\u6846
-ComponentPresetChooserDialog.menu.sortAsc = \u5347\u5E8F
-ComponentPresetChooserDialog.menu.sortDesc = \u964D\u5E8F
-ComponentPresetChooserDialog.menu.units = \u5355\u4F4D
-! Component Preset Chooser Dialog
-ComponentPresetChooserDialog.title = \u9009\u62E9\u7EC4\u4EF6\u9884\u8BBE
+! 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\u73b0\u6709\u7684\u706b\u7bad\u8bbe\u8ba1
-ComponentTree.ttip.cgoverride = \u8986\u5199\u91CD\u5FC3
-ComponentTree.ttip.massoverride = \u8986\u5199\u91CD\u91CF
+!MaterialModel
+MaterialModel.title.Material = \u6750\u6599
+MaterialModel.title.Defcustmat = \u8bbe\u7f6e\u81ea\u5b9a\u4e49\u6750\u6599
-Configuration.lbl.override = \u8BE5\u53C2\u6570\u53EF\u5728\u4E0D\u540C\u7684\u8BBE\u7F6E\u6587\u4EF6\u4E2D\u88AB\u8986\u5199.
-CsvOptionPanel.separator.space = \u7A7A\u683C
-CsvOptionPanel.separator.tab = \u5236\u8868\u7B26(Tab)
+! Preference dialog
+pref.dlg.but.add = \u6dfb\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.Colors = \u663e\u793a:
+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.Design = \u8bbe\u8ba1
+pref.dlg.tab.Simulation = \u4eff\u771f
+pref.dlg.tab.Launch = \u53d1\u5c04
+pref.dlg.tab.Miscellaneousoptions = \u6742\u9879
+pref.dlg.lbl.RockSimWarning = \u4fdd\u5b58RockSim\u683c\u5f0f\u65f6\u663e\u793a\u8b66\u544a
-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.
-! Custom Fin BMP Importer
-CustomFinImport.button.label = \u5BFC\u5165\u56FE\u7247\u6587\u4EF6
-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.
-CustomFinImport.error.badimage = \u65E0\u6CD5\u4ECE\u56FE\u50CF\u63A8\u6D4B\u7A33\u5B9A\u7FFC\u5F62\u72B6.
-CustomFinImport.error.title = \u8BFB\u53D6\u7FFC\u6570\u636E\u51FA\u9519
-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
+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
-! Custom operator selector
-CustomOperatorSelector.title = \u9009\u62E9\u7B97\u5B50
+#N/A
+pref.dlg.ttip.DefaultMach1 = \u672c\u8bbe\u5b9a\u5c06\u5728\u4e0b\u6b21\u542f\u52a8OpenRocket\u65f6\u751f\u6548.
+#N/A
+
+pref.dlg.lbl.Positiontoinsert = \u65b0\u7ec4\u4ef6\u63d2\u5165\u4f4d\u7f6e:
+pref.dlg.lbl.Confirmdeletion = \u786e\u8ba4\u5220\u9664\u4eff\u771f:
+pref.dlg.checkbox.Runsimulations = \u5728\u67e5\u770b\u4eff\u771f\u9762\u677f\u65f6\u91cd\u65b0\u8fd0\u884c\u8fc7\u65f6\u7684\u4eff\u771f\u9879.
+pref.dlg.checkbox.Updateestimates = \u5728\u8bbe\u8ba1\u7a97\u53e3\u66f4\u65b0\u9884\u4f30\u7684\u98de\u884c\u53c2\u6570.
+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.Rocketinfofontsize = \u706b\u7bad\u8bbe\u8ba1\u9762\u677f\u7684\u6587\u5b57\u5927\u5c0f:
+pref.dlg.PrefFontSmall = \u5c0f
+pref.dlg.PrefFontMedium = \u4e2d
+pref.dlg.PrefFontLarge = \u5927
+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\u670d\u52a1\u5668\u65f6\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\u65f6\u751f\u6548
+
+PreferencesDialog.lbl.language = \u754c\u9762\u8bed\u8a00:
+PreferencesDialog.languages.default = \u7cfb\u7edf\u9ed8\u8ba4
+PreferencesDialog.lbl.languageEffect = \u8bed\u8a00\u8bbe\u7f6e\u5c06\u5728OpenRocket\u91cd\u542f\u540e\u751f\u6548
+
+generalprefs.lbl.language = \u754c\u9762\u8bed\u8a00
+generalprefs.languages.default = \u7cfb\u7edf\u9ed8\u8ba4
+generalprefs.lbl.languageEffect = \u65b0\u7684\u8bed\u8a00\u5c06\u5728\u4e0b\u6b21\u542f\u52a8OpenRocket\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.Winddirection = \u98ce\u5411:
+simedtdlg.lbl.ttip.Winddirection = \u98ce\u5411, 0-360\u5ea6.
0 \u662f\u5317\u98ce,
90 \u662f\u4e1c\u98ce
+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.checkbox.Intowind = \u603b\u662f\u987a\u98ce\u6216\u9006\u98ce\u53d1\u5c04
+simedtdlg.checkbox.ttip.Intowind1 = \u52fe\u9009\u540e\u53d1\u5c04\u6746\u5c06\u4f1a\u6307\u5411\u98ce\u5411.
+simedtdlg.checkbox.ttip.Intowind2 = 0\u89d2\u5ea6\u53d1\u5c04\u5373\u53d1\u5c04\u6746\u5782\u76f4\u5411\u4e0a.
+simedtdlg.checkbox.ttip.Intowind3 = \u8d1f\u53d1\u5c04\u6746\u89d2\u5ea6\u5c06\u987a\u98ce\u53d1\u5c04.
\u53d6\u6d88\u52fe\u9009\u672c\u9879\u540e\u4f60\u53ef\u4ee5\u6307\u5b9a\u4efb\u610f\u53d1\u5c04\u6746\u89d2\u5ea6.
+simedtdlg.checkbox.ttip.Intowind4 = \u53d6\u6d88\u52fe\u9009\u672c\u9879\u540e\u4f60\u53ef\u4ee5\u6307\u5b9a\u4efb\u610f\u53d1\u5c04\u6746\u89d2\u5ea6.
+simedtdlg.lbl.Angle = \u89d2\u5ea6:
+simedtdlg.lbl.ttip.Angle = \u53d1\u5c04\u67b6\u76f8\u5bf9\u4e8e\u5782\u76f4\u65b9\u5411\u7684\u89d2\u5ea6.
\u6b63\u89d2\u5ea6\u6307\u5411\u8fce\u98ce\u9762.
+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 = 0 = \u5317
+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\u7684\u6c14\u52a8\u529b\u8ba1\u7b97.
+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.SimExt = \u6a21\u62df\u6269\u5c55
+simedtdlg.SimExt.desc = \u6a21\u62df\u6269\u5c55\u80fd\u5728\u6a21\u62df\u8fc7\u7a0b\u4e2d\u542f\u7528\u9ad8\u7ea7\u7279\u6027\u4ee5\u53ca\u81ea\u5b9a\u4e49\u529f\u80fd. \u6bd4\u5982\u786c\u4ef6\u5728\u73af\u6d4b\u8bd5.
+simedtdlg.SimExt.noExtensions = \u65e0\u6269\u5c55\u5b9a\u4e49\u9879
+simedtdlg.SimExt.add = \u6dfb\u52a0\u6269\u5c55
+simedtdlg.SimExt.copyExtension = \u590d\u5236\u6269\u5c55
+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
+
+SimulationExtension.airstart.name.alt = Air-start ({alt})
+SimulationExtension.airstart.name.altvel = Air-start ({alt}, {vel})
+SimulationExtension.javacode.name = Java\u4ee3\u7801
+SimulationExtension.javacode.name.none = \u65e0
+SimulationExtension.javacode.desc = \u6dfb\u52a0\u81ea\u5b9a\u4e49SimulationListener(\u76d1\u542c\u4e8b\u4ef6)
+SimulationExtension.javacode.className = \u5b8c\u6574\u7684Java\u7c7b\u540d:
+
+SimulationExtension.scripting.name = {language}\u811a\u672c
+SimulationExtension.scripting.desc = \u81ea\u5b9a\u4e49OpenRocket\u6269\u5c55\u811a\u672c.
+SimulationExtension.scripting.language.label = \u8bed\u8a00:
+SimulationExtension.scripting.warning.disabled = \u4e0d\u53ef\u4fe1\u811a\u672c\u5df2\u88ab\u7981\u7528. \u4f60\u9700\u8981\u5728\u4eff\u771f\u9009\u9879\u4e2d\u624b\u52a8\u542f\u7528.
+SimulationExtension.scripting.text.enabled = \u542f\u7528\u811a\u672c
+SimulationExtension.scripting.text.enabled.ttip = \u811a\u672c\u53ea\u6709\u5728\u542f\u7528\u540e\u624d\u4f1a\u88ab\u6267\u884c.
+SimulationExtension.scripting.text.trusted = \u5728\u672c\u673a\u4e0a\u4fe1\u4efb\u8be5\u811a\u672c
+SimulationExtension.scripting.text.trusted.msg = \u4e0d\u53ef\u4fe1\u7684\u811a\u672c\u4f1a\u5728\u8bfb\u53d6\u65f6\u88ab\u7981\u7528
+SimulationExtension.scripting.text.trusted.clear = \u6e05\u9664\u811a\u672c\u4fe1\u4efb
+SimulationExtension.scripting.text.trusted.clear.ttip = \u6e05\u9664\u5bf9\u6240\u6709\u811a\u672c\u7684\u4fe1\u4efb
+SimulationExtension.scripting.text.trusted.cleared = \u6240\u6709\u811a\u672c\u5df2\u4e0d\u88ab\u672c\u673a\u4fe1\u4efb.
+SimulationExtension.scripting.text.trusted.cleared.title = \u5df2\u6e05\u9664
+
+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\u6240\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.OptimumCoastTime = \u6700\u957f\u5ef6\u6ede\u65f6\u95f4
+simpanel.col.OptimumCoastTime.ttip = \u4ece\u6700\u540e\u4e00\u7ea7\u53d1\u52a8\u673a\u71c3\u5c3d\u81f3\u8fbe\u5230\u6700\u9ad8\u9ad8\u5ea6\u7684\u65f6\u95f4.
+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 = \u65e0\u53ef\u7528\u7684\u4eff\u771f\u6570\u636e.
+simpanel.ttip.noWarnings = \u672a\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:
+
+BasicEventSimulationEngine.error.noMotorsDefined = \u53d1\u52a8\u673a\u672a\u5b9a\u4e49
+BasicEventSimulationEngine.error.earlyMotorBurnout = \u53d1\u52a8\u673a\u8d77\u98de\u524d\u5df2\u71c3\u5c3d.
+BasicEventSimulationEngine.error.noIgnition = \u53d1\u52a8\u673a\u672a\u70b9\u706b
+BasicEventSimulationEngine.error.NaNResult = \u6a21\u62df\u7ed3\u679c\u975e\u6570\u503c,\u8bf7\u6c47\u62a5bug
+
+
+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\u5176\u4ed6\u4eff\u771f\u4e2d\u73b0\u6709\u7684\u7684\u8868\u8fbe\u5f0f.
! Custom expression variable selector
-CustomVariableSelector.title = \u9009\u62E9\u53D8\u91CF
+CustomVariableSelector.title = \u9009\u62e9\u53d8\u91cf
-! Material database
-Databases.materials.types.Bulk = \u4F53
-Databases.materials.types.Line = \u7EBF
-Databases.materials.types.Surface = \u9762
+! Custom operator selector
+CustomOperatorSelector.title = \u9009\u62e9\u7b97\u5b50
-DecalModel.lbl.choose = \u4ECE\u6587\u4EF6...
-DecalModel.lbl.select = <\u65E0>
+! 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
-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
-DeploymentSelectionDialog.opt.title = \u53D7\u5230\u5F71\u54CD\u7684\u98DE\u884C\u914D\u7F6E:
+! 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
-DeploymentVelocityParameter.name = \u964D\u843D\u4F1E\u91CA\u653E\u65F6\u901F\u5EA6
+! Simulation plot panel
+simplotpanel.lbl.Presetplotconf = \u9884\u8bbe\u7ed8\u56fe\u8bbe\u7f6e:
+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
-EditDecalDialog.btn.chooser = \u9009\u62E9\u56FE\u7247\u7F16\u8F91\u7A0B\u5E8F
-EditDecalDialog.lbl.always = \u603B\u4F7F\u7528\u8FD9\u4E9B\u8BBE\u7F6E
-EditDecalDialog.lbl.cmdline = \u547D\u4EE4\u884C
-EditDecalDialog.lbl.cmdline.help = \u6587\u4EF6\u540D\u5C06\u88AB\u8F6C\u6362\u4E3A ''%%''
-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
-! Edit Decal Dialog
-EditDecalDialog.title = \u7F16\u8F91\u8D34\u82B1
+! 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.Tubefin = \u7ba1\u5f62\u7ffc
+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
-EditDecalHelper.createFileException = \u65E0\u6CD5\u521B\u5EFA\u4E34\u65F6\u6587\u4EF6 {0}
-EditDecalHelper.editPreferencesHelp = \u56FE\u7247\u7F16\u8F91\u7A0B\u5E8F\u53EF\u4EE5\u5728\u9996\u9009\u9879\u4E2D\u4FEE\u6539.
-EditDecalHelper.launchCustomEditorException = \u65E0\u6CD5\u6839\u636E\u53C2\u6570 ''{0}'' \u6765\u542F\u52A8\u56FE\u7247\u7F16\u8F91\u7A0B\u5E8F
-EditDecalHelper.launchSystemEditorException = \u65E0\u6CD5\u542F\u52A8\u7CFB\u7EDF\u56FE\u7247\u7F16\u8F91\u7A0B\u5E8F
+! 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.
-!EllipticalFinSet
-EllipticalFinSet.Ellipticalfinset = \u692D\u5706\u7A33\u5B9A\u7FFC
+! 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
-EllipticalFinSetCfg.Fincant = \u7A33\u5B9A\u7FFC\u9762\u89D2:
-EllipticalFinSetCfg.FincrossSection = \u7A33\u5B9A\u7FFC\u6A2A\u622A\u9762:
-EllipticalFinSetCfg.General = \u5E38\u89C4
-EllipticalFinSetCfg.Generalproperties = \u5E38\u89C4\u5C5E\u6027
-EllipticalFinSetCfg.Height = \u9AD8\u5EA6:
-!EllipticalFinSetConfig
-EllipticalFinSetCfg.Nbroffins = \u7A33\u5B9A\u7FFC\u6570\u91CF:
-EllipticalFinSetCfg.Positionrelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-EllipticalFinSetCfg.Rootchord = \u7FFC\u6839\u5F26\u957F:
-EllipticalFinSetCfg.Rotation = \u65CB\u5EA6:
-EllipticalFinSetCfg.Thickness = \u539A\u5EA6:
-EllipticalFinSetCfg.plus = \u52A0
-EllipticalFinSetCfg.ttip.Fincant = \u7A33\u5B9A\u7FFC\u7FFC\u9762\u4E0E\u7BAD\u4F53\u4E4B\u95F4\u7684\u5939\u89D2.
-! EngineBlock
-EngineBlock.EngineBlock = \u53D1\u52A8\u673A\u5757
+! 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).
-ExportDecalDialog.decalList.lbl = \u8D34\u82B1
-ExportDecalDialog.exception = \u65E0\u6CD5\u4FDD\u5B58\u8D34\u82B1\u5230\u6587\u4EF6 ''{0}''
-! Export Decal Dialog
-ExportDecalDialog.title = \u5BFC\u51FA\u8D34\u82B1
-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.
-ExpressionBuilderDialog.InsertOperator = \u63D2\u5165\u7B97\u5B50
-ExpressionBuilderDialog.InsertVariable = \u63D2\u5165\u53D8\u91CF
-ExpressionBuilderDialog.led.ttip.Expression = \u8868\u8FBE\u5F0F\u5FC5\u987B\u4F7F\u7528\u5B9A\u4E49\u8FC7\u7684\u7B26\u53F7\u548C\u7B97\u5B50
-ExpressionBuilderDialog.led.ttip.Name = \u540D\u79F0\u4E0D\u80FD\u91CD\u590D
-ExpressionBuilderDialog.led.ttip.Symbol = \u7B26\u53F7\u4E0D\u80FD\u91CD\u590D
-! Custom expression builder window
-ExpressionBuilderDialog.title = \u8868\u8FBE\u5F0F\u751F\u6210\u5668
+! 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
-ExternalComponent.Polished = \u629B\u5149
-ExternalComponent.Regularpaint = \u666E\u901A\u6D82\u6599
-! ExternalComponent
-ExternalComponent.Rough = \u7C97\u7CD9
-ExternalComponent.Smoothpaint = \u5149\u6ED1\u6D82\u6599
-ExternalComponent.Unfinished = \u7C97\u52A0\u5DE5
+! 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
+FinMarkingGuide.lbl.Front = \u524d
-FinSet.CrossSection.AIRFOIL = \u7FFC\u578B
-FinSet.CrossSection.ROUNDED = \u5706\u5F62
-! FinSet
-FinSet.CrossSection.SQUARE = \u77E9\u5F62
-FinSet.TabRelativePosition.CENTER = \u7FFC\u6839\u5F26\u4E2D\u70B9
-FinSet.TabRelativePosition.END = \u7FFC\u6839\u5F26\u540E\u7F18
-FinSet.TabRelativePosition.FRONT = \u7FFC\u6839\u5F26\u524D\u7F18
+! MotorDatabaseLoadingDialog
+MotorDbLoadDlg.title = \u8bfb\u53d6\u53d1\u52a8\u673a\u6570\u636e
+MotorDbLoadDlg.Loadingmotors = \u6b63\u5728\u8bfb\u53d6\u53d1\u52a8\u673a\u6570\u636e...
-FinSetCfg.lbl.Filletradius = \u63A5\u7F1D\u534A\u5F84:
-FinSetCfg.lbl.Finfilletmaterial = \u63A5\u7F1D\u6750\u6599:
+! 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:
-FinSetConfig.Convertfinset = \u8F6C\u6362\u7FFC
-FinSetConfig.but.AutoCalc = \u81EA\u52A8\u8BA1\u7B97
-FinSetConfig.but.Converttofreeform = \u8F6C\u4E3A\u81EA\u7531\u66F2\u9762
-FinSetConfig.but.Converttofreeform.ttip = \u5C06\u7FFC\u8F6C\u6362\u4E3A\u81EA\u7531\u66F2\u9762\u7FFC
-FinSetConfig.but.Splitfins = \u5206\u79BB\u7FFC
-FinSetConfig.but.Splitfins.ttip = \u5C06\u4E00\u4E2A\u7FFC\u5206\u6210\u591A\u4E2A\u7FFC
-FinSetConfig.lbl.Tabheight = \u677F\u9AD8:
-FinSetConfig.lbl.Tablength = \u677F\u957F:
-FinSetConfig.lbl.Tabposition = \u4F4D\u7F6E:
-FinSetConfig.lbl.Through-the-wall = \u7A7F\u8FC7\u7BA1\u58C1\u7684\u5C3E\u7FFC:
-FinSetConfig.lbl.relativeto = \u76F8\u5BF9\u4E8E
-! FinSetConfig
-FinSetConfig.tab.Fintabs = \u7A33\u5B9A\u7FFC
-FinSetConfig.tab.Through-the-wall = \u7A7F\u8FC7\u7BA1\u58C1\u7684\u5C3E\u7FFC
-FinSetConfig.ttip.Tabheight = \u7FFC\u5C55\u65B9\u5411\u7684\u9AD8\u5EA6.
-FinSetConfig.ttip.Tablength = \u7FFC\u677F\u7684\u957F\u5EA6.
-FinSetConfig.ttip.Tabposition = \u7FFC\u677F\u7684\u4F4D\u7F6E.
+! 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
-FinsetCfg.ttip.Finfillets1 = \u5C06\u9884\u4F30\u8D28\u91CF\u6DFB\u52A0\u5230\u7FFC\u6839\u90E8.
-FinsetCfg.ttip.Finfillets2 = \u5047\u5B9A\u63A5\u7F1D\u5185\u51F9\u4E14\u548C\u7BAD\u4F53\u3001\u7FFC\u677F\u76F8\u5207.
-FinsetCfg.ttip.Finfillets3 = \u65E0\u63A5\u7F1D\u60C5\u51B5\u4E0B\u5C06\u8BBE\u5B9A\u63A5\u7F1D\u534A\u5F84\u4E3A0.
+! 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:
-FlightDataType.TYPE_ACCELERATION_TOTAL = \u603B\u52A0\u901F\u5EA6
-FlightDataType.TYPE_ACCELERATION_XY = \u6A2A\u5411\u52A0\u901F\u5EA6
-FlightDataType.TYPE_ACCELERATION_Z = \u5782\u76F4\u52A0\u901F\u5EA6
-FlightDataType.TYPE_AIR_PRESSURE = \u7A7A\u6C14\u538B\u529B
-FlightDataType.TYPE_AIR_TEMPERATURE = \u7A7A\u6C14\u6E29\u5EA6
-FlightDataType.TYPE_ALTITUDE = \u9AD8\u5EA6
-FlightDataType.TYPE_AOA = \u653B\u89D2
-FlightDataType.TYPE_AXIAL_DRAG_COEFF = \u8F74\u5411\u963B\u529B\u7CFB\u6570
-FlightDataType.TYPE_BASE_DRAG_COEFF = \u57FA\u51C6\u963B\u529B\u7CFB\u6570
-FlightDataType.TYPE_CG_LOCATION = CG \u91CD\u5FC3\u4F4D\u7F6E
-FlightDataType.TYPE_COMPUTATION_TIME = \u8BA1\u7B97\u65F6\u95F4
-FlightDataType.TYPE_CORIOLIS_ACCELERATION = \u79D1\u91CC\u5965\u5229\u52A0\u901F\u5EA6
-FlightDataType.TYPE_CP_LOCATION = CP \u538B\u5FC3\u4F4D\u7F6E
-FlightDataType.TYPE_DRAG_COEFF = \u963B\u529B\u7CFB\u6570
-FlightDataType.TYPE_DRAG_FORCE = \u963B\u529B
-FlightDataType.TYPE_FRICTION_DRAG_COEFF = \u6469\u64E6\u963B\u529B\u7CFB\u6570
-FlightDataType.TYPE_GRAVITY = \u91CD\u529B\u52A0\u901F\u5EA6
-FlightDataType.TYPE_LATITUDE = \u7EAC\u5EA6
-FlightDataType.TYPE_LONGITUDE = \u7ECF\u5EA6
-FlightDataType.TYPE_LONGITUDINAL_INERTIA = \u7EB5\u5411\u8F6C\u52A8\u60EF\u91CF
-FlightDataType.TYPE_MACH_NUMBER = \u9A6C\u8D6B\u6570
-FlightDataType.TYPE_MASS = \u8D28\u91CF
-FlightDataType.TYPE_NORMAL_FORCE_COEFF = \u6CD5\u5411\u529B\u7CFB\u6570
-FlightDataType.TYPE_ORIENTATION_PHI = \u6C34\u5E73\u65B9\u5411 (\u65B9\u4F4D\u89D2)
-FlightDataType.TYPE_ORIENTATION_THETA = \u5782\u76F4\u65B9\u5411 (\u5929\u9876\u89D2)
-FlightDataType.TYPE_PITCH_DAMPING_MOMENT_COEFF = \u4FEF\u4EF0\u963B\u5C3C\u7CFB\u6570
-FlightDataType.TYPE_PITCH_MOMENT_COEFF = \u4FEF\u4EF0\u529B\u77E9\u7CFB\u6570
-FlightDataType.TYPE_PITCH_RATE = \u4FEF\u4EF0\u89D2\u901F\u5EA6
-FlightDataType.TYPE_POSITION_DIRECTION = \u6C34\u5E73\u65B9\u5411
-FlightDataType.TYPE_POSITION_X = \u8FCE\u98CE\u4F4D\u7F6E
-FlightDataType.TYPE_POSITION_XY = \u6A2A\u5411\u8DE8\u8DDD
-FlightDataType.TYPE_POSITION_Y = \u5E73\u884C\u98CE\u4F4D\u7F6E
-FlightDataType.TYPE_PRESSURE_DRAG_COEFF = \u538B\u5DEE\u963B\u529B\u7CFB\u6570
-FlightDataType.TYPE_PROPELLANT_MASS = \u63A8\u8FDB\u5242\u8D28\u91CF
-FlightDataType.TYPE_REFERENCE_AREA = \u53C2\u8003\u9762\u79EF
-FlightDataType.TYPE_REFERENCE_LENGTH = \u53C2\u8003\u957F\u5EA6
-FlightDataType.TYPE_REYNOLDS_NUMBER = \u96F7\u8BFA\u6570
-FlightDataType.TYPE_ROLL_DAMPING_COEFF = \u6EDA\u8F6C\u963B\u5C3C\u7CFB\u6570
-FlightDataType.TYPE_ROLL_FORCING_COEFF = \u6EDA\u8F6C\u529B\u7CFB\u6570
-FlightDataType.TYPE_ROLL_MOMENT_COEFF = \u6EDA\u8F6C\u529B\u77E9\u7CFB\u6570
-FlightDataType.TYPE_ROLL_RATE = \u6EDA\u8F6C\u89D2\u901F\u5EA6
-FlightDataType.TYPE_ROTATIONAL_INERTIA = \u6A2A\u5411\u8F6C\u52A8\u60EF\u91CF
-FlightDataType.TYPE_SIDE_FORCE_COEFF = \u4FA7\u5411\u529B\u7CFB\u6570
-FlightDataType.TYPE_SPEED_OF_SOUND = \u97F3\u901F
-FlightDataType.TYPE_STABILITY = \u7A33\u5B9A\u88D5\u91CF
-FlightDataType.TYPE_THRUST_FORCE = \u63A8\u529B
-! FlightDataType
-FlightDataType.TYPE_TIME = \u65F6\u95F4
-FlightDataType.TYPE_TIME_STEP = \u6A21\u62DF\u65F6\u95F4\u6B65
-FlightDataType.TYPE_VELOCITY_TOTAL = \u603B\u901F\u5EA6
-FlightDataType.TYPE_VELOCITY_XY = \u6A2A\u5411\u901F\u5EA6
-FlightDataType.TYPE_VELOCITY_Z = \u5782\u76F4\u901F\u5EA6
-FlightDataType.TYPE_WIND_VELOCITY = \u98CE\u901F
-FlightDataType.TYPE_YAW_DAMPING_MOMENT_COEFF = \u504F\u822A\u963B\u5C3C\u7CFB\u6570
-FlightDataType.TYPE_YAW_MOMENT_COEFF = \u504F\u822A\u529B\u77E9\u7CFB\u6570
-FlightDataType.TYPE_YAW_RATE = \u504F\u822A\u89D2\u901F\u5EA6
+! ShockCordConfig
+ShockCordCfg.lbl.Shockcordlength = \u51cf\u9707\u7d22\u957f\u5ea6:
-FlightEvent.Type.ALTITUDE = \u9AD8\u5EA6\u53D8\u5316
-FlightEvent.Type.APOGEE = \u6700\u9AD8\u70B9
-FlightEvent.Type.BURNOUT = \u53D1\u52A8\u673A\u70E7\u5C3D
-FlightEvent.Type.EJECTION_CHARGE = \u5F39\u5C04
-FlightEvent.Type.EXCEPTION = \u5F02\u5E38
-FlightEvent.Type.GROUND_HIT = \u7740\u5730
-FlightEvent.Type.IGNITION = \u53D1\u52A8\u673A\u70B9\u706B
-! FlightEvent
-FlightEvent.Type.LAUNCH = \u53D1\u5C04
-FlightEvent.Type.LAUNCHROD = \u79BB\u67B6
-FlightEvent.Type.LIFTOFF = \u8D77\u98DE
-FlightEvent.Type.RECOVERY_DEVICE_DEPLOYMENT = \u56DE\u6536\u88C5\u7F6E\u542F\u52A8
-FlightEvent.Type.SIMULATION_END = \u4EFF\u771F\u7ED3\u675F
-FlightEvent.Type.STAGE_SEPARATION = \u7EA7\u95F4\u5206\u79BB
-FlightEvent.Type.TUMBLE = \u7FFB\u6EDA
+! 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:
-! FreeformFinSet
-FreeformFinSet.FreeformFinSet = \u81EA\u7531\u66F2\u9762\u7A33\u5B9A\u7FFC
+! 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.
-FreeformFinSetCfg.lbl.Fincant = \u7A33\u5B9A\u7FFC\u9762\u89D2:
-FreeformFinSetCfg.lbl.FincrossSection = \u7A33\u5B9A\u7FFC\u6A2A\u5207\u9762:
-FreeformFinSetCfg.lbl.Finrotation = \u7A33\u5B9A\u7FFC\u65CB\u5EA6:
-FreeformFinSetCfg.lbl.Numberoffins = \u7A33\u5B9A\u7FFC\u6570\u91CF:
-FreeformFinSetCfg.lbl.Posrelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-FreeformFinSetCfg.lbl.Thickness = \u539A\u5EA6:
-FreeformFinSetCfg.lbl.plus = \u52A0
-FreeformFinSetCfg.lbl.ttip.Fincant = \u7A33\u5B9A\u7FFC\u7FFC\u9762\u4E0E\u7BAD\u4F53\u4E4B\u95F4\u7684\u5939\u89D2.
!FreeformFinSetConfig
-FreeformFinSetCfg.tab.General = \u5E38\u89C4
-FreeformFinSetCfg.tab.Shape = \u5F62\u72B6
-FreeformFinSetCfg.tab.ttip.Finshape = \u7A33\u5B9A\u7FFC\u5F62\u72B6
-FreeformFinSetCfg.tab.ttip.General = \u5E38\u89C4\u5C5E\u6027
-
-FreeformFinSetConfig.lbl.clickDrag = \u5355\u51FB+\u62D6\u62FD: \u6DFB\u52A0,\u79FB\u52A8\u70B9
-FreeformFinSetConfig.lbl.ctrlClick = Ctrl+\u5355\u51FB: \u5220\u9664\u70B9
+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.scaleFin = \u7F29\u653E\u7A33\u5B9A\u7FFC
+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
-GeneralOptimizationDialog.basicSimulationName = \u57FA\u672C\u4EFF\u771F
-GeneralOptimizationDialog.btn.add = \u6DFB\u52A0
-GeneralOptimizationDialog.btn.add.ttip = \u6DFB\u52A0\u9009\u62E9\u53C2\u6570\u5230\u4F18\u5316\u5217\u8868
-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.close = \u5173\u95ED
-GeneralOptimizationDialog.btn.close.ttip = \u5173\u95ED\u7A97\u53E3\u4E0D\u6539\u53D8\u706B\u7BAD\u8BBE\u8BA1
-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.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.btn.reset = \u91CD\u7F6E
-GeneralOptimizationDialog.btn.reset.ttip = \u91CD\u7F6E\u706B\u7BAD\u8BBE\u8BA1\u4E3A\u5F53\u524D\u706B\u7BAD\u8BBE\u8BA1
-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.start = \u5F00\u59CB\u53C2\u6570\u4F18\u5316
-GeneralOptimizationDialog.btn.stop = \u505C\u6B62\u53C2\u6570\u4F18\u5316
-GeneralOptimizationDialog.error.optimizationFailure.text = \u65E0\u6CD5\u8FD0\u884C\u4F18\u5316:
-GeneralOptimizationDialog.error.optimizationFailure.title = \u4F18\u5316\u5931\u8D25
-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.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
-GeneralOptimizationDialog.goal.maximize = \u6700\u5927\u503C
-GeneralOptimizationDialog.goal.minimize = \u6700\u5C0F\u503C
-GeneralOptimizationDialog.goal.seek = \u76EE\u6807\u503C
-GeneralOptimizationDialog.lbl.availableParams = \u53EF\u7528\u53C2\u6570:
-GeneralOptimizationDialog.lbl.optimizationOpts = \u4F18\u5316\u9009\u9879
-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.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.paramsToOptimize = \u4F18\u5316\u53C2\u6570:
-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.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.requireStability = \u7A33\u5B9A\u6027\u9700\u6C42
-GeneralOptimizationDialog.noSimulationName = \u6CA1\u6709\u4EFF\u771F
-GeneralOptimizationDialog.status.bestValue = \u6700\u4F73\u503C:
-GeneralOptimizationDialog.status.bestValue.ttip = \u76EE\u524D\u5F97\u5230\u7684\u6700\u4F73\u4F18\u5316\u503C.
-GeneralOptimizationDialog.status.evalCount = \u8BC4\u4F30\u6B21\u6570:
-GeneralOptimizationDialog.status.evalCount.ttip = \u5DF2\u6267\u884C\u7684\u8BC4\u4F30\u6B21\u6570.
-GeneralOptimizationDialog.status.stepCount = \u4F18\u5316\u6B65\u6570:
-GeneralOptimizationDialog.status.stepCount.ttip = \u5DF2\u6267\u884C\u7684\u4F18\u5316\u6B65\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.table.col.current = \u76EE\u524D\u503C
-GeneralOptimizationDialog.table.col.max = \u6700\u5927\u503C
-GeneralOptimizationDialog.table.col.min = \u6700\u5C0F\u503C
-GeneralOptimizationDialog.table.col.parameter = \u53C2\u6570
-! General rocket design optimization dialog
-GeneralOptimizationDialog.title = \u706B\u7BAD\u4F18\u5316
-GeneralOptimizationDialog.undoText = \u5E94\u7528\u4F18\u5316
+!TubeFinSetConfig
+TubeFinSetCfg.lbl.Nbroffins = \u7ffc\u6570\u91cf:
+TubeFinSetCfg.lbl.Length = \u957f\u5ea6:
+TubeFinSetCfg.lbl.Outerdiam = \u5916\u76f4\u5f84:
+TubeFinSetCfg.checkbox.Automatic = \u81ea\u52a8
+TubeFinSetCfg.lbl.Innerdiam = \u5185\u76f4\u5f84:
+TubeFinSetCfg.lbl.Thickness = \u539a\u5ea6:
+TubeFinSetCfg.lbl.Finrotation = \u7ffc\u7fc5\u65cb\u5ea6:
+TubeFinSetCfg.lbl.ttip.Finrotation = \u7a33\u5b9a\u7ffc\u7ec4\u5408\u91cc\u7b2c\u4e00\u7247\u7684\u89d2\u5ea6
-GeodeticComputationStrategy.flat.desc = \u5728\u8BA1\u7B97\u65F6\u628A\u5730\u9762\u5F53\u6210\u5E73\u9762, \u9002\u7528\u4E8E\u4F4E\u7A7A\u98DE\u884C.
-GeodeticComputationStrategy.flat.name = \u5E73\u9762\u5730\u7403
-GeodeticComputationStrategy.spherical.desc = \u8BA1\u7B97\u5927\u5730\u6D4B\u91CF\u65F6\u4F7F\u7528\u7403\u5F62\u5730\u7403.
\u5BF9\u51E0\u4E4E\u6240\u6709\u7684\u8BA1\u7B97\u60C5\u51B5\u90FD\u5F88\u7CBE\u786E.
-GeodeticComputationStrategy.spherical.name = \u7403\u5F62
-GeodeticComputationStrategy.wgs84.desc = \u8BA1\u7B97\u5927\u5730\u6D4B\u91CF\u65F6\u4F7F\u7528\u4F7F\u7528WGS84\u4EE5\u53CAVincenty\u8DDD\u79BB\u516C\u5F0F.
\u975E\u5E38\u6162.
-GeodeticComputationStrategy.wgs84.name = WGS84 \u692D\u5706
-
-GroundHitVelocityParameter.name = \u7740\u5730\u901F\u5EA6
-
-GuidedTourSelectionDialog.btn.start = \u5F00\u59CB\u6559\u7A0B!
-GuidedTourSelectionDialog.lbl.description = \u6559\u7A0B\u8BF4\u660E:
-GuidedTourSelectionDialog.lbl.length = \u5E7B\u706F\u7247\u9875\u6570:
-GuidedTourSelectionDialog.lbl.selectTour = \u9009\u62E9\u6307\u5BFC\u6559\u7A0B:
-GuidedTourSelectionDialog.title = \u6307\u5BFC\u6559\u7A0B
-
-Icons.Redo = \u91CD\u505A
-!icons
-Icons.Undo = \u64A4\u9500
-
-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
-IgnitionSelectionDialog.opt.title = \u53D7\u5230\u5F71\u54CD\u7684\u98DE\u884C\u914D\u7F6E:
-
-!InnerTube
-InnerTube.InnerTube = \u5185\u7BA1
-
-InnerTubeCfg.but.Resetsettings = \u91CD\u7F6E\u8BBE\u7F6E
-InnerTubeCfg.but.Splitcluster = \u62C6\u5206\u7C07
-InnerTubeCfg.but.ttip.Resetsettings = \u64A4\u9500\u62C6\u5206\u65CB\u8F6C\u5230\u6700\u521D\u503C
-InnerTubeCfg.lbl.Rotangle = \u8BBE\u7F6E\u7C07\u7684\u65CB\u5EA6\u89D2
-InnerTubeCfg.lbl.Rotation = \u65CB\u5EA6:
-InnerTubeCfg.lbl.Selectclustercfg = \u9009\u62E9\u7C07\u8BBE\u7F6E:
-InnerTubeCfg.lbl.TubeSep = \u7BAD\u4F53\u5206\u6BB5:
-InnerTubeCfg.lbl.longA1 = \u5C06\u7C07\u62C6\u5206\u6210\u4E0D\u540C\u7684\u7EC4\u4EF6.
-InnerTubeCfg.lbl.longA2 = \u4E5F\u4F1A\u5236\u5185\u7BA1\u7684\u5168\u90E8\u90E8\u4EF6.
-InnerTubeCfg.lbl.ttip.Rotation = \u8BBE\u7F6E\u7C07\u7684\u65CB\u5EA6\u89D2
-InnerTubeCfg.lbl.ttip.TubeSep = \u8BBE\u7F6E\u7BAD\u4F53\u5206\u6BB5, 1.0 = \u7D27\u90BB
-InnerTubeCfg.tab.Cluster = \u7C07
!InnerTubeConfig
-InnerTubeCfg.tab.Motor = \u53D1\u52A8\u673A
-InnerTubeCfg.tab.Radialpos = \u5F84\u5411\u4F4D\u7F6E
-InnerTubeCfg.tab.ttip.Cluster = \u7C07\u8BBE\u7F6E
-InnerTubeCfg.tab.ttip.Motor = \u53D1\u52A8\u673A\u5EA7\u8BBE\u7F6E
-InnerTubeCfg.tab.ttip.Radialpos = \u5F84\u5411\u4F4D\u7F6E
+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 = \u4e5f\u4f1a\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\u5230\u6700\u521d\u503c
-LandingDistanceParameter.name = \u843D\u5730\u8DDD\u79BB
-
-! LaunchLug
-LaunchLug.Launchlug = \u53D1\u5C04\u8854\u5957
-
-LaunchLugCfg.lbl.Innerdiam = \u5185\u76F4\u5F84:
! LaunchLugConfig
-LaunchLugCfg.lbl.Length = \u957F\u5EA6:
-LaunchLugCfg.lbl.Outerdiam = \u5916\u76F4\u5F84:
-LaunchLugCfg.lbl.Posrelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-LaunchLugCfg.lbl.Radialpos = \u5F84\u5411\u4F4D\u7F6E:
-LaunchLugCfg.lbl.Thickness = \u539A\u5EA6:
-LaunchLugCfg.lbl.plus = \u52A0
-LaunchLugCfg.tab.General = \u5E38\u89C4
-LaunchLugCfg.tab.Generalprop = \u5E38\u89C4\u5C5E\u6027
+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
-LineStyle.Dash-dotted = \u70B9\u5212\u7EBF
-LineStyle.Dashed = \u865A\u7EBF
-LineStyle.Defaultstyle = \u9ED8\u8BA4\u6837\u5F0F
-LineStyle.Dotted = \u70B9\u865A\u7EBF
-! LineStyle
-LineStyle.Solid = \u5B9E\u7EBF
-
-MassComponent.Altimeter = \u9AD8\u5EA6\u8BA1
-MassComponent.Battery = \u7535\u6C60
-MassComponent.DeploymentCharge = \u5F00\u4F1E\u836F
-MassComponent.FlightComputer = \u98DE\u63A7
-!MassComponent
-MassComponent.MassComponent = \u8D28\u91CF\u7EC4\u4EF6
-MassComponent.Payload = \u6709\u6548\u8F7D\u8377
-MassComponent.RecoveryHardware = \u56DE\u6536\u8BBE\u5907
-MassComponent.Tracker = \u8FFD\u8E2A\u5668
-
-MassComponentCfg.but.Reset = \u91CD\u7F6E
-MassComponentCfg.lbl.Density = \u8FD1\u4F3C\u5BC6\u5EA6:
-MassComponentCfg.lbl.Diameter = \u76F4\u5F84:
-MassComponentCfg.lbl.Length = \u957F\u5EA6:
! MassComponentConfig
-MassComponentCfg.lbl.Mass = \u8D28\u91CF:
-MassComponentCfg.lbl.PosRelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-MassComponentCfg.lbl.Radialdirection = \u5F84\u5411\u65B9\u5411:
-MassComponentCfg.lbl.Radialdistance = \u5F84\u5411\u8DDD\u79BB:
-MassComponentCfg.lbl.plus = \u52A0
-MassComponentCfg.lbl.type = \u7C7B\u578B
-MassComponentCfg.tab.General = \u5E38\u89C4
-MassComponentCfg.tab.Radialpos = \u5F84\u5411\u4F4D\u7F6E
-MassComponentCfg.tab.ttip.General = \u5E38\u89C4\u5C5E\u6027
-MassComponentCfg.tab.ttip.Radialpos = \u5F84\u5411\u4F4D\u7F6E\u8BBE\u7F6E
+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
+MassComponentCfg.lbl.type = \u7c7b\u578b
+
+! MotorConfig
+MotorCfg.checkbox.compmotormount = \u8be5\u7ec4\u4ef6\u4e3a\u53d1\u52a8\u673a\u5ea7
+MotorCfg.lbl.Flightcfg = \u98de\u884c\u914d\u7f6e:
+MotorCfg.but.New = \u65b0\u5efa
+MotorCfg.but.FlightcfgEdit = \u7f16\u8f91
+MotorCfg.lbl.Currentmotor = \u5f53\u524d\u53d1\u52a8\u673a:
+MotorCfg.lbl.Motoroverhang = \u53d1\u52a8\u673a\u6a2a\u7f69\u91cf:
+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
+
+! Fin Fillets
+FinSetCfg.lbl.Finfilletmaterial = \u63a5\u7f1d\u6750\u6599:
+FinSetCfg.lbl.Filletradius = \u63a5\u7f1d\u534a\u5f84:
+FinsetCfg.ttip.Finfillets1 = \u5c06\u9884\u4f30\u8d28\u91cf\u6dfb\u52a0\u5230\u7ffc\u6839\u90e8.
+FinsetCfg.ttip.Finfillets2 = \u5047\u5b9a\u63a5\u7f1d\u5185\u51f9\u4e14\u548c\u7bad\u4f53\u3001\u7ffc\u677f\u76f8\u5207.
+FinsetCfg.ttip.Finfillets3 = \u65e0\u63a5\u7f1d\u60c5\u51b5\u4e0b\u5c06\u8bbe\u5b9a\u63a5\u7f1d\u534a\u5f84\u4e3a0.
+
+! Save RKT Warning Dialog
+SaveRktWarningDialog.txt1=\u5bfc\u51fa\u5230RockSim\u6587\u4ef6\u683c\u5f0f\u65e0\u6cd5\u4fdd\u5168\u6240\u6709OpenRocket\u7279\u6027.
+#N/A
+
+saveAs.openrocket.title=\u4fdd\u5b58\u4e3aOpenRocket ork\u6587\u4ef6
+saveAs.rocksim.title=\u5bfc\u51fa\u4e3aRockSim rtk\u6587\u4ef6
+
+! 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\u5f88\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 = \u7b5b\u9009\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.
+
+ComponentTree.ttip.massoverride = \u8986\u5199\u91cd\u91cf
+ComponentTree.ttip.cgoverride = \u8986\u5199\u91cd\u5fc3
+! "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...
+main.menu.file.open.desc = \u6253\u5f00\u706b\u7bad\u8bbe\u8ba1
+main.menu.file.openRecent = \u6700\u8fd1\u6253\u5f00...
+main.menu.file.openRecent.desc = \u6253\u5f00\u6700\u8fd1\u7684\u706b\u7bad\u8bbe\u8ba1
+main.menu.file.openExample = \u6253\u5f00\u8303\u4f8b...
+main.menu.file.openExample.desc = \u6253\u5f00\u706b\u7bad\u8bbe\u8ba1\u8303\u4f8b
+main.menu.file.save = \u4fdd\u5b58
+main.menu.file.save.desc = \u4fdd\u5b58\u5f53\u524d\u706b\u7bad\u8bbe\u8ba1
+main.menu.file.saveAs = \u53e6\u5b58\u4e3a...
+main.menu.file.saveAs.desc = \u4fdd\u5b58\u5f53\u524d\u706b\u7bad\u8bbe\u8ba1\u5230\u65b0\u6587\u4ef6
+main.menu.file.import = \u5bfc\u5165...
+main.menu.file.import.desc = \u4eceRockSim rtk\u6587\u4ef6\u5bfc\u5165\u6a21\u578b
+main.menu.file.export = \u5bfc\u51fa...
+main.menu.file.export.desc = \u5bfc\u51fa\u6a21\u578b\u5230RockSim rkt\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
+main.menu.file.close.desc = \u5173\u95ed\u5f53\u524d\u706b\u7bad\u8bbe\u8ba1
+main.menu.file.quit = \u9000\u51fa
+main.menu.file.quit.desc = \u9000\u51fa\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
+main.menu.edit.desc = \u706b\u7bad\u7f16\u8f91
+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
-MaterialModel.title.Defcustmat = \u8BBE\u7F6E\u81EA\u5B9A\u4E49\u6750\u6599
-!MaterialModel
-MaterialModel.title.Material = \u6750\u6599
+Material.CUSTOM = \u81ea\u5b9a\u4e49
-MaximumAccelerationParameter.name = \u6700\u5927\u52A0\u901F\u5EA6
-
-! Optimization parameters
-MaximumAltitudeParameter.name = \u6700\u9AD8\u70B9\u9AD8\u5EA6
-
-MaximumVelocityParameter.name = \u6700\u5927\u901F\u5EA6
-
-MotorCfg.but.FlightcfgEdit = \u7F16\u8F91
-MotorCfg.but.New = \u65B0\u5EFA
-MotorCfg.but.Removemotor = \u79FB\u9664\u53D1\u52A8\u673A
-MotorCfg.but.Selectmotor = \u9009\u62E9\u53D1\u52A8\u673A
-! MotorConfig
-MotorCfg.checkbox.compmotormount = \u8BE5\u7EC4\u4EF6\u4E3A\u53D1\u52A8\u673A\u5EA7
-MotorCfg.lbl.Currentmotor = \u5F53\u524D\u53D1\u52A8\u673A:
-MotorCfg.lbl.Flightcfg = \u98DE\u884C\u914D\u7F6E:
-MotorCfg.lbl.Ignitionat = \u70B9\u706B\u65F6\u523B:
-MotorCfg.lbl.Motoroverhang = \u53D1\u52A8\u673A\u6A2A\u7F69\u91CF:
-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.lbl.motorLabel = \u65E0
-MotorCfg.lbl.plus = \u52A0
-MotorCfg.lbl.seconds = \u79D2
-
-! MotorChooserDialog
-MotorChooserDialog.title = \u9009\u62E9\u706B\u7BAD\u53D1\u52A8\u673A
-
-MotorConfigurationPanel.btn.removeMotor = \u79FB\u9664\u53D1\u52A8\u673A
-MotorConfigurationPanel.btn.resetIgnition = \u91CD\u7F6E\u70B9\u706B
-MotorConfigurationPanel.btn.selectIgnition = \u9009\u62E9\u70B9\u706B
-MotorConfigurationPanel.btn.selectMotor = \u9009\u62E9\u53D1\u52A8\u673A
-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.
-MotorConfigurationPanel.lbl.motorConfiguration = \u53D1\u52A8\u673A\u914D\u7F6E:
-MotorConfigurationPanel.lbl.motorMounts = \u53D1\u52A8\u673A\u5EA7:
-MotorConfigurationPanel.lbl.nomotors = \u65E0\u53D1\u52A8\u673A\u5EA7.\u8BF7\u5148\u5728\u5DE6\u4FA7\u9009\u62E9\u7BAD\u4F53\u4F5C\u4E3A\u53D1\u52A8\u673A\u5EA7.
-
-MotorConfigurationTableModel.table.ignition.default = \u9ED8\u8BA4 ({0})
-
-MotorDbLoadDlg.Loadingmotors = \u6B63\u5728\u8BFB\u53D6\u53D1\u52A8\u673A\u6570\u636E...
-! MotorDatabaseLoadingDialog
-MotorDbLoadDlg.title = \u8BFB\u53D6\u53D1\u52A8\u673A\u6570\u636E
-
-MotorDescriptionSubstitutor.description = \u914D\u7F6E\u9009\u9879\u4E2D\u7684\u53D1\u52A8\u673A
-
-!MotorMount
-MotorMount.IgnitionEvent.AUTOMATIC = \u81EA\u52A8 (\u53D1\u5C04\u6216\u5F39\u5C04)
-MotorMount.IgnitionEvent.BURNOUT = \u524D\u7EA7\u7B2C\u4E00\u6B21\u71C3\u5C3D
-MotorMount.IgnitionEvent.EJECTION_CHARGE = \u524D\u7EA7\u7B2C\u4E00\u6B21\u5F39\u5C04
-MotorMount.IgnitionEvent.LAUNCH = \u53D1\u5C04
-MotorMount.IgnitionEvent.NEVER = \u4ECE\u4E0D
-MotorMount.IgnitionEvent.short.AUTOMATIC = \u81EA\u52A8
-MotorMount.IgnitionEvent.short.BURNOUT = \u70E7\u5C3D
-MotorMount.IgnitionEvent.short.EJECTION_CHARGE = \u5F39\u5C04
-MotorMount.IgnitionEvent.short.LAUNCH = \u53D1\u5C04
-MotorMount.IgnitionEvent.short.NEVER = \u4ECE\u4E0D
-
-MotorPlot.Chart.Motorthrustcurve = \u53D1\u52A8\u673A\u63A8\u529B\u66F2\u7EBF
-MotorPlot.Chart.Thrust = \u63A8\u529B / N
-MotorPlot.Chart.Time = \u65F6\u95F4 / s
-MotorPlot.but.Select = \u9009\u62E9
-! MotorPlot
-MotorPlot.title.Motorplot = \u53D1\u52A8\u673A\u56FE\u8868
-MotorPlot.txt.Comment = \u6CE8\u91CA:\n
-MotorPlot.txt.Delays = \u5EF6\u65F6:
-MotorPlot.txt.Designation = \u578B\u53F7:
-MotorPlot.txt.Manufacturer = \u5236\u9020\u5546:
-MotorPlot.txt.Type = \u7C7B\u522B:
-
-! NoseCone
-NoseCone.NoseCone = \u5934\u9525
-
-NoseConeCfg.checkbox.Automatic = \u81EA\u52A8
-NoseConeCfg.checkbox.Filled = \u5B9E\u5FC3
-NoseConeCfg.lbl.Basediam = \u5E95\u5EA7\u76F4\u5F84:
-NoseConeCfg.lbl.Noseconelength = \u5934\u9525\u957F\u5EA6:
-! NoseConeConfig
-NoseConeCfg.lbl.Noseconeshape = \u5934\u9525\u5916\u5F62:
-NoseConeCfg.lbl.Shapeparam = \u5916\u5F62\u53C2\u6570:
-NoseConeCfg.lbl.Wallthickness = \u58C1\u539A:
-NoseConeCfg.tab.General = \u5E38\u89C4
-NoseConeCfg.tab.Shoulder = \u8FDE\u63A5\u5904
-NoseConeCfg.tab.ttip.General = \u5E38\u89C4\u5C5E\u6027
-NoseConeCfg.tab.ttip.Shoulder = \u8FDE\u63A5\u5904\u5C5E\u6027
-
-OpenRocketDocument.Redo = \u64A4\u9500
-OpenRocketDocument.Undo = \u91CD\u505A
-
-OpenRocketPrintable.Centeringringtemplates = \u4E2D\u5FC3\u73AF\u6A21\u677F
-OpenRocketPrintable.DesignReport = \u8BBE\u8BA1\u62A5\u544A
-OpenRocketPrintable.Finmarkingguide = \u5C3E\u7FFC\u5236\u4F5C\u5411\u5BFC
-OpenRocketPrintable.Fintemplates = \u5C3E\u7FFC\u6A21\u677F
-OpenRocketPrintable.Noseconetemplates = \u5934\u9525\u6A21\u677F
-OpenRocketPrintable.Partsdetail = \u90E8\u4EF6\u4FE1\u606F
-OpenRocketPrintable.Transitiontemplates = \u7EA7\u95F4\u6BB5\u6A21\u677F
-
-Operator.abs = \u7EDD\u5BF9\u503C
-Operator.acos = \u53CD\u4F59\u5F26 ArcCos
-Operator.asin = \u53CD\u6B63\u5F26 ArcSin
-Operator.atan = \u53CD\u6B63\u5207 ArcTan
-Operator.binf = \u7ED9\u51FA\u6570\u503C(\u53C2\u65701)\u76F8\u5BF9\u4E8E\u4E0B\u754C(\u53C2\u65702)\u548C\u4E0A\u754C(\u53C2\u65703)\u7684\u6BD4\u4F8B
-Operator.cbrt = \u7ACB\u65B9\u6839
-Operator.ceil = \u5411\u4E0A\u53D6\u6574
-Operator.cos = \u4F59\u5F26 Cos
-Operator.div = \u9664
-Operator.exp = \u6307\u6570\u51FD\u6570 (e^x)
-Operator.expm1 = \u548C exp(x)-1 \u4E00\u6837, \u4F46\u5BF9\u4E8E\u8F83\u5C0F\u7684\u6570\u5B57x\u66F4\u7CBE\u786E
-Operator.floor = \u5411\u4E0B\u53D6\u6574
-Operator.hcos = \u53CC\u66F2\u4F59\u5F26 Cosh
-Operator.hsin = \u53CC\u66F2\u6B63\u5F26 Sinh
-Operator.htan = \u53CC\u66F2\u6B63\u5207 Tanh
-Operator.lclip = \u9650\u5236\u6570\u503C(\u53C2\u65701)\u4E0D\u5C0F\u4E8E\u53E6\u4E00\u4E2A\u6570\u503C(\u53C2\u65702)
-Operator.ln = \u81EA\u7136\u5BF9\u6570
-Operator.log10 = \u5E38\u7528\u5BF9\u6570 (\u5E95\u6570\u4E3A10)
-Operator.max = \u53D6\u6700\u5927\u503C
-Operator.mean = \u7B97\u672F\u5E73\u5747\u6570
-Operator.min = \u53D6\u6700\u5C0F\u503C
-Operator.minus = \u51CF
-Operator.mod = \u6A21
-! Operators
-Operator.plus = \u52A0
-Operator.pow = \u6307\u6570
-Operator.random = \u4EA7\u751F\u4E00\u4E2A\u4ECB\u4E8E0\u5230\u8BBE\u5B9A\u503C\u4E4B\u95F4\u7684\u968F\u673A\u6570
-Operator.rms = \u5747\u65B9\u6839
-Operator.round = \u56DB\u820D\u4E94\u5165
-Operator.sin = \u6B63\u5F26 Sin
-Operator.sqrt = \u5E73\u65B9\u6839
-Operator.star = \u4E58
-Operator.stdev = \u6807\u51C6\u5DEE
-Operator.tan = \u6B63\u5207 Tan
-Operator.tnear = \u7ED9\u51FA\u6570\u636E\u70B9(\u53C2\u65701)\u6700\u63A5\u8FD1\u6570\u503C(\u53C2\u65702)\u7684\u65F6\u95F4
-Operator.trapz = \u5BF9\u4E8E\u7ED9\u5B9A\u8303\u56F4\u4F7F\u7528\u68AF\u5F62\u79EF\u5206
-Operator.uclip = \u9650\u5236\u6570\u503C(\u53C2\u65701)\u4E0D\u5927\u4E8E\u53E6\u4E00\u4E2A\u6570\u503C(\u53C2\u65702)
-Operator.var = \u65B9\u5DEE
-
-OptimizationPlotDialog.lbl.zoomInstructions = \u70B9\u4E2D\u540C\u65F6\u5411\u53F3\u62D6\u52A8\u653E\u5927, \u5411\u5DE6\u62D6\u52A8\u7F29\u5C0F
-OptimizationPlotDialog.plot.label.optimum = \u6700\u4F18\u503C
-OptimizationPlotDialog.plot.ttip.stability = \u7A33\u5B9A\u6027:
-OptimizationPlotDialog.plot1d.series = \u4F18\u5316\u7ED3\u679C
-OptimizationPlotDialog.plot1d.title = \u4F18\u5316\u7ED3\u679C
-OptimizationPlotDialog.plot2d.evals = \u76EE\u6807\u51FD\u6570\u8BA1\u7B97
-OptimizationPlotDialog.plot2d.path = \u4F18\u5316\u8DEF\u5F84
-OptimizationPlotDialog.plot2d.title = \u4F18\u5316\u8DEF\u5F84
-! Dialog for plotting optimization results
-OptimizationPlotDialog.title = \u4F18\u5316\u7ED3\u679C
-
-! Parachute
-Parachute.Parachute = \u964D\u843D\u4F1E
-
-ParachuteCfg.but.Reset = \u91CD\u7F6E
-ParachuteCfg.combo.MaterialModel = \u6750\u6599\u4F1A\u5F71\u54CD\u7EC4\u4EF6\u91CD\u91CF.
-ParachuteCfg.lbl.Altitude = \u9AD8\u5EA6:
-! ParachuteConfig
-ParachuteCfg.lbl.Canopy = \u4F1E\u8863:
-ParachuteCfg.lbl.Deploysat = \u5C55\u5F00\u65F6\u673A:
-ParachuteCfg.lbl.Diameter = \u76F4\u5F84:
-ParachuteCfg.lbl.Linelength = \u957F\u5EA6:
-ParachuteCfg.lbl.Material = \u6750\u6599:
-ParachuteCfg.lbl.Numberoflines = \u540A\u7D22\u6570\u91CF:
-ParachuteCfg.lbl.Packeddiam = \u4F1E\u5305\u76F4\u5F84:
-ParachuteCfg.lbl.Packedlength = \u4F1E\u5305\u957F\u5EA6:
-ParachuteCfg.lbl.Posrelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-ParachuteCfg.lbl.Radialdirection = \u5F84\u5411\u65B9\u5411:
-ParachuteCfg.lbl.Radialdistance = \u5F84\u5411\u8DDD\u79BB:
-ParachuteCfg.lbl.Shroudlines = \u540A\u7D22:
-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.lbl.plus = \u52A0
-ParachuteCfg.lbl.plusdelay = \u52A0
-ParachuteCfg.lbl.seconds = \u79D2
-ParachuteCfg.tab.General = \u5E38\u89C4
-ParachuteCfg.tab.Radialpos = \u5F84\u5411\u4F4D\u7F6E
-ParachuteCfg.tab.ttip.General = \u5E38\u89C4\u5C5E\u6027
-ParachuteCfg.tab.ttip.Radialpos = \u5F84\u5411\u4F4D\u7F6E\u8BBE\u7F6E
-
-PhotoFrame.desc = \u521B\u5EFA\u706B\u7BAD\u5199\u5B9E3D\u56FE
-PhotoFrame.fileFilter.png = PNG\u56FE\u50CF
-PhotoFrame.menu.edit.copy = \u590D\u5236\u56FE\u7247
-PhotoFrame.menu.edit.copy.desc = \u590D\u5236\u56FE\u7247\u5230\u526A\u8D34\u677F
-PhotoFrame.menu.edit.settings = \u56FE\u50CF\u8BBE\u7F6E
-PhotoFrame.menu.file.save = \u4FDD\u5B58\u56FE\u50CF...
-PhotoFrame.menu.window = \u7A97\u53E3
-PhotoFrame.menu.window.size = \u5927\u5C0F
-PhotoFrame.menu.window.size.portrait = {0} \u76F8\u7247
-PhotoFrame.title = \u7167\u76F8\u9986
-
-PhotoSettingsConfig.colorChooser.title = \u9009\u8272\u677F
-PhotoSettingsConfig.lbl.advance = \u9AD8\u7EA7
-PhotoSettingsConfig.lbl.amb = \u73AF\u5883
-PhotoSettingsConfig.lbl.camera = \u76F8\u673A
-PhotoSettingsConfig.lbl.effects = \u6548\u679C
-PhotoSettingsConfig.lbl.exhaustScale = \u5C3E\u6C14\u5927\u5C0F
-PhotoSettingsConfig.lbl.flame = \u706B\u7130
-PhotoSettingsConfig.lbl.flameAspect = \u706B\u7130\u5916\u89C2\u89D2\u5EA6
-PhotoSettingsConfig.lbl.fov = \u89C6\u573A
-PhotoSettingsConfig.lbl.light = \u5149\u7167
-PhotoSettingsConfig.lbl.lightAlt = \u5149\u7167\u9AD8\u5EA6
-PhotoSettingsConfig.lbl.lightAz = \u5149\u7167\u65B9\u4F4D
-PhotoSettingsConfig.lbl.pitch = \u503E\u89D2
-PhotoSettingsConfig.lbl.rocket = \u706B\u7BAD
-PhotoSettingsConfig.lbl.roll = \u65CB\u8F6C
-PhotoSettingsConfig.lbl.sky = \u5929\u7A7A
-PhotoSettingsConfig.lbl.skyColor = \u5929\u7A7A\u989C\u8272
-PhotoSettingsConfig.lbl.skyCredit = \u56FE\u7247\u6CE8\u89E3
-PhotoSettingsConfig.lbl.skyImage = \u5929\u7A7A\u56FE\u7247
-PhotoSettingsConfig.lbl.smoke = \u70DF\u96FE
-PhotoSettingsConfig.lbl.smokeFlame = \u7130\u70DF
-PhotoSettingsConfig.lbl.smokeOpacity = \u70DF\u900F\u660E\u5EA6
-PhotoSettingsConfig.lbl.sparkConcentration = \u706B\u661F\u6D53\u5EA6
-PhotoSettingsConfig.lbl.sparkWeight = \u706B\u661F\u91CD\u91CF
-PhotoSettingsConfig.lbl.sparks = \u706B\u661F
-PhotoSettingsConfig.lbl.speed = \u901F\u5EA6
-PhotoSettingsConfig.lbl.sun = \u9633\u5149
-PhotoSettingsConfig.lbl.vAlt = \u89C6\u9AD8\u5EA6
-PhotoSettingsConfig.lbl.vAz = \u89C6\u65B9\u4F4D\u89D2
-PhotoSettingsConfig.lbl.vDist = \u89C6\u8DDD
-PhotoSettingsConfig.lbl.yaw = \u65CB\u89D2
-PhotoSettingsConfig.tab.effects = \u7279\u6548
-PhotoSettingsConfig.tab.environment = \u73AF\u5883
-PhotoSettingsConfig.tab.orientation = \u65B9\u5411
-PhotoSettingsConfig.title = \u8BBE\u7F6E
-
-PlotConfiguration.Angleofattack = \u653B\u89D2\u548C\u65B9\u5411 vs. \u65F6\u95F4
-PlotConfiguration.Dragcoef = \u963B\u529B\u7CFB\u6570 vs. \u9A6C\u8D6B\u6570
-PlotConfiguration.Flightside = \u98DE\u884C\u4FA7\u89C6\u5256\u9762
-PlotConfiguration.Groundtrack = \u5730\u9762\u822A\u8FF9
-PlotConfiguration.Rollcharacteristics = \u6EDA\u8F6C\u7279\u5F81
-PlotConfiguration.Simulationtime = \u6A21\u62DF\u65F6\u95F4\u6B65\u957F vs. \u8BA1\u7B97\u65F6\u95F4
-PlotConfiguration.Stability = \u7A33\u5B9A\u6027 vs. \u65F6\u95F4
-PlotConfiguration.Totalmotion = \u603B\u4F53\u4F4D\u79FB vs. \u65F6\u95F4
-! PlotConfiguration
-PlotConfiguration.Verticalmotion = \u5782\u76F4\u8FD0\u52A8 vs. \u65F6\u95F4
-
-! 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.
-
-PreferencesDialog.languages.default = \u7CFB\u7EDF\u9ED8\u8BA4
-PreferencesDialog.lbl.language = \u754C\u9762\u8BED\u8A00:
-PreferencesDialog.lbl.languageEffect = \u8BED\u8A00\u8BBE\u7F6E\u5C06\u5728OpenRocket\u91CD\u542F\u540E\u751F\u6548
-
-PresetModel.lbl.database = \u4ECE\u6570\u636E\u5E93...
-PresetModel.lbl.select = \u9009\u62E9\u9884\u8BBE
-
-PrintDialog.but.previewAndPrint = \u9884\u89C8 & \u6253\u5370
-PrintDialog.checkbox.showByStage = \u6309\u7EA7\u663E\u793A
-PrintDialog.error.preview.desc1 = \u65E0\u6CD5\u6253\u5F00PDF\u9884\u89C8
-PrintDialog.error.preview.desc2 = \u8BF7\u6539\u7528"\u4FDD\u5B58\u4E3APDF"\u9009\u9879
-PrintDialog.error.preview.title = \u65E0\u6CD5\u6253\u5F00\u9884\u89C8
-PrintDialog.lbl.selectElements = \u9009\u62E9\u4EE5\u4E0B\u5143\u7D20:
-! Print dialog
-PrintDialog.title = \u6253\u5370\u6216\u5BFC\u51FA
-
-PrintSettingsDialog.but.Close = \u5173\u95ED
-PrintSettingsDialog.but.Reset = \u91CD\u7F6E
-PrintSettingsDialog.lbl.Paperorientation = \u6253\u5370\u65B9\u5411:
-PrintSettingsDialog.lbl.Papersize = \u7EB8\u5F20\u5927\u5C0F:
-PrintSettingsDialog.lbl.Templatebordercolor = \u6A21\u677F\u80CC\u666F\u8272:
-PrintSettingsDialog.lbl.Templatefillcolor = \u6A21\u677F\u5B9E\u5FC3\u8272:
-!PrintSettingsDialog
-PrintSettingsDialog.title = \u6253\u5370\u8BBE\u7F6E
-
-RK4SimulationStepper.error.valuesTooLarge = \u4EFF\u771F\u6570\u503C\u8D85\u51FA\u9650\u5236. \u8BF7\u7F29\u5C0F\u65F6\u95F4\u6B65\u957F.
-
-RecoveryConfigurationPanel.table.deployment.default = \u9ED8\u8BA4 ({0})
-
-RecoveryDevice.DeployEvent.ALTITUDE = \u6307\u5B9A\u4E0B\u964D\u9AD8\u5EA6
-RecoveryDevice.DeployEvent.APOGEE = \u6700\u9AD8\u70B9
-RecoveryDevice.DeployEvent.CURRENT_STAGE_SEPARATION = \u5F53\u524D\u7EA7\u95F4\u5206\u79BB
-RecoveryDevice.DeployEvent.EJECTION = \u672C\u7EA7\u7B2C\u4E00\u6B21\u5F39\u5C04
-! RecoveryDevice
-RecoveryDevice.DeployEvent.LAUNCH = \u53D1\u5C04 (\u52A0 NN \u79D2)
-RecoveryDevice.DeployEvent.LOWER_STAGE_SEPARATION = \u6B21\u7EA7\u7EA7\u95F4\u5206\u79BB
-RecoveryDevice.DeployEvent.NEVER = \u4ECE\u4E0D
-RecoveryDevice.DeployEvent.short.ALTITUDE = \u9AD8\u5EA6
-RecoveryDevice.DeployEvent.short.APOGEE = \u6700\u9AD8\u70B9
-RecoveryDevice.DeployEvent.short.CURRENT_STAGE_SEPARATION = \u5F53\u524D\u7EA7\u95F4\u5206\u79BB
-RecoveryDevice.DeployEvent.short.EJECTION = \u5F39\u5C04
-RecoveryDevice.DeployEvent.short.LAUNCH = \u53D1\u5C04
-RecoveryDevice.DeployEvent.short.LOWER_STAGE_SEPARATION = \u6B21\u7EA7\u7EA7\u95F4\u5206\u79BB
-RecoveryDevice.DeployEvent.short.NEVER = \u4ECE\u4E0D
-
-RenameConfigDialog.but.reset = \u91CD\u7F6E\u5230\u9ED8\u8BA4\u503C
-RenameConfigDialog.lbl.name = \u98DE\u884C\u914D\u7F6E\u540D\u79F0:
-! Rename FlightConfiguration Dialog
-RenameConfigDialog.title = \u91CD\u547D\u540D\u914D\u7F6E
-
-Rocket.compname.Rocket = \u706B\u7BAD
-!Rocket
-Rocket.motorCount.Nomotor = [\u65E0\u53D1\u52A8\u673A]
-Rocket.motorCount.noStageMotors = [\u65E0\u5206\u7EA7\u53D1\u52A8\u673A]
-
-RocketActions.ActBoosterstage = \u52A9\u63A8\u7EA7
-RocketActions.CopyAct.Copy = \u590D\u5236
-RocketActions.CopyAct.ttip.Copy = \u590D\u5236\u7EC4\u4EF6 (\u53CA\u5B50\u7EC4\u4EF6) \u5230\u526A\u8D34\u677F
-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.DelAct.Delete = \u5220\u9664
-RocketActions.DelAct.ttip.Delete = \u5220\u9664\u9009\u5B9A\u90E8\u4EF6\u6216\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.EditAct.Edit = \u7F16\u8F91
-RocketActions.EditAct.ttip.Edit = \u7F16\u8F91\u9009\u4E2D\u7EC4\u4EF6
-RocketActions.MoveDownAct.Movedown = \u5411\u4E0B\u79FB\u52A8
-RocketActions.MoveDownAct.ttip.Movedown = \u5411\u4E0B\u79FB\u52A8\u8BE5\u90E8\u4EF6
-RocketActions.MoveUpAct.Moveup = \u5411\u4E0A\u79FB\u52A8
-RocketActions.MoveUpAct.ttip.Moveup = \u5411\u4E0A\u79FB\u52A8\u8BE5\u90E8\u4EF6
-RocketActions.NewStageAct.Newstage = \u65B0\u5EFA\u4E00\u7EA7
-RocketActions.NewStageAct.ttip.Newstage = \u5728\u8BBE\u8BA1\u4E2D\u65B0\u5EFA\u4E00\u7EA7
-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
-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
-
-RocketCfg.lbl.Comments = \u6CE8\u91CA:
-RocketCfg.lbl.Designer = \u8BBE\u8BA1\u4EBA:
-! RocketConfig
-RocketCfg.lbl.Designname = \u8BBE\u8BA1\u7A3F\u540D\u79F0:
-RocketCfg.lbl.Material = \u6750\u6599:
-RocketCfg.lbl.Revisionhistory = \u4FEE\u8BA2\u5386\u53F2:
-
-RocketCompCfg.border.Foreshoulder = \u540E\u8FDE\u63A5\u5904
-RocketCompCfg.but.Saveasdefstyle = \u4FDD\u5B58\u4E3A\u9ED8\u8BA4\u6837\u5F0F
-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.checkbox.Endcapped = \u6709\u7AEF\u76D6
-RocketCompCfg.checkbox.Overridecenterofgrav = \u8986\u5199\u91CD\u5FC3:
-RocketCompCfg.checkbox.Overridemass = \u8986\u5199\u8D28\u91CF:
-RocketCompCfg.checkbox.OverridemassandCG = \u8986\u5199\u6240\u6709\u7EC4\u4EF6\u7684\u91CD\u91CF\u548C\u91CD\u5FC3
-RocketCompCfg.checkbox.Usedefaultcolor = \u9ED8\u8BA4\u989C\u8272
-RocketCompCfg.combo.ttip.componentmaterialaffects = \u7EC4\u4EF6\u6750\u6599\u5C06\u4F1A\u5F71\u54CD\u5230\u7EC4\u4EF6\u91CD\u91CF.
-RocketCompCfg.lbl.Choosecolor = \u989C\u8272\u9009\u62E9
-RocketCompCfg.lbl.Commentsonthe = \u6CE8\u91CA
-RocketCompCfg.lbl.Complinestyle = \u7EC4\u4EF6\u7EBF\u578B:
-RocketCompCfg.lbl.Componentcolor = \u7EC4\u4EF6\u989C\u8272:
-RocketCompCfg.lbl.Componentfinish = \u7EC4\u4EF6\u8868\u9762\u5904\u7406:
-RocketCompCfg.lbl.Componentmass = \u7EC4\u4EF6\u8D28\u91CF:
-RocketCompCfg.lbl.Componentmaterial = \u7EC4\u4EF6\u6750\u6599:
-! RocketComponentConfig
-RocketCompCfg.lbl.Componentname = \u7EC4\u4EF6\u540D\u79F0:
-RocketCompCfg.lbl.Diameter = \u76F4\u5F84:
-RocketCompCfg.lbl.Figurestyle = \u6837\u5F0F:
-RocketCompCfg.lbl.Length = \u957F\u5EA6:
-RocketCompCfg.lbl.Mass = \u8D28\u91CF:
-RocketCompCfg.lbl.Overridemassorcenter = \u8986\u5199\u91CD\u91CF\u6216\u91CD\u5FC3
-RocketCompCfg.lbl.Thickness = \u539A\u5EA6:
-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.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.overriddenby = (\u88AB\u8986\u5199
-RocketCompCfg.lbl.overriddento = (\u8986\u5199\u5230
-RocketCompCfg.lbl.ttip.componentmaterialaffects = \u7EC4\u4EF6\u6750\u6599\u5C06\u4F1A\u5F71\u54CD\u5230\u7EC4\u4EF6\u91CD\u91CF.
-RocketCompCfg.tab.Appearance = \u5916\u89C2
-RocketCompCfg.tab.Comment = \u6CE8\u91CA
-RocketCompCfg.tab.Figstyleopt = \u6837\u5F0F\u9009\u9879
-RocketCompCfg.tab.Figure = \u6837\u5F0F
-RocketCompCfg.tab.MassandCGoverride = \u8D28\u91CF\u53CA\u91CD\u5FC3\u9009\u9879
-RocketCompCfg.tab.Override = \u8986\u5199
-RocketCompCfg.tab.Specifyacomment = \u7EC4\u4EF6\u6CE8\u91CA
-RocketCompCfg.title.Aftshoulder = \u524D\u8FDE\u63A5\u5904
-RocketCompCfg.title.Noseconeshoulder = \u5934\u9525\u8FDE\u63A5\u5904
-RocketCompCfg.ttip.Endcapped = \u8FDE\u63A5\u5904\u7EC8\u7AEF\u662F\u5426\u6709\u76D6.
-RocketCompCfg.ttip.Thecomponentname = \u7EC4\u4EF6\u540D\u79F0.
-
-RocketComponent.Position.ABSOLUTE = \u5934\u9525\u5C16\u7AEF
-RocketComponent.Position.AFTER = \u7236\u7EC4\u4EF6\u4E4B\u540E
-RocketComponent.Position.BOTTOM = \u7236\u7EC4\u4EF6\u5E95\u90E8
-RocketComponent.Position.MIDDLE = \u7236\u7EC4\u4EF6\u4E2D\u90E8
-! RocketComponent
-RocketComponent.Position.TOP = \u7236\u7EC4\u4EF6\u9876\u90E8
-
-RocketInfo.Apogee = \u6700\u9AD8\u70B9:
-RocketInfo.Calculating = \u8BA1\u7B97\u4E2D...
-RocketInfo.Mach = (\u9A6C\u8D6B
-RocketInfo.Maxacceleration = \u6700\u5927\u52A0\u901F\u5EA6:
-RocketInfo.Maxvelocity = \u6700\u5927\u901F\u5EA6:
-RocketInfo.Warning = \u8B66\u544A:
-RocketInfo.accelerationValue = N/A
-RocketInfo.apogeeValue = N/A
-RocketInfo.at = \u4F4D\u7F6E(\u7C73)
-RocketInfo.cgText = CG(\u91CD\u5FC3):
-RocketInfo.cpText = CP(\u538B\u5FC3):
-! RocketInfo
-RocketInfo.lengthLine.Length = \u957F\u5EA6
-RocketInfo.lengthLine.maxdiameter = , \u6700\u5927\u76F4\u5F84
-RocketInfo.massWithMotors = \u542B\u53D1\u52A8\u673A\u7684\u603B\u8D28\u91CF
-RocketInfo.massWithoutMotors = \u4E0D\u542B\u53D1\u52A8\u673A\u7684\u51C0\u8D28\u91CF
-RocketInfo.stabText = \u7A33\u5B9A\u6027:
-RocketInfo.velocityValue = N/A
-
-RocketPanel.FigTypeAct.Backview = \u540E\u89C6\u56FE
-RocketPanel.FigTypeAct.Figure3D = \u4E09\u7EF4\u56FE
-RocketPanel.FigTypeAct.Finished = \u4E09\u7EF4\u7CBE\u7EC6\u56FE
-! RocketPanel
-RocketPanel.FigTypeAct.Sideview = \u4FA7\u89C6\u56FE
-RocketPanel.FigTypeAct.Unfinished = \u4E09\u7EF4\u8349\u56FE
-RocketPanel.lbl.Flightcfg = \u98DE\u884C\u914D\u7F6E:
-RocketPanel.lbl.ViewType = \u89C6\u56FE\u7C7B\u578B:
-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
-
-ScaleDialog.button.scale = \u7F29\u653E
-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.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
-! The scaleFrom/scaleTo pair creates a phrase "Scale from [...] to [...]"
-ScaleDialog.lbl.scaleFrom = \u7F29\u653E\u81EA
-ScaleDialog.lbl.scaleFromTo.ttip = \u6839\u636E\u539F\u59CB\u5927\u5C0F\u548C\u76EE\u6807\u5927\u5C0F\u786E\u5B9A\u7F29\u653E\u6BD4\u4F8B.
-! Scale dialog
-ScaleDialog.lbl.scaleRocket = \u6574\u4E2A\u706B\u7BAD
-ScaleDialog.lbl.scaleSelection = \u4EC5\u9009\u4E2D\u7EC4\u4EF6
-ScaleDialog.lbl.scaleSubselection = \u9009\u4E2D\u7EC4\u4EF6\u53CA\u6240\u6709\u5B50\u7EC4\u4EF6
-ScaleDialog.lbl.scaleTo = \u5230
-ScaleDialog.lbl.scaling = \u7F29\u653E\u6BD4\u4F8B:
-ScaleDialog.lbl.scaling.ttip = \u5927\u4E8E100%\u8868\u793A\u653E\u5927, \u5C0F\u4E8E100%\u8868\u793A\u7F29\u5C0F.
-ScaleDialog.title = \u7F29\u653E
-ScaleDialog.undo.scaleComponent = \u7F29\u653E\u5355\u4E2A\u7EC4\u4EF6
-ScaleDialog.undo.scaleComponents = \u7F29\u653E\u591A\u4E2A\u7EC4\u4EF6
-ScaleDialog.undo.scaleRocket = \u7F29\u653E\u706B\u7BAD
-
-SeparationConfigurationPanel.table.separation.default = \u9ED8\u8BA4 ({0})
-
-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
-SeparationSelectionDialog.opt.title = \u53D7\u5230\u5F71\u54CD\u7684\u98DE\u884C\u914D\u7F6E:
-
-! 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.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.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.
-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.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.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.
-
-! ShockCord
-ShockCord.ShockCord = \u51CF\u9707\u7D22
-
-ShockCordCfg.lbl.Packeddiam = \u4F1E\u5305\u76F4\u5F84:
-ShockCordCfg.lbl.Packedlength = \u4F1E\u5305\u957F\u5EA6:
-ShockCordCfg.lbl.Posrelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-! ShockCordConfig
-ShockCordCfg.lbl.Shockcordlength = \u51CF\u9707\u7D22\u957F\u5EA6:
-ShockCordCfg.lbl.Shockcordmaterial = \u51CF\u9707\u7D22\u6750\u6599:
-ShockCordCfg.lbl.plus = \u52A0
-ShockCordCfg.tab.General = \u5E38\u89C4
-ShockCordCfg.tab.ttip.General = \u5E38\u89C4\u5C5E\u6027
-
-SimExpPan.Col.Unit = \u5355\u4F4D
-SimExpPan.Col.Variable = \u53D8\u91CF
-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.Fileexists.desc1 = \u6587\u4EF6 "
-SimExpPan.Fileexists.desc2 = " \u5DF2\u5B58\u5728. \u8986\u76D6?
-SimExpPan.Fileexists.title = \u6587\u4EF6\u5DF2\u5B58\u5728
-SimExpPan.border.Comments = \u6CE8\u91CA
-SimExpPan.border.Fieldsep = \u6570\u636E\u5206\u9694\u7B26
-SimExpPan.border.Stage = \u5BFC\u51FA\u706B\u7BAD\u7EA7
-SimExpPan.border.Vartoexport = \u5BFC\u51FA\u53D8\u91CF
-SimExpPan.but.Selectall = \u5168\u9009
-SimExpPan.but.Selectnone = \u53D6\u6D88\u5168\u9009
-SimExpPan.checkbox.Incflightevents = \u98DE\u884C\u4E8B\u4EF6
-SimExpPan.checkbox.Includefielddesc = \u6570\u636E\u57DF\u63CF\u8FF0
-SimExpPan.checkbox.Includesimudesc = \u4EFF\u771F\u63CF\u8FF0
-SimExpPan.checkbox.ttip.Incflightevents = \u6CE8\u91CA\u884C\u7528\u4E8E\u63CF\u8FF0\u98DE\u884C\u4E8B\u4EF6.
-SimExpPan.checkbox.ttip.Includefielddesc = \u6CE8\u91CA\u884C\u7528\u4E8E\u63CF\u8FF0\u8F93\u51FA\u53D8\u91CF.
-SimExpPan.checkbox.ttip.Includesimudesc = \u5728\u6587\u4EF6\u5934\u52A0\u4E0A\u6CE8\u91CA\u884C\u7528\u4E8E\u63CF\u8FF0\u4EFF\u771F\u5185\u5BB9.
-! SimulationExportPanel
-SimExpPan.desc = CSV\u6570\u636E\u6587\u4EF6 (*.csv)
-SimExpPan.lbl.Commentchar = \u6CE8\u91CA\u6807\u8BC6\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.lbl.ttip.Commentchar = \u7528\u4E8E\u6807\u8BB0\u6CE8\u91CA\u884C\u7684\u6807\u8BC6\u7B26.
-
-SimuRunDlg.lbl.Altitude = \u9AD8\u5EA6:
-SimuRunDlg.lbl.Running = \u6B63\u5728\u4EFF\u771F ...
-SimuRunDlg.lbl.Simutime = \u4EFF\u771F\u65F6\u95F4:
-SimuRunDlg.lbl.Velocity = \u901F\u5EA6:
-SimuRunDlg.msg.Unabletosim = \u65E0\u6CD5\u8FD0\u884C\u4EFF\u771F:
-SimuRunDlg.msg.errorOccurred = \u4EFF\u771F\u65F6\u51FA\u73B0\u9519\u8BEF:
-! SimulationRunDialog
-SimuRunDlg.title.RunSim = \u8FD0\u884C\u4EFF\u771F...
-
-SimulationEditDialog.btn.edit = \u7F16\u8F91
-SimulationEditDialog.btn.export = \u5BFC\u51FA
-SimulationEditDialog.btn.plot = \u6570\u636E\u56FE
-SimulationEditDialog.btn.simulate = \u4EFF\u771F
-SimulationEditDialog.btn.simulateAndPlot = \u4EFF\u771F & \u6570\u636E\u56FE
-
-SimulationExtension.javacode.className = \u5B8C\u6574\u7684Java\u7C7B\u540D:
-SimulationExtension.javacode.desc = \u6DFB\u52A0\u81EA\u5B9A\u4E49SimulationListener(\u76D1\u542C\u4E8B\u4EF6)
-SimulationExtension.javacode.name = Java\u4EE3\u7801
-SimulationExtension.javacode.name.none = \u65E0
-SimulationExtension.scripting.desc = \u81EA\u5B9A\u4E49OpenRocket\u6269\u5C55\u811A\u672C.
-SimulationExtension.scripting.language.label = \u8BED\u8A00:
-SimulationExtension.scripting.name = {language}\u811A\u672C
-SimulationExtension.scripting.text.enabled = \u542F\u7528\u811A\u672C
-SimulationExtension.scripting.text.enabled.ttip = \u811A\u672C\u53EA\u6709\u5728\u542F\u7528\u540E\u624D\u4F1A\u88AB\u6267\u884C.
-SimulationExtension.scripting.text.trusted = \u5728\u672C\u673A\u4E0A\u4FE1\u4EFB\u8BE5\u811A\u672C
-SimulationExtension.scripting.text.trusted.clear = \u6E05\u9664\u811A\u672C\u4FE1\u4EFB
-SimulationExtension.scripting.text.trusted.clear.ttip = \u6E05\u9664\u5BF9\u6240\u6709\u811A\u672C\u7684\u4FE1\u4EFB
-SimulationExtension.scripting.text.trusted.cleared = \u6240\u6709\u811A\u672C\u5DF2\u4E0D\u88AB\u672C\u673A\u4FE1\u4EFB.
-SimulationExtension.scripting.text.trusted.cleared.title = \u5DF2\u6E05\u9664
-SimulationExtension.scripting.text.trusted.msg = \u4E0D\u53EF\u4FE1\u7684\u811A\u672C\u4F1A\u5728\u8BFB\u53D6\u65F6\u88AB\u7981\u7528
-SimulationExtension.scripting.warning.disabled = \u4E0D\u53EF\u4FE1\u811A\u672C\u5DF2\u88AB\u7981\u7528. \u4F60\u9700\u8981\u5728\u4EFF\u771F\u9009\u9879\u4E2D\u624B\u52A8\u542F\u7528.
-
-SimulationModifierTree.OptimizationParameters = \u4F18\u5316\u53C2\u6570
-
-SimulationPlotPanel.error.noPlotSelected = \u8BF7\u5728Y\u8F74\u6DFB\u52A0\u81F3\u5C111\u4E2A\u53D8\u91CF.
-SimulationPlotPanel.error.noPlotSelected.title = \u6CA1\u6709\u6570\u636E
-
-! Sleeve
-Sleeve.Sleeve = \u5C01\u5957
-
-SleeveCfg.tab.General = \u5E38\u89C4
-SleeveCfg.tab.Generalproperties = \u5E38\u89C4\u5C5E\u6027
-SleeveCfg.tab.Innerdiam = \u5957\u7BA1\u5185\u76F4\u5F84:
-SleeveCfg.tab.Length = \u957F\u5EA6:
-!SleeveConfig
-SleeveCfg.tab.Outerdiam = \u5957\u7BA1\u5916\u76F4\u5F84:
-SleeveCfg.tab.Wallthickness = \u58C1\u539A:
-
-SlideShowDialog.btn.next = \u4E0B\u4E00\u9875
-SlideShowDialog.btn.prev = \u4E0A\u4E00\u9875
-
-SlideShowLinkListener.error.msg = \u5F88\u9057\u61BE, \u6240\u9009\u7684\u6559\u7A0B\u8FD8\u672A\u88AB\u64B0\u5199.
-SlideShowLinkListener.error.title = \u6CA1\u6709\u627E\u5230\u76F8\u5173\u6559\u7A0B
-
-StabilityParameter.name = \u7A33\u5B9A\u6027
-
-Stage.SeparationEvent.BURNOUT = \u672C\u7EA7\u53D1\u52A8\u673A\u71C3\u5C3D
-Stage.SeparationEvent.EJECTION = \u672C\u7EA7\u5F39\u5C04
-Stage.SeparationEvent.IGNITION = \u672C\u7EA7\u53D1\u52A8\u673A\u70B9\u706B
-Stage.SeparationEvent.LAUNCH = \u53D1\u5C04
-Stage.SeparationEvent.NEVER = \u4ECE\u4E0D
-Stage.SeparationEvent.UPPER_IGNITION = \u4E0A\u7EA7\u53D1\u52A8\u673A\u70B9\u706B
-!Stage
-Stage.Stage = \u706B\u7BAD\u7EA7
-
-! StageAction
-StageAction.Stage = \u7EA7
-
-StageConfig.separation.lbl.plus = \u52A0
-StageConfig.separation.lbl.seconds = \u79D2
-StageConfig.separation.lbl.title = \u8BBE\u5B9A\u5206\u79BB\u65F6\u673A:
-!StageConfig
-StageConfig.tab.Separation = \u5206\u79BB
-StageConfig.tab.Separation.ttip = \u591A\u7EA7\u5206\u79BB\u9009\u9879
-
-StorageOptChooser.lbl.Estfilesize = \u9884\u8BA1\u6587\u4EF6\u4F53\u79EF:
-StorageOptChooser.lbl.Saveopt = \u4FDD\u5B58\u9009\u9879
-! StorageOptionChooser
-StorageOptChooser.lbl.Simdatatostore = \u4FDD\u5B58\u4EFF\u771F\u6570\u636E:
-StorageOptChooser.lbl.longA1 = \u4FDD\u5B58\u6240\u6709\u4EFF\u771F\u6570\u636E.
-StorageOptChooser.lbl.longA2 = \u6587\u4EF6\u4F53\u79EF\u4F1A\u5F88\u5927!
-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.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.lbl.seconds = \u79D2
-StorageOptChooser.rdbut.Allsimdata = \u6240\u6709\u4EFF\u771F\u6570\u636E
-StorageOptChooser.rdbut.Every = \u6BCF\u4E00\u4E2A
-StorageOptChooser.rdbut.Onlyprimfig = \u4EC5\u4FDD\u7559\u4E3B\u8981\u6570\u636E
-StorageOptChooser.ttip.Saveopt = \u4FDD\u5B58\u9009\u9879
-
-! Streamer
-Streamer.Streamer = \u5F69\u5E26
-
-StreamerCfg.but.Reset = \u91CD\u7F6E
-StreamerCfg.combo.ttip.MaterialModel = \u6750\u6599\u4F1A\u5F71\u54CD\u7EC4\u4EF6\u91CD\u91CF.
-StreamerCfg.lbl.Altitude = \u9AD8\u5EA6:
-StreamerCfg.lbl.Aspectratio = \u9AD8\u5BBD\u6BD4:
-StreamerCfg.lbl.Automatic = \u81EA\u52A8
-StreamerCfg.lbl.Deploysat = \u5C55\u5F00\u65F6\u673A:
-StreamerCfg.lbl.Material = \u6750\u6599:
-StreamerCfg.lbl.Packeddiam = \u98D8\u5E26\u5305\u76F4\u5F84:
-StreamerCfg.lbl.Packedlength = \u98D8\u5E26\u5305\u957F\u5EA6:
-StreamerCfg.lbl.Posrelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-StreamerCfg.lbl.Radialdirection = \u5F84\u5411\u65B9\u5411:
-StreamerCfg.lbl.Radialdistance = \u5F84\u5411\u8DDD\u79BB:
-StreamerCfg.lbl.Striparea = \u98D8\u5E26\u9762\u79EF:
-! StreamerConfig
-StreamerCfg.lbl.Striplength = \u98D8\u5E26\u957F\u5EA6:
-StreamerCfg.lbl.Stripwidth = \u98D8\u5E26\u5BBD\u5EA6:
-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.longC1 = \u963B\u529B\u7CFB\u6570\u7531\u98D8\u5E26\u9762\u79EF\u51B3\u5B9A.
-StreamerCfg.lbl.plus = \u52A0
-StreamerCfg.lbl.plusdelay = \u52A0
-StreamerCfg.lbl.seconds = \u79D2
-StreamerCfg.tab.General = \u5E38\u89C4
-StreamerCfg.tab.Radialpos = \u5F84\u5411\u4F4D\u7F6E
-StreamerCfg.tab.ttip.General = \u5E38\u89C4\u5C5E\u6027
-StreamerCfg.tab.ttip.Radialpos = \u5F84\u5411\u4F4D\u7F6E\u8BBE\u7F6E
-
-TCMotorSelPan.Diameter = \u76F4\u5F84
-TCMotorSelPan.Length = \u957F\u5EA6
-TCMotorSelPan.MotorMountDimensions = \u53D1\u52A8\u673A\u5EA7\u5C3A\u5BF8:
-TCMotorSelPan.MotorSize = \u53D1\u52A8\u673A\u5C3A\u5BF8
-TCMotorSelPan.btn.checkAll = \u5168\u9009
-TCMotorSelPan.btn.checkNone = \u5168\u6E05\u7A7A
-TCMotorSelPan.btn.close = \u5173\u95ED
-TCMotorSelPan.btn.details = \u663E\u793A\u8BE6\u60C5
-TCMotorSelPan.btn.filter = \u7B5B\u9009\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.limitdiameter = \u76F4\u5F84\u4E0D\u8D85\u8FC7\u5F53\u524D\u53D1\u52A8\u673A\u5EA7\u76F4\u5F84
-TCMotorSelPan.checkbox.limitlength = \u957F\u5EA6\u4E0D\u8D85\u8FC7\u5F53\u524D\u53D1\u52A8\u673A\u5EA7\u957F\u5EA6
-TCMotorSelPan.delayBox.None = \u65E0
-TCMotorSelPan.equalsIgnoreCase.None = \u65E0
-TCMotorSelPan.lbl.Avgthrust = \u5E73\u5747\u63A8\u529B:
-TCMotorSelPan.lbl.Burntime = \u71C3\u70E7\u65F6\u95F4:
-TCMotorSelPan.lbl.Datapoints = \u6570\u636E\u70B9:
-TCMotorSelPan.lbl.Digest = \u6458\u8981:
-TCMotorSelPan.lbl.Ejectionchargedelay = \u5F39\u5C04\u5EF6\u65F6:
-TCMotorSelPan.lbl.Emptymass = \u71C3\u5C3D\u8D28\u91CF:
-TCMotorSelPan.lbl.Launchmass = \u53D1\u5C04\u8D28\u91CF:
-TCMotorSelPan.lbl.Maxthrust = \u6700\u5927\u63A8\u529B:
-TCMotorSelPan.lbl.NumberofsecondsorNone = (\u79D2\u6570\u6216"\u65E0")
-TCMotorSelPan.lbl.Search = \u641C\u7D22:
-TCMotorSelPan.lbl.Selectthrustcurve = \u9009\u62E9\u63A8\u529B\u66F2\u7EBF:
-! ThrustCurveMotorSelectionPanel
-TCMotorSelPan.lbl.Selrocketmotor = \u9009\u62E9\u706B\u7BAD\u53D1\u52A8\u673A:
-TCMotorSelPan.lbl.Totalimpulse = \u603B\u51B2\u91CF:
-TCMotorSelPan.noDescription = \u63CF\u8FF0\u4E0D\u53EF\u7528.
-TCMotorSelPan.title.Thrust = \u63A8\u529B
-TCMotorSelPan.title.Thrustcurve = \u63A8\u529B\u66F2\u7EBF:
-
-TCurveMotor.ttip.avgThrust = \u5E73\u5747\u63A8\u529B:
-TCurveMotor.ttip.burnTime = \u71C3\u70E7\u65F6\u95F4:
-TCurveMotor.ttip.diameter = \u76F4\u5F84:
-TCurveMotor.ttip.emptyMass = \u71C3\u5C3D\u8D28\u91CF:
-TCurveMotor.ttip.launchMass = \u53D1\u5C04\u8D28\u91CF:
-TCurveMotor.ttip.length = \u957F\u5EA6:
-TCurveMotor.ttip.maxThrust = \u6700\u5927\u63A8\u529B:
-TCurveMotor.ttip.totalImpulse = \u603B\u51B2\u529B:
-
-TCurveMotorCol.DESIGNATION = \u540D\u79F0
-TCurveMotorCol.DIAMETER = \u76F4\u5F84
-TCurveMotorCol.LENGTH = \u957F\u5EA6
-! ThrustCurveMotorColumns
-TCurveMotorCol.MANUFACTURER = \u5236\u9020\u5546
-TCurveMotorCol.TOTAL_IMPULSE = \u603B\u51B2
-TCurveMotorCol.TYPE = \u7C7B\u578B
-
-TextureWrap.Clamp = \u56FA\u5B9A\u8FB9\u7F18\u50CF\u7D20
-TextureWrap.Mirror = \u91CD\u590D & \u955C\u50CF
-! Texture Wrap Modes
-TextureWrap.Repeat = \u91CD\u590D
-TextureWrap.Sticker = \u8D34\u7EB8
-
-ThicknessRingCompCfg.tab.General = \u5E38\u89C4
-ThicknessRingCompCfg.tab.Generalprop = \u5E38\u89C4\u5C5E\u6027
-ThicknessRingCompCfg.tab.Innerdiam = \u5185\u76F4\u5F84:
-ThicknessRingCompCfg.tab.Length = \u957F\u5EA6:
-! ThicknessRingComponentConfig
-ThicknessRingCompCfg.tab.Outerdiam = \u5916\u76F4\u5F84:
-ThicknessRingCompCfg.tab.Wallthickness = \u58C1\u539A:
-
-TotalFlightTimeParameter.name = \u603B\u98DE\u884C\u65F6\u95F4
-
-! Transition
-Transition.Transition = \u7EA7\u95F4\u6BB5
-
-TransitionCfg.checkbox.Automatic = \u81EA\u52A8
-TransitionCfg.checkbox.Clipped = \u88C1\u526A
-TransitionCfg.checkbox.Filled = \u5B9E\u5FC3
-TransitionCfg.lbl.Aftdiam = \u540E\u76F4\u5F84:
-TransitionCfg.lbl.Forediam = \u524D\u76F4\u5F84
-TransitionCfg.lbl.Shapeparam = \u5F62\u72B6\u53C2\u6570:
-TransitionCfg.lbl.Transitionlength = \u7EA7\u95F4\u6BB5\u76F4\u5F84:
-! TransitionConfig
-TransitionCfg.lbl.Transitionshape = \u7EA7\u95F4\u6BB5\u5F62\u72B6:
-TransitionCfg.lbl.Wallthickness = \u58C1\u539A:
-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
-
-! TrapezoidFinSet
-TrapezoidFinSet.TrapezoidFinSet = \u68AF\u5F62\u7A33\u5B9A\u7FFC
-
-TrapezoidFinSetCfg.lbl.Fincant = \u7A33\u5B9A\u7FFC\u9762\u89D2:
-TrapezoidFinSetCfg.lbl.FincrossSection = \u7A33\u5B9A\u7FFC\u6A2A\u622A\u9762:
-TrapezoidFinSetCfg.lbl.Finrotation = \u7A33\u5B9A\u7FFC\u65CB\u89D2:
-TrapezoidFinSetCfg.lbl.Height = \u9AD8\u5EA6:
-! TrapezoidFinSetConfig
-TrapezoidFinSetCfg.lbl.Nbroffins = \u7A33\u5B9A\u7FFC\u6570\u91CF:
-TrapezoidFinSetCfg.lbl.Posrelativeto = \u76F8\u5BF9\u4F4D\u7F6E:
-TrapezoidFinSetCfg.lbl.Rootchord = \u7FFC\u6839\u5F26:
-TrapezoidFinSetCfg.lbl.Sweepangle = \u540E\u63A0\u89D2:
-TrapezoidFinSetCfg.lbl.Sweeplength = \u540E\u63A0\u957F\u5EA6:
-TrapezoidFinSetCfg.lbl.Thickness = \u539A\u5EA6:
-TrapezoidFinSetCfg.lbl.Tipchord = \u7FFC\u68A2\u5F26:
-TrapezoidFinSetCfg.lbl.plus = \u52A0
-TrapezoidFinSetCfg.lbl.ttip.Fincant = \u7A33\u5B9A\u7FFC\u7FFC\u9762\u4E0E\u7BAD\u4F53\u4E4B\u95F4\u7684\u5939\u89D2.
-TrapezoidFinSetCfg.lbl.ttip.Finrotation = \u7A33\u5B9A\u7FFC\u7EC4\u5408\u91CC\u7B2C\u4E00\u7247\u7684\u89D2\u5EA6
-TrapezoidFinSetCfg.lbl.ttip.Nbroffins = \u68AF\u5F62\u7A33\u5B9A\u7FFC\u7684\u6570\u91CF.
-TrapezoidFinSetCfg.tab.General = \u5E38\u89C4
-TrapezoidFinSetCfg.tab.Generalproperties = \u5E38\u89C4\u5C5E\u6027
-
-! TubeCoupler
-TubeCoupler.TubeCoupler = \u8FDE\u63A5\u5668
-
-TubeFinSet.TubeFinSet = \u7BA1\u5F62\u7FFC
-
-TubeFinSetCfg.checkbox.Automatic = \u81EA\u52A8
-TubeFinSetCfg.lbl.Finrotation = \u7FFC\u7FC5\u65CB\u5EA6:
-TubeFinSetCfg.lbl.Innerdiam = \u5185\u76F4\u5F84:
-TubeFinSetCfg.lbl.Length = \u957F\u5EA6:
-TubeFinSetCfg.lbl.Nbroffins = \u7FFC\u6570\u91CF:
-TubeFinSetCfg.lbl.Outerdiam = \u5916\u76F4\u5F84:
-TubeFinSetCfg.lbl.Thickness = \u539A\u5EA6:
-TubeFinSetCfg.lbl.ttip.Finrotation = \u7A33\u5B9A\u7FFC\u7EC4\u5408\u91CC\u7B2C\u4E00\u7247\u7684\u89D2\u5EA6
-
-Warning.DISCONTINUITY = \u7BAD\u4F53\u76F4\u5F84\u4E0D\u8FDE\u7EED.
-Warning.FILE_INVALID_PARAMETER = \u65E0\u6548\u53C2\u6570, \u5FFD\u7565.
-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
-Warning.LargeAOA.str1 = \u653B\u89D2\u592A\u5927.
-Warning.LargeAOA.str2 = \u653B\u89D2\u592A\u5927 (
-Warning.PARALLEL_FINS = \u592A\u591A\u5E73\u884C\u7684\u5C3E\u7FFC
-Warning.RECOVERY_DEPLOYMENT_WHILE_BURNING = \u5728\u5F15\u64CE\u4ECD\u7136\u5DE5\u4F5C\u7684\u65F6\u5019\u56DE\u6536\u8BBE\u5907\u6253\u5F00.
-Warning.RECOVERY_HIGH_SPEED = \u56DE\u6536\u88C5\u7F6E\u5206\u79BB\u65F6\u901F\u5EA6\u592A\u9AD8
-Warning.RECOVERY_LAUNCH_ROD = \u56DE\u6536\u88C5\u7F6E\u5728\u53D1\u5C04\u67B6\u4E0A\u89E6\u53D1.
-Warning.SUPERSONIC = \u8D85\u97F3\u901F\u73AF\u5883\u4E0B\u7684\u8BA1\u7B97\u7ED3\u679C\u53EF\u80FD\u4E0D\u51C6\u786E.
-Warning.THICK_FIN = \u539A\u7FFC\u6A21\u578B\u53EF\u80FD\u4E0D\u51C6\u786E.
-Warning.TUMBLE_UNDER_THRUST = \u706B\u7BAD\u7EA7\u5728\u63A8\u529B\u4F5C\u7528\u4E0B\u5F00\u59CB\u503E\u8986.
-
-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.connectedInternet = \u5982\u679C\u8FDE\u63A5\u5230\u4E92\u8054\u7F51\uFF0C\u70B9\u51FB\u53D1\u9001\u9519\u8BEF\u62A5\u544A\u5373\u53EF
-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.dlg.otherwise = \u5426\u5219\u8BF7\u5C06\u9519\u8BEF\u62A5\u544A\u53D1\u9001\u5230:
-bugreport.dlg.provideDescription = \u8BF7\u9996\u5148\u63D0\u4F9B\u9519\u8BEF\u63CF\u8FF0.
-bugreport.dlg.provideDescription.title = \u7F3A\u5C11\u9519\u8BEF\u63CF\u8FF0
-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
-! Bug Report dialog
-bugreport.dlg.title = \u9519\u8BEF\u62A5\u544A
-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.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
-
-button.cancel = \u53D6\u6D88
-button.close = \u5173\u95ED
-! Labels used in buttons of dialog windows
-# TODO: Rename these to "btn.xxx"
-button.ok = OK
-
-! Component add buttons
-compaddbuttons.Bodycompandfinsets = \u7BAD\u4F53\u90E8\u4EF6\u548C\u7A33\u5B9A\u7FFC
-compaddbuttons.Bodytube = \u7BAD\u4F53
-compaddbuttons.Bulkhead = \u9694\u677F
-compaddbuttons.Centeringring = \u4E2D\u5FC3\u73AF
-compaddbuttons.Coupler = \u8FDE\u63A5\u5668
-compaddbuttons.Donotaskmeagain = \u4E0D\u518D\u8BE2\u95EE
-compaddbuttons.Elliptical = \u692D\u5706\u7A33\u5B9A\u7FFC
-compaddbuttons.Engineblock = \u53D1\u52A8\u673A
-compaddbuttons.Freeform = \u81EA\u7531\u66F2\u9762
-compaddbuttons.Innercomponent = \u5185\u90E8\u90E8\u4EF6
-compaddbuttons.Innertube = \u5185\u7B52
-compaddbuttons.Launchlug = \u53D1\u5C04\u5957\u67C4
-compaddbuttons.Masscomponent = \u4E3B\u8F7D\u8377
-compaddbuttons.Massobjects = \u8F7D\u8377\u90E8\u4EF6
-compaddbuttons.Nosecone = \u5934\u9525
-compaddbuttons.Parachute = \u964D\u843D\u4F1E
-compaddbuttons.Selectcomppos = \u9009\u62E9\u90E8\u4EF6\u4F4D\u7F6E
-compaddbuttons.Shockcord = \u51CF\u9707\u7D22
-compaddbuttons.Streamer = \u98D8\u5E26
-compaddbuttons.Transition = \u7EA7\u95F4\u6BB5
-compaddbuttons.Trapezoidal = \u68AF\u5F62\u7A33\u5B9A\u7FFC
-compaddbuttons.Tubefin = \u7BA1\u5F62\u7FFC
-compaddbuttons.askPosition.Addtotheend = \u5728\u5C3E\u90E8\u6DFB\u52A0
-compaddbuttons.askPosition.Cancel = \u53D6\u6D88
-compaddbuttons.askPosition.Inserthere = \u5728\u6B64\u63D2\u5165
-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
-
-componentanalysisdlg.TOTAL = \u603B\u5171
-componentanalysisdlg.TabStability = \u7A33\u5B9A\u6027
-componentanalysisdlg.TabStability.Col = \u7EC4\u4EF6
-componentanalysisdlg.TabStability.Col.CG = \u91CD\u5FC3
-componentanalysisdlg.TabStability.Col.CP = \u538B\u5FC3
-!componentanalysisdlg.But.close = \u5173\u95ed
-componentanalysisdlg.TabStability.Col.Component = \u7EC4\u4EF6
-componentanalysisdlg.TabStability.Col.Mass = \u8D28\u91CF
-componentanalysisdlg.TabStability.ttip = \u7A33\u5B9A\u6027\u4FE1\u606F
-componentanalysisdlg.TitledBorder.warnings = \u8B66\u544A:
-componentanalysisdlg.ToggleBut.worst = \u6700\u574F\u60C5\u51B5
-! Component Analysis Dialog
-componentanalysisdlg.componentanalysis = \u7EC4\u4EF6\u5206\u6790
-componentanalysisdlg.dragTabchar = \u963B\u529B\u7279\u6027
-componentanalysisdlg.dragTabchar.ttip = \u963B\u529B\u7279\u6027
-componentanalysisdlg.dragTableModel.Col.Base = \u57FA\u51C6 CD
-componentanalysisdlg.dragTableModel.Col.Component = \u7EC4\u4EF6
-componentanalysisdlg.dragTableModel.Col.Pressure = \u538B\u529B CD
-componentanalysisdlg.dragTableModel.Col.friction = \u6469\u64E6 CD
-componentanalysisdlg.dragTableModel.Col.total = \u603B CD
-componentanalysisdlg.lbl.activestages = \u6709\u6548\u7EA7:
-componentanalysisdlg.lbl.angleofattack = \u653B\u89D2:
-componentanalysisdlg.lbl.machnumber = \u9A6C\u8D6B:
-componentanalysisdlg.lbl.motorconf = \u53D1\u52A8\u673A\u8BBE\u7F6E:
-componentanalysisdlg.lbl.refarea = \u53C2\u8003\u9762\u79EF:
-componentanalysisdlg.lbl.reflenght = \u53C2\u8003\u957F\u5EA6:
-componentanalysisdlg.lbl.rollrate = \u89D2\u901F\u5EA6:
-componentanalysisdlg.lbl.winddir = \u98CE\u5411:
-componentanalysisdlg.noWarnings = \u6CA1\u6709\u8B66\u544A.
-componentanalysisdlg.println.closingmethod = \u8C03\u7528\u5173\u95ED\u4E8B\u4EF6:
-componentanalysisdlg.println.settingnam = \u8BBE\u7F6E\u975E\u6570\u5B57\u503C
-componentanalysisdlg.rollTableModel = \u6EDA\u8F6C\u52A8\u529B\u5B66
-componentanalysisdlg.rollTableModel.Col.component = \u7EC4\u4EF6
-componentanalysisdlg.rollTableModel.Col.rolldamp = \u6EDA\u8F6C\u963B\u5C3C\u7CFB\u6570
-componentanalysisdlg.rollTableModel.Col.rollforc = \u6EDA\u8F6C\u529B\u7CFB\u6570
-componentanalysisdlg.rollTableModel.Col.total = \u603B Cl
-componentanalysisdlg.rollTableModel.ttip = \u6EDA\u8F6C\u52A8\u529B\u5B66
-
-custmatdlg.checkbox.Addmaterial = \u6DFB\u52A0\u6750\u6599\u5230\u6570\u636E\u5E93
-custmatdlg.lbl.Materialdensity = \u6750\u6599\u5BC6\u5EA6:
-custmatdlg.lbl.Materialname = \u6750\u6599\u540D\u79F0:
-custmatdlg.lbl.Materialtype = \u6750\u6599\u7C7B\u578B:
-! Custom Material dialog
-custmatdlg.title.Custommaterial = \u81EA\u5B9A\u4E49\u6750\u6599
-
-customExpression.Description = \u63CF\u8FF0
-customExpression.Expression = \u8868\u8FBE\u5F0F
-! Custom expression general stuff
-customExpression.Name = \u540D\u79F0
-customExpression.Operator = \u7B97\u5B50
-customExpression.Symbol = \u7B26\u53F7
-customExpression.Units = \u5355\u4F4D
-customExpression.Units.but.ttip.Edit = \u7F16\u8F91\u8868\u8FBE\u5F0F
-customExpression.Units.but.ttip.MoveDown = \u5EF6\u540E\u8868\u8FBE\u5F0F\u8BA1\u7B97\u987A\u5E8F
-customExpression.Units.but.ttip.MoveUp = \u63D0\u524D\u8868\u8FBE\u5F0F\u8BA1\u7B97\u987A\u5E8F
-customExpression.Units.but.ttip.Remove = \u79FB\u9664\u8868\u8FBE\u5F0F
-
-customExpressionPanel.but.Import = \u5BFC\u5165
-! Custom expression panel
-customExpressionPanel.but.NewExpression = \u65B0\u5EFA\u8868\u8FBE\u5F0F
-customExpressionPanel.but.ttip.Import = \u4ECE\u5916\u90E8.ork\u6587\u4EF6\u5BFC\u5165\u8868\u8FBE\u5F0F
-customExpressionPanel.but.ttip.NewExpression = \u65B0\u5EFA\u4E00\u4E2A\u81EA\u5B9A\u4E49\u8868\u8FBE\u5F0F
-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
-customExpressionPanel.lbl.UpdateNote = \u8BF7\u5148\u8FD0\u884C\u4EFF\u771F, \u7136\u540E\u518D\u7ED8\u56FE.
-
-debug.currentFile = messages_zh_CN.properties
-
-debuglogdlg.Displayloglines = \u663E\u793A\u8BB0\u5F55\u884C:
-debuglogdlg.Follow = \u8DDF\u8E2A
-debuglogdlg.OpenRocketdebuglog = OpenRocket \u8C03\u8BD5\u8BB0\u5F55
-! Debug log dialog
-debuglogdlg.but.clear = \u6E05\u7A7A
-debuglogdlg.col.Level = \u7EA7\u522B
-debuglogdlg.col.Location = \u4F4D\u7F6E
-debuglogdlg.col.Message = \u4FE1\u606F
-debuglogdlg.col.Time = \u65F6\u95F4
-debuglogdlg.lbl.Level = \u7EA7\u522B:
-debuglogdlg.lbl.Location = \u4F4D\u7F6E:
-debuglogdlg.lbl.Loglinenbr = \u8C03\u8BD5\u4FE1\u606F\u884C:
-debuglogdlg.lbl.Logmessage = \u8C03\u8BD5\u4FE1\u606F:
-debuglogdlg.lbl.Stacktrace = \u5806\u6808\u8DDF\u8E2A:
-debuglogdlg.lbl.Time = \u65F6\u95F4:
-
-dlg.but.cancel = \u53D6\u6D88
-dlg.but.close = \u5173\u95ED
-! Common labels used in buttons of dialog windows
-dlg.but.ok = OK
-
-edtmotorconfdlg.but.Copyconfiguration = \u590D\u5236
-edtmotorconfdlg.but.Newconfiguration = \u65B0\u5EFA
-! Edit Motor configuration dialog
-edtmotorconfdlg.but.Removeconfiguration = \u79FB\u9664
-edtmotorconfdlg.but.Renameconfiguration = \u91CD\u547D\u540D
-edtmotorconfdlg.but.Resetdeployment = \u91CD\u7F6E\u5230\u9ED8\u8BA4\u503C
-edtmotorconfdlg.but.Resetseparation = \u91CD\u7F6E\u5230\u9ED8\u8BA4\u503C
-edtmotorconfdlg.but.Selectdeployment = \u9009\u62E9\u90E8\u7F72
-edtmotorconfdlg.but.Selectseparation = \u9009\u62E9\u8131\u79BB
-edtmotorconfdlg.col.configuration = \u914D\u7F6E
-edtmotorconfdlg.lbl.Configname = \u914D\u7F6E\u540D\u79F0:
-edtmotorconfdlg.lbl.Motortab = \u53D1\u52A8\u673A
-edtmotorconfdlg.lbl.Recoverytab = \u56DE\u6536
-edtmotorconfdlg.lbl.Selectedconf = \u9009\u62E9\u98DE\u884C\u914D\u7F6E:
-edtmotorconfdlg.lbl.Stagetab = \u7EA7
-edtmotorconfdlg.selectcomp = \u6307\u5B9A\u53D1\u52A8\u673A\u5EA7\u7EC4\u4EF6:
-edtmotorconfdlg.tbl.Deploymentheader = \u90E8\u7F72
-edtmotorconfdlg.tbl.Ignitionheader = \u70B9\u706B
-edtmotorconfdlg.tbl.Motorheader = \u53D1\u52A8\u673A
-edtmotorconfdlg.tbl.Mountheader = \u53D1\u52A8\u673A\u5EA7
-edtmotorconfdlg.tbl.None = \u65E0
-edtmotorconfdlg.tbl.Recoveryheader = \u56DE\u6536\u8BBE\u5907
-edtmotorconfdlg.tbl.Separationheader = \u5206\u79BB
-edtmotorconfdlg.tbl.Stageheader = \u7EA7
-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
-
-error.fileExists.desc = \u6587\u4EF6 '{filename}' \u5DF2\u5B58\u5728\uFF0C\u8986\u76D6?
-! General error messages used in multiple contexts
-error.fileExists.title = \u6587\u4EF6\u5DF2\u5B58\u5728
-error.writing.desc = \u4FDD\u5B58\u6587\u4EF6\u65F6\u53D1\u751F\u9519\u8BEF:
-error.writing.title = \u6587\u4EF6\u5199\u5165\u5931\u8D25
-
-! Example design dialog
-exdesigndlg.but.open = \u6253\u5F00
-exdesigndlg.lbl.Exampledesignsnotfound = \u8303\u4F8B\u8BBE\u8BA1\u7A3F\u672A\u627E\u5230
-exdesigndlg.lbl.Examplesnotfound = \u8303\u4F8B\u672A\u627E\u5230
-exdesigndlg.lbl.Openexampledesign = \u6253\u5F00\u8303\u4F8B\u8BBE\u8BA1\u7A3F
-exdesigndlg.lbl.Selectexample = \u9009\u62E9\u8303\u4F8B\u8BBE\u8BA1\u7A3F:
-
-filetypes.images = \u56FE\u50CF\u6587\u4EF6
-! General file type names
-filetypes.pdf = PDF \u6587\u4EF6 (*.pdf)
-
-generalprefs.languages.default = \u7CFB\u7EDF\u9ED8\u8BA4
-generalprefs.lbl.language = \u754C\u9762\u8BED\u8A00
-generalprefs.lbl.languageEffect = \u65B0\u7684\u8BED\u8A00\u5C06\u5728\u4E0B\u6B21\u542F\u52A8OpenRocket\u65F6\u751F\u6548.
-
-main.menu.analyze = \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.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.analyze.desc = \u706B\u7BAD\u5206\u6790
-main.menu.analyze.optimization = \u706B\u7BAD\u4F18\u5316
-main.menu.analyze.optimization.desc = \u5E38\u89C4\u706B\u7BAD\u8BBE\u8BA1\u4F18\u5316
-main.menu.debug = \u8C03\u8BD5
-main.menu.debug.createtestrocket = \u5EFA\u7ACB\u6D4B\u8BD5\u706B\u7BAD
-main.menu.debug.whatisthismenu = \u8FD9\u662F\u4EC0\u4E48\u83DC\u5355?
-main.menu.edit = \u7F16\u8F91
-main.menu.edit.copy = \u590D\u5236
-main.menu.edit.cut = \u526A\u5207
-main.menu.edit.delete = \u5220\u9664
-main.menu.edit.editpreset = \u7F16\u8F91\u7EC4\u4EF6\u9884\u8BBE\u6587\u4EF6
-main.menu.edit.paste = \u7C98\u8D34
-main.menu.edit.preferences = \u9996\u9009\u9879
-main.menu.edit.preferences.desc = \u4FEE\u6539\u5E94\u7528\u7A0B\u5E8F\u9996\u9009\u9879
-main.menu.edit.redo = \u91CD\u505A
-main.menu.edit.redo.desc = \u91CD\u505A\u64CD\u4F5C
-main.menu.edit.resize = \u7F29\u653E...
-main.menu.edit.resize.desc = \u7F29\u653E\u706B\u7BAD\u8BBE\u8BA1\u7A3F
-main.menu.edit.undo = \u64A4\u9500
-main.menu.edit.undo.desc = \u64A4\u9500\u64CD\u4F5C
-! "main" prefix is used for the main application dialog
-# FIXME: Rename the description keys
-main.menu.file = \u6587\u4EF6
-main.menu.file.close = \u5173\u95ED
-main.menu.file.desc = \u6587\u4EF6\u5904\u7406\u4EFB\u52A1
-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.file.new = \u65B0\u5EFA
-main.menu.file.new.desc = \u65B0\u5EFA\u706B\u7BAD\u8BBE\u8BA1\u7A3F
-main.menu.file.open = \u6253\u5F00...
-main.menu.file.openExample = \u6253\u5F00\u8303\u4F8B...
-main.menu.file.openRecent = \u6700\u8FD1\u6253\u5F00...
-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.quit = \u9000\u51FA
-main.menu.file.save = \u4FDD\u5B58
-main.menu.file.saveAs = \u53E6\u5B58\u4E3A...
-main.menu.help = \u5E2E\u52A9
-main.menu.help.about = \u5173\u4E8E
-main.menu.help.about.desc = OpenRocket\u7248\u6743\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.desc = OpenRocket\u76F8\u5173\u4FE1\u606F
-main.menu.help.license = \u8BB8\u53EF\u8BC1
-main.menu.help.license.desc = OpenRocket \u8BB8\u53EF\u8BC1\u4FE1\u606F
-main.menu.help.tours = \u6559\u7A0B
-main.menu.help.tours.desc = OpenRocket\u76F8\u5173\u6559\u7A0B
-
-matedtpan.but.delete = \u5220\u9664
-matedtpan.but.edit = \u7F16\u8F91
-! Material edit panel
-matedtpan.but.new = \u65B0\u5EFA
-matedtpan.but.revertall = \u6062\u590D\u6240\u6709
-matedtpan.but.ttip.delete = \u5220\u9664\u81EA\u5B9A\u4E49\u6750\u6599
-matedtpan.but.ttip.edit = \u7F16\u8F91\u5DF2\u5B58\u5728\u7684\u6750\u6599
-matedtpan.but.ttip.revertall = \u5220\u9664\u6240\u6709\u81EA\u5B9A\u4E49\u6750\u6599
-matedtpan.col.Density = \u5BC6\u5EA6
-matedtpan.col.Material = \u6750\u6599
-matedtpan.col.Type = \u7C7B\u578B
-matedtpan.col.but.ttip.New = \u65B0\u52A0\u4E00\u79CD\u65B0\u7684\u6750\u6599
-matedtpan.lbl.edtmaterials = \u7F16\u8F91\u6750\u6599\u4E0D\u4F1A\u5F71\u54CD\u5F53\u524D\u7684\u706B\u7BAD\u8BBE\u8BA1
-matedtpan.title.Addcustmaterial = \u65B0\u52A0\u81EA\u5B9A\u4E49\u6750\u6599
-matedtpan.title.Deletealluser-defined = \u5220\u9664\u6240\u6709\u81EA\u5B9A\u4E49\u6750\u6599?
-matedtpan.title.Editmaterial = \u7F16\u8F91\u6750\u6599\u53C2\u6570
-matedtpan.title.Revertall = \u5168\u90E8\u590D\u539F?
-matedtpan.title2.Editmaterial = \u65E0\u6CD5\u4FEE\u6539\u5185\u5EFA\u6750\u6599
+! 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.blue_tube = Blue tube
-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.brass = \u9EC4\u94DC
-material.carbon_fiber = \u78B3\u7EA4\u7EF4
-material.cardboard = \u786C\u7EB8\u677F
-material.cellophane = \u73BB\u7483\u7EB8
-material.cork = \u8F6F\u6728
-material.crepe_paper = \u76B1\u7EB9\u7EB8
-material.depron_xps = Depron(\u6324\u5851\u805A\u82EF\u4E59\u70EF)
-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.elastic_cord_flat_6_mm_1_4_in = \u677E\u7D27\u7EF3 (\u6241 6 mm, 1/4 in)
-material.elastic_cord_round_2_mm_1_16_in = \u677E\u7D27\u7EF3 (\u5706 2 mm, 1/16 in)
-material.fiberglass = \u73BB\u7483\u7EA4\u7EF4
-material.kraft_phenolic = Kraft phenolic
-material.maple = \u67AB\u6728
-material.mylar = \u805A\u916F\u8584\u819C (\u805A\u4E59\u70EF\u5BF9\u82EF\u4E8C\u9178)
-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.polyethylene_heavy = \u805A\u4E59\u70EF (\u539A\u91CD)
-material.polyethylene_thin = \u805A\u4E59\u70EF (\u8F7B\u8584)
-material.polystyrene = \u805A\u82EF\u4E59\u70EF
-material.pvc = PVC
-material.quantum_tubing = Quantum tubing
+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 = \u53d1\u6ce1\u805a\u82ef\u4e59\u70ef
+material.styrofoam_blue_foam_xps = \u6324\u5851\u805a\u82ef\u4e59\u70ef \"Blue foam\"
+material.titanium = \u949b
+material.quantum_tubing = Quantum tubing
+material.blue_tube = Blue tube
!SURFACE_MATERIAL
-material.ripstop_nylon = \u683C\u5B50\u5C3C\u9F99
-material.silk = \u4E1D\u7EF8
-material.spruce = \u6749\u6728
-material.steel = \u94A2\u94C1
-material.styrofoam_blue_foam_xps = \u6324\u5851\u805A\u82EF\u4E59\u70EF "Blue foam"
-material.styrofoam_generic_eps = \u53D1\u6CE1\u805A\u82EF\u4E59\u70EF
+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.titanium = \u949B
-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)
+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
+
+! 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
+! TubeFinSEt
+TubeFinSet.TubeFinSet = \u7ba1\u5f62\u7ffc
+!MassComponent
+MassComponent.MassComponent = \u8d28\u91cf\u7ec4\u4ef6
+MassComponent.Altimeter = \u9ad8\u5ea6\u8ba1
+MassComponent.FlightComputer = \u98de\u63a7
+MassComponent.DeploymentCharge = \u5f00\u4f1e\u836f
+MassComponent.Tracker = \u8ffd\u8e2a\u5668
+MassComponent.Payload = \u6709\u6548\u8f7d\u8377
+MassComponent.RecoveryHardware = \u56de\u6536\u8bbe\u5907
+MassComponent.Battery = \u7535\u6c60
+! 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\u5757
+! Streamer
+Streamer.Streamer = \u5f69\u5e26
+! Sleeve
+Sleeve.Sleeve = \u5c01\u5957
+
+!Rocket
+Rocket.motorCount.Nomotor = [\u65e0\u53d1\u52a8\u673a]
+Rocket.motorCount.noStageMotors = [\u65e0\u5206\u7ea7\u53d1\u52a8\u673a]
+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.Tubefinset = \u7ba1\u5f62\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)
+ComponentIcons.Altimeter = \u9ad8\u5ea6\u8ba1
+ComponentIcons.Flightcomputer = \u98de\u63a7
+ComponentIcons.Battery = \u7535\u6c60
+ComponentIcons.Tracker = \u8ddf\u8e2a\u5668
+ComponentIcons.Recoveryhardware = \u56de\u6536\u8bbe\u5907
+ComponentIcons.Payload = \u6709\u6548\u8f7d\u8377
+ComponentIcons.Deploymentcharge = \u5f00\u4f1e\u836f
+
+! 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 = \u7740\u5730
+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.massWithMotors = \u542b\u53d1\u52a8\u673a\u7684\u603b\u8d28\u91cf
+RocketInfo.massWithoutMotors = \u4e0d\u542b\u53d1\u52a8\u673a\u7684\u51c0\u8d28\u91cf
+RocketInfo.at = \u4f4d\u7f6e(\u7c73)
+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 = \u77e9\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 = \u6c34\u5e73\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 (\u5929\u9876\u89d2)
+FlightDataType.TYPE_ORIENTATION_PHI = \u6c34\u5e73\u65b9\u5411 (\u65b9\u4f4d\u89d2)
+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 = \u97f3\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. \u9a6c\u8d6b\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
+PlotConfiguration.Groundtrack = \u5730\u9762\u822a\u8ff9
+
+! 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
+Warning.TUMBLE_UNDER_THRUST = \u706b\u7bad\u7ea7\u5728\u63a8\u529b\u4f5c\u7528\u4e0b\u5f00\u59cb\u503e\u8986.
+
+
+! 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.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.ellipticalfinset.height = \u9AD8\u5EA6
-optimization.modifier.ellipticalfinset.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.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.internalcomponent.position = \u4F4D\u7F6E
-optimization.modifier.internalcomponent.position.desc = \u4F18\u5316\u7EC4\u4EF6\u76F8\u5BF9\u4E8E\u7236\u7EC4\u4EF6\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.position = \u4F4D\u7F6E
-optimization.modifier.launchlug.position.desc = \u4F18\u5316\u5BFC\u5411\u7B52\u5728\u7BAD\u4F53\u4E0A\u7684\u4F4D\u7F6E.
-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.masscomponent.mass = \u8D28\u91CF
-optimization.modifier.masscomponent.mass.desc = \u4F18\u5316\u8D28\u91CF\u7EC4\u4EF6.
-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.
-optimization.modifier.motormount.overhang = \u53D1\u52A8\u673A\u7A81\u51FA
-optimization.modifier.motormount.overhang.desc = \u4F18\u5316\u53D1\u52A8\u673A\u7A81\u51FA.
-optimization.modifier.nosecone.diameter = \u76F4\u5F84
-optimization.modifier.nosecone.diameter.desc = \u4F18\u5316\u5934\u9525\u76F4\u5F84.
! Optimization
+
! Modifiers
-optimization.modifier.nosecone.length = \u957F\u5EA6
-optimization.modifier.nosecone.length.desc = \u4F18\u5316\u5934\u9525\u957F\u5EA6.
-optimization.modifier.nosecone.shapeparameter = \u5916\u5F62\u53C2\u6570
-optimization.modifier.nosecone.shapeparameter.desc = \u4F18\u5316\u5934\u9525\u5916\u5F62\u53C2\u6570.
-optimization.modifier.nosecone.thickness = \u539A\u5EA6
-optimization.modifier.nosecone.thickness.desc = \u4F18\u5316\u5934\u9525\u58C1\u539A\u5EA6.
-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.parachute.diameter = \u76F4\u5F84
-optimization.modifier.parachute.diameter.desc = \u4F18\u5316\u964D\u843D\u4F1E\u4F1E\u8863\u76F4\u5F84.
-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.recoverydevice.deployDelay = \u6FC0\u53D1\u5EF6\u65F6
-optimization.modifier.recoverydevice.deployDelay.desc = \u4F18\u5316\u56DE\u6536\u8BBE\u5907\u6FC0\u53D1\u5EF6\u65F6.
-optimization.modifier.rocketcomponent.overrideCG = \u8986\u5199\u91CD\u5FC3
-optimization.modifier.rocketcomponent.overrideCG.desc = \u4F18\u5316\u7EC4\u4EF6\u8986\u5199\u91CD\u5FC3.
-optimization.modifier.rocketcomponent.overrideMass = \u8986\u5199\u8D28\u91CF
-optimization.modifier.rocketcomponent.overrideMass.desc = \u4F18\u5316\u7EC4\u4EF6\u8986\u5199\u8D28\u91CF.
-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.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.transition.aftdiameter = \u540E\u76F4\u5F84
-optimization.modifier.transition.aftdiameter.desc = \u4F18\u5316\u7EA7\u95F4\u6BB5\u540E\u76F4\u5F84.
-optimization.modifier.transition.forediameter = \u524D\u76F4\u5F84
-optimization.modifier.transition.forediameter.desc = \u4F18\u5316\u7EA7\u95F4\u6BB5\u524D\u76F4\u5F84.
-optimization.modifier.transition.length = \u957F\u5EA6
-optimization.modifier.transition.length.desc = \u4F18\u5316\u7EA7\u95F4\u6BB5\u957F\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.transition.thickness = \u539A\u5EA6
-optimization.modifier.transition.thickness.desc = \u4F18\u5316\u7EA7\u95F4\u6BB5\u58C1\u539A\u5EA6.
-optimization.modifier.trapezoidfinset.height = \u9AD8\u5EA6
-optimization.modifier.trapezoidfinset.height.desc = \u4F18\u5316\u7A33\u5B9A\u7FFC\u9AD8\u5EA6 (\u534A\u7FFC\u5C55).
-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.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.tipChord = \u7FFC\u68A2\u5F26
-optimization.modifier.trapezoidfinset.tipChord.desc = \u4F18\u5316\u7FFC\u68A2\u5F26\u957F\u5EA6 (\u7A33\u5B9A\u7FFC\u5916\u7F18\u957F\u5EA6).
-pref.dlg.Add = \u6DFB\u52A0
-pref.dlg.Allthrustcurvefiles = \u652F\u6301\u7684\u63A8\u529B\u66F2\u7EBF\u6587\u4EF6(*.eng; *.rse; *.zip; \u6587\u4EF6\u5939)
-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\u65F6\u751F\u6548
-pref.dlg.PrefBooleanSelector1 = \u5220\u9664
-pref.dlg.PrefBooleanSelector2 = \u786E\u8BA4
-pref.dlg.PrefChoiseSelector1 = \u603B\u662F\u8BE2\u95EE
-pref.dlg.PrefChoiseSelector2 = \u63D2\u5728\u4E2D\u95F4
-pref.dlg.PrefChoiseSelector3 = \u63D2\u5728\u6700\u540E
-pref.dlg.PrefFontLarge = \u5927
-pref.dlg.PrefFontMedium = \u4E2D
-pref.dlg.PrefFontSmall = \u5C0F
-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)
-! Preference dialog
-pref.dlg.but.add = \u589E\u52A0
-pref.dlg.but.checknow = \u68C0\u67E5
-pref.dlg.but.defaultimperial = \u7F3A\u7701\u82F1\u5236
-pref.dlg.but.defaultmetric = \u7F3A\u7701\u516C\u5236
-pref.dlg.but.openlast = \u5728\u542F\u52A8\u7684\u65F6\u5019\u6253\u5F00\u4E0A\u6B21\u8BBE\u8BA1
-pref.dlg.but.reset = \u91CD\u7F6E
-pref.dlg.checkbox.Checkupdates = \u542F\u52A8\u65F6\u68C0\u67E5\u66F4\u65B0
-pref.dlg.checkbox.Runsimulations = \u5728\u67E5\u770B\u4EFF\u771F\u9762\u677F\u65F6\u91CD\u65B0\u8FD0\u884C\u8FC7\u65F6\u7684\u4EFF\u771F\u9879.
-pref.dlg.checkbox.Updateestimates = \u5728\u8BBE\u8BA1\u7A97\u53E3\u66F4\u65B0\u9884\u4F30\u7684\u98DE\u884C\u53C2\u6570.
-pref.dlg.lbl.Acceleration = \u52A0\u901F\u5EA6:
-pref.dlg.lbl.Angle = \u89D2\u5EA6:
-pref.dlg.lbl.Area = \u9762\u79EF:
-pref.dlg.lbl.Bulkdensity = \u4F53\u79EF\u5BC6\u5EA6:
-pref.dlg.lbl.Checkingupdates = \u6B63\u5728\u68C0\u67E5\u66F4\u65B0...
-pref.dlg.lbl.Confirmdeletion = \u786E\u8BA4\u5220\u9664\u4EFF\u771F:
-pref.dlg.lbl.DecalEditor = \u56FE\u50CF\u7F16\u8F91\u5668
-pref.dlg.lbl.Distance = \u8DDD\u79BB:
-pref.dlg.lbl.FlightTime = \u98DE\u884C\u65F6\u95F4:
-pref.dlg.lbl.Force = \u529B:
-pref.dlg.lbl.Linedensity = \u7EBF\u6027\u5BC6\u5EA6:
-pref.dlg.lbl.Mass = \u8D28\u91CF:
-pref.dlg.lbl.Momentofinertia = \u8F6C\u52A8\u60EF\u91CF:
-pref.dlg.lbl.Motordimensions = \u53D1\u52A8\u673A\u5C3A\u5BF8:
-pref.dlg.lbl.Positiontoinsert = \u65B0\u7EC4\u4EF6\u63D2\u5165\u4F4D\u7F6E:
-pref.dlg.lbl.Pressure = \u538B\u529B:
-pref.dlg.lbl.Rocketdimensions = \u706B\u7BAD\u5C3A\u5BF8:
-pref.dlg.lbl.Rocketinfofontsize = \u706B\u7BAD\u8BBE\u8BA1\u9762\u677F\u7684\u6587\u5B57\u5927\u5C0F:
-pref.dlg.lbl.Rollrate = \u89D2\u901F\u5EA6:
-pref.dlg.lbl.Selectprefunits = \u8BF7\u9009\u62E9\u5355\u4F4D\u5236:
-pref.dlg.lbl.Stability = \u7A33\u5B9A\u6027:
-pref.dlg.lbl.Surfacedensity = \u8868\u9762\u5BC6\u5EA6:
-pref.dlg.lbl.Surfaceroughness = \u8868\u9762\u7C97\u7CD9\u5EA6:
-pref.dlg.lbl.Temperature = \u6E29\u5EA6:
-pref.dlg.lbl.Totalimpulse = \u603B\u51B2\u91CF:
-pref.dlg.lbl.User-definedthrust = \u81EA\u5B9A\u4E49\u63A8\u529B\u66F2\u7EBF:
-pref.dlg.lbl.Velocity = \u901F\u7387:
-pref.dlg.lbl.Windspeed = \u98CE\u901F
-pref.dlg.lbl.effect1 = \u66F4\u6539\u5C06\u5728\u4E0B\u6B21\u542F\u52A8\u7A97\u53E3\u540E\u751F\u6548
-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.opengl.but.enableAA = \u542F\u7528\u53CD\u952F\u9F7F
-pref.dlg.opengl.but.enableGL = \u542F\u7528\u4E09\u7EF4\u56FE\u50CF
-pref.dlg.opengl.lbl.title = \u4E09\u7EF4\u56FE\u50CF
-pref.dlg.opengl.lbl.useFBO = \u79BB\u7EBF\u6E32\u67D3
-pref.dlg.tab.Colors = \u663E\u793A:
-pref.dlg.tab.Custommaterials = \u81EA\u5B9A\u4E49\u6750\u6599
-pref.dlg.tab.Defaultunits = \u7F3A\u7701\u5355\u4F4D
-pref.dlg.tab.Graphics = \u56FE\u50CF
-pref.dlg.tab.Launch = \u53D1\u5C04
-pref.dlg.tab.Materials = \u6750\u6599
-pref.dlg.tab.Miscellaneousoptions = \u6742\u9879
-pref.dlg.tab.Options = \u9009\u9879
-pref.dlg.tab.Simulation = \u4EFF\u771F
-pref.dlg.tab.Units = \u5355\u4F4D\u5236
-pref.dlg.title.Preferences = \u9996\u9009\u9879
-pref.dlg.ttip.Checkupdatesnow = \u73B0\u5728\u68C0\u67E5\u8F6F\u4EF6\u66F4\u65B0
-pref.dlg.ttip.DefaultMach1 = \u672C\u8BBE\u5B9A\u5C06\u5728\u4E0B\u6B21\u542F\u52A8OpenRocket\u65F6\u751F\u6548.
+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.
-printdlg.but.preview = \u9884\u89C8
-printdlg.but.saveaspdf = \u4FDD\u5B58\u4E3A PDF
-printdlg.but.settings = \u8BBE\u7F6E
+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.
-ringcompcfg.Automatic = \u81EA\u52A8
-ringcompcfg.Distancefrom = \u5230\u706B\u7BAD\u4E2D\u5FC3\u7EBF\u7684\u8DDD\u79BB
-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.InnerRadius = \u5185\u76F4\u5F84
-ringcompcfg.Length = \u957F\u5EA6
-! Ring Component Config
-ringcompcfg.OuterRadius = \u5916\u76F4\u5F84
-ringcompcfg.PositionValue = \u4F4D\u7F6E\u503C
-ringcompcfg.Positionrelativeto = \u76F8\u5BF9\u4F4D\u7F6E\u81EA:
-ringcompcfg.Radialdirection = \u5F84\u5411:
-ringcompcfg.Radialdistance = \u5F84\u5411\u8DDD\u79BB:
-ringcompcfg.Thickness = \u539A\u5EA6
-ringcompcfg.but.Reset = \u91CD\u7F6E
-ringcompcfg.but.Resetcomponant = \u91CD\u7F6E\u6240\u6709\u7EC4\u4EF6\u5BF9\u9F50\u4E2D\u5FC3\u7EBF
-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).
-ringcompcfg.plus = \u52A0
-ringcompcfg.radialdirectionfrom = \u4ECE\u706B\u7BAD\u4E2D\u5FC3\u7EBF\u6CBF\u5F84\u5411
+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.
-simedtdlg.IntensityDesc.Extreme = \u6781\u9AD8
-simedtdlg.IntensityDesc.High = \u9AD8
-simedtdlg.IntensityDesc.Low = \u4F4E
-simedtdlg.IntensityDesc.Medium = \u4E2D
-simedtdlg.IntensityDesc.None = \u65E0
-simedtdlg.IntensityDesc.Veryhigh = \u5F88\u9AD8
-simedtdlg.IntensityDesc.Verylow = \u5F88\u4F4E
-simedtdlg.SimExt.add = \u6DFB\u52A0\u6269\u5C55
-simedtdlg.SimExt.copyExtension = \u590D\u5236\u6269\u5C55
-simedtdlg.SimExt.desc = \u6A21\u62DF\u6269\u5C55 \u80FD\u5728\u6A21\u62DF\u8FC7\u7A0B\u4E2D\u542F\u7528\u9AD8\u7EA7\u7279\u6027\u4EE5\u53CA\u81EA\u5B9A\u4E49\u529F\u80FD. \u6BD4\u5982\u4F60\u53EF\u4EE5\u505A hardware-in-the-loop \u6D4B\u8BD5.
-simedtdlg.SimExt.noExtensions = \u65E0\u6269\u5C55\u5B9A\u4E49\u9879.
-simedtdlg.border.Atmoscond = \u5927\u6C14\u6761\u4EF6
-simedtdlg.border.Launchrod = \u53D1\u5C04\u67B6
-simedtdlg.border.SimExt = \u6A21\u62DF\u6269\u5C55
-simedtdlg.border.Simopt = \u4EFF\u771F\u9009\u9879
-simedtdlg.but.add = \u6DFB\u52A0
-simedtdlg.but.remove = \u79FB\u9664
-simedtdlg.but.resettodefault = \u6062\u590D\u9ED8\u8BA4
-! Simulation edit dialog
-simedtdlg.but.runsimulation = \u8FD0\u884C\u4EFF\u771F
-simedtdlg.but.savedefault = \u8BBE\u4E3A\u9ED8\u8BA4
-simedtdlg.but.ttip.resettodefault = \u91CD\u7F6E\u65F6\u95F4\u6B65\u957F\u4E3A\u7F3A\u7701\u503C (
-simedtdlg.chart.Simflight = \u5DF2\u4EFF\u771F\u7684\u98DE\u884C
-simedtdlg.checkbox.InterStdAtmosphere = \u4F7F\u7528\u56FD\u9645\u6807\u51C6\u5927\u6C14\u6A21\u578B
-simedtdlg.checkbox.Intowind = \u603B\u662F\u987A\u98CE\u6216\u9006\u98CE\u53D1\u5C04
-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.checkbox.ttip.Intowind1 = \u52FE\u9009\u540E\u53D1\u5C04\u6746\u5C06\u4F1A\u6307\u5411\u98CE\u5411.
-simedtdlg.checkbox.ttip.Intowind2 = 0\u89D2\u5EA6\u53D1\u5C04\u5373\u53D1\u5C04\u6746\u5782\u76F4\u5411\u4E0A.
-simedtdlg.checkbox.ttip.Intowind3 = \u8D1F\u53D1\u5C04\u6746\u89D2\u5EA6\u5C06\u987A\u98CE\u53D1\u5C04.
\u53D6\u6D88\u52FE\u9009\u672C\u9879\u540E\u4F60\u53EF\u4EE5\u6307\u5B9A\u4EFB\u610F\u53D1\u5C04\u6746\u89D2\u5EA6.
-simedtdlg.checkbox.ttip.Intowind4 = \u53D6\u6D88\u52FE\u9009\u672C\u9879\u540E\u4F60\u53EF\u4EE5\u6307\u5B9A\u4EFB\u610F\u53D1\u5C04\u6746\u89D2\u5EA6.
-simedtdlg.combo.ttip.Flightcfg = \u9009\u62E9\u8981\u4F7F\u7528\u7684\u98DE\u884C\u914D\u7F6E.
-simedtdlg.dlg.Simres = \u4EFF\u771F\u7ED3\u679C
-simedtdlg.lbl.Addsimlist = \u6DFB\u52A0\u4EFF\u771F\u76D1\u542C\u5668
-simedtdlg.lbl.Altitude = \u6D77\u62D4\u9AD8\u5EA6:
-simedtdlg.lbl.Angle = \u89D2\u5EA6:
-simedtdlg.lbl.Averwindspeed = \u5E73\u5747\u98CE\u901F:
-simedtdlg.lbl.Calcmethod = \u8BA1\u7B97\u65B9\u6CD5:
-simedtdlg.lbl.Curlist = \u5F53\u524D\u7684\u76D1\u542C\u5668
-simedtdlg.lbl.Direction = \u65B9\u5411:
-simedtdlg.lbl.ExtBarrowman = Extended Barrowman
-simedtdlg.lbl.Flightcfg = \u98DE\u884C\u914D\u7F6E:
-simedtdlg.lbl.GeodeticMethod = \u5927\u5730\u6D4B\u91CF\u8BA1\u7B97:
-simedtdlg.lbl.Latitude = \u7EAC\u5EA6:
-simedtdlg.lbl.Launchsite = \u53D1\u5C04\u5730\u70B9
-simedtdlg.lbl.Length = \u957F\u5EA6:
-simedtdlg.lbl.Longitude = \u7ECF\u5EA6:
-simedtdlg.lbl.Noflightdata = \u65E0\u53EF\u7528\u98DE\u884C\u6570\u636E
-simedtdlg.lbl.Pressure = \u538B\u529B:
-simedtdlg.lbl.Simmethod = \u4EFF\u771F\u65B9\u6CD5:
-simedtdlg.lbl.Simname = \u4EFF\u771F\u540D\u79F0:
-simedtdlg.lbl.Stddeviation = \u6807\u51C6\u5DEE:
-simedtdlg.lbl.Temperature = \u6E29\u5EA6:
-simedtdlg.lbl.Timestep = \u65F6\u95F4\u6B65\u957F:
-simedtdlg.lbl.Turbulenceintensity = \u6E4D\u6D41\u5F3A\u5EA6:
-simedtdlg.lbl.Wind = \u98CE\u573A\u6761\u4EF6
-simedtdlg.lbl.Winddirection = \u98CE\u5411:
-simedtdlg.lbl.runsimfirst = \u8BF7\u5148\u8FD0\u884C\u4EFF\u771F
-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.lbl.ttip.Angle = \u53D1\u5C04\u67B6\u76F8\u5BF9\u4E8E\u5782\u76F4\u65B9\u5411\u7684\u89D2\u5EA6
-simedtdlg.lbl.ttip.Averwindspeed = \u76F8\u5BF9\u4E8E\u5730\u9762\u7684\u5E73\u5747\u98CE\u901F
-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.ttip.Direction1 = \u53D1\u5C04\u67B6\u76F8\u5BF9\u4E8E\u98CE\u7684\u65B9\u5411.
-simedtdlg.lbl.ttip.Direction2 = = \u9876\u98CE,
-simedtdlg.lbl.ttip.Direction3 = = \u987A\u98CE.
-simedtdlg.lbl.ttip.Flightcfg = \u9009\u62E9\u8981\u4F7F\u7528\u7684\u98DE\u884C\u914D\u7F6E.
-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.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.ttip.Length = \u53D1\u5C04\u67B6\u7684\u603B\u957F\u5EA6.
-simedtdlg.lbl.ttip.Longitude = \u9700\u8981\u5929\u6C14\u9884\u62A5\u4EE5\u53CA\u9AD8\u7A0B\u6A21\u578B.
-simedtdlg.lbl.ttip.Pressure = \u53D1\u5C04\u5730\u70B9\u7684\u5927\u6C14\u538B\u529B.
-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.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.ttip.Temperature = \u53D1\u5C04\u5730\u70B9\u7684\u6E29\u5EA6.
-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.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.lbl.ttip.Winddirection = \u98CE\u5411, 0-360\u5EA6.
0 \u662F\u5317\u98CE,
90 \u662F\u4E1C\u98CE
-simedtdlg.tab.CustomExpressions = \u81EA\u5B9A\u4E49\u8868\u8FBE\u5F0F
-simedtdlg.tab.Exportdata = \u8F93\u51FA\u6570\u636E
-simedtdlg.tab.Launchcond = \u53D1\u5C04\u6761\u4EF6
-simedtdlg.tab.Plotdata = \u6570\u636E\u7ED8\u56FE
-simedtdlg.tab.Simopt = \u6A21\u62DF\u9009\u9879
-simedtdlg.title.Editsim = \u7F16\u8F91\u4EFF\u771F
-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.
+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).
-simpanel.but.deletesimulations = \u5220\u9664\u4EFF\u771F
-simpanel.but.editsimulation = \u7F16\u8F91\u4EFF\u771F
-! Simulation Panel
-simpanel.but.newsimulation = \u65B0\u5EFA\u4EFF\u771F
-simpanel.but.plotexport = \u7ED8\u56FE/\u8F93\u51FA
-simpanel.but.runsimulations = \u8FD0\u884C\u4EFF\u771F
-simpanel.but.ttip.deletesim = \u5220\u9664\u9009\u4E2D\u7684\u4EFF\u771F
-simpanel.but.ttip.editsim = \u7F16\u8F91\u9009\u4E2D\u7684\u4EFF\u771F
-simpanel.but.ttip.newsimulation = \u6DFB\u52A0\u4E00\u4E2A\u65B0\u7684\u4EFF\u771F
-simpanel.but.ttip.runsimu = \u91CD\u65B0\u8FD0\u884C\u9009\u4E2D\u7684\u4EFF\u771F
-simpanel.checkbox.donotask = \u4E0D\u518D\u8BE2\u95EE
-simpanel.col.Apogee = \u6700\u9AD8\u70B9
-simpanel.col.Configuration = \u914D\u7F6E
-simpanel.col.Flighttime = \u98DE\u884C\u65F6\u95F4
-simpanel.col.Groundhitvelocity = \u649E\u51FB\u5730\u9762\u901F\u5EA6
-simpanel.col.Maxacceleration = \u6700\u5927\u52A0\u901F\u5EA6
-simpanel.col.Maxvelocity = \u6700\u5927\u901F\u5EA6
-simpanel.col.Motors = \u53D1\u52A8\u673A
-simpanel.col.Name = \u540D\u79F0
-simpanel.col.OptimumCoastTime = \u6700\u957F\u5EF6\u6EDE\u65F6\u95F4
-simpanel.col.OptimumCoastTime.ttip = \u4ECE\u6700\u540E\u4E00\u7EA7\u53D1\u52A8\u673A\u71C3\u5C3D\u81F3\u8FBE\u5230\u6700\u9AD8\u9AD8\u5EA6\u7684\u65F6\u95F4.
-simpanel.col.Timetoapogee = \u6700\u9AD8\u70B9\u65F6\u95F4
-simpanel.col.Velocityatdeploy = \u6709\u6548\u8D1F\u8377\u901F\u5EA6
-simpanel.col.Velocityoffrod = \u79BB\u67B6\u901F\u5EA6
-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.lbl.defpref = \u60A8\u53EF\u5728\u9996\u9009\u9879\u4E2D\u4FEE\u6539\u9ED8\u8BA4\u64CD\u4F5C.
-simpanel.ttip.external = \u5BFC\u5165\u7684\u6570\u636E
-simpanel.ttip.loaded = \u4ECE\u6587\u4EF6\u8F7D\u5165\u6570\u636E
-simpanel.ttip.noData = \u6CA1\u6709\u53EF\u7528\u7684\u4EFF\u771F\u6570\u636E.
-simpanel.ttip.noWarnings = \u6CA1\u6709\u8B66\u544A.
-simpanel.ttip.notSimulated = \u672A\u8FDB\u884C\u8FC7\u4EFF\u771F
\u70B9\u51FB\u8FD0\u884C\u4EFF\u771F.
-simpanel.ttip.outdated = \u6570\u636E\u5DF2\u8FC7\u671F
\u70B9\u51FB\u8FD0\u884C\u4EFF\u771F\u91CD\u65B0\u8BA1\u7B97.
-simpanel.ttip.uptodate = \u6700\u65B0\u7684\u6570\u636E
-simpanel.ttip.warnings = \u8B66\u544A:
+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).
-simplotpanel.AUTO_NAME = \u81EA\u52A8
-simplotpanel.CUSTOM = \u81EA\u5B9A\u4E49
-simplotpanel.Desc = \u6570\u636E\u5C06\u6309\u65F6\u95F4\u987A\u5E8F\u7ED8\u5236, \u5373\u4F7FX\u8F74\u4E0D\u662F\u65F6\u95F4.
-simplotpanel.LEFT_NAME = \u5DE6
-simplotpanel.OptionPane.lbl1 = \u6700\u591A\u7ED8\u523615\u5E45\u56FE.
-simplotpanel.OptionPane.lbl2 = \u65E0\u6CD5\u65B0\u589E\u7ED8\u56FE
-simplotpanel.RIGHT_NAME = \u53F3
-simplotpanel.but.All = \u5168\u9009\u4E8B\u4EF6
-simplotpanel.but.NewYaxisplottype = \u65B0\u5EFAY\u8F74\u7C7B\u522B
-simplotpanel.but.None = \u53D6\u6D88\u5168\u9009\u4E8B\u4EF6
-simplotpanel.but.ttip.Removethisplot = \u5220\u9664\u8BE5Y\u8F74\u7C7B\u522B
-simplotpanel.lbl.Axis = \u8F74:
-simplotpanel.lbl.Flightevents = \u98DE\u884C\u4E8B\u4EF6:
-! Simulation plot panel
-simplotpanel.lbl.Presetplotconf = \u9884\u8BBE\u7ED8\u56FE\u5E03\u5C40:
-simplotpanel.lbl.Unit = \u5355\u4F4D:
-simplotpanel.lbl.Xaxistype = X\u8F74\u7C7B\u522B:
-simplotpanel.lbl.Yaxistypes = Y\u8F74\u7C7B\u522B:
+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.
-table.column.AftOuterDiameter = \u524D\u90E8\u5916\u76F4\u5F84
-table.column.AftShoulderDiameter = \u524D\u90E8\u8FDE\u63A5\u5668\u76F4\u5F84
-table.column.AftShoulderLength = \u524D\u90E8\u8FDE\u63A5\u5668\u957F\u5EA6
-table.column.Description = \u7B80\u4ECB
-table.column.Diameter = \u76F4\u5F84
-table.column.Favorite = \u6536\u85CF
-table.column.Filled = \u5B9E\u5FC3
-table.column.Finish = \u8868\u9762\u5904\u7406
-table.column.ForeOuterDiameter = \u540E\u90E8\u5916\u76F4\u5F84
-table.column.ForeShoulderDiameter = \u540E\u90E8\u8FDE\u63A5\u5668\u76F4\u5F84
-table.column.ForeShoulderLength = \u540E\u90E8\u8FDE\u63A5\u5668\u957F\u5EA6
-table.column.InnerDiameter = \u5185\u76F4\u5F84
-table.column.Length = \u957F
-table.column.LineCount = \u7EF3\u7D22\u6570\u91CF
-table.column.LineLength = \u7EF3\u7D22\u957F\u5EA6
-table.column.LineMaterial = \u7EF3\u7D22\u6750\u6599
-table.column.Manufacturer = \u5236\u9020\u5546
-table.column.Mass = \u8D28\u91CF
-table.column.Material = \u6750\u6599
-table.column.OuterDiameter = \u5916\u76F4\u5F84
-table.column.PartNo = \u578B\u53F7
-table.column.Shape = \u5F62\u72B6
-table.column.Sides = \u8FB9\u957F
-table.column.Thickness = \u539A\u5EA6
-table.column.Type = \u7C7B\u578B
-table.column.Width = \u5BBD
+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 = \u65e0\u6cd5\u8fd0\u884c\u4f18\u5316:
+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 = \u7740\u5730\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\u9057\u61be, \u6240\u9009\u7684\u6559\u7a0b\u8fd8\u672a\u88ab\u64b0\u5199.
+
+GuidedTourSelectionDialog.title = \u6307\u5bfc\u6559\u7a0b
+GuidedTourSelectionDialog.lbl.selectTour = \u9009\u62e9\u6307\u5bfc\u6559\u7a0b:
+GuidedTourSelectionDialog.lbl.description = \u6559\u7a0b\u8bf4\u660e:
+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\u63a8\u6d4b\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 = \u65e0\u6cd5\u6839\u636e\u53c2\u6570 ''{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
+MotorConfigurationPanel.lbl.nomotors = \u65e0\u53d1\u52a8\u673a\u5ea7.\u8bf7\u5148\u5728\u5de6\u4fa7\u9009\u62e9\u7bad\u4f53\u4f5c\u4e3a\u53d1\u52a8\u673a\u5ea7.
+
+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
+
+
+!Photo Panel
+PhotoFrame.title = \u7167\u76f8\u9986
+PhotoFrame.desc = \u521b\u5efa\u706b\u7bad\u5199\u5b9e3D\u56fe
+PhotoFrame.menu.file.save = \u4fdd\u5b58\u56fe\u50cf...
+PhotoFrame.fileFilter.png = PNG\u56fe\u50cf
+PhotoFrame.menu.edit.copy = \u590d\u5236\u56fe\u7247
+PhotoFrame.menu.edit.copy.desc = \u590d\u5236\u56fe\u7247\u5230\u526a\u8d34\u677f
+PhotoFrame.menu.edit.settings = \u56fe\u50cf\u8bbe\u7f6e
+PhotoFrame.menu.window = \u7a97\u53e3
+PhotoFrame.menu.window.size = \u5927\u5c0f
+PhotoFrame.menu.window.size.portrait = {0} \u76f8\u7247
+
+!Photo Settings
+PhotoSettingsConfig.title = \u8bbe\u7f6e
+PhotoSettingsConfig.colorChooser.title = \u9009\u8272\u677f
+
+PhotoSettingsConfig.tab.orientation = \u65b9\u5411
+PhotoSettingsConfig.lbl.rocket = \u706b\u7bad
+PhotoSettingsConfig.lbl.pitch = \u503e\u89d2
+PhotoSettingsConfig.lbl.yaw = \u65cb\u89d2
+PhotoSettingsConfig.lbl.roll = \u65cb\u8f6c
+PhotoSettingsConfig.lbl.advance = \u9ad8\u7ea7
+PhotoSettingsConfig.lbl.camera = \u76f8\u673a
+PhotoSettingsConfig.lbl.vAz = \u89c6\u65b9\u4f4d\u89d2
+PhotoSettingsConfig.lbl.vAlt = \u89c6\u9ad8\u5ea6
+PhotoSettingsConfig.lbl.vDist = \u89c6\u8ddd
+PhotoSettingsConfig.lbl.fov = \u89c6\u573a
+
+PhotoSettingsConfig.tab.environment = \u73af\u5883
+PhotoSettingsConfig.lbl.light = \u5149\u7167
+PhotoSettingsConfig.lbl.sun = \u9633\u5149
+PhotoSettingsConfig.lbl.amb = \u73af\u5883
+PhotoSettingsConfig.lbl.lightAz = \u5149\u7167\u65b9\u4f4d
+PhotoSettingsConfig.lbl.lightAlt = \u5149\u7167\u9ad8\u5ea6
+PhotoSettingsConfig.lbl.sky = \u5929\u7a7a
+PhotoSettingsConfig.lbl.skyColor = \u5929\u7a7a\u989c\u8272
+PhotoSettingsConfig.lbl.skyImage = \u5929\u7a7a\u56fe\u7247
+PhotoSettingsConfig.lbl.skyCredit = \u56fe\u7247\u6ce8\u89e3
+
+PhotoSettingsConfig.tab.effects = \u7279\u6548
+PhotoSettingsConfig.lbl.smokeFlame = \u7130\u70df
+PhotoSettingsConfig.lbl.smoke = \u70df\u96fe
+PhotoSettingsConfig.lbl.smokeOpacity = \u70df\u900f\u660e\u5ea6
+PhotoSettingsConfig.lbl.flame = \u706b\u7130
+PhotoSettingsConfig.lbl.flameAspect = \u706b\u7130\u5916\u89c2\u89d2\u5ea6
+PhotoSettingsConfig.lbl.sparks = \u706b\u661f
+PhotoSettingsConfig.lbl.sparkConcentration = \u706b\u661f\u6d53\u5ea6
+PhotoSettingsConfig.lbl.sparkWeight = \u706b\u661f\u91cd\u91cf
+PhotoSettingsConfig.lbl.exhaustScale = \u5c3e\u6c14\u5927\u5c0f
+PhotoSettingsConfig.lbl.effects = \u6548\u679c
+PhotoSettingsConfig.lbl.speed = \u901f\u5ea6
diff --git a/swing/src/net/sf/openrocket/gui/dialogs/AboutDialog.java b/swing/src/net/sf/openrocket/gui/dialogs/AboutDialog.java
index 12e99f10d..d5e9e4ff0 100644
--- a/swing/src/net/sf/openrocket/gui/dialogs/AboutDialog.java
+++ b/swing/src/net/sf/openrocket/gui/dialogs/AboutDialog.java
@@ -40,9 +40,10 @@ public class AboutDialog extends JDialog {
"Stefan Lobas / ERIG e.V. (German)
" +
"Tripoli Spain (Spanish)
" +
"Sky Dart Team (Russian)
" +
- "Mauro Biasutti (Italian)
" +
- "Vladimir Beran (Czech)
" +
- "Polish Rocketry Society / \u0141ukasz & Alex kazanski (Polish)
" +
+ "Mauro Biasutti (Italian)
" +
+ "Vladimir Beran (Czech)
" +
+ "Polish Rocketry Society / \u0141ukasz & Alex kazanski (Polish)
" +
+ "Yilun Zhu (Simplified Chinese)
" +
"OpenRocket utilizes the following libraries:
" +
"MiG Layout (http://www.miglayout.com/)
" +
"JFreeChart (http://www.jfree.org/jfreechart/)
" +
@@ -69,7 +70,7 @@ public class AboutDialog extends JDialog {
sub.add(new StyledLabel("OpenRocket", 20), "ax 50%, growy, wrap para");
sub.add(new StyledLabel(trans.get("lbl.version").trim() + " " + version, 3), "ax 50%, growy, wrap rel");
- sub.add(new StyledLabel("Copyright " + Chars.COPY + " 2007-2013 Sampo Niskanen and others"), "ax 50%, growy, wrap para");
+ sub.add(new StyledLabel("Copyright " + Chars.COPY + " 2007-2017 Sampo Niskanen and others"), "ax 50%, growy, wrap para");
sub.add(new URLLabel(OPENROCKET_URL), "ax 50%, growy, wrap para");
panel.add(sub, "grow");