Package repast.simphony.space.gis
Class FeatureAgentFactory<T>
java.lang.Object
repast.simphony.space.gis.FeatureAgentFactory<T>
- Direct Known Subclasses:
DefaultFeatureAgentFactory
,ShapefileFeatureAgentFactory
Abstract factory for adapting agents to features. This creates a FeatureType
given an agent class.
TODO Geotools [minor] - this class would benefit from cleanup since there's lots of
duplicate code, along with subclasses:
ShapefileFeatureAgentFactory
DefaultFeatureAgentFactory
- Author:
- Nick Collier, Eric Tatara
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
createClassAttributes
(Class<T> agentClass) Create a list of class attributes for the FeatureAgentabstract FeatureAgent
getFeature
(T agent, Geography geography) protected org.opengis.feature.simple.SimpleFeatureType
getFeatureType
(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) protected org.opengis.feature.simple.SimpleFeatureType
getFeatureType
(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) protected org.opengis.feature.simple.SimpleFeatureType
getShapefileFeatureType
(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) Gets a feature type appropriate for writing to shapefile.protected org.opengis.feature.simple.SimpleFeatureType
getShapefileFeatureType
(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) Gets a feature type appropriate for writing to shapefile.
-
Field Details
-
GEOM_ATTRIBUTE_NAME
- See Also:
-
classAttributeList
protected List<repast.simphony.space.gis.FeatureAgentFactory.ObjectClassAttributeData> classAttributeList
-
-
Constructor Details
-
FeatureAgentFactory
public FeatureAgentFactory()
-
-
Method Details
-
getFeature
-
getShapefileFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getShapefileFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) throws IntrospectionException, org.geotools.feature.SchemaException Gets a feature type appropriate for writing to shapefile.- Parameters:
agentClass
-coordRefSystem
-geomClass
-- Returns:
- Throws:
IntrospectionException
org.geotools.feature.SchemaException
-
getShapefileFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getShapefileFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) throws IntrospectionException, org.geotools.feature.SchemaException Gets a feature type appropriate for writing to shapefile.- Parameters:
agentClass
-coordRefSystem
-geomClass
-- Returns:
- Throws:
IntrospectionException
org.geotools.feature.SchemaException
-
getFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) throws IntrospectionException, org.geotools.feature.SchemaException - Throws:
IntrospectionException
org.geotools.feature.SchemaException
-
getFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) throws IntrospectionException, org.geotools.feature.SchemaException - Throws:
IntrospectionException
org.geotools.feature.SchemaException
-
createClassAttributes
Create a list of class attributes for the FeatureAgent- Parameters:
agentClass
-
-