Class PointDataProvider
java.lang.Object
gaiasky.data.group.PointDataProvider
- All Implemented Interfaces:
IParticleGroupDataProvider
Generic data provider for point clouds that reads cartesian positions (XYZ) from a text file.
Consider using
BinaryPointDataProvider instead, which includes many more features and is more compact.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionloadData(InputStream is, double factor, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Loads the data applying a factor.loadData(String file, double factor, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Loads the data applying a factor.loadData(String file, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Loads the data as it is.loadDataMapped(String file, double factor, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Loads the data applying a factor using a memory mapped file for improved speed.voidsetFileNumberCap(int cap) Sets a cap on the number of files to load.voidsetProviderParams(Map<String, Object> params) Set provider parameters as a map.voidsetStarNumberCap(int cap) Sets the maximum number of stars to be processed per file.voidsetTransformMatrix(Matrix4D matrix) Sets a transform matrix to apply to all data points.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface IParticleGroupDataProvider
isUniformEpochModifier and TypeMethodDescriptiondefault booleanDo all particles in the group have the same epoch?
-
Constructor Details
-
PointDataProvider
public PointDataProvider()
-
-
Method Details
-
loadData
public List<IParticleRecord> loadData(String file, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Description copied from interface:IParticleGroupDataProviderLoads the data as it is.- Specified by:
loadDatain interfaceIParticleGroupDataProvider- Parameters:
file- The file to load.preCallback- Callback to run before loading starts.updateCallback- Callback to run during loading, for every object. Contains the current object number and the total number.postCallback- Callback to run after loading is done.- Returns:
- The array of particle records.
-
loadData
public List<IParticleRecord> loadData(String file, double factor, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Description copied from interface:IParticleGroupDataProviderLoads the data applying a factor.- Specified by:
loadDatain interfaceIParticleGroupDataProvider- Parameters:
file- The file to load.factor- Factor to apply to the positions.preCallback- Callback to run before loading starts.updateCallback- Callback to run during loading, for every object. Contains the current object number and the total number.postCallback- Callback to run after loading is done.- Returns:
- The array of particle records.
-
loadData
public List<IParticleRecord> loadData(InputStream is, double factor, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Description copied from interface:IParticleGroupDataProviderLoads the data applying a factor.- Specified by:
loadDatain interfaceIParticleGroupDataProvider- Parameters:
is- Input stream to load the data from.factor- Factor to apply to the positions.preCallback- Callback to run before loading starts.updateCallback- Callback to run during loading, for every object. Contains the current object number and the total number.postCallback- Callback to run after loading is done.- Returns:
- The array of particle records.
-
setFileNumberCap
public void setFileNumberCap(int cap) Description copied from interface:IParticleGroupDataProviderSets a cap on the number of files to load. Set to negative for unlimited.- Specified by:
setFileNumberCapin interfaceIParticleGroupDataProvider- Parameters:
cap- The file cap number.
-
setStarNumberCap
public void setStarNumberCap(int cap) Description copied from interface:IParticleGroupDataProviderSets the maximum number of stars to be processed per file. Set to negative for unlimited.- Specified by:
setStarNumberCapin interfaceIParticleGroupDataProvider- Parameters:
cap- The star cap number.
-
setProviderParams
Description copied from interface:IParticleGroupDataProviderSet provider parameters as a map.- Specified by:
setProviderParamsin interfaceIParticleGroupDataProvider- Parameters:
params- The parameters map.
-
setTransformMatrix
Description copied from interface:IParticleGroupDataProviderSets a transform matrix to apply to all data points.- Specified by:
setTransformMatrixin interfaceIParticleGroupDataProvider- Parameters:
matrix- The transform matrix.
-
loadDataMapped
public List<IParticleRecord> loadDataMapped(String file, double factor, Runnable preCallback, BiConsumer<Long, Long> updateCallback, Runnable postCallback) Description copied from interface:IParticleGroupDataProviderLoads the data applying a factor using a memory mapped file for improved speed.- Specified by:
loadDataMappedin interfaceIParticleGroupDataProvider- Parameters:
file- The file to load.factor- Factor to apply to the positions.preCallback- Callback to run before loading starts.updateCallback- Callback to run during loading, for every object. Contains the current object number and the total number.postCallback- Callback to run after loading is done.- Returns:
- The array of particle records.
-