IMP  2.1.0
The Integrative Modeling Platform
algebra/geometry.py

IMP.algebra provides a set of geometric primitives and basic operations on them.

1 ## \example algebra/geometry.py
2 # IMP.algebra provides a set of geometric primitives and basic operations
3 # on them.
4 
5 import IMP.algebra
6 
7 # we can create some spheres
8 s = []
9 for i in range(0, 10):
10  s.append(IMP.algebra.Sphere3D(
11  IMP.algebra.get_random_vector_in(IMP.algebra.get_unit_bounding_box_3d()), .1))
12 
13 # we can compute a sphere which contains them all
15 
16 print enclosing.get_contains(s[0])
17 
18 print IMP.algebra.get_distance(s[0], s[1])
19 # or between the centers
20 print IMP.algebra.get_distance(s[0].get_center(), s[1].get_center())
21 
22 # create a cylinder
24  IMP.algebra.Segment3D(s[0].get_center(), s[1].get_center()), 1)
25 print c
26 
27 # manipulate bounding boxes
29 for si in s: