Shape allocateShape(int shapeID) {
		String classBase = JmolConstants.shapeClassBases[shapeID];
		String className = "org.myjmol.viewer." + classBase;

		try {
			Class shapeClass = Class.forName(className);
			Shape shape = (Shape) shapeClass.newInstance();
			shape.setViewerG3dFrame(viewer, g3d, this, shapeID);
			return shape;
		}
		catch (Exception e) {
			Logger.error("Could not instantiate shape:" + classBase, e);
		}
		return null;
	}