9 #ifndef IMPEM_ENVELOPE_SCORE_H
10 #define IMPEM_ENVELOPE_SCORE_H
12 #include <IMP/em/em_config.h>
35 bool is_penetrating(
const std::vector<IMP::algebra::Vector3D>& points,
36 float penetration_thr)
const;
44 bool is_penetrating(
const std::vector<IMP::algebra::Vector3D>& points,
46 float penetration_thr)
const;
53 double score(
const std::vector<IMP::algebra::Vector3D>& points)
const;
59 double score(
const std::vector<IMP::algebra::Vector3D>& points,
70 unsigned int find_range(
float distance)
const {
71 for (
unsigned int i = 0; i < ranges_.size(); i++)
73 if (distance <= ranges_[i] + 1e-5)
return i;
74 return ranges_.size();
78 const MapDistanceTransform* mdt_;
79 std::vector<float> ranges_;
80 std::vector<int> weights_;
81 std::vector<long> inner_voxels_;
82 std::vector<long> neighbors_;
IMP::VersionInfo get_version_info() const
Get information about the module and version of the object.
class for envelope based scoring using MapDistanceTransform
Common base class for heavy weight IMP objects.
Version and module information for Objects.
A shared base class to help in debugging and things.