package org.ntlab.radishforandroidstudio.cactusClient.models.object; import org.ntlab.radishforandroidstudio.framework.gameMain.RealTime3DFragment; import org.ntlab.radishforandroidstudio.framework.model3D.Model3D; import org.ntlab.radishforandroidstudio.framework.model3D.ModelFactory; import org.ntlab.radishforandroidstudio.framework.model3D.ModelFileFormatException; import java.io.IOException; import java.util.HashMap; class ObjectModelManager { private static ObjectModelManager theInstance = null; private HashMap<Integer, Model3D> model = new HashMap<>(); private RealTime3DFragment fragment; private ObjectModelManager() { try { setObject(0, ModelFactory.loadModel(fragment.getResources(),getClass().getResource("cube-binary.stl").getPath())); setObject(1, ModelFactory.loadModel(fragment.getResources(),getClass().getResource("cube-binary.stl").getPath())); } catch (IOException | ModelFileFormatException e) { e.printStackTrace(); } } public static ObjectModelManager getInstance() { if (theInstance == null) { theInstance = new ObjectModelManager(); } return theInstance; } public void setObject(int key, Model3D loadModel) { model.put(key, loadModel); } public Model3D getObject(int objectID) { return model.get(objectID); } public int getObjectModelCount() { return model.size(); } }