1 package net.sf.openrocket.preset.loader;
3 import net.sf.openrocket.preset.ComponentPreset;
4 import net.sf.openrocket.preset.ComponentPreset.Type;
5 import net.sf.openrocket.preset.TypedPropertyMap;
9 public class NoseConeLoader extends BaseComponentLoader {
11 public NoseConeLoader(MaterialHolder materials, File theBasePath) {
12 super(materials, theBasePath);
13 fileColumns.add(new DoubleUnitColumnParser("Outer Dia","Units",ComponentPreset.AFT_OUTER_DIAMETER));
14 fileColumns.add(new DoubleUnitColumnParser("Length","Units",ComponentPreset.LENGTH));
15 fileColumns.add(new DoubleUnitColumnParser("Insert Length","Units",ComponentPreset.AFT_SHOULDER_LENGTH));
16 fileColumns.add(new DoubleUnitColumnParser("Insert OD","Units",ComponentPreset.AFT_SHOULDER_DIAMETER));
17 fileColumns.add(new DoubleUnitColumnParser("Thickness","Units",ComponentPreset.THICKNESS));
18 fileColumns.add(new ShapeColumnParser() );
22 protected Type getComponentPresetType() {
23 return ComponentPreset.Type.NOSE_CONE;
27 protected RocksimComponentFileType getFileType() {
28 return RocksimComponentFileType.NOSE_CONE;
32 protected void postProcess(TypedPropertyMap props) {
34 if ( props.containsKey( ComponentPreset.THICKNESS )) {
35 double thickness = props.get(ComponentPreset.THICKNESS);
36 if ( thickness == 0d ) {
37 props.remove( ComponentPreset.THICKNESS );
38 props.put(ComponentPreset.FILLED, true);
41 super.postProcess(props);