public void updateCylinderObstacleFace(char axis, float center, float a, float b, float height) {
		if (obstacleIndexAndFace[0] < 0 || obstacleIndexAndFace[1] < 0)
			return;
		if (highlightEllipse == null || highlightCylinder == null || !(selectedObstacle instanceof Cylinder))
			return;
		Cylinder c = (Cylinder) selectedObstacle;
		switch (axis) {
		case 'x':
			c.center.x = center;
			break;
		case 'y':
			c.center.y = center;
			break;
		case 'z':
			c.center.z = center;
			break;
		}
		c.height = height;
		c.a = a;
		c.b = b;
		Ellipses ellipses = ((ExtendedFrameRenderer) repaintManager.frameRenderer).ellipses;
		Cylinders cylinders = ((ExtendedFrameRenderer) repaintManager.frameRenderer).cylinders;
		if (obstacleIndexAndFace[1] == Cylinder.LATERAL) {
			highlightCylinder.center.set(c.center);
			highlightCylinder.a = c.a;
			highlightCylinder.b = c.b;
			highlightCylinder.height = c.height;
			highlightCylinder.axis = c.axis;
			cylinders.addCylinder(highlightCylinder);
			ellipses.removeEllipse(highlightEllipse);
		}
		else {
			highlightEllipse.center.set(c.getFaceCenter((byte) obstacleIndexAndFace[1]));
			ellipses.addEllipse(highlightEllipse);
			cylinders.removeCylinder(highlightCylinder);
		}
	}