Rosetta
|
Functions | |
core::id::AtomID_Map< bool > | concave_shell (core::pose::Pose &pose, core::Real min_z, core::Real max_z, core::Real incr_z, core::Real shell_radius, core::Real dist_cutoff) |
compute the concave shell from the pose, computes along a slice and takes the atoms within a shell, not just the outermost ones from the concave hull More... | |
utility::vector1< utility::vector1< core::Size > > | add_shell (std::map< core::Size, core::Vector > const &coords, utility::vector1< utility::vector1< core::Size > > const &point_lists, core::Real shell_radius) |
adds a shell to boundary points which are taken from the inside point list More... | |
utility::vector1< utility::vector1< core::Size > > | concave_hull (std::map< core::Size, core::Vector > const &coords, utility::vector1< utility::vector1< core::Size > > const &point_lists, core::Real dist_cutoff) |
computes 2D concave hull from three lists of points for inside, outside and boundary More... | |
utility::vector1< utility::vector1< core::Size > > | convex_hull (std::map< core::Size, core::Vector > const &coords, core::Real min_z, core::Real max_z) |
computes 2D convex hull: points in a slice on z-dimension are flattened into xy plane; the output is three lists of points for inside, outside and boundary More... | |
utility::vector1< core::Real > | get_distances (std::map< core::Size, core::Vector > const &coords, core::Size p1, core::Size p2, utility::vector1< core::Size > const &points, bool clock) |
compute distances in point list from line p1p2 More... | |
utility::vector1< core::Real > | get_angles (std::map< core::Size, core::Vector > const &coords, core::Size p1, core::Size p2, utility::vector1< core::Size > const &points, bool clock) |
compute enclosing angles in point list from line p1p2 More... | |
core::Size | find_closest (std::map< core::Size, core::Vector > const &coords, core::Size p1, core::Size p2, utility::vector1< core::Size > const &inside_points, bool clock) |
find point in AtomIDMap that is closest to line connecting p1p2 More... | |
core::Size | find_farthest (std::map< core::Size, core::Vector > const &coords, core::Size p1, core::Size p2, utility::vector1< core::Size > const &outside_points, bool clock) |
find point in AtomIDMap that is farthest from line connecting p1p2 More... | |
std::string | inside_polygon (std::map< core::Size, core::Vector > const &coords, utility::vector1< core::Size > const &polygon, core::Vector const &q) |
checks whether the point q is inside the polygon or not i.e. compute the number of crossing points with polygon 0 outside 1 inside 2 on boundary More... | |
utility::vector1< core::Size > | points_in_triangle (std::map< core::Size, core::Vector > const &coords, core::Size p1, core::Size p2, core::Size q, utility::vector1< core::Size > const &points) |
returns the points that are within the triangle between points p1, p2, q More... | |
core::Real | distance_from_line2D (core::Vector const &p1, core::Vector const &p2, core::Vector const &q) |
distance of point q from line between points p1 and p2 More... | |
bool | on_segment (core::Vector const &p1, core::Vector const &p2, core::Vector const &q) |
is point q on line segment between points p1 and p2? More... | |
bool | inside_boundaries (core::Vector const &p1, core::Vector const &p2, core::Vector const &q) |
q is inside xy boundaries of p1p2 More... | |
bool | clockwise (core::Vector const &p1, core::Vector const &p2, core::Vector const &q) |
is q clockwise from p1p2? More... | |
bool | to_left (core::Vector const &p1, core::Vector const &p2, core::Vector const &q) |
check whether q is to the left of p1p2 More... | |
bool | intersect (core::Vector const &p1, core::Vector const &p2, core::Vector const &q) |
check whether line p1p2 intersects with (q to infinity); q is the test point More... | |
core::Real | enclosing_angles (core::Vector const &p1, core::Vector const &p2, core::Vector const &q) |
find the sum of angles p1q and p2q in 2D; p1, p2, q are points, not vectors More... | |
utility::vector1< utility::vector1< core::Size > > core::membrane::add_shell | ( | std::map< core::Size, core::Vector > const & | coords, |
utility::vector1< utility::vector1< core::Size > > const & | point_lists, | ||
core::Real | shell_radius | ||
) |
adds a shell to boundary points which are taken from the inside point list
References core::pose::motif::a(), protocols::match::upstream::b, protocols::simple_filters::coords(), and TR().
Referenced by concave_shell().
bool core::membrane::clockwise | ( | core::Vector const & | p1, |
core::Vector const & | p2, | ||
core::Vector const & | q | ||
) |
is q clockwise from p1p2?
References core::chemical::rings::q, and protocols::hybridization::val.
Referenced by get_angles(), get_distances(), and to_left().
utility::vector1< utility::vector1< core::Size > > core::membrane::concave_hull | ( | std::map< core::Size, core::Vector > const & | coords, |
utility::vector1< utility::vector1< core::Size > > const & | point_lists, | ||
core::Real | dist_cutoff | ||
) |
computes 2D concave hull from three lists of points for inside, outside and boundary
References protocols::simple_filters::coords(), find_closest(), points_in_triangle(), and TR().
Referenced by concave_shell().
core::id::AtomID_Map< bool > core::membrane::concave_shell | ( | core::pose::Pose & | pose, |
core::Real | min_z, | ||
core::Real | max_z, | ||
core::Real | incr_z, | ||
core::Real | shell_radius, | ||
core::Real | dist_cutoff | ||
) |
compute the concave shell from the pose, computes along a slice and takes the atoms within a shell, not just the outermost ones from the concave hull
compute the concave shell from the pose, computes along a slice and takes the atoms within a shell, not just the outermost ones
References add_shell(), concave_hull(), core::pose::Pose::conformation(), convex_hull(), protocols::simple_filters::coords(), core::id::AtomID_Map< T >::has(), core::conformation::Conformation::is_membrane(), core::id::AtomID_Map< T >::n_residue(), core::conformation::Residue::name3(), core::pose::Pose::residue(), core::id::AtomID_Map< T >::set(), core::pose::Pose::total_residue(), TR(), and core::conformation::Conformation::xyz().
Referenced by protocols::membrane::MPLipidAccessibility::apply().
utility::vector1< utility::vector1< core::Size > > core::membrane::convex_hull | ( | std::map< core::Size, core::Vector > const & | coords, |
core::Real | min_z, | ||
core::Real | max_z | ||
) |
computes 2D convex hull: points in a slice on z-dimension are flattened into xy plane; the output is three lists of points for inside, outside and boundary
References protocols::simple_filters::coords(), find_farthest(), inside_polygon(), protocols::mean_field::max(), protocols::mean_field::min(), points_in_triangle(), and TR().
Referenced by concave_shell().
core::Real core::membrane::distance_from_line2D | ( | core::Vector const & | p1, |
core::Vector const & | p2, | ||
core::Vector const & | q | ||
) |
distance of point q from line between points p1 and p2
References protocols::cryst::denom(), and core::chemical::rings::q.
Referenced by get_distances().
core::Real core::membrane::enclosing_angles | ( | core::Vector const & | p1, |
core::Vector const & | p2, | ||
core::Vector const & | q | ||
) |
find the sum of angles p1q and p2q in 2D; p1, p2, q are points, not vectors
find the sum of angles p1q and p2q; p1, p2, q are points, not vectors
References core::pose::motif::a(), protocols::match::upstream::b, and core::chemical::rings::q.
Referenced by get_angles().
core::Size core::membrane::find_closest | ( | std::map< core::Size, core::Vector > const & | coords, |
core::Size | p1, | ||
core::Size | p2, | ||
utility::vector1< core::Size > const & | inside_points, | ||
bool | clock | ||
) |
find point in AtomIDMap that is closest to line connecting p1p2
find point id that is closest to line connecting p1p2 which points: i,o,b for inside, outside or boundary
References core::scoring::packstat::old::angles, protocols::simple_filters::coords(), get_angles(), and protocols::mean_field::min().
Referenced by protocols::simple_moves::ExplicitWaterMover::apply(), concave_hull(), and protocols::medal::cutpoint_probabilities().
core::Size core::membrane::find_farthest | ( | std::map< core::Size, core::Vector > const & | coords, |
core::Size | p1, | ||
core::Size | p2, | ||
utility::vector1< core::Size > const & | outside_points, | ||
bool | clock | ||
) |
find point in AtomIDMap that is farthest from line connecting p1p2
find point id that is farthest from line connecting p1p2 which points: i,o,b for inside, outside or boundary
References protocols::simple_filters::coords(), get_distances(), and protocols::mean_field::max().
Referenced by convex_hull().
utility::vector1< core::Real > core::membrane::get_angles | ( | std::map< core::Size, core::Vector > const & | coords, |
core::Size | p1, | ||
core::Size | p2, | ||
utility::vector1< core::Size > const & | points, | ||
bool | clock | ||
) |
compute enclosing angles in point list from line p1p2
compute enclosing angles in point list from line p1p2 which points: i,o,b for inside, outside or boundary
References core::scoring::packstat::old::angles, clockwise(), protocols::simple_filters::coords(), enclosing_angles(), and core::chemical::rings::q.
Referenced by protocols::matdes::SymDofMover::apply(), and find_closest().
utility::vector1< core::Real > core::membrane::get_distances | ( | std::map< core::Size, core::Vector > const & | coords, |
core::Size | p1, | ||
core::Size | p2, | ||
utility::vector1< core::Size > const & | points, | ||
bool | clock | ||
) |
compute distances in point list from line p1p2
compute distances in point list from line p1p2 which points: i,o,b for inside, outside or boundary
References clockwise(), protocols::simple_filters::coords(), distance_from_line2D(), and core::chemical::rings::q.
Referenced by find_farthest().
bool core::membrane::inside_boundaries | ( | core::Vector const & | p1, |
core::Vector const & | p2, | ||
core::Vector const & | q | ||
) |
q is inside xy boundaries of p1p2
References protocols::mean_field::max(), protocols::mean_field::min(), and core::chemical::rings::q.
Referenced by on_segment().
std::string core::membrane::inside_polygon | ( | std::map< core::Size, core::Vector > const & | coords, |
utility::vector1< core::Size > const & | polygon, | ||
core::Vector const & | q | ||
) |
checks whether the point q is inside the polygon or not i.e. compute the number of crossing points with polygon 0 outside 1 inside 2 on boundary
References protocols::simple_filters::coords(), intersect(), on_segment(), and core::chemical::rings::q.
Referenced by convex_hull(), and points_in_triangle().
bool core::membrane::intersect | ( | core::Vector const & | p1, |
core::Vector const & | p2, | ||
core::Vector const & | q | ||
) |
check whether line p1p2 intersects with (q to infinity); q is the test point
References protocols::mean_field::max(), protocols::mean_field::min(), core::chemical::rings::q, and to_left().
Referenced by protocols::splice::Splice::add_coordinate_constraints(), protocols::splice::SpliceManager::add_coordinate_constraints(), and inside_polygon().
bool core::membrane::on_segment | ( | core::Vector const & | p1, |
core::Vector const & | p2, | ||
core::Vector const & | q | ||
) |
is point q on line segment between points p1 and p2?
References inside_boundaries(), and core::chemical::rings::q.
Referenced by inside_polygon().
utility::vector1< core::Size > core::membrane::points_in_triangle | ( | std::map< core::Size, core::Vector > const & | coords, |
core::Size | p1, | ||
core::Size | p2, | ||
core::Size | q, | ||
utility::vector1< core::Size > const & | points | ||
) |
returns the points that are within the triangle between points p1, p2, q
References protocols::simple_filters::coords(), inside_polygon(), and core::chemical::rings::q.
Referenced by concave_hull(), and convex_hull().
bool core::membrane::to_left | ( | core::Vector const & | p1, |
core::Vector const & | p2, | ||
core::Vector const & | q | ||
) |
check whether q is to the left of p1p2
References clockwise(), and core::chemical::rings::q.
Referenced by intersect().