public Object evaluate(Object feature) { int arg0; try { // attempt to get value and perform conversion arg0 = (getExpression(0).evaluate(feature, Integer.class)).intValue(); } catch (Exception e) // probably a type error { throw new IllegalArgumentException( "Filter Function problem for function int2ddouble argument #0 - expected type int"); } return new Double(StaticGeometry.int2ddouble(arg0)); }