IMP  2.2.1
The Integrative Modeling Platform
core/utility.h
Go to the documentation of this file.
1 /**
2  * \file IMP/core/utility.h \brief Various important functionality
3  * for implementing decorators.
4  *
5  * Copyright 2007-2014 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPCORE_UTILITY_H
10 #define IMPCORE_UTILITY_H
11 
12 #include <IMP/core/core_config.h>
13 #include "XYZR.h"
14 #include <IMP/base_types.h>
15 #include <IMP/algebra/Segment3D.h>
17 #include <IMP/kernel/Model.h>
18 #include <IMP/kernel/Particle.h>
19 
20 IMPCORE_BEGIN_NAMESPACE
21 //! Get the centroid
22 /** Compute the centroid (mean) of a set of particles.
23  */
24 IMPCOREEXPORT algebra::Vector3D get_centroid(const XYZs &ps);
25 
26 //! Get the bounding box
27 /** Compute the boudning box of a set of particles
28  */
29 IMPCOREEXPORT algebra::BoundingBoxD<3> get_bounding_box(const XYZRs &ps);
30 
31 IMPCORE_END_NAMESPACE
32 
33 #endif /* IMPCORE_UTILITY_H */
Import IMP/kernel/base_types.h in the namespace.
algebra::Vector3D get_centroid(const XYZs &ps)
Get the centroid.
simple implementation of segments in 3D
algebra::BoundingBoxD< 3 > get_bounding_box(const XYZRs &ps)
Get the bounding box.
Storage of a model, its restraints, constraints and particles.
Classes to handle individual model particles.
Simple 3D transformation class.
VectorD< 3 > Vector3D
Definition: VectorD.h:395
Decorator for a sphere-like particle.