public void test_L3_Compartment_initDefaults() { Compartment c = new Compartment(3, 1); c.setId("A"); assertEquals(true, c.isSetId()); assertEquals(false, c.isSetName()); assertEquals(false, c.isSetSize()); assertEquals(false, c.isSetVolume()); assertEquals(false, c.isSetUnits()); assertEquals(false, c.isSetConstant()); assertEquals(false, c.isSetSpatialDimensions()); c.initDefaults(); assertTrue(("A" == c.getId())); assertTrue(c.getName() == ""); assertTrue(("litre" == c.getUnits())); assertTrue(c.getSpatialDimensions() == 3); assertTrue(c.getSize() == 1); assertTrue(c.getConstant() == true); assertEquals(true, c.isSetId()); assertEquals(false, c.isSetName()); assertEquals(false, c.isSetSize()); assertEquals(false, c.isSetVolume()); assertEquals(true, c.isSetUnits()); assertEquals(true, c.isSetConstant()); assertEquals(true, c.isSetSpatialDimensions()); c = null; }
public void test_L3_Compartment_createWithNS() { XMLNamespaces xmlns = new XMLNamespaces(); xmlns.add("http://www.sbml.org", "testsbml"); SBMLNamespaces sbmlns = new SBMLNamespaces(3, 1); sbmlns.addNamespaces(xmlns); Compartment c = new Compartment(sbmlns); assertTrue(c.getTypeCode() == libsbml.SBML_COMPARTMENT); assertTrue(c.getMetaId() == ""); assertTrue(c.getNotes() == null); assertTrue(c.getAnnotation() == null); assertTrue(c.getLevel() == 3); assertTrue(c.getVersion() == 1); assertTrue(c.getNamespaces() != null); assertTrue(c.getNamespaces().getLength() == 2); assertTrue(c.getId() == ""); assertTrue(c.getName() == ""); assertTrue(c.getUnits() == ""); assertTrue(c.getOutside() == ""); assertEquals(true, isnan(c.getSpatialDimensionsAsDouble())); assertEquals(true, isnan(c.getVolume())); assertTrue(c.getConstant() == true); assertEquals(false, c.isSetId()); assertEquals(false, c.isSetSpatialDimensions()); assertEquals(false, c.isSetName()); assertEquals(false, c.isSetSize()); assertEquals(false, c.isSetVolume()); assertEquals(false, c.isSetUnits()); assertEquals(false, c.isSetOutside()); assertEquals(false, c.isSetConstant()); c = null; }
public void test_Compartment_setId3() { Compartment c = new Compartment(2, 2); int i = c.setId("cell"); assertTrue(i == libsbml.LIBSBML_OPERATION_SUCCESS); assertEquals(true, c.isSetId()); assertTrue(("cell" == c.getId())); c = null; }
public void test_L3_Compartment_create() { assertTrue(C.getTypeCode() == libsbml.SBML_COMPARTMENT); assertTrue(C.getMetaId() == ""); assertTrue(C.getNotes() == null); assertTrue(C.getAnnotation() == null); assertTrue(C.getId() == ""); assertTrue(C.getName() == ""); assertTrue(C.getUnits() == ""); assertTrue(C.getOutside() == ""); assertEquals(true, isnan(C.getSpatialDimensionsAsDouble())); assertEquals(true, isnan(C.getVolume())); assertTrue(C.getConstant() == true); assertEquals(false, C.isSetId()); assertEquals(false, C.isSetSpatialDimensions()); assertEquals(false, C.isSetName()); assertEquals(false, C.isSetSize()); assertEquals(false, C.isSetVolume()); assertEquals(false, C.isSetUnits()); assertEquals(false, C.isSetOutside()); assertEquals(false, C.isSetConstant()); }
private static void printCompartmentInfo(Compartment compartment) { var plugin = (MultiCompartmentPlugin)compartment.getPlugin("multi"); var name = compartment.isSetName() ? compartment.getName() : compartment.getId(); Console.WriteLine("Compartment {0}: isType = {1}", name, plugin.getIsType()); for (int i = 0; i < plugin.getNumCompartmentReferences(); ++i) { var current = plugin.getCompartmentReference(i); Console.WriteLine(" compartmentReference: {0}", current.getCompartment()); } Console.WriteLine(); }
public void test_Model_getCompartment() { Compartment c1 = new Compartment(2, 4); Compartment c2 = new Compartment(2, 4); c1.setId("A"); c2.setId("B"); M.addCompartment(c1); M.addCompartment(c2); assertTrue(M.getNumCompartments() == 2); c1 = M.getCompartment(0); c2 = M.getCompartment(1); assertTrue(("A" == c1.getId())); assertTrue(("B" == c2.getId())); }
public void test_Compartment_copyConstructor() { Compartment o1 = new Compartment(2, 4); o1.setId("c"); o1.setOutside("c2"); assertTrue(o1.getId() == "c"); assertTrue(o1.getOutside() == "c2"); Compartment o2 = new Compartment(o1); assertTrue(o2.getId() == "c"); assertTrue(o2.getOutside() == "c2"); assertTrue(o2.getParentSBMLObject() == o1.getParentSBMLObject()); o2 = null; o1 = null; }
public void test_Compartment_createWith() { Compartment c = new Compartment(2, 4); c.setId("A"); assertTrue(c.getTypeCode() == libsbml.SBML_COMPARTMENT); assertTrue(c.getMetaId() == ""); assertTrue(c.getNotes() == null); assertTrue(c.getAnnotation() == null); assertTrue(c.getName() == ""); assertTrue(c.getSpatialDimensions() == 3); assertTrue(("A" == c.getId())); assertTrue(c.getConstant() == true); assertEquals(true, c.isSetId()); assertEquals(false, c.isSetName()); c = null; }
public void test_Compartment_assignmentOperator() { Compartment o1 = new Compartment(2, 4); o1.setId("c"); o1.setOutside("c2"); assertTrue(o1.getId() == "c"); assertTrue(o1.getOutside() == "c2"); Compartment o2 = new Compartment(2, 4); o2 = o1; assertTrue(o2.getId() == "c"); assertTrue(o2.getOutside() == "c2"); assertTrue(o2.getParentSBMLObject() == o1.getParentSBMLObject()); o2 = null; o1 = null; }
/// <summary> /// Creates a MoBi Container for a SBML compartment. /// </summary> public IContainer CreateContainerFromCompartment(Compartment compartment) { var container = _objectBaseFactory.Create <IContainer>() .WithName(compartment.getId()) .WithContainerType(ContainerType.Compartment) .WithMode(ContainerMode.Physical) .WithDescription(SBMLConstants.SBML_NOTES + compartment.getNotesString()); CreateMoleculeProperties(container); container.Add(CreateVolumeParameter()); if (!compartment.isSetSize()) { return(container); } var sizeParameter = CreateSizeParameter(compartment); container.Add(sizeParameter); return(container); }
public static void Main(string[] args) { // // Creates an SBMLNamespaces object with the given SBML level, version // package name, package version. // // (NOTE) By defualt, the name of package (i.e. "layout") will be used // if the arugment for the prefix is missing or empty. Thus the argument // for the prefix can be added as follows: // // SBMLNamespaces sbmlns(3,1,"layout",1,"LAYOUT"); // SBMLNamespaces sbmlns = new SBMLNamespaces(3, 1, "layout", 1); // // (NOTES) The above code creating an SBMLNamespaces object can be replaced // with one of the following other styles. // // (1) Creates an SBMLNamespace object with a SBML core namespace and then // adds a layout package namespace to the object. // // SBMLNamespaces sbmlns(3,1); // sbmlns.addPkgNamespace("layout",1); // // OR // // SBMLNamespaces sbmlns(3,1); // sbmlns.addNamespace(LayoutExtension::XmlnsL3V1V1,"layout"); // // (2) Creates a LayoutPkgNamespaces object (SBMLNamespace derived class for // layout package. The class is basically used for createing an SBase derived // objects belonging to the layout package) with the given SBML level, version, // and package version // // LayoutPkgNamespaces sbmlns(3,1,1); // // create the document SBMLDocument document = new SBMLDocument(sbmlns); // set the "required" attribute of layout package to "true" document.setPkgRequired("layout", true); // create the Model Model model = document.createModel(); model.setId("TestModel"); document.setModel(model); // create the Compartment Compartment compartment = model.createCompartment(); compartment.setId("Compartment_1"); compartment.setConstant(true); // create the Species Species species1 = model.createSpecies(); species1.setId("Species_1"); species1.setCompartment(compartment.getId()); species1.setHasOnlySubstanceUnits(false); species1.setBoundaryCondition(false); species1.setConstant(false); Species species2 = model.createSpecies(); species2.setId("Species_2"); species2.setCompartment(compartment.getId()); species2.setHasOnlySubstanceUnits(false); species2.setBoundaryCondition(false); species2.setConstant(false); // create the Reactions Reaction reaction1 = model.createReaction(); reaction1.setId("Reaction_1"); reaction1.setReversible(false); reaction1.setFast(false); SpeciesReference reference1 = reaction1.createReactant(); reference1.setSpecies(species1.getId()); reference1.setId("SpeciesReference_1"); reference1.setConstant(false); SpeciesReference reference2 = reaction1.createProduct(); reference2.setSpecies(species2.getId()); reference2.setId("SpeciesReference_2"); reference2.setConstant(false); Reaction reaction2 = model.createReaction(); reaction2.setId("Reaction_2"); reaction2.setReversible(false); reaction2.setFast(false); SpeciesReference reference3 = reaction2.createReactant(); reference3.setSpecies(species2.getId()); reference3.setId("SpeciesReference_3"); reference3.setConstant(false); SpeciesReference reference4 = reaction2.createProduct(); reference4.setSpecies(species1.getId()); reference4.setId("SpeciesReference_4"); reference4.setConstant(false); // create the Layout // // set the LayoutPkgNamespaces for Level 3 Version1 Layout Version 1 // LayoutPkgNamespaces layoutns = new LayoutPkgNamespaces(3, 1, 1); // // Get a LayoutModelPlugin object plugged in the model object. // // The type of the returned value of SBase::getPlugin() function is SBasePlugin, and // thus the value needs to be casted for the corresponding derived class. // LayoutModelPlugin mplugin = (LayoutModelPlugin)(model.getPlugin("layout")); if (mplugin == null) { Console.Error.WriteLine("[Fatal Error] Layout Extension Level " + layoutns.getLevel() + " Version " + layoutns.getVersion() + " package version " + layoutns.getPackageVersion() + " is not registered."); Environment.Exit(1); } // // Creates a Layout object via LayoutModelPlugin object. // Layout layout = mplugin.createLayout(); layout.setId("Layout_1"); Dimensions dim = new Dimensions(layoutns, 400.0, 220.0); layout.setDimensions(dim); // create the CompartmentGlyph CompartmentGlyph compartmentGlyph = layout.createCompartmentGlyph(); compartmentGlyph.setId("CompartmentGlyph_1"); compartmentGlyph.setCompartmentId(compartment.getId()); BoundingBox bb = new BoundingBox(layoutns, "bb1", 5, 5, 390, 210); compartmentGlyph.setBoundingBox(bb); // create the SpeciesGlyphs SpeciesGlyph speciesGlyph1 = layout.createSpeciesGlyph(); speciesGlyph1.setId("SpeciesGlyph_1"); speciesGlyph1.setSpeciesId(species1.getId()); bb = new BoundingBox(layoutns, "bb2", 80, 26, 240, 24); speciesGlyph1.setBoundingBox(bb); TextGlyph textGlyph1 = layout.createTextGlyph(); textGlyph1.setId("TextGlyph_01"); bb = new BoundingBox(layoutns, "bbA", 92, 26, 228, 24); textGlyph1.setBoundingBox(bb); textGlyph1.setOriginOfTextId(speciesGlyph1.getId()); textGlyph1.setGraphicalObjectId(speciesGlyph1.getId()); SpeciesGlyph speciesGlyph2 = layout.createSpeciesGlyph(); speciesGlyph2.setId("SpeciesGlyph_2"); speciesGlyph2.setSpeciesId(species2.getId()); bb = new BoundingBox(layoutns, "bb3", 80, 170, 240, 24); speciesGlyph2.setBoundingBox(bb); TextGlyph textGlyph2 = layout.createTextGlyph(); textGlyph2.setId("TextGlyph_02"); bb = new BoundingBox(layoutns, "bbB", 92, 170, 228, 24); textGlyph2.setBoundingBox(bb); textGlyph2.setOriginOfTextId(speciesGlyph2.getId()); textGlyph2.setGraphicalObjectId(speciesGlyph2.getId()); // create the ReactionGlyphs ReactionGlyph reactionGlyph1 = layout.createReactionGlyph(); reactionGlyph1.setId("ReactionGlyph_1"); reactionGlyph1.setReactionId(reaction1.getId()); Curve reactionCurve1 = reactionGlyph1.getCurve(); LineSegment ls = reactionCurve1.createLineSegment(); Point p = new Point(layoutns, 165, 105); ls.setStart(p); p = new Point(layoutns, 165, 115); ls.setEnd(p); ReactionGlyph reactionGlyph2 = layout.createReactionGlyph(); reactionGlyph2.setId("ReactionGlyph_1"); reactionGlyph2.setReactionId(reaction2.getId()); Curve reactionCurve2 = reactionGlyph2.getCurve(); ls = reactionCurve2.createLineSegment(); p = new Point(layoutns, 235, 105); ls.setStart(p); p = new Point(layoutns, 235, 115); ls.setEnd(p); // add the SpeciesReferenceGlyphs SpeciesReferenceGlyph speciesReferenceGlyph1 = reactionGlyph1.createSpeciesReferenceGlyph(); speciesReferenceGlyph1.setId("SpeciesReferenceGlyph_1"); speciesReferenceGlyph1.setSpeciesGlyphId(speciesGlyph1.getId()); speciesReferenceGlyph1.setSpeciesReferenceId(reference1.getId()); speciesReferenceGlyph1.setRole(libsbml.SPECIES_ROLE_SUBSTRATE); Curve speciesReferenceCurve1 = speciesReferenceGlyph1.getCurve(); CubicBezier cb = speciesReferenceCurve1.createCubicBezier(); p = new Point(layoutns, 165, 105); cb.setStart(p); p = new Point(layoutns, 165, 90); cb.setBasePoint1(p); p = new Point(layoutns, 165, 90); cb.setBasePoint2(p); p = new Point(layoutns, 195, 60); cb.setEnd(p); SpeciesReferenceGlyph speciesReferenceGlyph2 = reactionGlyph1.createSpeciesReferenceGlyph(); speciesReferenceGlyph2.setId("SpeciesReferenceGlyph_2"); speciesReferenceGlyph2.setSpeciesGlyphId(speciesGlyph2.getId()); speciesReferenceGlyph2.setSpeciesReferenceId(reference2.getId()); speciesReferenceGlyph2.setRole(libsbml.SPECIES_ROLE_PRODUCT); Curve speciesReferenceCurve2 = speciesReferenceGlyph2.getCurve(); cb = speciesReferenceCurve2.createCubicBezier(); p = new Point(layoutns, 165, 115); cb.setStart(p); p = new Point(layoutns, 165, 130); cb.setBasePoint1(p); p = new Point(layoutns, 165, 130); cb.setBasePoint2(p); p = new Point(layoutns, 195, 160); cb.setEnd(p); SpeciesReferenceGlyph speciesReferenceGlyph3 = reactionGlyph2.createSpeciesReferenceGlyph(); speciesReferenceGlyph3.setId("SpeciesReferenceGlyph_3"); speciesReferenceGlyph3.setSpeciesGlyphId(speciesGlyph2.getId()); speciesReferenceGlyph3.setSpeciesReferenceId(reference3.getId()); speciesReferenceGlyph3.setRole(libsbml.SPECIES_ROLE_SUBSTRATE); Curve speciesReferenceCurve3 = speciesReferenceGlyph3.getCurve(); cb = speciesReferenceCurve3.createCubicBezier(); p = new Point(layoutns, 235, 115); cb.setStart(p); p = new Point(layoutns, 235, 130); cb.setBasePoint1(p); p = new Point(layoutns, 235, 130); cb.setBasePoint2(p); p = new Point(layoutns, 205, 160); cb.setEnd(p); SpeciesReferenceGlyph speciesReferenceGlyph4 = reactionGlyph2.createSpeciesReferenceGlyph(); speciesReferenceGlyph4.setId("SpeciesReferenceGlyph_4"); speciesReferenceGlyph4.setSpeciesGlyphId(speciesGlyph1.getId()); speciesReferenceGlyph4.setSpeciesReferenceId(reference4.getId()); speciesReferenceGlyph4.setRole(libsbml.SPECIES_ROLE_PRODUCT); Curve speciesReferenceCurve4 = speciesReferenceGlyph4.getCurve(); cb = speciesReferenceCurve4.createCubicBezier(); p = new Point(layoutns, 235, 105); cb.setStart(p); p = new Point(layoutns, 235, 90); cb.setBasePoint1(p); p = new Point(layoutns, 235, 90); cb.setBasePoint2(p); p = new Point(layoutns, 205, 60); cb.setEnd(p); libsbml.writeSBML(document, "layout_example1_L3-cs.xml"); Console.WriteLine("all done ..."); }