$search
00001 package edu.tum.cs.vis.model; 00002 00003 import java.util.HashMap; 00004 import java.util.Vector; 00005 00006 import edu.tum.cs.ias.knowrob.prolog.PrologInterface; 00007 00015 public class Properties { 00016 00025 public static ItemModel getModelOfItem(String identifier) { 00026 String path = null; 00027 try { 00028 if (!identifier.startsWith("'") || !identifier.endsWith("'")) { 00029 identifier = "'" + identifier + "'"; 00030 } 00031 HashMap<String, Vector<String>> nfo = PrologInterface.executeQuery("get_model_path("+ identifier + ",P)"); 00032 00033 if (nfo!=null && nfo.get("P") != null && nfo.get("P").size() > 0) { 00034 String str = nfo.get("P").get(0); 00035 00036 if (str == null) 00037 return null; 00038 00039 if (str.startsWith("'") && str.endsWith("'")) { 00040 str = str.substring(1, str.length() - 1); 00041 } 00042 path = str; 00043 00044 } 00045 00046 } catch (Exception e) { 00047 System.err.println("Calling get_model_path for Identifier " + identifier + " failed:"); 00048 e.printStackTrace(); 00049 return null; 00050 } 00051 00052 if (path == null) 00053 return null; 00054 return new ItemModel(path); 00055 } 00056 00065 public static float xDimOfObject(String ObjClassOrIdentifier) { 00066 ItemModel model = getModelOfItem(ObjClassOrIdentifier); 00067 if (model == null || model.getParser() == null) 00068 return -1; 00069 return model.getParser().getModel().getGroup().getTotalWidth(); 00070 } 00071 00080 public static float yDimOfObject(String ObjClassOrIdentifier) { 00081 ItemModel model = getModelOfItem(ObjClassOrIdentifier); 00082 if (model == null || model.getParser() == null) 00083 return -1; 00084 return model.getParser().getModel().getGroup().getTotalDepth(); 00085 } 00086 00095 public static float zDimOfObject(String ObjClassOrIdentifier) { 00096 ItemModel model = getModelOfItem(ObjClassOrIdentifier); 00097 if (model == null || model.getParser() == null) 00098 return -1; 00099 return model.getParser().getModel().getGroup().getTotalHeight(); 00100 } 00101 00102 }