1 package net.sf.openrocket.rocketcomponent;
3 import net.sf.openrocket.l10n.Translator;
4 import net.sf.openrocket.preset.ComponentPreset;
5 import net.sf.openrocket.preset.ComponentPreset.Type;
6 import net.sf.openrocket.startup.Application;
9 * Rocket nose cones of various types. Implemented as a transition with the
12 * @author Sampo Niskanen <sampo.niskanen@iki.fi>
15 public class NoseCone extends Transition {
16 private static final Translator trans = Application.getTranslator();
19 /********* Constructors **********/
21 this(Transition.Shape.OGIVE, 6 * DEFAULT_RADIUS, DEFAULT_RADIUS);
24 public NoseCone(Transition.Shape type, double length, double radius) {
27 super.setForeRadiusAutomatic(false);
28 super.setForeRadius(0);
29 super.setForeShoulderLength(0);
30 super.setForeShoulderRadius(0.9 * radius);
31 super.setForeShoulderThickness(0);
32 super.setForeShoulderCapped(filled);
33 super.setThickness(0.002);
34 super.setLength(length);
35 super.setClipped(false);
40 /********** Get/set methods for component parameters **********/
43 public double getForeRadius() {
48 public void setForeRadius(double r) {
53 public boolean isForeRadiusAutomatic() {
58 public void setForeRadiusAutomatic(boolean b) {
63 public double getForeShoulderLength() {
68 public double getForeShoulderRadius() {
73 public double getForeShoulderThickness() {
78 public boolean isForeShoulderCapped() {
83 public void setForeShoulderCapped(boolean capped) {
88 public void setForeShoulderLength(double foreShoulderLength) {
93 public void setForeShoulderRadius(double foreShoulderRadius) {
98 public void setForeShoulderThickness(double foreShoulderThickness) {
103 public boolean isClipped() {
108 public void setClipped(boolean b) {
114 /********** RocketComponent methods **********/
117 public Type getPresetType() {
118 return ComponentPreset.Type.NOSE_CONE;
122 protected void loadFromPreset(ComponentPreset preset) {
124 //Many parameters are handled by the super class Transition.loadFromPreset
125 super.loadFromPreset(preset);
129 * Return component name.
132 public String getComponentName() {
134 return trans.get("NoseCone.NoseCone");