public class TLfnFormat extends ALfnFormat
createAsset()
method which provides good defaults for most
formats.
It supports all format types (image, elevation, vector).
It creates assets with the following information:
getScaleDenominator(com.luciad.model.ILcdModel)
method (the default returns the unknown scale denominator). For other data, the pixel density of the raster is used.AIXM_FORMAT_ID, AIXM51_FORMAT_ID, ARC_SDE_RASTER_FORMAT_ID, ARC_SDE_VECTOR_FORMAT_ID, BCI_FORMAT_ID, BIL_FORMAT_ID, CADRG_FORMAT_ID, DEM_FORMAT_ID, DGN_FORMAT_ID, DIMAP_FORMAT_ID, DMED_FORMAT_ID, DTED_DIRECTORY_FORMAT_ID, DTED_FORMAT_ID, ECRG_FORMAT_ID, ECW_FORMAT_ID, ETOPO_FORMAT_ID, GDAL_FORMAT_ID, GEO_SPOT_FORMAT_ID, GEO_TIFF_FORMAT_ID, GEOSPATIAL_PDF_FORMAT_ID, GML2_FORMAT_ID, GML31_FORMAT_ID, GML32_FORMAT_ID, JAI_FORMAT_ID, JPEG_2000_FORMAT_ID, JPIP_FORMAT_ID, MAP_FORMAT_ID, MIF_FORMAT_ID, MR_SID_FORMAT_ID, NETCDF_FORMAT_ID, NITF_FORMAT_ID, ORACLE_GEO_RASTER_FORMAT_ID, ORACLE_SPATIAL_FORMAT_ID, POSTGIS_FORMAT_ID, RASTER_TILE_STORE_FORMAT_ID, RST_FORMAT_ID, S57_FORMAT_ID, S63_FORMAT_ID, SHP_FORMAT_ID, SWISS_DHM_FORMAT_ID, TAB_FORMAT_ID, TFW_FORMAT_ID, USRP_FORMAT_ID, VPF_FORMAT_ID, WMTS_FORMAT_ID
Constructor and Description |
---|
TLfnFormat(ILcdEarthModelDecoderFactory aModelDecoderFactory,
ILcdGXYLayerFactory aGXYLayerFactory,
ILcdModelHeightProviderFactory aHeightProviderFactory,
ILfnIdentityProviderFactory aFeatureIdProviderFactory,
ELfnDataType aType,
String aModelDescriptorTypeName,
Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
Creates a new engine format.
|
TLfnFormat(String aFormatId,
ILcdEarthModelDecoderFactory aModelDecoderFactory,
ILcdGXYLayerFactory aGXYLayerFactory,
ILcdModelHeightProviderFactory aHeightProviderFactory,
ILfnIdentityProviderFactory aFeatureIdProviderFactory,
ELfnDataType aType,
String aModelDescriptorTypeName,
Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
Creates a new engine format with given parameters.
|
TLfnFormat(String aFormatId,
ILcdEarthModelDecoderFactory aModelDecoderFactory,
ILcdSLDGXYLayerFactory aSLDGXYLayerFactory,
ILcdModelHeightProviderFactory aHeightProviderFactory,
ILfnIdentityProviderFactory aFeatureIdProviderFactory,
ELfnDataType aType,
String aModelDescriptorTypeName,
Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
Creates a new engine format.
|
TLfnFormat(String aFormatId,
ILfnDataSourceModelDecoderFactory aModelDecoderFactory,
ILcdGXYLayerFactory aGXYLayerFactory,
ILcdModelHeightProviderFactory aHeightProviderFactory,
ILfnIdentityProviderFactory aFeatureIdProviderFactory,
ELfnDataType aType,
String aModelDescriptorTypeName,
Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
Creates a new engine format with given parameters.
|
TLfnFormat(String aFormatId,
ILfnDataSourceModelDecoderFactory aModelDecoderFactory,
ILcdGXYLayerFactory aGXYLayerFactory,
ILcdSLDGXYLayerFactory aSLDGXYLayerFactory,
ILcdModelHeightProviderFactory aHeightProviderFactory,
ILfnIdentityProviderFactory aFeatureIdProviderFactory,
ELfnDataType aType,
String aModelDescriptorTypeName,
Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
Creates a new engine format.
|
TLfnFormat(String aFormatId,
ILfnDataSourceModelDecoderFactory aModelDecoderFactory,
ILcdSLDGXYLayerFactory aSLDGXYLayerFactory,
ILcdModelHeightProviderFactory aHeightProviderFactory,
ILfnIdentityProviderFactory aFeatureIdProviderFactory,
ELfnDataType aType,
String aModelDescriptorTypeName,
Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
Creates a new engine format.
|
Modifier and Type | Method and Description |
---|---|
ALfnAssetMetadata |
createAsset(ILcdModel aModel)
Creates an asset for a given model.
|
protected int |
getScaleDenominator(ILcdModel aModel)
Returns the scale denominator for the compilation (native) scale for the given model.
|
boolean |
isModelOfFormat(ILcdModel aModel)
Checks whether a model is of this format.
|
canCreateAsset, createAsset, createDataSource, createDefaultFormats, getDataSourceModelDecoderFactory, getGXYLayerFactory, getHeightProviderFactory, getIdentityProviderFactory, getModelDecoderFactory, getName, getSLDGXYLayerFactory, groupAssetPartsForDataSources, isAssetOfFormat, isAssetPartOfFormat, isAssetSourcesInTileStoreSupported, newElevationFormat, newElevationFormat, newImageFormat, newImageFormat, newVectorFormat, newVectorFormat, toString
public TLfnFormat(ILcdEarthModelDecoderFactory aModelDecoderFactory, ILcdGXYLayerFactory aGXYLayerFactory, ILcdModelHeightProviderFactory aHeightProviderFactory, ILfnIdentityProviderFactory aFeatureIdProviderFactory, ELfnDataType aType, String aModelDescriptorTypeName, Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
aModelDecoderFactory
- the model decoder factory, the name of which will be taken as the format IDaGXYLayerFactory
- the GXY layer factoryaHeightProviderFactory
- the height provider factory, may be null
if not supportedaFeatureIdProviderFactory
- the feature ID provider factory for vector data , may be null
if not supportedaType
- the data type, which is ignored since the format auto-detects the type from the model.
It is safe to use null
here.aModelDescriptorTypeName
- the type name of the model descriptor or null
for anyaModelDescriptorClasses
- the possible classes of the model descriptor or none for anypublic TLfnFormat(String aFormatId, ILcdEarthModelDecoderFactory aModelDecoderFactory, ILcdGXYLayerFactory aGXYLayerFactory, ILcdModelHeightProviderFactory aHeightProviderFactory, ILfnIdentityProviderFactory aFeatureIdProviderFactory, ELfnDataType aType, String aModelDescriptorTypeName, Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
null
, an SLD GXY layer factory adapter will be created which ignores the
styling. If you desire a specific styling for your format, you should instead use the other constructor which takes
an ILcdSLDGXYLayerFactory
.aFormatId
- the unique identifier for this format, this should never changeaModelDecoderFactory
- the model decoder factoryaGXYLayerFactory
- the GXY layer factory, which may be null
to indicate that assets of this
format cannot be fused to IMAGE
coveragesaHeightProviderFactory
- the height provider factory, may be null
if not supportedaFeatureIdProviderFactory
- the feature ID provider factory for vector data , may be null
if not supportedaType
- the data type, which is ignored since the format auto-detects the type from the model.
It is safe to use null
here.aModelDescriptorTypeName
- the type name of the model descriptor or null
for anyaModelDescriptorClasses
- the possible classes of the model descriptor or none for anyTLfnFormat(String, ILcdEarthModelDecoderFactory, ILcdSLDGXYLayerFactory, ILcdModelHeightProviderFactory, ILfnIdentityProviderFactory, ELfnDataType, String, Class[])
public TLfnFormat(String aFormatId, ILfnDataSourceModelDecoderFactory aModelDecoderFactory, ILcdGXYLayerFactory aGXYLayerFactory, ILcdModelHeightProviderFactory aHeightProviderFactory, ILfnIdentityProviderFactory aFeatureIdProviderFactory, ELfnDataType aType, String aModelDescriptorTypeName, Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
null
, an SLD GXY layer factory adapter will be created which ignores the
styling. If you desire a specific styling for your format, you should instead use the other constructor which takes
an ILcdSLDGXYLayerFactory
.
Note that you need to override the ALfnFormat.createDataSource(java.util.List)
as well. The default
implementation of that method creates ILcdDataSource
instances which will not be accepted by the
model decoder factory.aFormatId
- the unique identifier for this format, this should never changeaModelDecoderFactory
- the model decoder factoryaGXYLayerFactory
- the GXY layer factory, which may be null
to indicate that assets of this
format cannot be fused to IMAGE
coveragesaHeightProviderFactory
- the height provider factory, may be null
if not supportedaFeatureIdProviderFactory
- the feature ID provider factory for vector data , may be null
if not supportedaType
- the data type, which is ignored since the format auto-detects the type from the model.
It is safe to use null
here.aModelDescriptorTypeName
- the type name of the model descriptor or null
for anyaModelDescriptorClasses
- the possible classes of the model descriptor or none for anyTLfnFormat(String, ILcdEarthModelDecoderFactory, ILcdSLDGXYLayerFactory, ILcdModelHeightProviderFactory, ILfnIdentityProviderFactory, ELfnDataType, String, Class[])
public TLfnFormat(String aFormatId, ILcdEarthModelDecoderFactory aModelDecoderFactory, ILcdSLDGXYLayerFactory aSLDGXYLayerFactory, ILcdModelHeightProviderFactory aHeightProviderFactory, ILfnIdentityProviderFactory aFeatureIdProviderFactory, ELfnDataType aType, String aModelDescriptorTypeName, Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
aFormatId
- the unique identifier for this format, this should never changeaModelDecoderFactory
- the model decoder factoryaSLDGXYLayerFactory
- the SLD GXY layer factoryaHeightProviderFactory
- the height provider factory, may be null
if not supportedaFeatureIdProviderFactory
- the feature ID provider factory for vector data , may be null
if not supportedaType
- the data type, which may be null
to indicate that the format should figure
out the data type from the model on a per model basis.
If unsure, use null
.aModelDescriptorTypeName
- the type name of the model descriptor or null
for anyaModelDescriptorClasses
- the possible classes of the model descriptor or none for anypublic TLfnFormat(String aFormatId, ILfnDataSourceModelDecoderFactory aModelDecoderFactory, ILcdSLDGXYLayerFactory aSLDGXYLayerFactory, ILcdModelHeightProviderFactory aHeightProviderFactory, ILfnIdentityProviderFactory aFeatureIdProviderFactory, ELfnDataType aType, String aModelDescriptorTypeName, Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
ALfnFormat.createDataSource(java.util.List)
as well. The default
implementation of that method creates ILcdDataSource
instances which will not be accepted by the
model decoder factory.aFormatId
- the unique identifier for this format, this should never changeaModelDecoderFactory
- the model decoder factoryaSLDGXYLayerFactory
- the SLD GXY layer factoryaHeightProviderFactory
- the height provider factory, may be null
if not supportedaFeatureIdProviderFactory
- the feature ID provider factory for vector data , may be null
if not supportedaType
- the data type, which may be null
to indicate that the format should figure
out the data type from the model on a per model basis.
If unsure, use null
.aModelDescriptorTypeName
- the type name of the model descriptor or null
for anyaModelDescriptorClasses
- the possible classes of the model descriptor or none for anypublic TLfnFormat(String aFormatId, ILfnDataSourceModelDecoderFactory aModelDecoderFactory, ILcdGXYLayerFactory aGXYLayerFactory, ILcdSLDGXYLayerFactory aSLDGXYLayerFactory, ILcdModelHeightProviderFactory aHeightProviderFactory, ILfnIdentityProviderFactory aFeatureIdProviderFactory, ELfnDataType aType, String aModelDescriptorTypeName, Class<? extends ILcdModelDescriptor>... aModelDescriptorClasses)
ALfnFormat.createDataSource(java.util.List)
as well. The default
implementation of that method creates ILcdDataSource
instances which will not be accepted by the
model decoder factory.aFormatId
- the unique identifier for this format, this should never changeaModelDecoderFactory
- the model decoder factoryaGXYLayerFactory
- the GXY layer factory. If also an ILcdGXYLayerFactory is supplied, this layer
factory is used as fallback. Can be null
if aSLDGXYLayerFactory
is not null
.aSLDGXYLayerFactory
- the SLD GXY layer factory. Can be null
if aGXYLayerFactory
is
not null
.aHeightProviderFactory
- the height provider factory, may be null
if not supportedaFeatureIdProviderFactory
- the feature ID provider factory for vector data , may be null
if not supportedaType
- the data type, which may be null
to indicate that the format should figure
out the data type from the model on a per model basis.
If unsure, use null
.aModelDescriptorTypeName
- the type name of the model descriptor or null
for anyaModelDescriptorClasses
- the possible classes of the model descriptor or none for anypublic ALfnAssetMetadata createAsset(ILcdModel aModel)
ALfnFormat
Creates an asset for a given model. This method is typically only called when you already have an
ILcdModel
available. If the model does not yet exists, the recommended way is to use the
ALfnFormat.createAsset(String, java.util.List)
method instead.
The implementation of this method has to set all the properties of the asset, notably:
VECTOR
as (source) asset data type, but currently only supports fusion to a target coverage with data type IMAGE
. This method is typically called by the LuciadFusion API user. In order to fuse data, you need to create and
pass ALfnAssetMetadata
instances to LuciadFusion. The creation of those assets is done by calling this method.
createAsset
in class ALfnFormat
aModel
- a model to create an asset fornull
if the model is not supportedALfnFormat.createAsset(String, java.util.List)
protected int getScaleDenominator(ILcdModel aModel)
aModel
- the model for which to determine the compilation scale denominatorpublic boolean isModelOfFormat(ILcdModel aModel)
ALfnFormat
isModelOfFormat
in class ALfnFormat
aModel
- the modeltrue
if the given model is of this format, false
otherwise