-
Danny Hindson authored
The format of the sample environment xml file has been extended to support loading a .stl file for each environment component. An example spec file has been created in ISIS/Pearl.xml. This can be used when running the Algorithm SetSample Various SampleEnvironmentXXX units have been moved out the Geometry package into the DataHandling package to facilitate this because they needed to access the STL loading code in DataHandling SetSample contains some features for overriding the sample geometry if the geometry is a CSGObject. This has been sidestepped for mesh geometries. The methods setId and setMaterial have been moved up to IObject because it's useful to have them applicable to all objects (CSG, mesh) Some of the repeated code in SetSample, LoadSampleEnvironment (and now SampleEnvironmentSpecParser) has been centralised in a new class LoadStlFactory Also changed container logic so that if there's only one container specified in the env spec file you don't need to specify it in SetSample Centralise code relating to scaling mesh vertices and handling of units into the LoadShape class and rename it MeshFileIO now that SaveStl is also descended from this class Move repeated code to choose Ascii or binary STL reader into a factory class
7a20e4dd