Class CubemapBuilder
- java.lang.Object
-
- org.openstreetmap.josm.plugins.streetside.cubemap.CubemapBuilder
-
- All Implemented Interfaces:
ITileDownloadingTaskListener,StreetsideDataListener
public class CubemapBuilder extends java.lang.Object implements ITileDownloadingTaskListener, StreetsideDataListener
-
-
Field Summary
Fields Modifier and Type Field Description private StreetsideCubemapcubemapprivate intcurrentTileCountprivate static CubemapBuilderinstanceprotected booleanisBuilding(package private) static org.apache.log4j.Loggerloggerprivate java.util.concurrent.ExecutorServicepoolprivate longstartTimeprivate java.util.Map<java.lang.String,java.awt.image.BufferedImage>tileImages
-
Constructor Summary
Constructors Modifier Constructor Description privateCubemapBuilder()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidbuildCubemapFaces()Assembles the cubemap once all of the tiles have been downloaded.static voiddestroyInstance()Destroys the unique instance of the class.voiddownloadCubemapImages(java.lang.String imageId)StreetsideCubemapgetCubemap()static CubemapBuildergetInstance()java.util.Map<java.lang.String,java.awt.image.BufferedImage>getTileImages()static booleanhasInstance()voidimagesAdded()Fired when any image is added to the database.booleanisBuilding()voidreload(java.lang.String imageId)private voidresetTileImages()voidselectedImageChanged(StreetsideAbstractImage oldImage, StreetsideAbstractImage newImage)Fired when the selected image is changed by something different from manually clicking on the icon.static voidsetCubemap(StreetsideCubemap cubemap)voidsetTileImages(java.util.Map<java.lang.String,java.awt.image.BufferedImage> tileImages)voidtileAdded(java.lang.String tileId)Fired when a TileDownloadingTask has completed downloading an image tile.
-
-
-
Field Detail
-
logger
static final org.apache.log4j.Logger logger
-
instance
private static CubemapBuilder instance
-
cubemap
private StreetsideCubemap cubemap
-
isBuilding
protected boolean isBuilding
-
startTime
private long startTime
-
tileImages
private java.util.Map<java.lang.String,java.awt.image.BufferedImage> tileImages
-
pool
private java.util.concurrent.ExecutorService pool
-
currentTileCount
private int currentTileCount
-
-
Constructor Detail
-
CubemapBuilder
private CubemapBuilder()
-
-
Method Detail
-
getTileImages
public java.util.Map<java.lang.String,java.awt.image.BufferedImage> getTileImages()
- Returns:
- the tileImages
-
setTileImages
public void setTileImages(java.util.Map<java.lang.String,java.awt.image.BufferedImage> tileImages)
- Parameters:
tileImages- the tileImages to set
-
imagesAdded
public void imagesAdded()
Fired when any image is added to the database.- Specified by:
imagesAddedin interfaceStreetsideDataListener
-
selectedImageChanged
public void selectedImageChanged(StreetsideAbstractImage oldImage, StreetsideAbstractImage newImage)
Fired when the selected image is changed by something different from manually clicking on the icon.- Specified by:
selectedImageChangedin interfaceStreetsideDataListener- Parameters:
oldImage- Old selectedStreetsideAbstractImagenewImage- New selectedStreetsideAbstractImage- See Also:
StreetsideDataListener
-
reload
public void reload(java.lang.String imageId)
-
downloadCubemapImages
public void downloadCubemapImages(java.lang.String imageId)
-
tileAdded
public void tileAdded(java.lang.String tileId)
Fired when a TileDownloadingTask has completed downloading an image tile. When all of the tiles for the Cubemap have been downloaded, the CubemapBuilder assembles the cubemap.- Specified by:
tileAddedin interfaceITileDownloadingTaskListener- Parameters:
tileId- the complete quadKey of the imagery tile, including cubeface and row/column in quaternary.- See Also:
TileDownloadingTask
-
buildCubemapFaces
private void buildCubemapFaces()
Assembles the cubemap once all of the tiles have been downloaded.The tiles for each cubemap face are cropped and stitched together then the ImageViews of the cubemap are set with the new imagery.
- See Also:
StreetsideCubemap
-
resetTileImages
private void resetTileImages()
-
getCubemap
public StreetsideCubemap getCubemap()
- Returns:
- the cubemap
-
setCubemap
public static void setCubemap(StreetsideCubemap cubemap)
- Parameters:
cubemap- the cubemap to set
-
getInstance
public static CubemapBuilder getInstance()
-
hasInstance
public static boolean hasInstance()
- Returns:
- true, iff the singleton instance is present
-
isBuilding
public boolean isBuilding()
- Returns:
- the isBuilding
-
destroyInstance
public static void destroyInstance()
Destroys the unique instance of the class.
-
-