package org.openplans.filterfunctionwriter; import java.io.File; import java.io.FileOutputStream; import java.io.PrintStream; import java.lang.reflect.Method; import java.util.Collection; import com.vividsolutions.jts.operation.polygonize.Polygonizer; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryCollection; import com.vividsolutions.jts.geom.LineString; import com.vividsolutions.jts.geom.LinearRing; import com.vividsolutions.jts.geom.MultiLineString; import com.vividsolutions.jts.geom.MultiPoint; import com.vividsolutions.jts.geom.MultiPolygon; import com.vividsolutions.jts.geom.Point; import com.vividsolutions.jts.geom.Polygon; import com.vividsolutions.jts.io.WKTReader; /** * Basic idea: * * 1. for each method in the StaticGeometry class (or whatever class you specify - see main() ) * 2. make a .java file * * put the header in (ie. includes, etc...) * * put the actual code in (see "emit()" below) * * put the footer in (ie. finish the class "}") * * @author dblasby */ public class MakeFunctionClasses { public static void main(String[] args) { MakeFunctionClasses cg = new MakeFunctionClasses(); cg.handleClass(org.geotools.filter.function.StaticGeometry.class); // parent of all geometry types } public void handleClass(Class c) { Method[] methods = c.getDeclaredMethods(); for (int t=0;t