[Bprocessor-commit] model/src/net/sourceforge/bprocessor/model Persistence.java,1.2,1.3
Status: Pre-Alpha
Brought to you by:
henryml
|
From: Nikolaj B. <nbr...@us...> - 2006-05-15 10:31:49
|
Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv16913/src/net/sourceforge/bprocessor/model Modified Files: Persistence.java Log Message: Materials can now be saved and loaded, and there is a "global" monitoring of all materials. Index: Persistence.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Persistence.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Persistence.java 7 May 2006 09:33:36 -0000 1.2 --- Persistence.java 15 May 2006 10:31:45 -0000 1.3 *************** *** 11,14 **** --- 11,15 ---- import net.sourceforge.bprocessor.model.xml.EdgeType; import net.sourceforge.bprocessor.model.xml.EntityType; + import net.sourceforge.bprocessor.model.xml.MaterialType; import net.sourceforge.bprocessor.model.xml.SpaceType; import net.sourceforge.bprocessor.model.xml.SurfaceType; *************** *** 16,23 **** --- 17,26 ---- import net.sourceforge.bprocessor.model.xml.impl.BmodelImpl; import net.sourceforge.bprocessor.model.xml.impl.EdgeImpl; + import net.sourceforge.bprocessor.model.xml.impl.MaterialImpl; import net.sourceforge.bprocessor.model.xml.impl.SpaceImpl; import net.sourceforge.bprocessor.model.xml.impl.SurfaceImpl; import net.sourceforge.bprocessor.model.xml.impl.VertexImpl; + import java.awt.Color; import java.io.File; import java.io.FileInputStream; *************** *** 164,167 **** --- 167,177 ---- } } + { + Iterator iter = xml.getMaterial().iterator(); + while (iter.hasNext()) { + MaterialType current = (MaterialType) iter.next(); + space.add(internalizeMaterial(current, mapper, xmls)); + } + } return space; } *************** *** 218,221 **** --- 228,248 ---- /** * + * @param xml The MaterialType + * @param mapper The mapper + * @param xmls The xmls + * @return The Material + */ + private static Material internalizeMaterial(MaterialType xml, Map mapper, Collection xmls) { + Material material = new Material(); + mapper.put(new Long(xml.getId()), material); + xmls.add(xml); + material.setName(xml.getName()); + material.setColor(new Color((float)xml.getR(), (float)xml.getG(), (float)xml.getB()) + .getRGBColorComponents(null)); + return material; + } + + /** + * * @param object The object * @param xml The xml *************** *** 231,234 **** --- 258,263 ---- } else if (object instanceof Vertex) { internalizeReferences((Vertex) object, (VertexType) xml, map); + } else if (object instanceof Material) { + internalizeMaterial((Material) object, (MaterialType) xml, map); } } *************** *** 301,304 **** --- 330,335 ---- object.setBackDomain((Space) get(xml.getBack(), map)); object.setFrontDomain((Space) get(xml.getFront(), map)); + object.setBackMaterial((Material) get(xml.getBackMaterial(), map)); + object.setFrontMaterial((Material) get(xml.getFrontMaterial(), map)); object.setExterior((Surface) get(xml.getExterior(), map)); } *************** *** 323,326 **** --- 354,367 ---- private static void internalizeReferences(Vertex object, VertexType xml, Map map) { } + + /** + * + * @param object The object + * @param xml The xml + * @param map The map + */ + private static void internalizeMaterial(Material object, MaterialType xml, Map map) { + } + *************** *** 406,410 **** while (iter.hasNext()) { Surface current = (Surface) iter.next(); ! xml.getSurface().add(externalizeSurface(current, map)); } } --- 447,451 ---- while (iter.hasNext()) { Surface current = (Surface) iter.next(); ! xml.getSurface().add(externalizeSurface(current, map)); } } *************** *** 423,426 **** --- 464,474 ---- } } + { + Iterator iter = space.getMaterials().iterator(); + while (iter.hasNext()) { + Material current = (Material) iter.next(); + xml.getMaterial().add(externalizeMaterial(current, map)); + } + } return xml; } *************** *** 437,440 **** --- 485,489 ---- xml.setProgid(surface.getId().longValue()); map.put(surface, xml); + return xml; } *************** *** 473,476 **** --- 522,542 ---- /** + * Create an xml MaterialImpl and place it in the map + * @param material The Material + * @param map The map + * @return The MaterialImpl + */ + private static MaterialType externalizeMaterial(Material material, Map map) { + MaterialType xml = new MaterialImpl(); + xml.setId(counter++); + map.put(material, xml); + xml.setName(material.getName()); + xml.setR((material.getColor()[0])); + xml.setG((material.getColor()[1])); + xml.setB((material.getColor()[2])); + return xml; + } + + /** * Return the id of an xml entity by looking the entity up in the map * @param map The map *************** *** 522,525 **** --- 588,593 ---- } else if (object instanceof Vertex) { externalizeReferences((Vertex) object, (VertexType) xml, map); + } else if (object instanceof Material) { + externalizeMaterial((Material) object, (MaterialType) xml, map); } } *************** *** 546,550 **** --- 614,620 ---- xml.getHole().addAll(ids(map, object.getHoles())); xml.setFront(id(map, object.getFrontDomain())); + xml.setFrontMaterial(id(map, object.getFrontMaterial())); xml.setBack(id(map, object.getBackDomain())); + xml.setBackMaterial(id(map, object.getBackMaterial())); xml.setExterior(id(map, object.getExterior())); } *************** *** 570,572 **** --- 640,651 ---- } + /** + * Externalize references + * @param object The object + * @param xml The xml entity + * @param map The map + */ + private static void externalizeMaterial(Material object, MaterialType xml, Map map) { + } + } |