public interface SphereCovering
Interface with factory methods for creating different SphereCovering
 implementations.
- 
Method SummaryModifier and TypeMethodDescriptionstatic SphereCoveringcreateHCPLatticeCover(String coverFilename) Creates a HCPLatticeCover from a cover file in format X Y Z Radius.static SphereCoveringcreateHCPLatticeCover(String stlFile, double ballRadius) Creates an HCP lattice of equal spheres with a given radius.static SphereCoveringcreateHCPLatticeCover(List<Profile> profiles, double ballRadius, boolean circularPath) Creates an HCP lattice of equal spheres with a given radius.static SphereCoveringcreateSingleRowCover(String file) Creates a single row cover from a cover file.static SphereCoveringcreateSingleRowCover(List<org.apache.commons.math3.geometry.euclidean.threed.Vector3D> pathPoints, double apertureRadius, double ballRadius, boolean closedPath) Creates a single row cover around a given orbit with with a single line of balls centered on the orbit.The balls overlap such a way that it always covers a given aperture around the orbit.Gets the covering spheres.Gets the cover type for the covering.voidWrites the sphere covering to a file.
- 
Method Details- 
createHCPLatticeCoverCreates a HCPLatticeCover from a cover file in format X Y Z Radius. It reads also the corresponding .stl file.- Parameters:
- coverFilename- Cover file name.
- Returns:
- an HCPLatticeCover object with the lattice covering.
- Throws:
- FileNotFoundException
 
- 
createHCPLatticeCoverstatic SphereCovering createHCPLatticeCover(String stlFile, double ballRadius) throws KnownFatalException Creates an HCP lattice of equal spheres with a given radius. this class keeps a list of those spheres, which have the centers inside the surface described by the STL file. See: https://en.wikipedia.org/wiki/Close-packing_of_equal_spheres- Parameters:
- stlFile- STL file name
- ballRadius- Radius of the spheres
- Returns:
- The created HCP lattice sphere covering.
- Throws:
- KnownFatalException- when an internal error happens.
 
- 
createHCPLatticeCoverstatic SphereCovering createHCPLatticeCover(List<Profile> profiles, double ballRadius, boolean circularPath) throws KnownFatalException Creates an HCP lattice of equal spheres with a given radius. this class keeps a list of those spheres, which have the centers inside the surface described by the profile.- Parameters:
- profiles- List of profiles that describe the surface.
- ballRadius- Radius of the spheres
- circularPath- True if the path is circular.
- Returns:
- The created HCP lattice sphere covering.
- Throws:
- KnownFatalException
 
- 
createSingleRowCoverstatic SphereCovering createSingleRowCover(List<org.apache.commons.math3.geometry.euclidean.threed.Vector3D> pathPoints, double apertureRadius, double ballRadius, boolean closedPath) Creates a single row cover around a given orbit with with a single line of balls centered on the orbit.The balls overlap such a way that it always covers a given aperture around the orbit.- Parameters:
- pathPoints- points on the path that make up the orbit.
- apertureRadius- used to calculate the ball centers.
- ballRadius- used to calculate the ball centers.
- closedPath- True if the path is closed (circular)
- Returns:
- the created single row sphere covering.
 
- 
createSingleRowCoverCreates a single row cover from a cover file. The file contains X,Y,Z, radius in each row. each row corresponds to a sphere.- Parameters:
- file- input file.
- Returns:
- a new instance of a single row cover.
- Throws:
- FileNotFoundException
 
- 
toFileWrites the sphere covering to a file.- Parameters:
- outfile- name of the output file.
 
- 
getCoverTypeCoverType getCoverType()Gets the cover type for the covering.- Returns:
- the cover type.
 
- 
getCoveringSpheresList<SphereDescripton> getCoveringSpheres()Gets the covering spheres.- Returns:
- the covering spheres.
 
 
-