private float parseParameter(Element element) { Element floatElem = element.element("float"); if (floatElem != null) { Float[] val = new Float[1]; CollParseUtils.parseFloatsInto(floatElem.getText(), val, 0, 1); return val[0]; } throw new XMLParseException("Requires float element"); }
private ColourAccessor parseColourAccessor(Element element) { Element colour = element.element("color"); if (colour != null) { Float[] rgba = new Float[4]; CollParseUtils.parseFloatsInto(colour.getText(), rgba, 0, 4); return new ColourAccessor(new Colour(rgba[0], rgba[1], rgba[2], rgba[3])); } Element texture = element.element("texture"); if (texture != null) { return new ColourAccessor( PhongParser.this.parseWith(texture, new TextureParser()).getTexture()); } throw new XMLParseException("Requires color or texture element"); }