COPASI API
4.40.278
|
#include <CLCurve.h>
Public Member Functions | |
void | addCurveSegment (const CLLineSegment &ls) |
void | addCurveSegment (const CLLineSegment *pLs) |
CLBoundingBox | calculateBoundingBox () const |
CLCurve () | |
CLCurve (const CLCurve &c) | |
CLCurve (const Curve &sbmlcurve) | |
void | clear () |
void | exportToSBML (Curve *c, const std::map< const CDataObject *, SBase * > &copasimodelmap) const |
const std::vector< CLLineSegment > & | getCurveSegments () const |
std::vector< CLPoint > | getListOfPoints () const |
size_t | getNumCurveSegments () const |
CLLineSegment * | getSegmentAt (size_t i) |
const CLLineSegment * | getSegmentAt (size_t i) const |
bool | isContinuous () const |
virtual void | moveBy (const CLPoint &p) |
bool | operator== (const CLCurve &rhs) const |
void | scale (const double &scaleFactor) |
~CLCurve () | |
Public Member Functions inherited from CLBase | |
CLBase () | |
CLBase (const CLBase &b) | |
CLBase (const SBase &) | |
const std::string & | getTag () const |
bool | hasTag () const |
void | setTag (const std::string &tag) |
virtual | ~CLBase () |
Protected Attributes | |
std::vector< CLLineSegment > | mvCurveSegments |
Protected Attributes inherited from CLBase | |
std::string | mTag |
Friends | |
std::ostream & | operator<< (std::ostream &os, const CLCurve &c) |
|
inline |
CLCurve::CLCurve | ( | const CLCurve & | c | ) |
copy constructor (should make deep copy)
CLCurve::CLCurve | ( | const Curve & | sbmlcurve | ) |
constructor from libsbml object
References C_INT32, and mvCurveSegments.
CLCurve::~CLCurve | ( | ) |
void CLCurve::addCurveSegment | ( | const CLLineSegment & | ls | ) |
add a copy of the line segment to the curve
References mvCurveSegments.
Referenced by CCopasiSpringLayout::finalizeState(), ListOfCurveSegmentsHandler::processEnd(), and CLLayoutRenderer::revert_curve().
void CLCurve::addCurveSegment | ( | const CLLineSegment * | pLs | ) |
add a copy of the line segment to the curve
References mvCurveSegments.
CLBoundingBox CLCurve::calculateBoundingBox | ( | ) | const |
Calculates the bounding box for the curve. Basepoints for cubic beziers are considered to belong inside the bounding box.
References CLLineSegment::getBase1(), CLLineSegment::getBase2(), CLLineSegment::getEnd(), getNumCurveSegments(), getSegmentAt(), CLLineSegment::getStart(), CLPoint::getX(), CLPoint::getY(), CLLineSegment::isBezier(), and max.
Referenced by CLayout::calculateBoundingBox().
void CLCurve::clear | ( | ) |
References mvCurveSegments.
Referenced by CCopasiSpringLayout::finalizeState(), and CurveHandler::processStart().
void CLCurve::exportToSBML | ( | Curve * | c, |
const std::map< const CDataObject *, SBase * > & | copasimodelmap | ||
) | const |
This method writes the information of the copasi layout object into the corresponding sbml object
References mvCurveSegments.
Referenced by CLGeneralGlyph::exportToSBML(), CLReactionGlyph::exportToSBML(), CLReferenceGlyph::exportToSBML(), and CLMetabReferenceGlyph::exportToSBML().
|
inline |
References mvCurveSegments.
Referenced by CCopasiSpringLayout::addReactionVariables(), CCopasiSpringLayout::finalizeState(), and CCopasiXML::saveCurve().
std::vector< CLPoint > CLCurve::getListOfPoints | ( | ) | const |
This method should only be called if isContinuous() is true. It returns the curve as a list of points rather than a list of line segments.
References isContinuous(), and mvCurveSegments.
|
inline |
References mvCurveSegments.
Referenced by CCopasiSpringLayout::addReactionVariables(), CLayout::calculateBoundingBox(), calculateBoundingBox(), CLLayoutRenderer::draw_curve(), CLLayoutRenderer::draw_layout(), CCopasiSpringLayout::finalizeState(), CLLayoutRenderer::getCurveBoundingBox(), CLLayoutRenderer::getObjectsAt(), CLLayoutRenderer::getObjectsInBoundingBox(), CLLayoutRenderer::is_curve_visible(), CLLayoutRenderer::move_curve_object(), CLLayoutRenderer::move_reaction_glyph(), CLLayoutRenderer::move_selection(), CLLayoutRenderer::move_species_reference_glyph(), moveBy(), compareGraphicalObjectsBySize::operator()(), CLLayoutRenderer::revert_curve(), CCopasiXML::saveCurve(), CCopasiXML::saveLayoutList(), CLLayoutRenderer::update_associations(), and CLLayoutRenderer::update_textures_and_colors().
|
inline |
References mvCurveSegments.
|
inline |
References mvCurveSegments.
Referenced by calculateBoundingBox(), CLLayoutRenderer::draw_curve(), CLLayoutRenderer::getCurveBoundingBox(), CLLayoutRenderer::getObjectsAt(), CLLayoutRenderer::is_curve_visible(), CLLayoutRenderer::move_curve_object(), moveBy(), CLLayoutRenderer::revert_curve(), and CLLayoutRenderer::update_associations().
bool CLCurve::isContinuous | ( | ) | const |
this method tells whether the curve is a continuous set of line segments, i.e. if the end point of one line segment is identical to the starting point of the following one.
References mvCurveSegments.
Referenced by getListOfPoints().
|
virtual |
Reimplemented from CLBase.
References CLLineSegment::getBase1(), CLLineSegment::getBase2(), CLLineSegment::getEnd(), getNumCurveSegments(), getSegmentAt(), CLLineSegment::getStart(), CLLineSegment::isBezier(), and CLPoint::moveBy().
Referenced by CLGlyphWithCurve::moveBy().
|
inline |
Two curves are supposed to be equal iff all there line segments including their order are equal
References mvCurveSegments.
|
inline |
References mvCurveSegments.
|
friend |
insert operator
|
protected |
Referenced by addCurveSegment(), CLCurve(), clear(), exportToSBML(), getCurveSegments(), getListOfPoints(), getNumCurveSegments(), getSegmentAt(), isContinuous(), operator==(), and scale().