All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.sbml.jsbml.ext.layout.IBoundingBox Maven / Gradle / Ivy

There is a newer version: 1.6.1
Show newest version
/*
 * ----------------------------------------------------------------------------
 * This file is part of JSBML. Please visit 
 * for the latest version of JSBML and more information about SBML.
 *
 * Copyright (C) 2009-2017 jointly by the following organizations:
 * 1. The University of Tuebingen, Germany
 * 2. EMBL European Bioinformatics Institute (EBML-EBI), Hinxton, UK
 * 3. The California Institute of Technology, Pasadena, CA, USA
 * 4. The University of California, San Diego, La Jolla, CA, USA
 * 5. The Babraham Institute, Cambridge, UK
 * 
 * This library is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation. A copy of the license agreement is provided
 * in the file named "LICENSE.txt" included with this software distribution
 * and also available online as .
 * ----------------------------------------------------------------------------
 */
package org.sbml.jsbml.ext.layout;

/**
 * Defines classes that are inside a {@link BoundingBox}, which
 * specifies the position and the size of the object.
 * 
 * @author rodrigue
 * @since 1.2
 */
public interface IBoundingBox {

  /**
   * Creates and sets a {@link BoundingBox} for this object.
   * 
   * @return {@link BoundingBox}.
   */
  public BoundingBox createBoundingBox();

  /**
   * Returns the {@link BoundingBox}.
   * 
   * @return the {@link BoundingBox}.
   */
  public BoundingBox getBoundingBox();

  /**
   * Returns {@code true} is the {@link BoundingBox} is set.
   * 
   * @return if the {@link BoundingBox} is set.
   */
  public boolean isSetBoundingBox();

  /**
   * Sets the {@link BoundingBox}.
   * 
   * @param boundingBox the {@link BoundingBox} to set.
   */
  public void setBoundingBox(BoundingBox boundingBox);

  /**
   * Unsets the {@link BoundingBox}.
   */
  public void unsetBoundingBox();

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy