On Sat, 2006-03-11 at 21:35 +1300, Mark Presling wrote:
> >
> I did some stuff with FeatureType the other day... trying to create a
> new Feature from scratch. Here is the code I found to create a new
> FeatureType:
> AttributeType geomAttr =
> AttributeTypeFactory.newAttributeType("the_geom", LineString.class);
> FeatureType ftRoad =
> FeatureTypeBuilder.newFeatureType(new AttributeType[] {geomAttr}, "road");
>
> // WKTReader wktReader = new WKTReader();
> // Point geometry = (Point) wktReader.read("POINT (" + lat
> + " " + lon + ")");
> GeometryFactory geomFactory = new GeometryFactory();
> LineString geometry =
> geomFactory.createLineString(coords);
> Feature theRoad = ftRoad.create(new Object[] {geometry},
> "myRoad");
>
> This example Feature only has one attribute which is the geometry,
> the_geom. You can create and add other attributes in the
> AttributType[] and Object[] if needed.]
>
> These classes are from the org.geotools.feature package.
>
> Hopefully you may find this useful. I'm not sure if this is the most
> up-to-date way of doing it, but it worked for me.
>
> Mark
But note that, in this example, the feature has no CRS which means it
cannot be displayed with other layers. In other words we have a feature,
but it's not really 'valid'. Eventually, I'd like to have a ValidFeature
or a ValidatedFeatureFactory subclass which guarantees that Feature is
geometrically complete. While it's probably important that Features be
general enough to be allowed to exist without a CRS, it's a hurdle for
us beginners to get over.
I've been trying to figure out how to build a feature from scratch with
a CRS. When I do, I hope to update the docs.
all the best,
adrian
_______________________________________________
User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel