Package org.geotools.renderer3d.example

Source Code of org.geotools.renderer3d.example.ExampleDataGenerator

/*
*    GeoTools - The Open Source Java GIS Toolkit
*    http://geotools.org
*
*    (C) 2007-2008, Open Source Geospatial Foundation (OSGeo)
*
*    This library is free software; you can redistribute it and/or
*    modify it under the terms of the GNU Lesser General Public
*    License as published by the Free Software Foundation;
*    version 2.1 of the License.
*
*    This library is distributed in the hope that it will be useful,
*    but WITHOUT ANY WARRANTY; without even the implied warranty of
*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
*    Lesser General Public License for more details.
*/
package org.geotools.renderer3d.example;

import com.vividsolutions.jts.geom.LineString;
import com.vividsolutions.jts.io.ParseException;
import com.vividsolutions.jts.io.WKTReader;
import org.geotools.feature.*;
import org.geotools.map.DefaultMapContext;
import org.geotools.map.DefaultMapLayer;
import org.geotools.map.MapContext;
import org.geotools.styling.BasicLineStyle;

/**
* A simple test data generator.
*
* @author Hans H�ggstr�m
*/
public final class ExampleDataGenerator
{


    /**
     * @return an map context with generated test data.
     */
    public MapContext createExampleMap()
    {
        // TODO: Read up on Coordinate Reference System, and pass one to the constructor below:
        final MapContext exampleMap = new DefaultMapContext();

        // Some random height coverage data
        // TODO

        // Some random roads
        // TODO

        // Some random lakes and rivers
        // TODO

        // Some random cities containing building polygons
        // TODO

        // Some random coverage color (population density?)
        // TODO

        try
        {
            //AttributeType geom = AttributeTypeFactory.newAttributeType("the_geom", Point.class);
            AttributeType geom = AttributeTypeFactory.newAttributeType( "the_geom", LineString.class );
            AttributeType roadWidth = AttributeTypeFactory.newAttributeType( "width", Float.class );
            FeatureType ftRoad = FeatureTypes.newFeatureType( new AttributeType[]{ geom, roadWidth }, "road" );

            WKTReader wktReader = new WKTReader();
            //Point geometry = (Point) wktReader.read("POINT (" + lat + " " + lon + ")");
            LineString geometry = (LineString) wktReader.read( "LINESTRING (0 0, 10 10, 10 20, 20 30, 10 40, 15 50)" );
            Float width = new Float( 10 );
            Feature theRoad = ftRoad.create( new Object[]{ geometry, width }, "myRoad" );

            System.out.println( theRoad );

            final FeatureCollection featureCollection = new DefaultFeatureCollection( "roads", ftRoad );

            featureCollection.add( theRoad );

            exampleMap.addLayer( new DefaultMapLayer( featureCollection, new BasicLineStyle() ) );

            System.out.println( "exampleMap = " + exampleMap );
        }
        catch ( SchemaException e )
        {
            e.printStackTrace()//To change body of catch statement use File | Settings | File Templates.
        }
        catch ( ParseException e )
        {
            e.printStackTrace()//To change body of catch statement use File | Settings | File Templates.
        }
        catch ( IllegalAttributeException e )
        {
            e.printStackTrace()//To change body of catch statement use File | Settings | File Templates.
        }

        return exampleMap;
    }

}
TOP

Related Classes of org.geotools.renderer3d.example.ExampleDataGenerator

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.