ilog.views.maps.format.svg
Class IlvSVGDataSource

java.lang.Object
  extended by ilog.views.maps.datasource.IlvMapDataSource
      extended by ilog.views.maps.datasource.IlvHierarchicalDataSource
          extended by ilog.views.maps.format.IlvDefaultTilableDataSource
              extended by ilog.views.maps.format.svg.IlvSVGDataSource
All Implemented Interfaces:
IlvPersistentObject

public class IlvSVGDataSource
extends IlvDefaultTilableDataSource

IlvSVGDataSource represents a data source used read SVG files.

Since:
JViews 8.1

Nested Class Summary
 
Nested classes/interfaces inherited from class ilog.views.maps.datasource.IlvHierarchicalDataSource
IlvHierarchicalDataSource.CriterionFilter, IlvHierarchicalDataSource.SingleAttributeFilter
 
Field Summary
 
Fields inherited from class ilog.views.maps.format.IlvDefaultTilableDataSource
GeometryClassInformation
 
Fields inherited from class ilog.views.maps.datasource.IlvHierarchicalDataSource
featureIterator, filename, nameMap, styleMap
 
Fields inherited from class ilog.views.maps.datasource.IlvMapDataSource
renderer, usingGeodeticComputation
 
Constructor Summary
IlvSVGDataSource(IlvInputStream stream)
          Creates a new IlvSVGDataSource instance.
IlvSVGDataSource(String filename)
          Constructs an IlvSVGDataSource instance from a file.
IlvSVGDataSource(URL url)
          Constructs an IlvSVGDataSource instance from a file.
 
Method Summary
protected  IlvDefaultFeatureFilter createDefaultFilter()
          Creates, at construction time, the filter that will be used to separate features into layers.
protected  IlvMapReusableFeatureIterator createFeatureIterator(String fileName)
          Method used in IlvDefaultTilableDataSource.IlvDefaultTilableDataSource(String) constructor to build the data source reader.
protected  IlvMapReusableFeatureIterator createFeatureIterator(URL url)
          Method used in IlvDefaultTilableDataSource.IlvDefaultTilableDataSource(URL) constructor to build the data source reader.
protected  IlvFeatureRenderer createFeatureRenderer()
          Returns a renderer created for this datasource.
protected  IlvMapRegionOfInterestIterator createTiledIterator(IlvFeatureClassInformation featureValue, IlvGeometryClassFilter geometryClass)
          Creates an iterator that traverses the map features for a specific area of interest.
 IlvFeatureRenderer getFeatureRenderer(IlvMapFeature feature)
          Returns the appropriate feature renderer for an IlvMapFeature object.
protected  IlvGeometryClassFilter[] getGeometryClassFilters()
          By default, returns IlvDefaultTilableDataSource.GeometryClassInformation
protected  void initFeatureList()
          Specific initialization done when data source is created.
 String makeLayerName(String name, IlvGeometryClassFilter d)
          Creates a layer name from a feature name and a geometry class.
 void setDestinationBounds(double minX, double minY, double maxX, double maxY)
          Sets the bounds within which the SVG Reader should fit graphical objects.
 void setInternalTransformation(IlvMathTransform internalTransformation)
          Sets the internal transformation to use when reading the SVG file.
 void start()
          Starts this data source.
 void write(IlvOutputStream stream)
          Writes this IlvSVGDataSource instance to a stream.
 
Methods inherited from class ilog.views.maps.format.IlvDefaultTilableDataSource
acceptsCode, addLayer, createGenericTiles, createTiledLayers, getColumnCount, getFeatureFilterPropertyName, getFeatureName, getGeometryClassInformation, getLatMax, getLatMin, getLayerOrder, getLonMax, getLonMin, getMonitoringData, getRowCount, getURL, isMultiThreaded, isSourceDataAvailable, isUsingTiling, readInfo, reset, setAcceptedCodeList, setAreaOfinterest, setLayerOrder, setMonitoringData, setMultiThreaded, setTilingParameters, setupLayer, setupTiledLoaders, setURL
 
Methods inherited from class ilog.views.maps.datasource.IlvHierarchicalDataSource
addCriterionFilter, createInsertionLayer, getCriterionFilters, getFeatureIterator, getFeatureRenderer, getKey, getMapLayer, getStyle, isAcceptNullValues, removeAllCriterionFilters, removeCriterionFilter, setAcceptNullValues
 
Methods inherited from class ilog.views.maps.datasource.IlvMapDataSource
addDataSourceListener, callListeners, getBackupDataSources, getCoordinateSystem, getDescription, getInsertionLayer, getManager, getName, getNode, getValidExtentions, hasInsertionLayer, initBackupDataSource, initInsertionLayer, isAttachingAttributes, isSaveBackupDataSources, isUsingGeodeticComputation, mapIntersects, removeDataSourceListener, setAttachingAttributes, setCoordinateSystem, setDescription, setFeatureRenderer, setForceUsingBackupDataSource, setInsertionLayer, setManager, setName, setSaveBackupDataSources, setValidExtentions, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IlvSVGDataSource

public IlvSVGDataSource(IlvInputStream stream)
                 throws IlvReadFileException
Creates a new IlvSVGDataSource instance.

Parameters:
stream - The stream to read from.
Throws:
IlvReadFileException - if there is a problem reading from stream.

IlvSVGDataSource

public IlvSVGDataSource(String filename)
                 throws MalformedURLException
Constructs an IlvSVGDataSource instance from a file.

Parameters:
filename - The name of the SVG file to read from.
Throws:
MalformedURLException - if the path filename cannot be parsed as a URL.

IlvSVGDataSource

public IlvSVGDataSource(URL url)
                 throws IOException
Constructs an IlvSVGDataSource instance from a file.

Parameters:
url - The URL of the SVG file to read from.
Throws:
IOException - if there is a problem reading from url.
Method Detail

write

public void write(IlvOutputStream stream)
           throws IOException
Writes this IlvSVGDataSource instance to a stream.

Specified by:
write in interface IlvPersistentObject
Overrides:
write in class IlvDefaultTilableDataSource
Parameters:
stream - The output stream to write to.
Throws:
IOException - if there is a problem writing to stream.
See Also:
IlvMapDataSource.write(ilog.views.io.IlvOutputStream)

initFeatureList

protected void initFeatureList()
Specific initialization done when data source is created. It should be used to retrieve the possible feature codes that the data source can manage.

Specified by:
initFeatureList in class IlvDefaultTilableDataSource
See Also:
IlvDefaultTilableDataSource.initFeatureList()

getGeometryClassFilters

protected IlvGeometryClassFilter[] getGeometryClassFilters()
By default, returns IlvDefaultTilableDataSource.GeometryClassInformation

Overrides:
getGeometryClassFilters in class IlvDefaultTilableDataSource
Returns:
the list of possible geometry classes that can be loaded.
See Also:
IlvDefaultTilableDataSource.getGeometryClassFilters()

makeLayerName

public String makeLayerName(String name,
                            IlvGeometryClassFilter d)
Creates a layer name from a feature name and a geometry class.

Overrides:
makeLayerName in class IlvDefaultTilableDataSource
Parameters:
name - feature name.
d - geometry class.
Returns:
a string to use as a layer name.
See Also:
IlvDefaultTilableDataSource.makeLayerName(java.lang.String, ilog.views.maps.format.IlvGeometryClassFilter)

createFeatureIterator

protected IlvMapReusableFeatureIterator createFeatureIterator(String fileName)
                                                       throws MalformedURLException
Method used in IlvDefaultTilableDataSource.IlvDefaultTilableDataSource(String) constructor to build the data source reader. For example:
  protected void createFeatureIterator(String fileName)
  {
    return new IlvS57Reader(fileName);
  }
   

Specified by:
createFeatureIterator in class IlvDefaultTilableDataSource
Parameters:
fileName - file parameter.
Returns:
the data source reader.
Throws:
MalformedURLException
See Also:
IlvDefaultTilableDataSource.createFeatureIterator(java.lang.String)

createFeatureIterator

protected IlvMapReusableFeatureIterator createFeatureIterator(URL url)
Method used in IlvDefaultTilableDataSource.IlvDefaultTilableDataSource(URL) constructor to build the data source reader. For example:
  protected void createFeatureIterator(URL urlName)
  {
    return new IlvS57Reader(urlName);
  }
   

Specified by:
createFeatureIterator in class IlvDefaultTilableDataSource
Parameters:
url - file parameter.
Returns:
the data source reader.
See Also:
IlvDefaultTilableDataSource.createFeatureIterator(java.net.URL)

createDefaultFilter

protected IlvDefaultFeatureFilter createDefaultFilter()
Creates, at construction time, the filter that will be used to separate features into layers. For example, this method can create an IlvDefaultFeatureFilter instance and pass the property used to split features.

Overrides:
createDefaultFilter in class IlvDefaultTilableDataSource
Returns:
The default feature filter that will be used to separate layers for this data source.
See Also:
IlvDefaultTilableDataSource.createDefaultFilter()

start

public void start()
           throws Exception
Starts this data source. The rendering process is initiated. The map features are read from the reader, graphic objects are rendered and inserted into the manager.

Overrides:
start in class IlvDefaultTilableDataSource
Throws:
Exception
See Also:
IlvDefaultTilableDataSource.start()

createTiledIterator

protected IlvMapRegionOfInterestIterator createTiledIterator(IlvFeatureClassInformation featureValue,
                                                             IlvGeometryClassFilter geometryClass)
Creates an iterator that traverses the map features for a specific area of interest.

Specified by:
createTiledIterator in class IlvDefaultTilableDataSource
Parameters:
featureValue - An IlvFeatureClassInformation object used to filter features.
geometryClass - A subclass of IlvMapGeometry used to prevent the mixing of different types of feature in the same layer.
Returns:
The feature iterator.

createFeatureRenderer

protected IlvFeatureRenderer createFeatureRenderer()
                                            throws Exception
Returns a renderer created for this datasource. This renderer is used in the IlvHierarchicalDataSource.getFeatureRenderer() and IlvHierarchicalDataSource.getFeatureRenderer(IlvMapFeature) methods calls. The default implementation creates a renderer through IlvDataSourceStylingFactory.createDefaultRenderer(boolean, boolean)

Overrides:
createFeatureRenderer in class IlvHierarchicalDataSource
Returns:
Returns a renderer created for this datasource.
Throws:
Exception
See Also:
IlvHierarchicalDataSource.createFeatureRenderer()

getFeatureRenderer

public IlvFeatureRenderer getFeatureRenderer(IlvMapFeature feature)
                                      throws Exception
Returns the appropriate feature renderer for an IlvMapFeature object.

Overrides:
getFeatureRenderer in class IlvHierarchicalDataSource
Parameters:
feature - The IlvMapFeature to render.
Returns:
the IlvFeatureRenderer.
Throws:
Exception - if a feature renderer does not exist to match feature. Overridden to always use the same feature renderer.

setDestinationBounds

public void setDestinationBounds(double minX,
                                 double minY,
                                 double maxX,
                                 double maxY)
Sets the bounds within which the SVG Reader should fit graphical objects.

Parameters:
minX - The minimum longitude in radians.
minY - The minimum latitude in radians.
maxX - The maximum longitude in radians.
maxY - The maximum latitude in radians.

setInternalTransformation

public void setInternalTransformation(IlvMathTransform internalTransformation)
Sets the internal transformation to use when reading the SVG file.

Parameters:
internalTransformation - The internal transformation to be used when reading from an SVG file.


Copyright © 1996-2007 ILOG S.A. All rights reserved.   Documentation homepage.