IMP logo
IMP Reference Guide  develop.6701db5d00,2026/08/26
The Integrative Modeling Platform
algebra/__init__.py
1 # This file was automatically generated by SWIG (https://www.swig.org).
2 # Version 4.5.0
3 #
4 # Do not make changes to this file unless you know what you are doing - modify
5 # the SWIG interface file instead.
6 
7 
8 # This wrapper is part of IMP,
9 # Copyright 2007-2026 IMP Inventors. All rights reserved.
10 
11 
12 
13 
14 import typing
15 import _IMP_algebra
16 
17 import builtins as __builtin__
18 
19 def _swig_repr(self):
20  try:
21  strthis = "proxy of " + self.this.__repr__()
22  except __builtin__.Exception:
23  strthis = ""
24  return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
25 
26 
27 def _swig_setattr_nondynamic_instance_variable(set):
28  def set_instance_attr(self, name, value):
29  if name == "this":
30  set(self, name, value)
31  elif name == "thisown":
32  self.this.own(value)
33  elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
34  set(self, name, value)
35  else:
36  raise AttributeError("You cannot add instance attributes to %s" % self)
37  return set_instance_attr
38 
39 
40 def _swig_setattr_nondynamic_class_variable(set):
41  def set_class_attr(cls, name, value):
42  if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
43  set(cls, name, value)
44  else:
45  raise AttributeError("You cannot add class attributes to %s" % cls)
46  return set_class_attr
47 
48 
49 class _SwigNonDynamicMeta(type):
50  """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
51  __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
52 
53 
54 import weakref
55 
56 class IMP_ALGEBRA_SwigPyIterator(object):
57  r"""Proxy of C++ swig::IMP_ALGEBRA_SwigPyIterator class."""
58 
59  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
60 
61  def __init__(self, *args, **kwargs):
62  raise AttributeError("No constructor defined - class is abstract")
63  __repr__ = _swig_repr
64  __swig_destroy__ = _IMP_algebra.delete_IMP_ALGEBRA_SwigPyIterator
65 
66  def value(self):
67  r"""value(IMP_ALGEBRA_SwigPyIterator self) -> PyObject *"""
68  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_value(self)
69 
70  def incr(self, n=1):
71  r"""incr(IMP_ALGEBRA_SwigPyIterator self, size_t n=1) -> IMP_ALGEBRA_SwigPyIterator"""
72  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_incr(self, n)
73 
74  def decr(self, n=1):
75  r"""decr(IMP_ALGEBRA_SwigPyIterator self, size_t n=1) -> IMP_ALGEBRA_SwigPyIterator"""
76  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_decr(self, n)
77 
78  def distance(self, x):
79  r"""distance(IMP_ALGEBRA_SwigPyIterator self, IMP_ALGEBRA_SwigPyIterator x) -> ptrdiff_t"""
80  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_distance(self, x)
81 
82  def equal(self, x):
83  r"""equal(IMP_ALGEBRA_SwigPyIterator self, IMP_ALGEBRA_SwigPyIterator x) -> bool"""
84  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_equal(self, x)
85 
86  def copy(self):
87  r"""copy(IMP_ALGEBRA_SwigPyIterator self) -> IMP_ALGEBRA_SwigPyIterator"""
88  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_copy(self)
89 
90  def __next__(self):
91  r"""__next__(IMP_ALGEBRA_SwigPyIterator self) -> PyObject *"""
92  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator___next__(self)
93 
94  def previous(self):
95  r"""previous(IMP_ALGEBRA_SwigPyIterator self) -> PyObject *"""
96  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_previous(self)
97 
98  def advance(self, n):
99  r"""advance(IMP_ALGEBRA_SwigPyIterator self, ptrdiff_t n) -> IMP_ALGEBRA_SwigPyIterator"""
100  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_advance(self, n)
101 
102  def __eq__(self, x):
103  r"""__eq__(IMP_ALGEBRA_SwigPyIterator self, IMP_ALGEBRA_SwigPyIterator x) -> bool"""
104  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator___eq__(self, x)
105 
106  def __ne__(self, x):
107  r"""__ne__(IMP_ALGEBRA_SwigPyIterator self, IMP_ALGEBRA_SwigPyIterator x) -> bool"""
108  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator___ne__(self, x)
109 
110  def __iadd__(self, n):
111  r"""__iadd__(IMP_ALGEBRA_SwigPyIterator self, ptrdiff_t n) -> IMP_ALGEBRA_SwigPyIterator"""
112  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator___iadd__(self, n)
113 
114  def __isub__(self, n):
115  r"""__isub__(IMP_ALGEBRA_SwigPyIterator self, ptrdiff_t n) -> IMP_ALGEBRA_SwigPyIterator"""
116  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator___isub__(self, n)
117 
118  def __add__(self, n):
119  r"""__add__(IMP_ALGEBRA_SwigPyIterator self, ptrdiff_t n) -> IMP_ALGEBRA_SwigPyIterator"""
120  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator___add__(self, n)
121 
122  def __sub__(self, *args):
123  r"""
124  __sub__(IMP_ALGEBRA_SwigPyIterator self, ptrdiff_t n) -> IMP_ALGEBRA_SwigPyIterator
125  __sub__(IMP_ALGEBRA_SwigPyIterator self, IMP_ALGEBRA_SwigPyIterator x) -> ptrdiff_t
126  """
127  return _IMP_algebra.IMP_ALGEBRA_SwigPyIterator___sub__(self, *args)
128  def __iter__(self):
129  return self
130 
131 # Register IMP_ALGEBRA_SwigPyIterator in _IMP_algebra:
132 _IMP_algebra.IMP_ALGEBRA_SwigPyIterator_swigregister(IMP_ALGEBRA_SwigPyIterator)
133 
134 _value_types=[]
135 _object_types=[]
136 _raii_types=[]
137 _plural_types=[]
138 
139 IMP_DEBUG = _IMP_algebra.IMP_DEBUG
140 
141 IMP_RELEASE = _IMP_algebra.IMP_RELEASE
142 
143 IMP_SILENT = _IMP_algebra.IMP_SILENT
144 
145 IMP_PROGRESS = _IMP_algebra.IMP_PROGRESS
146 
147 IMP_TERSE = _IMP_algebra.IMP_TERSE
148 
149 IMP_VERBOSE = _IMP_algebra.IMP_VERBOSE
150 
151 IMP_MEMORY = _IMP_algebra.IMP_MEMORY
152 
153 IMP_NONE = _IMP_algebra.IMP_NONE
154 
155 IMP_USAGE = _IMP_algebra.IMP_USAGE
156 
157 IMP_INTERNAL = _IMP_algebra.IMP_INTERNAL
158 
159 IMP_KERNEL_HAS_LOG4CXX = _IMP_algebra.IMP_KERNEL_HAS_LOG4CXX
160 
161 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_algebra.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
162 
163 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_algebra.IMP_COMPILER_HAS_DEBUG_VECTOR
164 
165 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_algebra.IMP_COMPILER_HAS_RANDOM_SHUFFLE
166 
167 IMP_COMPILER_HAS_THREE_WAY = _IMP_algebra.IMP_COMPILER_HAS_THREE_WAY
168 
169 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_algebra.IMP_KERNEL_HAS_BOOST_RANDOM
170 
171 IMP_KERNEL_HAS_NUMPY = _IMP_algebra.IMP_KERNEL_HAS_NUMPY
172 
173 IMP_KERNEL_HAS_BOOST_SYSTEM = _IMP_algebra.IMP_KERNEL_HAS_BOOST_SYSTEM
174 
175 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_algebra.IMP_KERNEL_HAS_GPERFTOOLS
176 
177 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_algebra.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
178 
179 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_algebra.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
180 
181 IMPKERNEL_SHOW_WARNINGS = _IMP_algebra.IMPKERNEL_SHOW_WARNINGS
182 
183 
184 import sys
185 class _DirectorObjects:
186  """@internal Simple class to keep references to director objects
187  to prevent premature deletion."""
188  def __init__(self):
189  self._objects = []
190  def register(self, obj):
191  """Take a reference to a director object; will only work for
192  refcounted C++ classes"""
193  if hasattr(obj, 'get_ref_count'):
194  self._objects.append(obj)
195  def cleanup(self):
196  """Only drop our reference and allow cleanup by Python if no other
197  Python references exist (we hold 3 references: one in self._objects,
198  one in x, and one in the argument list for getrefcount) *and* no
199  other C++ references exist (the Python object always holds one)"""
200  objs = [x for x in self._objects if sys.getrefcount(x) > 3 \
201  or x.get_ref_count() > 1]
202 # Do in two steps so the references are kept until the end of the
203 # function (deleting references may trigger a fresh call to this method)
204  self._objects = objs
205  def get_object_count(self):
206  """Get number of director objects (useful for testing only)"""
207  return len(self._objects)
208 _director_objects = _DirectorObjects()
209 
210 class _ostream(object):
211  r"""Proxy of C++ std::ostream class."""
212 
213  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
214 
215  def __init__(self, *args, **kwargs):
216  raise AttributeError("No constructor defined")
217  __repr__ = _swig_repr
218 
219  def write(self, osa_buf):
220  r"""write(_ostream self, char const * osa_buf)"""
221  return _IMP_algebra._ostream_write(self, osa_buf)
222 
223 # Register _ostream in _IMP_algebra:
224 _IMP_algebra._ostream_swigregister(_ostream)
225 IMP_C_OPEN_BINARY = _IMP_algebra.IMP_C_OPEN_BINARY
226 
227 import IMP
228 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_algebra.IMP_CGAL_HAS_BOOST_FILESYSTEM
229 
230 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_algebra.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
231 
232 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_algebra.IMP_CGAL_HAS_BOOST_RANDOM
233 
234 IMP_CGAL_HAS_NUMPY = _IMP_algebra.IMP_CGAL_HAS_NUMPY
235 
236 IMPCGAL_SHOW_WARNINGS = _IMP_algebra.IMPCGAL_SHOW_WARNINGS
237 
238 import IMP.cgal
239 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_algebra.IMP_ALGEBRA_HAS_IMP_CGAL
240 
241 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_algebra.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
242 
243 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_algebra.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
244 
245 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_algebra.IMP_ALGEBRA_HAS_BOOST_RANDOM
246 
247 IMP_ALGEBRA_HAS_CGAL = _IMP_algebra.IMP_ALGEBRA_HAS_CGAL
248 
249 IMP_ALGEBRA_HAS_NUMPY = _IMP_algebra.IMP_ALGEBRA_HAS_NUMPY
250 
251 IMP_ALGEBRA_HAS_ANN = _IMP_algebra.IMP_ALGEBRA_HAS_ANN
252 
253 IMPALGEBRA_SHOW_WARNINGS = _IMP_algebra.IMPALGEBRA_SHOW_WARNINGS
254 
255 
256 def get_vector(v):
257  try:
258  return v.get_coordinates()
259  except:
260  return v
261 def get_sphere(v):
262  try:
263  return v.get_sphere()
264  except:
265  return v
266 
267 
268 _object_types.append("VectorKDMetric")
269 
270 
271 def _object_cast_to_VectorKDMetric(o):
272  r"""_object_cast_to_VectorKDMetric(Object o) -> VectorKDMetric"""
273  return _IMP_algebra._object_cast_to_VectorKDMetric(o)
274 
275 _object_types.append("EuclideanVectorKDMetric")
276 
277 
278 def _object_cast_to_EuclideanVectorKDMetric(o):
279  r"""_object_cast_to_EuclideanVectorKDMetric(Object o) -> EuclideanVectorKDMetric"""
280  return _IMP_algebra._object_cast_to_EuclideanVectorKDMetric(o)
281 
282 _object_types.append("MaxVectorKDMetric")
283 
284 
285 def _object_cast_to_MaxVectorKDMetric(o):
286  r"""_object_cast_to_MaxVectorKDMetric(Object o) -> MaxVectorKDMetric"""
287  return _IMP_algebra._object_cast_to_MaxVectorKDMetric(o)
288 
289 _object_types.append("DynamicNearestNeighbor3D")
290 
291 
292 def _object_cast_to_DynamicNearestNeighbor3D(o):
293  r"""_object_cast_to_DynamicNearestNeighbor3D(Object o) -> DynamicNearestNeighbor3D"""
294  return _IMP_algebra._object_cast_to_DynamicNearestNeighbor3D(o)
295 
296 Rotation2Ds=list
297 _plural_types.append("Rotation2Ds")
298 _value_types.append("Rotation2D")
299 
300 
301 Rotation3Ds=list
302 _plural_types.append("Rotation3Ds")
303 _value_types.append("Rotation3D")
304 
305 
306 Reflection3Ds=list
307 _plural_types.append("Reflection3Ds")
308 _value_types.append("Reflection3D")
309 
310 
311 Transformation2Ds=list
312 _plural_types.append("Transformation2Ds")
313 _value_types.append("Transformation2D")
314 
315 
316 Transformation3Ds=list
317 _plural_types.append("Transformation3Ds")
318 _value_types.append("Transformation3D")
319 
320 
321 SphericalVector3Ds=list
322 _plural_types.append("SphericalVector3Ds")
323 _value_types.append("SphericalVector3D")
324 
325 
326 Triangle3Ds=list
327 _plural_types.append("Triangle3Ds")
328 _value_types.append("Triangle3D")
329 
330 
331 Cone3Ds=list
332 _plural_types.append("Cone3Ds")
333 _value_types.append("Cone3D")
334 
335 
336 Cylinder3Ds=list
337 _plural_types.append("Cylinder3Ds")
338 _value_types.append("Cylinder3D")
339 
340 
341 Ellipsoid3Ds=list
342 _plural_types.append("Ellipsoid3Ds")
343 _value_types.append("Ellipsoid3D")
344 
345 
346 Line3Ds=list
347 _plural_types.append("Line3Ds")
348 _value_types.append("Line3D")
349 
350 
351 Plane3Ds=list
352 _plural_types.append("Plane3Ds")
353 _value_types.append("Plane3D")
354 
355 
356 Segment3Ds=list
357 _plural_types.append("Segment3Ds")
358 _value_types.append("Segment3D")
359 
360 
361 SpherePatch3Ds=list
362 _plural_types.append("SpherePatch3Ds")
363 _value_types.append("SpherePatch3D")
364 
365 
366 ConnollySurfacePoints=list
367 _plural_types.append("ConnollySurfacePoints")
368 _value_types.append("ConnollySurfacePoint")
369 
370 
371 Sphere1Ds=list
372 _plural_types.append("Sphere1Ds")
373 _value_types.append("Sphere1D")
374 
375 
376 Sphere2Ds=list
377 _plural_types.append("Sphere2Ds")
378 _value_types.append("Sphere2D")
379 
380 
381 Sphere3Ds=list
382 _plural_types.append("Sphere3Ds")
383 _value_types.append("Sphere3D")
384 
385 
386 Sphere4Ds=list
387 _plural_types.append("Sphere4Ds")
388 _value_types.append("Sphere4D")
389 
390 
391 Sphere5Ds=list
392 _plural_types.append("Sphere5Ds")
393 _value_types.append("Sphere5D")
394 
395 
396 Sphere6Ds=list
397 _plural_types.append("Sphere6Ds")
398 _value_types.append("Sphere6D")
399 
400 
401 Sphere1Ds=list
402 _plural_types.append("Sphere1Ds")
403 _value_types.append("SphereD<1>")
404 
405 
406 Sphere2Ds=list
407 _plural_types.append("Sphere2Ds")
408 _value_types.append("SphereD<2>")
409 
410 
411 Sphere3Ds=list
412 _plural_types.append("Sphere3Ds")
413 _value_types.append("SphereD<3>")
414 
415 
416 Sphere4Ds=list
417 _plural_types.append("Sphere4Ds")
418 _value_types.append("SphereD<4>")
419 
420 
421 Sphere5Ds=list
422 _plural_types.append("Sphere5Ds")
423 _value_types.append("SphereD<5>")
424 
425 
426 Sphere6Ds=list
427 _plural_types.append("Sphere6Ds")
428 _value_types.append("SphereD<6>")
429 
430 
431 SphereKDs=list
432 _plural_types.append("SphereKDs")
433 _value_types.append("SphereKD")
434 
435 
436 SphereKDs=list
437 _plural_types.append("SphereKDs")
438 _value_types.append("SphereD<-1>")
439 
440 
441 UnitSimplex1Ds=list
442 _plural_types.append("UnitSimplex1Ds")
443 _value_types.append("UnitSimplex1D")
444 
445 
446 UnitSimplex2Ds=list
447 _plural_types.append("UnitSimplex2Ds")
448 _value_types.append("UnitSimplex2D")
449 
450 
451 UnitSimplex3Ds=list
452 _plural_types.append("UnitSimplex3Ds")
453 _value_types.append("UnitSimplex3D")
454 
455 
456 UnitSimplex4Ds=list
457 _plural_types.append("UnitSimplex4Ds")
458 _value_types.append("UnitSimplex4D")
459 
460 
461 UnitSimplex5Ds=list
462 _plural_types.append("UnitSimplex5Ds")
463 _value_types.append("UnitSimplex5D")
464 
465 
466 UnitSimplex6Ds=list
467 _plural_types.append("UnitSimplex6Ds")
468 _value_types.append("UnitSimplex6D")
469 
470 
471 UnitSimplex1Ds=list
472 _plural_types.append("UnitSimplex1Ds")
473 _value_types.append("UnitSimplexD<1>")
474 
475 
476 UnitSimplex2Ds=list
477 _plural_types.append("UnitSimplex2Ds")
478 _value_types.append("UnitSimplexD<2>")
479 
480 
481 UnitSimplex3Ds=list
482 _plural_types.append("UnitSimplex3Ds")
483 _value_types.append("UnitSimplexD<3>")
484 
485 
486 UnitSimplex4Ds=list
487 _plural_types.append("UnitSimplex4Ds")
488 _value_types.append("UnitSimplexD<4>")
489 
490 
491 UnitSimplex5Ds=list
492 _plural_types.append("UnitSimplex5Ds")
493 _value_types.append("UnitSimplexD<5>")
494 
495 
496 UnitSimplex6Ds=list
497 _plural_types.append("UnitSimplex6Ds")
498 _value_types.append("UnitSimplexD<6>")
499 
500 
501 UnitSimplexKDs=list
502 _plural_types.append("UnitSimplexKDs")
503 _value_types.append("UnitSimplexKD")
504 
505 
506 UnitSimplexKDs=list
507 _plural_types.append("UnitSimplexKDs")
508 _value_types.append("UnitSimplexD<-1>")
509 
510 
511 BoundingBox1Ds=list
512 _plural_types.append("BoundingBox1Ds")
513 _value_types.append("BoundingBox1D")
514 
515 
516 BoundingBox2Ds=list
517 _plural_types.append("BoundingBox2Ds")
518 _value_types.append("BoundingBox2D")
519 
520 
521 BoundingBox3Ds=list
522 _plural_types.append("BoundingBox3Ds")
523 _value_types.append("BoundingBox3D")
524 
525 
526 BoundingBox4Ds=list
527 _plural_types.append("BoundingBox4Ds")
528 _value_types.append("BoundingBox4D")
529 
530 
531 BoundingBox5Ds=list
532 _plural_types.append("BoundingBox5Ds")
533 _value_types.append("BoundingBox5D")
534 
535 
536 BoundingBox6Ds=list
537 _plural_types.append("BoundingBox6Ds")
538 _value_types.append("BoundingBox6D")
539 
540 
541 BoundingBox1Ds=list
542 _plural_types.append("BoundingBox1Ds")
543 _value_types.append("BoundingBoxD<1>")
544 
545 
546 BoundingBox2Ds=list
547 _plural_types.append("BoundingBox2Ds")
548 _value_types.append("BoundingBoxD<2>")
549 
550 
551 BoundingBox3Ds=list
552 _plural_types.append("BoundingBox3Ds")
553 _value_types.append("BoundingBoxD<3>")
554 
555 
556 BoundingBox4Ds=list
557 _plural_types.append("BoundingBox4Ds")
558 _value_types.append("BoundingBoxD<4>")
559 
560 
561 BoundingBox5Ds=list
562 _plural_types.append("BoundingBox5Ds")
563 _value_types.append("BoundingBoxD<5>")
564 
565 
566 BoundingBox6Ds=list
567 _plural_types.append("BoundingBox6Ds")
568 _value_types.append("BoundingBoxD<6>")
569 
570 
571 BoundingBoxKDs=list
572 _plural_types.append("BoundingBoxKDs")
573 _value_types.append("BoundingBoxKD")
574 
575 
576 BoundingBoxKDs=list
577 _plural_types.append("BoundingBoxKDs")
578 _value_types.append("BoundingBoxD<-1>")
579 
580 
581 PrincipalComponentAnalysis1Ds=list
582 _plural_types.append("PrincipalComponentAnalysis1Ds")
583 _value_types.append("PrincipalComponentAnalysis1D")
584 
585 
586 PrincipalComponentAnalysis2Ds=list
587 _plural_types.append("PrincipalComponentAnalysis2Ds")
588 _value_types.append("PrincipalComponentAnalysis2D")
589 
590 
591 PrincipalComponentAnalysis3Ds=list
592 _plural_types.append("PrincipalComponentAnalysis3Ds")
593 _value_types.append("PrincipalComponentAnalysis3D")
594 
595 
596 PrincipalComponentAnalysis4Ds=list
597 _plural_types.append("PrincipalComponentAnalysis4Ds")
598 _value_types.append("PrincipalComponentAnalysis4D")
599 
600 
601 PrincipalComponentAnalysis5Ds=list
602 _plural_types.append("PrincipalComponentAnalysis5Ds")
603 _value_types.append("PrincipalComponentAnalysis5D")
604 
605 
606 PrincipalComponentAnalysis6Ds=list
607 _plural_types.append("PrincipalComponentAnalysis6Ds")
608 _value_types.append("PrincipalComponentAnalysis6D")
609 
610 
611 PrincipalComponentAnalysis1Ds=list
612 _plural_types.append("PrincipalComponentAnalysis1Ds")
613 _value_types.append("PrincipalComponentAnalysisD<1>")
614 
615 
616 PrincipalComponentAnalysis2Ds=list
617 _plural_types.append("PrincipalComponentAnalysis2Ds")
618 _value_types.append("PrincipalComponentAnalysisD<2>")
619 
620 
621 PrincipalComponentAnalysis3Ds=list
622 _plural_types.append("PrincipalComponentAnalysis3Ds")
623 _value_types.append("PrincipalComponentAnalysisD<3>")
624 
625 
626 PrincipalComponentAnalysis4Ds=list
627 _plural_types.append("PrincipalComponentAnalysis4Ds")
628 _value_types.append("PrincipalComponentAnalysisD<4>")
629 
630 
631 PrincipalComponentAnalysis5Ds=list
632 _plural_types.append("PrincipalComponentAnalysis5Ds")
633 _value_types.append("PrincipalComponentAnalysisD<5>")
634 
635 
636 PrincipalComponentAnalysis6Ds=list
637 _plural_types.append("PrincipalComponentAnalysis6Ds")
638 _value_types.append("PrincipalComponentAnalysisD<6>")
639 
640 
641 PrincipalComponentAnalysisKDs=list
642 _plural_types.append("PrincipalComponentAnalysisKDs")
643 _value_types.append("PrincipalComponentAnalysisKD")
644 
645 
646 PrincipalComponentAnalysisKDs=list
647 _plural_types.append("PrincipalComponentAnalysisKDs")
648 _value_types.append("PrincipalComponentAnalysisD<-1>")
649 
650 
651 _object_types.append("NearestNeighbor1D")
652 
653 
654 def _object_cast_to_NearestNeighbor1D(o):
655  r"""_object_cast_to_NearestNeighbor1D(Object o) -> NearestNeighbor1D"""
656  return _IMP_algebra._object_cast_to_NearestNeighbor1D(o)
657 
658 _object_types.append("NearestNeighbor2D")
659 
660 
661 def _object_cast_to_NearestNeighbor2D(o):
662  r"""_object_cast_to_NearestNeighbor2D(Object o) -> NearestNeighbor2D"""
663  return _IMP_algebra._object_cast_to_NearestNeighbor2D(o)
664 
665 _object_types.append("NearestNeighbor3D")
666 
667 
668 def _object_cast_to_NearestNeighbor3D(o):
669  r"""_object_cast_to_NearestNeighbor3D(Object o) -> NearestNeighbor3D"""
670  return _IMP_algebra._object_cast_to_NearestNeighbor3D(o)
671 
672 _object_types.append("NearestNeighbor4D")
673 
674 
675 def _object_cast_to_NearestNeighbor4D(o):
676  r"""_object_cast_to_NearestNeighbor4D(Object o) -> NearestNeighbor4D"""
677  return _IMP_algebra._object_cast_to_NearestNeighbor4D(o)
678 
679 _object_types.append("NearestNeighbor5D")
680 
681 
682 def _object_cast_to_NearestNeighbor5D(o):
683  r"""_object_cast_to_NearestNeighbor5D(Object o) -> NearestNeighbor5D"""
684  return _IMP_algebra._object_cast_to_NearestNeighbor5D(o)
685 
686 _object_types.append("NearestNeighbor6D")
687 
688 
689 def _object_cast_to_NearestNeighbor6D(o):
690  r"""_object_cast_to_NearestNeighbor6D(Object o) -> NearestNeighbor6D"""
691  return _IMP_algebra._object_cast_to_NearestNeighbor6D(o)
692 
693 _object_types.append("NearestNeighborKD")
694 
695 
696 def _object_cast_to_NearestNeighborKD(o):
697  r"""_object_cast_to_NearestNeighborKD(Object o) -> NearestNeighborKD"""
698  return _IMP_algebra._object_cast_to_NearestNeighborKD(o)
699 
700 ReferenceFrame3Ds=list
701 _plural_types.append("ReferenceFrame3Ds")
702 _value_types.append("ReferenceFrame3D")
703 
704 
705 Gaussian3Ds=list
706 _plural_types.append("Gaussian3Ds")
707 _value_types.append("Gaussian3D")
708 
709 
710 DefaultEmbedding1Ds=list
711 _plural_types.append("DefaultEmbedding1Ds")
712 _value_types.append("DefaultEmbedding1D")
713 
714 
715 DefaultEmbedding2Ds=list
716 _plural_types.append("DefaultEmbedding2Ds")
717 _value_types.append("DefaultEmbedding2D")
718 
719 
720 DefaultEmbedding3Ds=list
721 _plural_types.append("DefaultEmbedding3Ds")
722 _value_types.append("DefaultEmbedding3D")
723 
724 
725 DefaultEmbedding4Ds=list
726 _plural_types.append("DefaultEmbedding4Ds")
727 _value_types.append("DefaultEmbedding4D")
728 
729 
730 DefaultEmbedding5Ds=list
731 _plural_types.append("DefaultEmbedding5Ds")
732 _value_types.append("DefaultEmbedding5D")
733 
734 
735 DefaultEmbedding6Ds=list
736 _plural_types.append("DefaultEmbedding6Ds")
737 _value_types.append("DefaultEmbedding6D")
738 
739 
740 DefaultEmbedding1Ds=list
741 _plural_types.append("DefaultEmbedding1Ds")
742 _value_types.append("DefaultEmbeddingD<1>")
743 
744 
745 DefaultEmbedding2Ds=list
746 _plural_types.append("DefaultEmbedding2Ds")
747 _value_types.append("DefaultEmbeddingD<2>")
748 
749 
750 DefaultEmbedding3Ds=list
751 _plural_types.append("DefaultEmbedding3Ds")
752 _value_types.append("DefaultEmbeddingD<3>")
753 
754 
755 DefaultEmbedding4Ds=list
756 _plural_types.append("DefaultEmbedding4Ds")
757 _value_types.append("DefaultEmbeddingD<4>")
758 
759 
760 DefaultEmbedding5Ds=list
761 _plural_types.append("DefaultEmbedding5Ds")
762 _value_types.append("DefaultEmbeddingD<5>")
763 
764 
765 DefaultEmbedding6Ds=list
766 _plural_types.append("DefaultEmbedding6Ds")
767 _value_types.append("DefaultEmbeddingD<6>")
768 
769 
770 DefaultEmbeddingKDs=list
771 _plural_types.append("DefaultEmbeddingKDs")
772 _value_types.append("DefaultEmbeddingKD")
773 
774 
775 DefaultEmbeddingKDs=list
776 _plural_types.append("DefaultEmbeddingKDs")
777 _value_types.append("DefaultEmbeddingD<-1>")
778 
779 
780 LogEmbedding1Ds=list
781 _plural_types.append("LogEmbedding1Ds")
782 _value_types.append("LogEmbedding1D")
783 
784 
785 LogEmbedding2Ds=list
786 _plural_types.append("LogEmbedding2Ds")
787 _value_types.append("LogEmbedding2D")
788 
789 
790 LogEmbedding3Ds=list
791 _plural_types.append("LogEmbedding3Ds")
792 _value_types.append("LogEmbedding3D")
793 
794 
795 LogEmbedding4Ds=list
796 _plural_types.append("LogEmbedding4Ds")
797 _value_types.append("LogEmbedding4D")
798 
799 
800 LogEmbedding5Ds=list
801 _plural_types.append("LogEmbedding5Ds")
802 _value_types.append("LogEmbedding5D")
803 
804 
805 LogEmbedding6Ds=list
806 _plural_types.append("LogEmbedding6Ds")
807 _value_types.append("LogEmbedding6D")
808 
809 
810 LogEmbedding1Ds=list
811 _plural_types.append("LogEmbedding1Ds")
812 _value_types.append("LogEmbeddingD<1>")
813 
814 
815 LogEmbedding2Ds=list
816 _plural_types.append("LogEmbedding2Ds")
817 _value_types.append("LogEmbeddingD<2>")
818 
819 
820 LogEmbedding3Ds=list
821 _plural_types.append("LogEmbedding3Ds")
822 _value_types.append("LogEmbeddingD<3>")
823 
824 
825 LogEmbedding4Ds=list
826 _plural_types.append("LogEmbedding4Ds")
827 _value_types.append("LogEmbeddingD<4>")
828 
829 
830 LogEmbedding5Ds=list
831 _plural_types.append("LogEmbedding5Ds")
832 _value_types.append("LogEmbeddingD<5>")
833 
834 
835 LogEmbedding6Ds=list
836 _plural_types.append("LogEmbedding6Ds")
837 _value_types.append("LogEmbeddingD<6>")
838 
839 
840 LogEmbeddingKDs=list
841 _plural_types.append("LogEmbeddingKDs")
842 _value_types.append("LogEmbeddingKD")
843 
844 
845 LogEmbeddingKDs=list
846 _plural_types.append("LogEmbeddingKDs")
847 _value_types.append("LogEmbeddingD<-1>")
848 
849 
850 GridIndex1Ds=list
851 _plural_types.append("GridIndex1Ds")
852 _value_types.append("GridIndex1D")
853 
854 
855 GridIndex2Ds=list
856 _plural_types.append("GridIndex2Ds")
857 _value_types.append("GridIndex2D")
858 
859 
860 GridIndex3Ds=list
861 _plural_types.append("GridIndex3Ds")
862 _value_types.append("GridIndex3D")
863 
864 
865 GridIndex4Ds=list
866 _plural_types.append("GridIndex4Ds")
867 _value_types.append("GridIndex4D")
868 
869 
870 GridIndex5Ds=list
871 _plural_types.append("GridIndex5Ds")
872 _value_types.append("GridIndex5D")
873 
874 
875 GridIndex6Ds=list
876 _plural_types.append("GridIndex6Ds")
877 _value_types.append("GridIndex6D")
878 
879 
880 GridIndex1Ds=list
881 _plural_types.append("GridIndex1Ds")
882 _value_types.append("GridIndexD<1>")
883 
884 
885 GridIndex2Ds=list
886 _plural_types.append("GridIndex2Ds")
887 _value_types.append("GridIndexD<2>")
888 
889 
890 GridIndex3Ds=list
891 _plural_types.append("GridIndex3Ds")
892 _value_types.append("GridIndexD<3>")
893 
894 
895 GridIndex4Ds=list
896 _plural_types.append("GridIndex4Ds")
897 _value_types.append("GridIndexD<4>")
898 
899 
900 GridIndex5Ds=list
901 _plural_types.append("GridIndex5Ds")
902 _value_types.append("GridIndexD<5>")
903 
904 
905 GridIndex6Ds=list
906 _plural_types.append("GridIndex6Ds")
907 _value_types.append("GridIndexD<6>")
908 
909 
910 GridIndexKDs=list
911 _plural_types.append("GridIndexKDs")
912 _value_types.append("GridIndexKD")
913 
914 
915 GridIndexKDs=list
916 _plural_types.append("GridIndexKDs")
917 _value_types.append("GridIndexD<-1>")
918 
919 
920 ExtendedGridIndex1Ds=list
921 _plural_types.append("ExtendedGridIndex1Ds")
922 _value_types.append("ExtendedGridIndex1D")
923 
924 
925 ExtendedGridIndex2Ds=list
926 _plural_types.append("ExtendedGridIndex2Ds")
927 _value_types.append("ExtendedGridIndex2D")
928 
929 
930 ExtendedGridIndex3Ds=list
931 _plural_types.append("ExtendedGridIndex3Ds")
932 _value_types.append("ExtendedGridIndex3D")
933 
934 
935 ExtendedGridIndex4Ds=list
936 _plural_types.append("ExtendedGridIndex4Ds")
937 _value_types.append("ExtendedGridIndex4D")
938 
939 
940 ExtendedGridIndex5Ds=list
941 _plural_types.append("ExtendedGridIndex5Ds")
942 _value_types.append("ExtendedGridIndex5D")
943 
944 
945 ExtendedGridIndex6Ds=list
946 _plural_types.append("ExtendedGridIndex6Ds")
947 _value_types.append("ExtendedGridIndex6D")
948 
949 
950 ExtendedGridIndex1Ds=list
951 _plural_types.append("ExtendedGridIndex1Ds")
952 _value_types.append("ExtendedGridIndexD<1>")
953 
954 
955 ExtendedGridIndex2Ds=list
956 _plural_types.append("ExtendedGridIndex2Ds")
957 _value_types.append("ExtendedGridIndexD<2>")
958 
959 
960 ExtendedGridIndex3Ds=list
961 _plural_types.append("ExtendedGridIndex3Ds")
962 _value_types.append("ExtendedGridIndexD<3>")
963 
964 
965 ExtendedGridIndex4Ds=list
966 _plural_types.append("ExtendedGridIndex4Ds")
967 _value_types.append("ExtendedGridIndexD<4>")
968 
969 
970 ExtendedGridIndex5Ds=list
971 _plural_types.append("ExtendedGridIndex5Ds")
972 _value_types.append("ExtendedGridIndexD<5>")
973 
974 
975 ExtendedGridIndex6Ds=list
976 _plural_types.append("ExtendedGridIndex6Ds")
977 _value_types.append("ExtendedGridIndexD<6>")
978 
979 
980 ExtendedGridIndexKDs=list
981 _plural_types.append("ExtendedGridIndexKDs")
982 _value_types.append("ExtendedGridIndexKD")
983 
984 
985 ExtendedGridIndexKDs=list
986 _plural_types.append("ExtendedGridIndexKDs")
987 _value_types.append("ExtendedGridIndexD<-1>")
988 
989 
990 BoundedGridRange1Ds=list
991 _plural_types.append("BoundedGridRange1Ds")
992 _value_types.append("BoundedGridRange1D")
993 
994 
995 BoundedGridRange2Ds=list
996 _plural_types.append("BoundedGridRange2Ds")
997 _value_types.append("BoundedGridRange2D")
998 
999 
1000 BoundedGridRange3Ds=list
1001 _plural_types.append("BoundedGridRange3Ds")
1002 _value_types.append("BoundedGridRange3D")
1003 
1004 
1005 BoundedGridRange4Ds=list
1006 _plural_types.append("BoundedGridRange4Ds")
1007 _value_types.append("BoundedGridRange4D")
1008 
1009 
1010 BoundedGridRange5Ds=list
1011 _plural_types.append("BoundedGridRange5Ds")
1012 _value_types.append("BoundedGridRange5D")
1013 
1014 
1015 BoundedGridRange6Ds=list
1016 _plural_types.append("BoundedGridRange6Ds")
1017 _value_types.append("BoundedGridRange6D")
1018 
1019 
1020 BoundedGridRange1Ds=list
1021 _plural_types.append("BoundedGridRange1Ds")
1022 _value_types.append("BoundedGridRangeD<1>")
1023 
1024 
1025 BoundedGridRange2Ds=list
1026 _plural_types.append("BoundedGridRange2Ds")
1027 _value_types.append("BoundedGridRangeD<2>")
1028 
1029 
1030 BoundedGridRange3Ds=list
1031 _plural_types.append("BoundedGridRange3Ds")
1032 _value_types.append("BoundedGridRangeD<3>")
1033 
1034 
1035 BoundedGridRange4Ds=list
1036 _plural_types.append("BoundedGridRange4Ds")
1037 _value_types.append("BoundedGridRangeD<4>")
1038 
1039 
1040 BoundedGridRange5Ds=list
1041 _plural_types.append("BoundedGridRange5Ds")
1042 _value_types.append("BoundedGridRangeD<5>")
1043 
1044 
1045 BoundedGridRange6Ds=list
1046 _plural_types.append("BoundedGridRange6Ds")
1047 _value_types.append("BoundedGridRangeD<6>")
1048 
1049 
1050 BoundedGridRangeKDs=list
1051 _plural_types.append("BoundedGridRangeKDs")
1052 _value_types.append("BoundedGridRangeKD")
1053 
1054 
1055 BoundedGridRangeKDs=list
1056 _plural_types.append("BoundedGridRangeKDs")
1057 _value_types.append("BoundedGridRangeD<-1>")
1058 
1059 
1060 UnboundedGridRange1Ds=list
1061 _plural_types.append("UnboundedGridRange1Ds")
1062 _value_types.append("UnboundedGridRange1D")
1063 
1064 
1065 UnboundedGridRange2Ds=list
1066 _plural_types.append("UnboundedGridRange2Ds")
1067 _value_types.append("UnboundedGridRange2D")
1068 
1069 
1070 UnboundedGridRange3Ds=list
1071 _plural_types.append("UnboundedGridRange3Ds")
1072 _value_types.append("UnboundedGridRange3D")
1073 
1074 
1075 UnboundedGridRange4Ds=list
1076 _plural_types.append("UnboundedGridRange4Ds")
1077 _value_types.append("UnboundedGridRange4D")
1078 
1079 
1080 UnboundedGridRange5Ds=list
1081 _plural_types.append("UnboundedGridRange5Ds")
1082 _value_types.append("UnboundedGridRange5D")
1083 
1084 
1085 UnboundedGridRange6Ds=list
1086 _plural_types.append("UnboundedGridRange6Ds")
1087 _value_types.append("UnboundedGridRange6D")
1088 
1089 
1090 UnboundedGridRange1Ds=list
1091 _plural_types.append("UnboundedGridRange1Ds")
1092 _value_types.append("UnboundedGridRangeD<1>")
1093 
1094 
1095 UnboundedGridRange2Ds=list
1096 _plural_types.append("UnboundedGridRange2Ds")
1097 _value_types.append("UnboundedGridRangeD<2>")
1098 
1099 
1100 UnboundedGridRange3Ds=list
1101 _plural_types.append("UnboundedGridRange3Ds")
1102 _value_types.append("UnboundedGridRangeD<3>")
1103 
1104 
1105 UnboundedGridRange4Ds=list
1106 _plural_types.append("UnboundedGridRange4Ds")
1107 _value_types.append("UnboundedGridRangeD<4>")
1108 
1109 
1110 UnboundedGridRange5Ds=list
1111 _plural_types.append("UnboundedGridRange5Ds")
1112 _value_types.append("UnboundedGridRangeD<5>")
1113 
1114 
1115 UnboundedGridRange6Ds=list
1116 _plural_types.append("UnboundedGridRange6Ds")
1117 _value_types.append("UnboundedGridRangeD<6>")
1118 
1119 
1120 UnboundedGridRangeKDs=list
1121 _plural_types.append("UnboundedGridRangeKDs")
1122 _value_types.append("UnboundedGridRangeKD")
1123 
1124 
1125 UnboundedGridRangeKDs=list
1126 _plural_types.append("UnboundedGridRangeKDs")
1127 _value_types.append("UnboundedGridRangeD<-1>")
1128 
1129 
1130 LinearFit2Ds=list
1131 _plural_types.append("LinearFit2Ds")
1132 _value_types.append("LinearFit2D")
1133 
1134 
1135 ParabolicFit2Ds=list
1136 _plural_types.append("ParabolicFit2Ds")
1137 _value_types.append("ParabolicFit2D")
1138 
1139 
1140 FixedXYZs=list
1141 _plural_types.append("FixedXYZs")
1142 _value_types.append("FixedXYZ")
1143 
1144 class Rotation3D(IMP._GeometricPrimitive3D):
1145  r"""Proxy of C++ IMP::algebra::Rotation3D class."""
1146 
1147  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1148 
1149  def __init__(self, *args):
1150  r"""
1151  __init__(Rotation3D self, Rotation3D rot) -> Rotation3D
1152  __init__(Rotation3D self, Vector4D v, bool assume_normalized=False) -> Rotation3D
1153  __init__(Rotation3D self) -> Rotation3D
1154  __init__(Rotation3D self, double a, double b, double c, double d) -> Rotation3D
1155  """
1156  _IMP_algebra.Rotation3D_swiginit(self, _IMP_algebra.new_Rotation3D(*args))
1157  __swig_destroy__ = _IMP_algebra.delete_Rotation3D
1158 
1159  def get_rotated_no_cache(self, o):
1160  r"""get_rotated_no_cache(Rotation3D self, Vector3D o) -> Vector3D"""
1161  return _IMP_algebra.Rotation3D_get_rotated_no_cache(self, o)
1162 
1163  def get_rotated_one_coordinate_no_cache(self, o, coord):
1164  r"""get_rotated_one_coordinate_no_cache(Rotation3D self, Vector3D o, unsigned int coord) -> double"""
1165  return _IMP_algebra.Rotation3D_get_rotated_one_coordinate_no_cache(self, o, coord)
1166 
1167  def get_rotated(self, o):
1168  r"""get_rotated(Rotation3D self, Vector3D o) -> Vector3D"""
1169  return _IMP_algebra.Rotation3D_get_rotated(self, o)
1170 
1171  def get_rotated_adjoint(self, v, Dw):
1172  r"""get_rotated_adjoint(Rotation3D self, Vector3D v, Vector3D Dw) -> _RotatedVector3DAdjoint"""
1173  return _IMP_algebra.Rotation3D_get_rotated_adjoint(self, v, Dw)
1174 
1175  def get_rotated_one_coordinate(self, o, coord):
1176  r"""get_rotated_one_coordinate(Rotation3D self, Vector3D o, unsigned int coord) -> double"""
1177  return _IMP_algebra.Rotation3D_get_rotated_one_coordinate(self, o, coord)
1178 
1179  def get_rotation_matrix_row(self, i):
1180  r"""get_rotation_matrix_row(Rotation3D self, int i) -> Vector3D"""
1181  return _IMP_algebra.Rotation3D_get_rotation_matrix_row(self, i)
1182 
1183  def show(self, *args):
1184  r"""show(Rotation3D self, _ostream out=std::cout)"""
1185  return _IMP_algebra.Rotation3D_show(self, *args)
1186 
1187  def get_inverse(self):
1188  r"""get_inverse(Rotation3D self) -> Rotation3D"""
1189  return _IMP_algebra.Rotation3D_get_inverse(self)
1190 
1191  def get_quaternion(self):
1192  r"""get_quaternion(Rotation3D self) -> Vector4D"""
1193  return _IMP_algebra.Rotation3D_get_quaternion(self)
1194 
1195  def __mul__(self, *args):
1196  r"""
1197  __mul__(Rotation3D self, Vector3D v) -> Vector3D
1198  __mul__(Rotation3D self, Rotation3D q) -> Rotation3D
1199  """
1200  return _IMP_algebra.Rotation3D___mul__(self, *args)
1201 
1202  def __truediv__(self, *args):
1203  return _IMP_algebra.Rotation3D___truediv__(self, *args)
1204 
1205 
1206 
1207  def get_gradient_of_rotated(self, v, i, wrt_unnorm=False):
1208  r"""get_gradient_of_rotated(Rotation3D self, Vector3D v, unsigned int i, bool wrt_unnorm=False) -> Vector3D"""
1209  return _IMP_algebra.Rotation3D_get_gradient_of_rotated(self, v, i, wrt_unnorm)
1210 
1211  def get_jacobian_of_rotated(self, v, wrt_unnorm=False):
1212  r"""get_jacobian_of_rotated(Rotation3D self, Eigen::Vector3d const & v, bool wrt_unnorm=False) -> Eigen::MatrixXd"""
1213  return _IMP_algebra.Rotation3D_get_jacobian_of_rotated(self, v, wrt_unnorm)
1214 
1215  def get_is_valid(self):
1216  r"""get_is_valid(Rotation3D self) -> bool"""
1217  return _IMP_algebra.Rotation3D_get_is_valid(self)
1218 
1219  def __str__(self):
1220  r"""__str__(Rotation3D self) -> std::string"""
1221  return _IMP_algebra.Rotation3D___str__(self)
1222 
1223  def __repr__(self):
1224  r"""__repr__(Rotation3D self) -> std::string"""
1225  return _IMP_algebra.Rotation3D___repr__(self)
1226 
1227  def _get_as_binary(self):
1228  r"""_get_as_binary(Rotation3D self) -> PyObject *"""
1229  return _IMP_algebra.Rotation3D__get_as_binary(self)
1230 
1231  def _set_from_binary(self, p):
1232  r"""_set_from_binary(Rotation3D self, PyObject * p)"""
1233  return _IMP_algebra.Rotation3D__set_from_binary(self, p)
1234 
1235  def __getstate__(self):
1236  p = self._get_as_binary()
1237  if len(self.__dict__) > 1:
1238  d = self.__dict__.copy()
1239  del d['this']
1240  p = (d, p)
1241  return p
1242 
1243  def __setstate__(self, p):
1244  if not hasattr(self, 'this'):
1245  self.__init__()
1246  if isinstance(p, tuple):
1247  d, p = p
1248  self.__dict__.update(d)
1249  return self._set_from_binary(p)
1250 
1251 
1252 # Register Rotation3D in _IMP_algebra:
1253 _IMP_algebra.Rotation3D_swigregister(Rotation3D)
1254 
1255 def get_jacobian_of_composed_wrt_first(q, p, wrt_unnorm=False):
1256  r"""get_jacobian_of_composed_wrt_first(Rotation3D q, Rotation3D p, bool wrt_unnorm=False) -> Eigen::MatrixXd"""
1257  return _IMP_algebra.get_jacobian_of_composed_wrt_first(q, p, wrt_unnorm)
1258 
1259 def get_jacobian_of_composed_wrt_second(q, p, wrt_unnorm=False):
1260  r"""get_jacobian_of_composed_wrt_second(Rotation3D q, Rotation3D p, bool wrt_unnorm=False) -> Eigen::MatrixXd"""
1261  return _IMP_algebra.get_jacobian_of_composed_wrt_second(q, p, wrt_unnorm)
1262 
1264  r"""get_identity_rotation_3d() -> Rotation3D"""
1265  return _IMP_algebra.get_identity_rotation_3d()
1266 
1267 def get_rotation_about_normalized_axis(axis_norm, angle):
1268  r"""get_rotation_about_normalized_axis(Vector3D axis_norm, double angle) -> Rotation3D"""
1269  return _IMP_algebra.get_rotation_about_normalized_axis(axis_norm, angle)
1270 
1271 def get_rotation_about_axis(axis, angle):
1272  r"""get_rotation_about_axis(Vector3D axis, double angle) -> Rotation3D"""
1273  return _IMP_algebra.get_rotation_about_axis(axis, angle)
1274 
1276  r"""get_rotation_taking_first_to_second(Vector3D v1, Vector3D v2) -> Rotation3D"""
1277  return _IMP_algebra.get_rotation_taking_first_to_second(v1, v2)
1278 
1279 def get_rotation_from_matrix(*args):
1280  r"""
1281  get_rotation_from_matrix(double m00, double m01, double m02, double m10, double m11, double m12, double m20, double m21, double m22) -> Rotation3D
1282  get_rotation_from_matrix(Eigen::Matrix3d m) -> Rotation3D
1283  """
1284  return _IMP_algebra.get_rotation_from_matrix(*args)
1285 
1286 def get_random_rotation_3d(*args):
1287  r"""
1288  get_random_rotation_3d() -> Rotation3D
1289  get_random_rotation_3d(Rotation3D center, double distance) -> Rotation3D
1290  """
1291  return _IMP_algebra.get_random_rotation_3d(*args)
1292 
1293 def get_uniform_cover_rotations_3d(num_points):
1294  r"""get_uniform_cover_rotations_3d(unsigned int num_points) -> IMP::algebra::Rotation3Ds"""
1295  return _IMP_algebra.get_uniform_cover_rotations_3d(num_points)
1296 
1298  r"""get_uniformly_sampled_rotations(double delta) -> IMP::algebra::Rotation3Ds"""
1299  return _IMP_algebra.get_uniformly_sampled_rotations(delta)
1300 
1302  r"""get_rotation_from_vector4d(Vector4D v) -> Rotation3D"""
1303  return _IMP_algebra.get_rotation_from_vector4d(v)
1304 
1305 def get_rotation_from_fixed_xyz(xr, yr, zr):
1306  r"""get_rotation_from_fixed_xyz(double xr, double yr, double zr) -> Rotation3D"""
1307  return _IMP_algebra.get_rotation_from_fixed_xyz(xr, yr, zr)
1308 
1309 def get_rotation_from_fixed_zxz(phi, theta, psi):
1310  r"""get_rotation_from_fixed_zxz(double phi, double theta, double psi) -> Rotation3D"""
1311  return _IMP_algebra.get_rotation_from_fixed_zxz(phi, theta, psi)
1312 
1313 def get_rotation_from_fixed_zyz(Rot, Tilt, Psi):
1314  r"""get_rotation_from_fixed_zyz(double Rot, double Tilt, double Psi) -> Rotation3D"""
1315  return _IMP_algebra.get_rotation_from_fixed_zyz(Rot, Tilt, Psi)
1316 class FixedXYZ(IMP._GeometricPrimitive3D):
1317  r"""Proxy of C++ IMP::algebra::FixedXYZ class."""
1318 
1319  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1320 
1321  def __init__(self, *args):
1322  r"""
1323  __init__(FixedXYZ self) -> FixedXYZ
1324  __init__(FixedXYZ self, double x, double y, double z) -> FixedXYZ
1325  """
1326  _IMP_algebra.FixedXYZ_swiginit(self, _IMP_algebra.new_FixedXYZ(*args))
1327 
1328  def get_x(self):
1329  r"""get_x(FixedXYZ self) -> double"""
1330  return _IMP_algebra.FixedXYZ_get_x(self)
1331 
1332  def get_y(self):
1333  r"""get_y(FixedXYZ self) -> double"""
1334  return _IMP_algebra.FixedXYZ_get_y(self)
1335 
1336  def get_z(self):
1337  r"""get_z(FixedXYZ self) -> double"""
1338  return _IMP_algebra.FixedXYZ_get_z(self)
1339 
1340  def show(self, *args):
1341  r"""show(FixedXYZ self, _ostream out=std::cout)"""
1342  return _IMP_algebra.FixedXYZ_show(self, *args)
1343 
1344  def __str__(self):
1345  r"""__str__(FixedXYZ self) -> std::string"""
1346  return _IMP_algebra.FixedXYZ___str__(self)
1347 
1348  def __repr__(self):
1349  r"""__repr__(FixedXYZ self) -> std::string"""
1350  return _IMP_algebra.FixedXYZ___repr__(self)
1351 
1352  def _get_as_binary(self):
1353  r"""_get_as_binary(FixedXYZ self) -> PyObject *"""
1354  return _IMP_algebra.FixedXYZ__get_as_binary(self)
1355 
1356  def _set_from_binary(self, p):
1357  r"""_set_from_binary(FixedXYZ self, PyObject * p)"""
1358  return _IMP_algebra.FixedXYZ__set_from_binary(self, p)
1359 
1360  def __getstate__(self):
1361  p = self._get_as_binary()
1362  if len(self.__dict__) > 1:
1363  d = self.__dict__.copy()
1364  del d['this']
1365  p = (d, p)
1366  return p
1367 
1368  def __setstate__(self, p):
1369  if not hasattr(self, 'this'):
1370  self.__init__()
1371  if isinstance(p, tuple):
1372  d, p = p
1373  self.__dict__.update(d)
1374  return self._set_from_binary(p)
1375 
1376  __swig_destroy__ = _IMP_algebra.delete_FixedXYZ
1377 
1378 # Register FixedXYZ in _IMP_algebra:
1379 _IMP_algebra.FixedXYZ_swigregister(FixedXYZ)
1380 
1382  r"""get_fixed_xyz_from_rotation(Rotation3D r) -> FixedXYZ"""
1383  return _IMP_algebra.get_fixed_xyz_from_rotation(r)
1384 
1385 def get_interpolated(a, b, f):
1386  r"""get_interpolated(Rotation3D a, Rotation3D b, double f) -> Rotation3D"""
1387  return _IMP_algebra.get_interpolated(a, b, f)
1388 
1389 def get_rotation_from_x_y_axes(x, y):
1390  r"""get_rotation_from_x_y_axes(Vector3D x, Vector3D y) -> Rotation3D"""
1391  return _IMP_algebra.get_rotation_from_x_y_axes(x, y)
1392 
1393 def get_axis_and_angle(rot):
1394  r"""get_axis_and_angle(Rotation3D rot) -> _AxisAnglePair"""
1395  return _IMP_algebra.get_axis_and_angle(rot)
1396 
1398  r"""get_unit_bounding_box_kd(unsigned int d) -> BoundingBoxKD"""
1399  return _IMP_algebra.get_unit_bounding_box_kd(d)
1400 
1401 def get_cube_kd(d, radius):
1402  r"""get_cube_kd(unsigned int d, double radius) -> BoundingBoxKD"""
1403  return _IMP_algebra.get_cube_kd(d, radius)
1404 
1405 def get_edges(arg1):
1406  r"""get_edges(BoundingBox3D arg1) -> IMP::IntPairs"""
1407  return _IMP_algebra.get_edges(arg1)
1408 class Transformation3D(IMP._GeometricPrimitive3D):
1409  r"""Proxy of C++ IMP::algebra::Transformation3D class."""
1410 
1411  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1412 
1413  def __init__(self, *args):
1414  r"""
1415  __init__(Transformation3D self, Transformation3D arg2) -> Transformation3D
1416  __init__(Transformation3D self) -> Transformation3D
1417  __init__(Transformation3D self, Rotation3D r, Vector3D t=IMP::Vector3D(0, 0, 0)) -> Transformation3D
1418  __init__(Transformation3D self, Vector3D t) -> Transformation3D
1419  """
1420  _IMP_algebra.Transformation3D_swiginit(self, _IMP_algebra.new_Transformation3D(*args))
1421  __swig_destroy__ = _IMP_algebra.delete_Transformation3D
1422 
1423  def get_transformed(self, o):
1424  r"""get_transformed(Transformation3D self, Vector3D o) -> Vector3D"""
1425  return _IMP_algebra.Transformation3D_get_transformed(self, o)
1426 
1427  def get_transformed_adjoint(self, v, Dw):
1428  r"""get_transformed_adjoint(Transformation3D self, Vector3D v, Vector3D Dw) -> _TransformedVector3DAdjoint"""
1429  return _IMP_algebra.Transformation3D_get_transformed_adjoint(self, v, Dw)
1430 
1431  def __mul__(self, *args):
1432  r"""
1433  __mul__(Transformation3D self, Vector3D v) -> Vector3D
1434  __mul__(Transformation3D self, Transformation3D tr) -> Transformation3D
1435  """
1436  return _IMP_algebra.Transformation3D___mul__(self, *args)
1437 
1438  def __truediv__(self, *args):
1439  return _IMP_algebra.Transformation3D___truediv__(self, *args)
1440 
1441 
1442 
1443  def get_rotation(self):
1444  r"""get_rotation(Transformation3D self) -> Rotation3D"""
1445  return _IMP_algebra.Transformation3D_get_rotation(self)
1446 
1447  def get_translation(self):
1448  r"""get_translation(Transformation3D self) -> Vector3D"""
1449  return _IMP_algebra.Transformation3D_get_translation(self)
1450 
1451  def show(self, *args):
1452  r"""show(Transformation3D self, _ostream out=std::cout)"""
1453  return _IMP_algebra.Transformation3D_show(self, *args)
1454 
1455  def get_inverse(self):
1456  r"""get_inverse(Transformation3D self) -> Transformation3D"""
1457  return _IMP_algebra.Transformation3D_get_inverse(self)
1458 
1459  def get_is_valid(self):
1460  r"""get_is_valid(Transformation3D self) -> bool"""
1461  return _IMP_algebra.Transformation3D_get_is_valid(self)
1462 
1463  def __str__(self):
1464  r"""__str__(Transformation3D self) -> std::string"""
1465  return _IMP_algebra.Transformation3D___str__(self)
1466 
1467  def __repr__(self):
1468  r"""__repr__(Transformation3D self) -> std::string"""
1469  return _IMP_algebra.Transformation3D___repr__(self)
1470 
1471  def _get_as_binary(self):
1472  r"""_get_as_binary(Transformation3D self) -> PyObject *"""
1473  return _IMP_algebra.Transformation3D__get_as_binary(self)
1474 
1475  def _set_from_binary(self, p):
1476  r"""_set_from_binary(Transformation3D self, PyObject * p)"""
1477  return _IMP_algebra.Transformation3D__set_from_binary(self, p)
1478 
1479  def __getstate__(self):
1480  p = self._get_as_binary()
1481  if len(self.__dict__) > 1:
1482  d = self.__dict__.copy()
1483  del d['this']
1484  p = (d, p)
1485  return p
1486 
1487  def __setstate__(self, p):
1488  if not hasattr(self, 'this'):
1489  self.__init__()
1490  if isinstance(p, tuple):
1491  d, p = p
1492  self.__dict__.update(d)
1493  return self._set_from_binary(p)
1494 
1495 
1496 # Register Transformation3D in _IMP_algebra:
1497 _IMP_algebra.Transformation3D_swigregister(Transformation3D)
1498 
1500  r"""get_identity_transformation_3d() -> Transformation3D"""
1501  return _IMP_algebra.get_identity_transformation_3d()
1502 
1503 def compose_adjoint(*args):
1504  r"""
1505  compose_adjoint(Rotation3D A, Rotation3D B, Vector4D DC) -> _ComposeRotation3DAdjoint
1506  compose_adjoint(Transformation3D TA, Transformation3D TB, _Transformation3DAdjoint DTC) -> _ComposeTransformation3DAdjoint
1507  """
1508  return _IMP_algebra.compose_adjoint(*args)
1509 
1510 def get_transformation_3d(t2d):
1511  r"""get_transformation_3d(Transformation2D t2d) -> Transformation3D"""
1512  return _IMP_algebra.get_transformation_3d(t2d)
1513 
1514 def get_random_local_transformation(origin, max_translation=5., max_angle_in_rad=0.26):
1515  r"""get_random_local_transformation(Vector3D origin, double max_translation=5., double max_angle_in_rad=0.26) -> Transformation3D"""
1516  return _IMP_algebra.get_random_local_transformation(origin, max_translation, max_angle_in_rad)
1517 class Rotation2D(IMP._GeometricPrimitive2D):
1518  r"""Proxy of C++ IMP::algebra::Rotation2D class."""
1519 
1520  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1521 
1522  def __init__(self, *args):
1523  r"""
1524  __init__(Rotation2D self) -> Rotation2D
1525  __init__(Rotation2D self, double angle) -> Rotation2D
1526  """
1527  _IMP_algebra.Rotation2D_swiginit(self, _IMP_algebra.new_Rotation2D(*args))
1528 
1529  def get_rotated(self, *args):
1530  r"""
1531  get_rotated(Rotation2D self, Vector2D o) -> Vector2D
1532  get_rotated(Rotation2D self, double const x, double const y) -> Vector2D
1533  """
1534  return _IMP_algebra.Rotation2D_get_rotated(self, *args)
1535 
1536  def get_inverse(self):
1537  r"""get_inverse(Rotation2D self) -> Rotation2D"""
1538  return _IMP_algebra.Rotation2D_get_inverse(self)
1539 
1540  def set_angle(self, angle):
1541  r"""set_angle(Rotation2D self, double angle)"""
1542  return _IMP_algebra.Rotation2D_set_angle(self, angle)
1543 
1544  def get_angle(self):
1545  r"""get_angle(Rotation2D self) -> double"""
1546  return _IMP_algebra.Rotation2D_get_angle(self)
1547 
1548  def show(self, *args):
1549  r"""show(Rotation2D self, _ostream out=std::cout)"""
1550  return _IMP_algebra.Rotation2D_show(self, *args)
1551 
1552  def __str__(self):
1553  r"""__str__(Rotation2D self) -> std::string"""
1554  return _IMP_algebra.Rotation2D___str__(self)
1555 
1556  def __repr__(self):
1557  r"""__repr__(Rotation2D self) -> std::string"""
1558  return _IMP_algebra.Rotation2D___repr__(self)
1559 
1560  def _get_as_binary(self):
1561  r"""_get_as_binary(Rotation2D self) -> PyObject *"""
1562  return _IMP_algebra.Rotation2D__get_as_binary(self)
1563 
1564  def _set_from_binary(self, p):
1565  r"""_set_from_binary(Rotation2D self, PyObject * p)"""
1566  return _IMP_algebra.Rotation2D__set_from_binary(self, p)
1567 
1568  def __getstate__(self):
1569  p = self._get_as_binary()
1570  if len(self.__dict__) > 1:
1571  d = self.__dict__.copy()
1572  del d['this']
1573  p = (d, p)
1574  return p
1575 
1576  def __setstate__(self, p):
1577  if not hasattr(self, 'this'):
1578  self.__init__()
1579  if isinstance(p, tuple):
1580  d, p = p
1581  self.__dict__.update(d)
1582  return self._set_from_binary(p)
1583 
1584  __swig_destroy__ = _IMP_algebra.delete_Rotation2D
1585 
1586 # Register Rotation2D in _IMP_algebra:
1587 _IMP_algebra.Rotation2D_swigregister(Rotation2D)
1588 
1590  r"""get_identity_rotation_2d() -> Rotation2D"""
1591  return _IMP_algebra.get_identity_rotation_2d()
1592 
1594  r"""get_random_rotation_2d() -> Rotation2D"""
1595  return _IMP_algebra.get_random_rotation_2d()
1596 
1597 def get_rotation_to_x_axis(v):
1598  r"""get_rotation_to_x_axis(Vector2D v) -> Rotation2D"""
1599  return _IMP_algebra.get_rotation_to_x_axis(v)
1600 class Transformation2D(IMP._GeometricPrimitive2D):
1601  r"""Proxy of C++ IMP::algebra::Transformation2D class."""
1602 
1603  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1604 
1605  def __init__(self, *args):
1606  r"""
1607  __init__(Transformation2D self, Transformation2D arg2) -> Transformation2D
1608  __init__(Transformation2D self) -> Transformation2D
1609  __init__(Transformation2D self, Rotation2D r, Vector2D t=IMP::Vector2D(0.0, 0.0)) -> Transformation2D
1610  __init__(Transformation2D self, Vector2D t) -> Transformation2D
1611  """
1612  _IMP_algebra.Transformation2D_swiginit(self, _IMP_algebra.new_Transformation2D(*args))
1613  __swig_destroy__ = _IMP_algebra.delete_Transformation2D
1614 
1615  def get_transformed(self, o):
1616  r"""get_transformed(Transformation2D self, Vector2D o) -> Vector2D"""
1617  return _IMP_algebra.Transformation2D_get_transformed(self, o)
1618 
1619  def __mul__(self, *args):
1620  r"""
1621  __mul__(Transformation2D self, Vector2D v) -> Vector2D
1622  __mul__(Transformation2D self, Transformation2D tr) -> Transformation2D
1623  """
1624  return _IMP_algebra.Transformation2D___mul__(self, *args)
1625 
1626  def __truediv__(self, *args):
1627  return _IMP_algebra.Transformation2D___truediv__(self, *args)
1628 
1629 
1630 
1631  def get_rotation(self):
1632  r"""get_rotation(Transformation2D self) -> Rotation2D"""
1633  return _IMP_algebra.Transformation2D_get_rotation(self)
1634 
1635  def set_rotation(self, angle):
1636  r"""set_rotation(Transformation2D self, double angle)"""
1637  return _IMP_algebra.Transformation2D_set_rotation(self, angle)
1638 
1639  def get_translation(self):
1640  r"""get_translation(Transformation2D self) -> Vector2D"""
1641  return _IMP_algebra.Transformation2D_get_translation(self)
1642 
1643  def set_translation(self, v):
1644  r"""set_translation(Transformation2D self, Vector2D v)"""
1645  return _IMP_algebra.Transformation2D_set_translation(self, v)
1646 
1647  def show(self, *args):
1648  r"""show(Transformation2D self, _ostream out=std::cout)"""
1649  return _IMP_algebra.Transformation2D_show(self, *args)
1650 
1651  def get_inverse(self):
1652  r"""get_inverse(Transformation2D self) -> Transformation2D"""
1653  return _IMP_algebra.Transformation2D_get_inverse(self)
1654 
1655  def __str__(self):
1656  r"""__str__(Transformation2D self) -> std::string"""
1657  return _IMP_algebra.Transformation2D___str__(self)
1658 
1659  def __repr__(self):
1660  r"""__repr__(Transformation2D self) -> std::string"""
1661  return _IMP_algebra.Transformation2D___repr__(self)
1662 
1663  def _get_as_binary(self):
1664  r"""_get_as_binary(Transformation2D self) -> PyObject *"""
1665  return _IMP_algebra.Transformation2D__get_as_binary(self)
1666 
1667  def _set_from_binary(self, p):
1668  r"""_set_from_binary(Transformation2D self, PyObject * p)"""
1669  return _IMP_algebra.Transformation2D__set_from_binary(self, p)
1670 
1671  def __getstate__(self):
1672  p = self._get_as_binary()
1673  if len(self.__dict__) > 1:
1674  d = self.__dict__.copy()
1675  del d['this']
1676  p = (d, p)
1677  return p
1678 
1679  def __setstate__(self, p):
1680  if not hasattr(self, 'this'):
1681  self.__init__()
1682  if isinstance(p, tuple):
1683  d, p = p
1684  self.__dict__.update(d)
1685  return self._set_from_binary(p)
1686 
1687 
1688 # Register Transformation2D in _IMP_algebra:
1689 _IMP_algebra.Transformation2D_swigregister(Transformation2D)
1690 
1692  r"""get_identity_transformation_2d() -> Transformation2D"""
1693  return _IMP_algebra.get_identity_transformation_2d()
1694 
1695 def get_rotation_about_point(*args):
1696  r"""
1697  get_rotation_about_point(Vector3D point, Rotation3D rotation) -> Transformation3D
1698  get_rotation_about_point(Vector2D point, Rotation2D rotation) -> Transformation2D
1699  """
1700  return _IMP_algebra.get_rotation_about_point(*args)
1701 
1702 def compose(*args):
1703  r"""
1704  compose(Rotation3D a, Rotation3D b) -> Rotation3D
1705  compose(Transformation3D a, Transformation3D b) -> Transformation3D
1706  compose(Rotation2D a, Rotation2D b) -> Rotation2D
1707  compose(Transformation2D a, Transformation2D b) -> Transformation2D
1708  """
1709  return _IMP_algebra.compose(*args)
1710 
1711 def get_unit_sphere_kd(d):
1712  r"""get_unit_sphere_kd(unsigned int d) -> SphereKD"""
1713  return _IMP_algebra.get_unit_sphere_kd(d)
1714 
1715 def get_enclosing_sphere(*args):
1716  r"""
1717  get_enclosing_sphere(IMP::algebra::Sphere3Ds const & ss) -> Sphere3D
1718  get_enclosing_sphere(IMP::algebra::Vector3Ds const & ss) -> Sphere3D
1719  """
1720  return _IMP_algebra.get_enclosing_sphere(*args)
1721 
1722 def get_ball_radius_from_volume_3d(volume):
1723  r"""get_ball_radius_from_volume_3d(double volume) -> double"""
1724  return _IMP_algebra.get_ball_radius_from_volume_3d(volume)
1725 
1727  r"""get_surface_area_and_volume(IMP::algebra::Sphere3Ds const & ss) -> IMP::FloatPair"""
1728  return _IMP_algebra.get_surface_area_and_volume(ss)
1729 
1730 def get_simplified_from_volume(_in, maximum_allowed_error_angstroms):
1731  r"""get_simplified_from_volume(IMP::algebra::Sphere3Ds _in, double maximum_allowed_error_angstroms) -> IMP::algebra::Sphere3Ds"""
1732  return _IMP_algebra.get_simplified_from_volume(_in, maximum_allowed_error_angstroms)
1733 
1734 def get_triangle_3d(s):
1735  r"""get_triangle_3d(UnitSimplex3D s) -> Triangle3D"""
1736  return _IMP_algebra.get_triangle_3d(s)
1737 class _UnitSimplexBaseKD(IMP._GeometricPrimitiveKD):
1738  r"""Proxy of C++ IMP::algebra::UnitSimplexBaseD< -1 > class."""
1739 
1740  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1741 
1742  def __init__(self, *args, **kwargs):
1743  raise AttributeError("No constructor defined - class is abstract")
1744  __repr__ = _swig_repr
1745 
1746  def get_dimension(self):
1747  r"""get_dimension(_UnitSimplexBaseKD self) -> int"""
1748  return _IMP_algebra._UnitSimplexBaseKD_get_dimension(self)
1749 
1750  def get_barycenter(self):
1751  r"""get_barycenter(_UnitSimplexBaseKD self) -> VectorKD"""
1752  return _IMP_algebra._UnitSimplexBaseKD_get_barycenter(self)
1753 
1754  def get_contains(self, *args):
1755  r"""get_contains(_UnitSimplexBaseKD self, VectorKD p, double atol=std::numeric_limits< double >::epsilon()) -> bool"""
1756  return _IMP_algebra._UnitSimplexBaseKD_get_contains(self, *args)
1757  __swig_destroy__ = _IMP_algebra.delete__UnitSimplexBaseKD
1758 
1759 # Register _UnitSimplexBaseKD in _IMP_algebra:
1760 _IMP_algebra._UnitSimplexBaseKD_swigregister(_UnitSimplexBaseKD)
1761 class _UnitSimplexBase1D(IMP._GeometricPrimitive1D):
1762  r"""Proxy of C++ IMP::algebra::UnitSimplexBaseD< 1 > class."""
1763 
1764  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1765 
1766  def __init__(self, *args, **kwargs):
1767  raise AttributeError("No constructor defined - class is abstract")
1768  __repr__ = _swig_repr
1769 
1770  def get_dimension(self):
1771  r"""get_dimension(_UnitSimplexBase1D self) -> int"""
1772  return _IMP_algebra._UnitSimplexBase1D_get_dimension(self)
1773 
1774  def get_barycenter(self):
1775  r"""get_barycenter(_UnitSimplexBase1D self) -> Vector1D"""
1776  return _IMP_algebra._UnitSimplexBase1D_get_barycenter(self)
1777 
1778  def get_contains(self, *args):
1779  r"""get_contains(_UnitSimplexBase1D self, Vector1D p, double atol=std::numeric_limits< double >::epsilon()) -> bool"""
1780  return _IMP_algebra._UnitSimplexBase1D_get_contains(self, *args)
1781  __swig_destroy__ = _IMP_algebra.delete__UnitSimplexBase1D
1782 
1783 # Register _UnitSimplexBase1D in _IMP_algebra:
1784 _IMP_algebra._UnitSimplexBase1D_swigregister(_UnitSimplexBase1D)
1785 class _UnitSimplexBase2D(IMP._GeometricPrimitive2D):
1786  r"""Proxy of C++ IMP::algebra::UnitSimplexBaseD< 2 > class."""
1787 
1788  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1789 
1790  def __init__(self, *args, **kwargs):
1791  raise AttributeError("No constructor defined - class is abstract")
1792  __repr__ = _swig_repr
1793 
1794  def get_dimension(self):
1795  r"""get_dimension(_UnitSimplexBase2D self) -> int"""
1796  return _IMP_algebra._UnitSimplexBase2D_get_dimension(self)
1797 
1798  def get_barycenter(self):
1799  r"""get_barycenter(_UnitSimplexBase2D self) -> Vector2D"""
1800  return _IMP_algebra._UnitSimplexBase2D_get_barycenter(self)
1801 
1802  def get_contains(self, *args):
1803  r"""get_contains(_UnitSimplexBase2D self, Vector2D p, double atol=std::numeric_limits< double >::epsilon()) -> bool"""
1804  return _IMP_algebra._UnitSimplexBase2D_get_contains(self, *args)
1805  __swig_destroy__ = _IMP_algebra.delete__UnitSimplexBase2D
1806 
1807 # Register _UnitSimplexBase2D in _IMP_algebra:
1808 _IMP_algebra._UnitSimplexBase2D_swigregister(_UnitSimplexBase2D)
1809 class _UnitSimplexBase3D(IMP._GeometricPrimitive3D):
1810  r"""Proxy of C++ IMP::algebra::UnitSimplexBaseD< 3 > class."""
1811 
1812  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1813 
1814  def __init__(self, *args, **kwargs):
1815  raise AttributeError("No constructor defined - class is abstract")
1816  __repr__ = _swig_repr
1817 
1818  def get_dimension(self):
1819  r"""get_dimension(_UnitSimplexBase3D self) -> int"""
1820  return _IMP_algebra._UnitSimplexBase3D_get_dimension(self)
1821 
1822  def get_barycenter(self):
1823  r"""get_barycenter(_UnitSimplexBase3D self) -> Vector3D"""
1824  return _IMP_algebra._UnitSimplexBase3D_get_barycenter(self)
1825 
1826  def get_contains(self, *args):
1827  r"""get_contains(_UnitSimplexBase3D self, Vector3D p, double atol=std::numeric_limits< double >::epsilon()) -> bool"""
1828  return _IMP_algebra._UnitSimplexBase3D_get_contains(self, *args)
1829  __swig_destroy__ = _IMP_algebra.delete__UnitSimplexBase3D
1830 
1831 # Register _UnitSimplexBase3D in _IMP_algebra:
1832 _IMP_algebra._UnitSimplexBase3D_swigregister(_UnitSimplexBase3D)
1833 class _UnitSimplexBase4D(IMP._GeometricPrimitive4D):
1834  r"""Proxy of C++ IMP::algebra::UnitSimplexBaseD< 4 > class."""
1835 
1836  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1837 
1838  def __init__(self, *args, **kwargs):
1839  raise AttributeError("No constructor defined - class is abstract")
1840  __repr__ = _swig_repr
1841 
1842  def get_dimension(self):
1843  r"""get_dimension(_UnitSimplexBase4D self) -> int"""
1844  return _IMP_algebra._UnitSimplexBase4D_get_dimension(self)
1845 
1846  def get_barycenter(self):
1847  r"""get_barycenter(_UnitSimplexBase4D self) -> Vector4D"""
1848  return _IMP_algebra._UnitSimplexBase4D_get_barycenter(self)
1849 
1850  def get_contains(self, *args):
1851  r"""get_contains(_UnitSimplexBase4D self, Vector4D p, double atol=std::numeric_limits< double >::epsilon()) -> bool"""
1852  return _IMP_algebra._UnitSimplexBase4D_get_contains(self, *args)
1853  __swig_destroy__ = _IMP_algebra.delete__UnitSimplexBase4D
1854 
1855 # Register _UnitSimplexBase4D in _IMP_algebra:
1856 _IMP_algebra._UnitSimplexBase4D_swigregister(_UnitSimplexBase4D)
1857 class _UnitSimplexBase5D(IMP._GeometricPrimitive5D):
1858  r"""Proxy of C++ IMP::algebra::UnitSimplexBaseD< 5 > class."""
1859 
1860  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1861 
1862  def __init__(self, *args, **kwargs):
1863  raise AttributeError("No constructor defined - class is abstract")
1864  __repr__ = _swig_repr
1865 
1866  def get_dimension(self):
1867  r"""get_dimension(_UnitSimplexBase5D self) -> int"""
1868  return _IMP_algebra._UnitSimplexBase5D_get_dimension(self)
1869 
1870  def get_barycenter(self):
1871  r"""get_barycenter(_UnitSimplexBase5D self) -> Vector5D"""
1872  return _IMP_algebra._UnitSimplexBase5D_get_barycenter(self)
1873 
1874  def get_contains(self, *args):
1875  r"""get_contains(_UnitSimplexBase5D self, Vector5D p, double atol=std::numeric_limits< double >::epsilon()) -> bool"""
1876  return _IMP_algebra._UnitSimplexBase5D_get_contains(self, *args)
1877  __swig_destroy__ = _IMP_algebra.delete__UnitSimplexBase5D
1878 
1879 # Register _UnitSimplexBase5D in _IMP_algebra:
1880 _IMP_algebra._UnitSimplexBase5D_swigregister(_UnitSimplexBase5D)
1881 class _UnitSimplexBase6D(IMP._GeometricPrimitive6D):
1882  r"""Proxy of C++ IMP::algebra::UnitSimplexBaseD< 6 > class."""
1883 
1884  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1885 
1886  def __init__(self, *args, **kwargs):
1887  raise AttributeError("No constructor defined - class is abstract")
1888  __repr__ = _swig_repr
1889 
1890  def get_dimension(self):
1891  r"""get_dimension(_UnitSimplexBase6D self) -> int"""
1892  return _IMP_algebra._UnitSimplexBase6D_get_dimension(self)
1893 
1894  def get_barycenter(self):
1895  r"""get_barycenter(_UnitSimplexBase6D self) -> Vector6D"""
1896  return _IMP_algebra._UnitSimplexBase6D_get_barycenter(self)
1897 
1898  def get_contains(self, *args):
1899  r"""get_contains(_UnitSimplexBase6D self, Vector6D p, double atol=std::numeric_limits< double >::epsilon()) -> bool"""
1900  return _IMP_algebra._UnitSimplexBase6D_get_contains(self, *args)
1901  __swig_destroy__ = _IMP_algebra.delete__UnitSimplexBase6D
1902 
1903 # Register _UnitSimplexBase6D in _IMP_algebra:
1904 _IMP_algebra._UnitSimplexBase6D_swigregister(_UnitSimplexBase6D)
1905 class BoundingBox1D(object):
1906  r"""Proxy of C++ IMP::algebra::BoundingBoxD< 1 > class."""
1907 
1908  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1909 
1910  def get_dimension(self):
1911  r"""get_dimension(BoundingBox1D self) -> unsigned int"""
1912  return _IMP_algebra.BoundingBox1D_get_dimension(self)
1913 
1914  def get_corner(self, i):
1915  r"""get_corner(BoundingBox1D self, unsigned int i) -> Vector1D"""
1916  return _IMP_algebra.BoundingBox1D_get_corner(self, i)
1917 
1918  def get_corner_0(self):
1919  r"""get_corner_0(BoundingBox1D self) -> Vector1D"""
1920  return _IMP_algebra.BoundingBox1D_get_corner_0(self)
1921 
1922  def get_corner_1(self):
1923  r"""get_corner_1(BoundingBox1D self) -> Vector1D"""
1924  return _IMP_algebra.BoundingBox1D_get_corner_1(self)
1925 
1926  def get_contains(self, *args):
1927  r"""
1928  get_contains(BoundingBox1D self, Vector1D o) -> bool
1929  get_contains(BoundingBox1D self, BoundingBox1D bb) -> bool
1930  """
1931  return _IMP_algebra.BoundingBox1D_get_contains(self, *args)
1932 
1933  def show(self, *args):
1934  r"""show(BoundingBox1D self, _ostream out=std::cout)"""
1935  return _IMP_algebra.BoundingBox1D_show(self, *args)
1936 
1937  def __str__(self):
1938  r"""__str__(BoundingBox1D self) -> std::string"""
1939  return _IMP_algebra.BoundingBox1D___str__(self)
1940 
1941  def __repr__(self):
1942  r"""__repr__(BoundingBox1D self) -> std::string"""
1943  return _IMP_algebra.BoundingBox1D___repr__(self)
1944 
1945  def __cmp__(self, arg2):
1946  r"""__cmp__(BoundingBox1D self, BoundingBox1D arg2) -> int"""
1947  return _IMP_algebra.BoundingBox1D___cmp__(self, arg2)
1948 
1949  def __eq__(self, arg2):
1950  r"""__eq__(BoundingBox1D self, BoundingBox1D arg2) -> bool"""
1951  return _IMP_algebra.BoundingBox1D___eq__(self, arg2)
1952 
1953  def __init__(self, *args):
1954  r"""
1955  __init__(BoundingBox1D self, unsigned int d) -> BoundingBox1D
1956  __init__(BoundingBox1D self, Vector1D lb, Vector1D ub) -> BoundingBox1D
1957  __init__(BoundingBox1D self, Vector1D v) -> BoundingBox1D
1958  __init__(BoundingBox1D self, IMP::Vector< IMP::algebra::VectorD< 1 > > const & points) -> BoundingBox1D
1959  __init__(BoundingBox1D self) -> BoundingBox1D
1960  """
1961  _IMP_algebra.BoundingBox1D_swiginit(self, _IMP_algebra.new_BoundingBox1D(*args))
1962 
1963  def __getitem__(self, index):
1964  r"""__getitem__(BoundingBox1D self, unsigned int index) -> Vector1D"""
1965  return _IMP_algebra.BoundingBox1D___getitem__(self, index)
1966 
1967  def __iadd__(self, *args):
1968  _IMP_algebra.BoundingBox1D___iadd__(self, *args)
1969  return self
1970 
1971 
1972 
1973  def __len__(self):
1974  r"""__len__(BoundingBox1D self) -> unsigned int"""
1975  return _IMP_algebra.BoundingBox1D___len__(self)
1976 
1977  def __add__(self, *args):
1978  r"""
1979  __add__(BoundingBox1D self, BoundingBox1D o) -> BoundingBox1D
1980  __add__(BoundingBox1D self, Vector1D o) -> BoundingBox1D
1981  __add__(BoundingBox1D self, double o) -> BoundingBox1D
1982  """
1983  return _IMP_algebra.BoundingBox1D___add__(self, *args)
1984 
1985  def _get_as_binary(self):
1986  r"""_get_as_binary(BoundingBox1D self) -> PyObject *"""
1987  return _IMP_algebra.BoundingBox1D__get_as_binary(self)
1988 
1989  def _set_from_binary(self, p):
1990  r"""_set_from_binary(BoundingBox1D self, PyObject * p)"""
1991  return _IMP_algebra.BoundingBox1D__set_from_binary(self, p)
1992 
1993  def __getstate__(self):
1994  p = self._get_as_binary()
1995  if len(self.__dict__) > 1:
1996  d = self.__dict__.copy()
1997  del d['this']
1998  p = (d, p)
1999  return p
2000 
2001  def __setstate__(self, p):
2002  if not hasattr(self, 'this'):
2003  self.__init__()
2004  if isinstance(p, tuple):
2005  d, p = p
2006  self.__dict__.update(d)
2007  return self._set_from_binary(p)
2008 
2009  __swig_destroy__ = _IMP_algebra.delete_BoundingBox1D
2010 
2011 # Register BoundingBox1D in _IMP_algebra:
2012 _IMP_algebra.BoundingBox1D_swigregister(BoundingBox1D)
2013 class BoundingBox2D(object):
2014  r"""Proxy of C++ IMP::algebra::BoundingBoxD< 2 > class."""
2015 
2016  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2017 
2018  def get_dimension(self):
2019  r"""get_dimension(BoundingBox2D self) -> unsigned int"""
2020  return _IMP_algebra.BoundingBox2D_get_dimension(self)
2021 
2022  def get_corner(self, i):
2023  r"""get_corner(BoundingBox2D self, unsigned int i) -> Vector2D"""
2024  return _IMP_algebra.BoundingBox2D_get_corner(self, i)
2025 
2026  def get_corner_0(self):
2027  r"""get_corner_0(BoundingBox2D self) -> Vector2D"""
2028  return _IMP_algebra.BoundingBox2D_get_corner_0(self)
2029 
2030  def get_corner_1(self):
2031  r"""get_corner_1(BoundingBox2D self) -> Vector2D"""
2032  return _IMP_algebra.BoundingBox2D_get_corner_1(self)
2033 
2034  def get_contains(self, *args):
2035  r"""
2036  get_contains(BoundingBox2D self, Vector2D o) -> bool
2037  get_contains(BoundingBox2D self, BoundingBox2D bb) -> bool
2038  """
2039  return _IMP_algebra.BoundingBox2D_get_contains(self, *args)
2040 
2041  def show(self, *args):
2042  r"""show(BoundingBox2D self, _ostream out=std::cout)"""
2043  return _IMP_algebra.BoundingBox2D_show(self, *args)
2044 
2045  def __str__(self):
2046  r"""__str__(BoundingBox2D self) -> std::string"""
2047  return _IMP_algebra.BoundingBox2D___str__(self)
2048 
2049  def __repr__(self):
2050  r"""__repr__(BoundingBox2D self) -> std::string"""
2051  return _IMP_algebra.BoundingBox2D___repr__(self)
2052 
2053  def __cmp__(self, arg2):
2054  r"""__cmp__(BoundingBox2D self, BoundingBox2D arg2) -> int"""
2055  return _IMP_algebra.BoundingBox2D___cmp__(self, arg2)
2056 
2057  def __eq__(self, arg2):
2058  r"""__eq__(BoundingBox2D self, BoundingBox2D arg2) -> bool"""
2059  return _IMP_algebra.BoundingBox2D___eq__(self, arg2)
2060 
2061  def __init__(self, *args):
2062  r"""
2063  __init__(BoundingBox2D self, unsigned int d) -> BoundingBox2D
2064  __init__(BoundingBox2D self, Vector2D lb, Vector2D ub) -> BoundingBox2D
2065  __init__(BoundingBox2D self, Vector2D v) -> BoundingBox2D
2066  __init__(BoundingBox2D self, IMP::Vector< IMP::algebra::VectorD< 2 > > const & points) -> BoundingBox2D
2067  __init__(BoundingBox2D self) -> BoundingBox2D
2068  """
2069  _IMP_algebra.BoundingBox2D_swiginit(self, _IMP_algebra.new_BoundingBox2D(*args))
2070 
2071  def __getitem__(self, index):
2072  r"""__getitem__(BoundingBox2D self, unsigned int index) -> Vector2D"""
2073  return _IMP_algebra.BoundingBox2D___getitem__(self, index)
2074 
2075  def __iadd__(self, *args):
2076  _IMP_algebra.BoundingBox2D___iadd__(self, *args)
2077  return self
2078 
2079 
2080 
2081  def __len__(self):
2082  r"""__len__(BoundingBox2D self) -> unsigned int"""
2083  return _IMP_algebra.BoundingBox2D___len__(self)
2084 
2085  def __add__(self, *args):
2086  r"""
2087  __add__(BoundingBox2D self, BoundingBox2D o) -> BoundingBox2D
2088  __add__(BoundingBox2D self, Vector2D o) -> BoundingBox2D
2089  __add__(BoundingBox2D self, double o) -> BoundingBox2D
2090  """
2091  return _IMP_algebra.BoundingBox2D___add__(self, *args)
2092 
2093  def _get_as_binary(self):
2094  r"""_get_as_binary(BoundingBox2D self) -> PyObject *"""
2095  return _IMP_algebra.BoundingBox2D__get_as_binary(self)
2096 
2097  def _set_from_binary(self, p):
2098  r"""_set_from_binary(BoundingBox2D self, PyObject * p)"""
2099  return _IMP_algebra.BoundingBox2D__set_from_binary(self, p)
2100 
2101  def __getstate__(self):
2102  p = self._get_as_binary()
2103  if len(self.__dict__) > 1:
2104  d = self.__dict__.copy()
2105  del d['this']
2106  p = (d, p)
2107  return p
2108 
2109  def __setstate__(self, p):
2110  if not hasattr(self, 'this'):
2111  self.__init__()
2112  if isinstance(p, tuple):
2113  d, p = p
2114  self.__dict__.update(d)
2115  return self._set_from_binary(p)
2116 
2117  __swig_destroy__ = _IMP_algebra.delete_BoundingBox2D
2118 
2119 # Register BoundingBox2D in _IMP_algebra:
2120 _IMP_algebra.BoundingBox2D_swigregister(BoundingBox2D)
2121 class BoundingBox3D(object):
2122  r"""Proxy of C++ IMP::algebra::BoundingBoxD< 3 > class."""
2123 
2124  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2125 
2126  def get_dimension(self):
2127  r"""get_dimension(BoundingBox3D self) -> unsigned int"""
2128  return _IMP_algebra.BoundingBox3D_get_dimension(self)
2129 
2130  def get_corner(self, i):
2131  r"""get_corner(BoundingBox3D self, unsigned int i) -> Vector3D"""
2132  return _IMP_algebra.BoundingBox3D_get_corner(self, i)
2133 
2134  def get_corner_0(self):
2135  r"""get_corner_0(BoundingBox3D self) -> Vector3D"""
2136  return _IMP_algebra.BoundingBox3D_get_corner_0(self)
2137 
2138  def get_corner_1(self):
2139  r"""get_corner_1(BoundingBox3D self) -> Vector3D"""
2140  return _IMP_algebra.BoundingBox3D_get_corner_1(self)
2141 
2142  def get_contains(self, *args):
2143  r"""
2144  get_contains(BoundingBox3D self, Vector3D o) -> bool
2145  get_contains(BoundingBox3D self, BoundingBox3D bb) -> bool
2146  """
2147  return _IMP_algebra.BoundingBox3D_get_contains(self, *args)
2148 
2149  def show(self, *args):
2150  r"""show(BoundingBox3D self, _ostream out=std::cout)"""
2151  return _IMP_algebra.BoundingBox3D_show(self, *args)
2152 
2153  def __str__(self):
2154  r"""__str__(BoundingBox3D self) -> std::string"""
2155  return _IMP_algebra.BoundingBox3D___str__(self)
2156 
2157  def __repr__(self):
2158  r"""__repr__(BoundingBox3D self) -> std::string"""
2159  return _IMP_algebra.BoundingBox3D___repr__(self)
2160 
2161  def __cmp__(self, arg2):
2162  r"""__cmp__(BoundingBox3D self, BoundingBox3D arg2) -> int"""
2163  return _IMP_algebra.BoundingBox3D___cmp__(self, arg2)
2164 
2165  def __eq__(self, arg2):
2166  r"""__eq__(BoundingBox3D self, BoundingBox3D arg2) -> bool"""
2167  return _IMP_algebra.BoundingBox3D___eq__(self, arg2)
2168 
2169  def __init__(self, *args):
2170  r"""
2171  __init__(BoundingBox3D self, unsigned int d) -> BoundingBox3D
2172  __init__(BoundingBox3D self, Vector3D lb, Vector3D ub) -> BoundingBox3D
2173  __init__(BoundingBox3D self, Vector3D v) -> BoundingBox3D
2174  __init__(BoundingBox3D self, IMP::Vector< IMP::algebra::VectorD< 3 > > const & points) -> BoundingBox3D
2175  __init__(BoundingBox3D self) -> BoundingBox3D
2176  """
2177  _IMP_algebra.BoundingBox3D_swiginit(self, _IMP_algebra.new_BoundingBox3D(*args))
2178 
2179  def __getitem__(self, index):
2180  r"""__getitem__(BoundingBox3D self, unsigned int index) -> Vector3D"""
2181  return _IMP_algebra.BoundingBox3D___getitem__(self, index)
2182 
2183  def __iadd__(self, *args):
2184  _IMP_algebra.BoundingBox3D___iadd__(self, *args)
2185  return self
2186 
2187 
2188 
2189  def __len__(self):
2190  r"""__len__(BoundingBox3D self) -> unsigned int"""
2191  return _IMP_algebra.BoundingBox3D___len__(self)
2192 
2193  def __add__(self, *args):
2194  r"""
2195  __add__(BoundingBox3D self, BoundingBox3D o) -> BoundingBox3D
2196  __add__(BoundingBox3D self, Vector3D o) -> BoundingBox3D
2197  __add__(BoundingBox3D self, double o) -> BoundingBox3D
2198  """
2199  return _IMP_algebra.BoundingBox3D___add__(self, *args)
2200 
2201  def _get_as_binary(self):
2202  r"""_get_as_binary(BoundingBox3D self) -> PyObject *"""
2203  return _IMP_algebra.BoundingBox3D__get_as_binary(self)
2204 
2205  def _set_from_binary(self, p):
2206  r"""_set_from_binary(BoundingBox3D self, PyObject * p)"""
2207  return _IMP_algebra.BoundingBox3D__set_from_binary(self, p)
2208 
2209  def __getstate__(self):
2210  p = self._get_as_binary()
2211  if len(self.__dict__) > 1:
2212  d = self.__dict__.copy()
2213  del d['this']
2214  p = (d, p)
2215  return p
2216 
2217  def __setstate__(self, p):
2218  if not hasattr(self, 'this'):
2219  self.__init__()
2220  if isinstance(p, tuple):
2221  d, p = p
2222  self.__dict__.update(d)
2223  return self._set_from_binary(p)
2224 
2225  __swig_destroy__ = _IMP_algebra.delete_BoundingBox3D
2226 
2227 # Register BoundingBox3D in _IMP_algebra:
2228 _IMP_algebra.BoundingBox3D_swigregister(BoundingBox3D)
2229 class BoundingBox4D(object):
2230  r"""Proxy of C++ IMP::algebra::BoundingBoxD< 4 > class."""
2231 
2232  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2233 
2234  def get_dimension(self):
2235  r"""get_dimension(BoundingBox4D self) -> unsigned int"""
2236  return _IMP_algebra.BoundingBox4D_get_dimension(self)
2237 
2238  def get_corner(self, i):
2239  r"""get_corner(BoundingBox4D self, unsigned int i) -> Vector4D"""
2240  return _IMP_algebra.BoundingBox4D_get_corner(self, i)
2241 
2242  def get_corner_0(self):
2243  r"""get_corner_0(BoundingBox4D self) -> Vector4D"""
2244  return _IMP_algebra.BoundingBox4D_get_corner_0(self)
2245 
2246  def get_corner_1(self):
2247  r"""get_corner_1(BoundingBox4D self) -> Vector4D"""
2248  return _IMP_algebra.BoundingBox4D_get_corner_1(self)
2249 
2250  def get_contains(self, *args):
2251  r"""
2252  get_contains(BoundingBox4D self, Vector4D o) -> bool
2253  get_contains(BoundingBox4D self, BoundingBox4D bb) -> bool
2254  """
2255  return _IMP_algebra.BoundingBox4D_get_contains(self, *args)
2256 
2257  def show(self, *args):
2258  r"""show(BoundingBox4D self, _ostream out=std::cout)"""
2259  return _IMP_algebra.BoundingBox4D_show(self, *args)
2260 
2261  def __str__(self):
2262  r"""__str__(BoundingBox4D self) -> std::string"""
2263  return _IMP_algebra.BoundingBox4D___str__(self)
2264 
2265  def __repr__(self):
2266  r"""__repr__(BoundingBox4D self) -> std::string"""
2267  return _IMP_algebra.BoundingBox4D___repr__(self)
2268 
2269  def __cmp__(self, arg2):
2270  r"""__cmp__(BoundingBox4D self, BoundingBox4D arg2) -> int"""
2271  return _IMP_algebra.BoundingBox4D___cmp__(self, arg2)
2272 
2273  def __eq__(self, arg2):
2274  r"""__eq__(BoundingBox4D self, BoundingBox4D arg2) -> bool"""
2275  return _IMP_algebra.BoundingBox4D___eq__(self, arg2)
2276 
2277  def __init__(self, *args):
2278  r"""
2279  __init__(BoundingBox4D self, unsigned int d) -> BoundingBox4D
2280  __init__(BoundingBox4D self, Vector4D lb, Vector4D ub) -> BoundingBox4D
2281  __init__(BoundingBox4D self, Vector4D v) -> BoundingBox4D
2282  __init__(BoundingBox4D self, IMP::Vector< IMP::algebra::VectorD< 4 > > const & points) -> BoundingBox4D
2283  __init__(BoundingBox4D self) -> BoundingBox4D
2284  """
2285  _IMP_algebra.BoundingBox4D_swiginit(self, _IMP_algebra.new_BoundingBox4D(*args))
2286 
2287  def __getitem__(self, index):
2288  r"""__getitem__(BoundingBox4D self, unsigned int index) -> Vector4D"""
2289  return _IMP_algebra.BoundingBox4D___getitem__(self, index)
2290 
2291  def __iadd__(self, *args):
2292  _IMP_algebra.BoundingBox4D___iadd__(self, *args)
2293  return self
2294 
2295 
2296 
2297  def __len__(self):
2298  r"""__len__(BoundingBox4D self) -> unsigned int"""
2299  return _IMP_algebra.BoundingBox4D___len__(self)
2300 
2301  def __add__(self, *args):
2302  r"""
2303  __add__(BoundingBox4D self, BoundingBox4D o) -> BoundingBox4D
2304  __add__(BoundingBox4D self, Vector4D o) -> BoundingBox4D
2305  __add__(BoundingBox4D self, double o) -> BoundingBox4D
2306  """
2307  return _IMP_algebra.BoundingBox4D___add__(self, *args)
2308 
2309  def _get_as_binary(self):
2310  r"""_get_as_binary(BoundingBox4D self) -> PyObject *"""
2311  return _IMP_algebra.BoundingBox4D__get_as_binary(self)
2312 
2313  def _set_from_binary(self, p):
2314  r"""_set_from_binary(BoundingBox4D self, PyObject * p)"""
2315  return _IMP_algebra.BoundingBox4D__set_from_binary(self, p)
2316 
2317  def __getstate__(self):
2318  p = self._get_as_binary()
2319  if len(self.__dict__) > 1:
2320  d = self.__dict__.copy()
2321  del d['this']
2322  p = (d, p)
2323  return p
2324 
2325  def __setstate__(self, p):
2326  if not hasattr(self, 'this'):
2327  self.__init__()
2328  if isinstance(p, tuple):
2329  d, p = p
2330  self.__dict__.update(d)
2331  return self._set_from_binary(p)
2332 
2333  __swig_destroy__ = _IMP_algebra.delete_BoundingBox4D
2334 
2335 # Register BoundingBox4D in _IMP_algebra:
2336 _IMP_algebra.BoundingBox4D_swigregister(BoundingBox4D)
2337 class BoundingBox5D(object):
2338  r"""Proxy of C++ IMP::algebra::BoundingBoxD< 5 > class."""
2339 
2340  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2341 
2342  def get_dimension(self):
2343  r"""get_dimension(BoundingBox5D self) -> unsigned int"""
2344  return _IMP_algebra.BoundingBox5D_get_dimension(self)
2345 
2346  def get_corner(self, i):
2347  r"""get_corner(BoundingBox5D self, unsigned int i) -> Vector5D"""
2348  return _IMP_algebra.BoundingBox5D_get_corner(self, i)
2349 
2350  def get_corner_0(self):
2351  r"""get_corner_0(BoundingBox5D self) -> Vector5D"""
2352  return _IMP_algebra.BoundingBox5D_get_corner_0(self)
2353 
2354  def get_corner_1(self):
2355  r"""get_corner_1(BoundingBox5D self) -> Vector5D"""
2356  return _IMP_algebra.BoundingBox5D_get_corner_1(self)
2357 
2358  def get_contains(self, *args):
2359  r"""
2360  get_contains(BoundingBox5D self, Vector5D o) -> bool
2361  get_contains(BoundingBox5D self, BoundingBox5D bb) -> bool
2362  """
2363  return _IMP_algebra.BoundingBox5D_get_contains(self, *args)
2364 
2365  def show(self, *args):
2366  r"""show(BoundingBox5D self, _ostream out=std::cout)"""
2367  return _IMP_algebra.BoundingBox5D_show(self, *args)
2368 
2369  def __str__(self):
2370  r"""__str__(BoundingBox5D self) -> std::string"""
2371  return _IMP_algebra.BoundingBox5D___str__(self)
2372 
2373  def __repr__(self):
2374  r"""__repr__(BoundingBox5D self) -> std::string"""
2375  return _IMP_algebra.BoundingBox5D___repr__(self)
2376 
2377  def __cmp__(self, arg2):
2378  r"""__cmp__(BoundingBox5D self, BoundingBox5D arg2) -> int"""
2379  return _IMP_algebra.BoundingBox5D___cmp__(self, arg2)
2380 
2381  def __eq__(self, arg2):
2382  r"""__eq__(BoundingBox5D self, BoundingBox5D arg2) -> bool"""
2383  return _IMP_algebra.BoundingBox5D___eq__(self, arg2)
2384 
2385  def __init__(self, *args):
2386  r"""
2387  __init__(BoundingBox5D self, unsigned int d) -> BoundingBox5D
2388  __init__(BoundingBox5D self, Vector5D lb, Vector5D ub) -> BoundingBox5D
2389  __init__(BoundingBox5D self, Vector5D v) -> BoundingBox5D
2390  __init__(BoundingBox5D self, IMP::Vector< IMP::algebra::VectorD< 5 > > const & points) -> BoundingBox5D
2391  __init__(BoundingBox5D self) -> BoundingBox5D
2392  """
2393  _IMP_algebra.BoundingBox5D_swiginit(self, _IMP_algebra.new_BoundingBox5D(*args))
2394 
2395  def __getitem__(self, index):
2396  r"""__getitem__(BoundingBox5D self, unsigned int index) -> Vector5D"""
2397  return _IMP_algebra.BoundingBox5D___getitem__(self, index)
2398 
2399  def __iadd__(self, *args):
2400  _IMP_algebra.BoundingBox5D___iadd__(self, *args)
2401  return self
2402 
2403 
2404 
2405  def __len__(self):
2406  r"""__len__(BoundingBox5D self) -> unsigned int"""
2407  return _IMP_algebra.BoundingBox5D___len__(self)
2408 
2409  def __add__(self, *args):
2410  r"""
2411  __add__(BoundingBox5D self, BoundingBox5D o) -> BoundingBox5D
2412  __add__(BoundingBox5D self, Vector5D o) -> BoundingBox5D
2413  __add__(BoundingBox5D self, double o) -> BoundingBox5D
2414  """
2415  return _IMP_algebra.BoundingBox5D___add__(self, *args)
2416 
2417  def _get_as_binary(self):
2418  r"""_get_as_binary(BoundingBox5D self) -> PyObject *"""
2419  return _IMP_algebra.BoundingBox5D__get_as_binary(self)
2420 
2421  def _set_from_binary(self, p):
2422  r"""_set_from_binary(BoundingBox5D self, PyObject * p)"""
2423  return _IMP_algebra.BoundingBox5D__set_from_binary(self, p)
2424 
2425  def __getstate__(self):
2426  p = self._get_as_binary()
2427  if len(self.__dict__) > 1:
2428  d = self.__dict__.copy()
2429  del d['this']
2430  p = (d, p)
2431  return p
2432 
2433  def __setstate__(self, p):
2434  if not hasattr(self, 'this'):
2435  self.__init__()
2436  if isinstance(p, tuple):
2437  d, p = p
2438  self.__dict__.update(d)
2439  return self._set_from_binary(p)
2440 
2441  __swig_destroy__ = _IMP_algebra.delete_BoundingBox5D
2442 
2443 # Register BoundingBox5D in _IMP_algebra:
2444 _IMP_algebra.BoundingBox5D_swigregister(BoundingBox5D)
2445 class BoundingBox6D(object):
2446  r"""Proxy of C++ IMP::algebra::BoundingBoxD< 6 > class."""
2447 
2448  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2449 
2450  def get_dimension(self):
2451  r"""get_dimension(BoundingBox6D self) -> unsigned int"""
2452  return _IMP_algebra.BoundingBox6D_get_dimension(self)
2453 
2454  def get_corner(self, i):
2455  r"""get_corner(BoundingBox6D self, unsigned int i) -> Vector6D"""
2456  return _IMP_algebra.BoundingBox6D_get_corner(self, i)
2457 
2458  def get_corner_0(self):
2459  r"""get_corner_0(BoundingBox6D self) -> Vector6D"""
2460  return _IMP_algebra.BoundingBox6D_get_corner_0(self)
2461 
2462  def get_corner_1(self):
2463  r"""get_corner_1(BoundingBox6D self) -> Vector6D"""
2464  return _IMP_algebra.BoundingBox6D_get_corner_1(self)
2465 
2466  def get_contains(self, *args):
2467  r"""
2468  get_contains(BoundingBox6D self, Vector6D o) -> bool
2469  get_contains(BoundingBox6D self, BoundingBox6D bb) -> bool
2470  """
2471  return _IMP_algebra.BoundingBox6D_get_contains(self, *args)
2472 
2473  def show(self, *args):
2474  r"""show(BoundingBox6D self, _ostream out=std::cout)"""
2475  return _IMP_algebra.BoundingBox6D_show(self, *args)
2476 
2477  def __str__(self):
2478  r"""__str__(BoundingBox6D self) -> std::string"""
2479  return _IMP_algebra.BoundingBox6D___str__(self)
2480 
2481  def __repr__(self):
2482  r"""__repr__(BoundingBox6D self) -> std::string"""
2483  return _IMP_algebra.BoundingBox6D___repr__(self)
2484 
2485  def __cmp__(self, arg2):
2486  r"""__cmp__(BoundingBox6D self, BoundingBox6D arg2) -> int"""
2487  return _IMP_algebra.BoundingBox6D___cmp__(self, arg2)
2488 
2489  def __eq__(self, arg2):
2490  r"""__eq__(BoundingBox6D self, BoundingBox6D arg2) -> bool"""
2491  return _IMP_algebra.BoundingBox6D___eq__(self, arg2)
2492 
2493  def __init__(self, *args):
2494  r"""
2495  __init__(BoundingBox6D self, unsigned int d) -> BoundingBox6D
2496  __init__(BoundingBox6D self, Vector6D lb, Vector6D ub) -> BoundingBox6D
2497  __init__(BoundingBox6D self, Vector6D v) -> BoundingBox6D
2498  __init__(BoundingBox6D self, IMP::Vector< IMP::algebra::VectorD< 6 > > const & points) -> BoundingBox6D
2499  __init__(BoundingBox6D self) -> BoundingBox6D
2500  """
2501  _IMP_algebra.BoundingBox6D_swiginit(self, _IMP_algebra.new_BoundingBox6D(*args))
2502 
2503  def __getitem__(self, index):
2504  r"""__getitem__(BoundingBox6D self, unsigned int index) -> Vector6D"""
2505  return _IMP_algebra.BoundingBox6D___getitem__(self, index)
2506 
2507  def __iadd__(self, *args):
2508  _IMP_algebra.BoundingBox6D___iadd__(self, *args)
2509  return self
2510 
2511 
2512 
2513  def __len__(self):
2514  r"""__len__(BoundingBox6D self) -> unsigned int"""
2515  return _IMP_algebra.BoundingBox6D___len__(self)
2516 
2517  def __add__(self, *args):
2518  r"""
2519  __add__(BoundingBox6D self, BoundingBox6D o) -> BoundingBox6D
2520  __add__(BoundingBox6D self, Vector6D o) -> BoundingBox6D
2521  __add__(BoundingBox6D self, double o) -> BoundingBox6D
2522  """
2523  return _IMP_algebra.BoundingBox6D___add__(self, *args)
2524 
2525  def _get_as_binary(self):
2526  r"""_get_as_binary(BoundingBox6D self) -> PyObject *"""
2527  return _IMP_algebra.BoundingBox6D__get_as_binary(self)
2528 
2529  def _set_from_binary(self, p):
2530  r"""_set_from_binary(BoundingBox6D self, PyObject * p)"""
2531  return _IMP_algebra.BoundingBox6D__set_from_binary(self, p)
2532 
2533  def __getstate__(self):
2534  p = self._get_as_binary()
2535  if len(self.__dict__) > 1:
2536  d = self.__dict__.copy()
2537  del d['this']
2538  p = (d, p)
2539  return p
2540 
2541  def __setstate__(self, p):
2542  if not hasattr(self, 'this'):
2543  self.__init__()
2544  if isinstance(p, tuple):
2545  d, p = p
2546  self.__dict__.update(d)
2547  return self._set_from_binary(p)
2548 
2549  __swig_destroy__ = _IMP_algebra.delete_BoundingBox6D
2550 
2551 # Register BoundingBox6D in _IMP_algebra:
2552 _IMP_algebra.BoundingBox6D_swigregister(BoundingBox6D)
2553 class BoundingBoxKD(object):
2554  r"""Proxy of C++ IMP::algebra::BoundingBoxD< -1 > class."""
2555 
2556  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2557 
2558  def get_dimension(self):
2559  r"""get_dimension(BoundingBoxKD self) -> unsigned int"""
2560  return _IMP_algebra.BoundingBoxKD_get_dimension(self)
2561 
2562  def get_corner(self, i):
2563  r"""get_corner(BoundingBoxKD self, unsigned int i) -> VectorKD"""
2564  return _IMP_algebra.BoundingBoxKD_get_corner(self, i)
2565 
2566  def get_corner_0(self):
2567  r"""get_corner_0(BoundingBoxKD self) -> VectorKD"""
2568  return _IMP_algebra.BoundingBoxKD_get_corner_0(self)
2569 
2570  def get_corner_1(self):
2571  r"""get_corner_1(BoundingBoxKD self) -> VectorKD"""
2572  return _IMP_algebra.BoundingBoxKD_get_corner_1(self)
2573 
2574  def get_contains(self, *args):
2575  r"""
2576  get_contains(BoundingBoxKD self, VectorKD o) -> bool
2577  get_contains(BoundingBoxKD self, BoundingBoxKD bb) -> bool
2578  """
2579  return _IMP_algebra.BoundingBoxKD_get_contains(self, *args)
2580 
2581  def show(self, *args):
2582  r"""show(BoundingBoxKD self, _ostream out=std::cout)"""
2583  return _IMP_algebra.BoundingBoxKD_show(self, *args)
2584 
2585  def __str__(self):
2586  r"""__str__(BoundingBoxKD self) -> std::string"""
2587  return _IMP_algebra.BoundingBoxKD___str__(self)
2588 
2589  def __repr__(self):
2590  r"""__repr__(BoundingBoxKD self) -> std::string"""
2591  return _IMP_algebra.BoundingBoxKD___repr__(self)
2592 
2593  def __cmp__(self, arg2):
2594  r"""__cmp__(BoundingBoxKD self, BoundingBoxKD arg2) -> int"""
2595  return _IMP_algebra.BoundingBoxKD___cmp__(self, arg2)
2596 
2597  def __eq__(self, arg2):
2598  r"""__eq__(BoundingBoxKD self, BoundingBoxKD arg2) -> bool"""
2599  return _IMP_algebra.BoundingBoxKD___eq__(self, arg2)
2600 
2601  def __init__(self, *args):
2602  r"""
2603  __init__(BoundingBoxKD self, unsigned int d) -> BoundingBoxKD
2604  __init__(BoundingBoxKD self, VectorKD lb, VectorKD ub) -> BoundingBoxKD
2605  __init__(BoundingBoxKD self, VectorKD v) -> BoundingBoxKD
2606  __init__(BoundingBoxKD self, IMP::Vector< IMP::algebra::VectorD< -1 > > const & points) -> BoundingBoxKD
2607  __init__(BoundingBoxKD self) -> BoundingBoxKD
2608  """
2609  _IMP_algebra.BoundingBoxKD_swiginit(self, _IMP_algebra.new_BoundingBoxKD(*args))
2610 
2611  def __getitem__(self, index):
2612  r"""__getitem__(BoundingBoxKD self, unsigned int index) -> VectorKD"""
2613  return _IMP_algebra.BoundingBoxKD___getitem__(self, index)
2614 
2615  def __iadd__(self, *args):
2616  _IMP_algebra.BoundingBoxKD___iadd__(self, *args)
2617  return self
2618 
2619 
2620 
2621  def __len__(self):
2622  r"""__len__(BoundingBoxKD self) -> unsigned int"""
2623  return _IMP_algebra.BoundingBoxKD___len__(self)
2624 
2625  def __add__(self, *args):
2626  r"""
2627  __add__(BoundingBoxKD self, BoundingBoxKD o) -> BoundingBoxKD
2628  __add__(BoundingBoxKD self, VectorKD o) -> BoundingBoxKD
2629  __add__(BoundingBoxKD self, double o) -> BoundingBoxKD
2630  """
2631  return _IMP_algebra.BoundingBoxKD___add__(self, *args)
2632 
2633  def _get_as_binary(self):
2634  r"""_get_as_binary(BoundingBoxKD self) -> PyObject *"""
2635  return _IMP_algebra.BoundingBoxKD__get_as_binary(self)
2636 
2637  def _set_from_binary(self, p):
2638  r"""_set_from_binary(BoundingBoxKD self, PyObject * p)"""
2639  return _IMP_algebra.BoundingBoxKD__set_from_binary(self, p)
2640 
2641  def __getstate__(self):
2642  p = self._get_as_binary()
2643  if len(self.__dict__) > 1:
2644  d = self.__dict__.copy()
2645  del d['this']
2646  p = (d, p)
2647  return p
2648 
2649  def __setstate__(self, p):
2650  if not hasattr(self, 'this'):
2651  self.__init__()
2652  if isinstance(p, tuple):
2653  d, p = p
2654  self.__dict__.update(d)
2655  return self._set_from_binary(p)
2656 
2657  __swig_destroy__ = _IMP_algebra.delete_BoundingBoxKD
2658 
2659 # Register BoundingBoxKD in _IMP_algebra:
2660 _IMP_algebra.BoundingBoxKD_swigregister(BoundingBoxKD)
2661 class Sphere1D(IMP._GeometricPrimitive1D):
2662  r"""Proxy of C++ IMP::algebra::SphereD< 1 > class."""
2663 
2664  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2665 
2666  def __init__(self, *args):
2667  r"""
2668  __init__(Sphere1D self) -> Sphere1D
2669  __init__(Sphere1D self, Vector1D center, double radius) -> Sphere1D
2670  """
2671  _IMP_algebra.Sphere1D_swiginit(self, _IMP_algebra.new_Sphere1D(*args))
2672 
2673  def get_radius(self):
2674  r"""get_radius(Sphere1D self) -> double"""
2675  return _IMP_algebra.Sphere1D_get_radius(self)
2676 
2677  def get_center(self):
2678  r"""get_center(Sphere1D self) -> Vector1D"""
2679  return _IMP_algebra.Sphere1D_get_center(self)
2680 
2681  def get_contains(self, *args):
2682  r"""
2683  get_contains(Sphere1D self, Sphere1D o) -> bool
2684  get_contains(Sphere1D self, Vector1D p) -> bool
2685  """
2686  return _IMP_algebra.Sphere1D_get_contains(self, *args)
2687 
2688  def show(self, *args):
2689  r"""show(Sphere1D self, _ostream out=std::cout)"""
2690  return _IMP_algebra.Sphere1D_show(self, *args)
2691 
2692  def get_dimension(self):
2693  r"""get_dimension(Sphere1D self) -> unsigned int"""
2694  return _IMP_algebra.Sphere1D_get_dimension(self)
2695 
2696  def __str__(self):
2697  r"""__str__(Sphere1D self) -> std::string"""
2698  return _IMP_algebra.Sphere1D___str__(self)
2699 
2700  def __repr__(self):
2701  r"""__repr__(Sphere1D self) -> std::string"""
2702  return _IMP_algebra.Sphere1D___repr__(self)
2703 
2704  def __cmp__(self, arg2):
2705  r"""__cmp__(Sphere1D self, Sphere1D arg2) -> int"""
2706  return _IMP_algebra.Sphere1D___cmp__(self, arg2)
2707 
2708  def __eq__(self, arg2):
2709  r"""__eq__(Sphere1D self, Sphere1D arg2) -> bool"""
2710  return _IMP_algebra.Sphere1D___eq__(self, arg2)
2711 
2712  def _get_as_binary(self):
2713  r"""_get_as_binary(Sphere1D self) -> PyObject *"""
2714  return _IMP_algebra.Sphere1D__get_as_binary(self)
2715 
2716  def _set_from_binary(self, p):
2717  r"""_set_from_binary(Sphere1D self, PyObject * p)"""
2718  return _IMP_algebra.Sphere1D__set_from_binary(self, p)
2719 
2720  def __getstate__(self):
2721  p = self._get_as_binary()
2722  if len(self.__dict__) > 1:
2723  d = self.__dict__.copy()
2724  del d['this']
2725  p = (d, p)
2726  return p
2727 
2728  def __setstate__(self, p):
2729  if not hasattr(self, 'this'):
2730  self.__init__()
2731  if isinstance(p, tuple):
2732  d, p = p
2733  self.__dict__.update(d)
2734  return self._set_from_binary(p)
2735 
2736  __swig_destroy__ = _IMP_algebra.delete_Sphere1D
2737 
2738 # Register Sphere1D in _IMP_algebra:
2739 _IMP_algebra.Sphere1D_swigregister(Sphere1D)
2740 class Sphere2D(IMP._GeometricPrimitive2D):
2741  r"""Proxy of C++ IMP::algebra::SphereD< 2 > class."""
2742 
2743  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2744 
2745  def __init__(self, *args):
2746  r"""
2747  __init__(Sphere2D self) -> Sphere2D
2748  __init__(Sphere2D self, Vector2D center, double radius) -> Sphere2D
2749  """
2750  _IMP_algebra.Sphere2D_swiginit(self, _IMP_algebra.new_Sphere2D(*args))
2751 
2752  def get_radius(self):
2753  r"""get_radius(Sphere2D self) -> double"""
2754  return _IMP_algebra.Sphere2D_get_radius(self)
2755 
2756  def get_center(self):
2757  r"""get_center(Sphere2D self) -> Vector2D"""
2758  return _IMP_algebra.Sphere2D_get_center(self)
2759 
2760  def get_contains(self, *args):
2761  r"""
2762  get_contains(Sphere2D self, Sphere2D o) -> bool
2763  get_contains(Sphere2D self, Vector2D p) -> bool
2764  """
2765  return _IMP_algebra.Sphere2D_get_contains(self, *args)
2766 
2767  def show(self, *args):
2768  r"""show(Sphere2D self, _ostream out=std::cout)"""
2769  return _IMP_algebra.Sphere2D_show(self, *args)
2770 
2771  def get_dimension(self):
2772  r"""get_dimension(Sphere2D self) -> unsigned int"""
2773  return _IMP_algebra.Sphere2D_get_dimension(self)
2774 
2775  def __str__(self):
2776  r"""__str__(Sphere2D self) -> std::string"""
2777  return _IMP_algebra.Sphere2D___str__(self)
2778 
2779  def __repr__(self):
2780  r"""__repr__(Sphere2D self) -> std::string"""
2781  return _IMP_algebra.Sphere2D___repr__(self)
2782 
2783  def __cmp__(self, arg2):
2784  r"""__cmp__(Sphere2D self, Sphere2D arg2) -> int"""
2785  return _IMP_algebra.Sphere2D___cmp__(self, arg2)
2786 
2787  def __eq__(self, arg2):
2788  r"""__eq__(Sphere2D self, Sphere2D arg2) -> bool"""
2789  return _IMP_algebra.Sphere2D___eq__(self, arg2)
2790 
2791  def _get_as_binary(self):
2792  r"""_get_as_binary(Sphere2D self) -> PyObject *"""
2793  return _IMP_algebra.Sphere2D__get_as_binary(self)
2794 
2795  def _set_from_binary(self, p):
2796  r"""_set_from_binary(Sphere2D self, PyObject * p)"""
2797  return _IMP_algebra.Sphere2D__set_from_binary(self, p)
2798 
2799  def __getstate__(self):
2800  p = self._get_as_binary()
2801  if len(self.__dict__) > 1:
2802  d = self.__dict__.copy()
2803  del d['this']
2804  p = (d, p)
2805  return p
2806 
2807  def __setstate__(self, p):
2808  if not hasattr(self, 'this'):
2809  self.__init__()
2810  if isinstance(p, tuple):
2811  d, p = p
2812  self.__dict__.update(d)
2813  return self._set_from_binary(p)
2814 
2815  __swig_destroy__ = _IMP_algebra.delete_Sphere2D
2816 
2817 # Register Sphere2D in _IMP_algebra:
2818 _IMP_algebra.Sphere2D_swigregister(Sphere2D)
2819 class Sphere3D(IMP._GeometricPrimitive3D):
2820  r"""Proxy of C++ IMP::algebra::SphereD< 3 > class."""
2821 
2822  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2823 
2824  def __init__(self, *args):
2825  r"""
2826  __init__(Sphere3D self) -> Sphere3D
2827  __init__(Sphere3D self, Vector3D center, double radius) -> Sphere3D
2828  """
2829  _IMP_algebra.Sphere3D_swiginit(self, _IMP_algebra.new_Sphere3D(*args))
2830 
2831  def get_radius(self):
2832  r"""get_radius(Sphere3D self) -> double"""
2833  return _IMP_algebra.Sphere3D_get_radius(self)
2834 
2835  def get_center(self):
2836  r"""get_center(Sphere3D self) -> Vector3D"""
2837  return _IMP_algebra.Sphere3D_get_center(self)
2838 
2839  def get_contains(self, *args):
2840  r"""
2841  get_contains(Sphere3D self, Sphere3D o) -> bool
2842  get_contains(Sphere3D self, Vector3D p) -> bool
2843  """
2844  return _IMP_algebra.Sphere3D_get_contains(self, *args)
2845 
2846  def show(self, *args):
2847  r"""show(Sphere3D self, _ostream out=std::cout)"""
2848  return _IMP_algebra.Sphere3D_show(self, *args)
2849 
2850  def get_dimension(self):
2851  r"""get_dimension(Sphere3D self) -> unsigned int"""
2852  return _IMP_algebra.Sphere3D_get_dimension(self)
2853 
2854  def __str__(self):
2855  r"""__str__(Sphere3D self) -> std::string"""
2856  return _IMP_algebra.Sphere3D___str__(self)
2857 
2858  def __repr__(self):
2859  r"""__repr__(Sphere3D self) -> std::string"""
2860  return _IMP_algebra.Sphere3D___repr__(self)
2861 
2862  def __cmp__(self, arg2):
2863  r"""__cmp__(Sphere3D self, Sphere3D arg2) -> int"""
2864  return _IMP_algebra.Sphere3D___cmp__(self, arg2)
2865 
2866  def __eq__(self, arg2):
2867  r"""__eq__(Sphere3D self, Sphere3D arg2) -> bool"""
2868  return _IMP_algebra.Sphere3D___eq__(self, arg2)
2869 
2870  def _get_as_binary(self):
2871  r"""_get_as_binary(Sphere3D self) -> PyObject *"""
2872  return _IMP_algebra.Sphere3D__get_as_binary(self)
2873 
2874  def _set_from_binary(self, p):
2875  r"""_set_from_binary(Sphere3D self, PyObject * p)"""
2876  return _IMP_algebra.Sphere3D__set_from_binary(self, p)
2877 
2878  def __getstate__(self):
2879  p = self._get_as_binary()
2880  if len(self.__dict__) > 1:
2881  d = self.__dict__.copy()
2882  del d['this']
2883  p = (d, p)
2884  return p
2885 
2886  def __setstate__(self, p):
2887  if not hasattr(self, 'this'):
2888  self.__init__()
2889  if isinstance(p, tuple):
2890  d, p = p
2891  self.__dict__.update(d)
2892  return self._set_from_binary(p)
2893 
2894  __swig_destroy__ = _IMP_algebra.delete_Sphere3D
2895 
2896 # Register Sphere3D in _IMP_algebra:
2897 _IMP_algebra.Sphere3D_swigregister(Sphere3D)
2898 class Sphere4D(IMP._GeometricPrimitive4D):
2899  r"""Proxy of C++ IMP::algebra::SphereD< 4 > class."""
2900 
2901  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2902 
2903  def __init__(self, *args):
2904  r"""
2905  __init__(Sphere4D self) -> Sphere4D
2906  __init__(Sphere4D self, Vector4D center, double radius) -> Sphere4D
2907  """
2908  _IMP_algebra.Sphere4D_swiginit(self, _IMP_algebra.new_Sphere4D(*args))
2909 
2910  def get_radius(self):
2911  r"""get_radius(Sphere4D self) -> double"""
2912  return _IMP_algebra.Sphere4D_get_radius(self)
2913 
2914  def get_center(self):
2915  r"""get_center(Sphere4D self) -> Vector4D"""
2916  return _IMP_algebra.Sphere4D_get_center(self)
2917 
2918  def get_contains(self, *args):
2919  r"""
2920  get_contains(Sphere4D self, Sphere4D o) -> bool
2921  get_contains(Sphere4D self, Vector4D p) -> bool
2922  """
2923  return _IMP_algebra.Sphere4D_get_contains(self, *args)
2924 
2925  def show(self, *args):
2926  r"""show(Sphere4D self, _ostream out=std::cout)"""
2927  return _IMP_algebra.Sphere4D_show(self, *args)
2928 
2929  def get_dimension(self):
2930  r"""get_dimension(Sphere4D self) -> unsigned int"""
2931  return _IMP_algebra.Sphere4D_get_dimension(self)
2932 
2933  def __str__(self):
2934  r"""__str__(Sphere4D self) -> std::string"""
2935  return _IMP_algebra.Sphere4D___str__(self)
2936 
2937  def __repr__(self):
2938  r"""__repr__(Sphere4D self) -> std::string"""
2939  return _IMP_algebra.Sphere4D___repr__(self)
2940 
2941  def __cmp__(self, arg2):
2942  r"""__cmp__(Sphere4D self, Sphere4D arg2) -> int"""
2943  return _IMP_algebra.Sphere4D___cmp__(self, arg2)
2944 
2945  def __eq__(self, arg2):
2946  r"""__eq__(Sphere4D self, Sphere4D arg2) -> bool"""
2947  return _IMP_algebra.Sphere4D___eq__(self, arg2)
2948 
2949  def _get_as_binary(self):
2950  r"""_get_as_binary(Sphere4D self) -> PyObject *"""
2951  return _IMP_algebra.Sphere4D__get_as_binary(self)
2952 
2953  def _set_from_binary(self, p):
2954  r"""_set_from_binary(Sphere4D self, PyObject * p)"""
2955  return _IMP_algebra.Sphere4D__set_from_binary(self, p)
2956 
2957  def __getstate__(self):
2958  p = self._get_as_binary()
2959  if len(self.__dict__) > 1:
2960  d = self.__dict__.copy()
2961  del d['this']
2962  p = (d, p)
2963  return p
2964 
2965  def __setstate__(self, p):
2966  if not hasattr(self, 'this'):
2967  self.__init__()
2968  if isinstance(p, tuple):
2969  d, p = p
2970  self.__dict__.update(d)
2971  return self._set_from_binary(p)
2972 
2973  __swig_destroy__ = _IMP_algebra.delete_Sphere4D
2974 
2975 # Register Sphere4D in _IMP_algebra:
2976 _IMP_algebra.Sphere4D_swigregister(Sphere4D)
2977 class Sphere5D(IMP._GeometricPrimitive5D):
2978  r"""Proxy of C++ IMP::algebra::SphereD< 5 > class."""
2979 
2980  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2981 
2982  def __init__(self, *args):
2983  r"""
2984  __init__(Sphere5D self) -> Sphere5D
2985  __init__(Sphere5D self, Vector5D center, double radius) -> Sphere5D
2986  """
2987  _IMP_algebra.Sphere5D_swiginit(self, _IMP_algebra.new_Sphere5D(*args))
2988 
2989  def get_radius(self):
2990  r"""get_radius(Sphere5D self) -> double"""
2991  return _IMP_algebra.Sphere5D_get_radius(self)
2992 
2993  def get_center(self):
2994  r"""get_center(Sphere5D self) -> Vector5D"""
2995  return _IMP_algebra.Sphere5D_get_center(self)
2996 
2997  def get_contains(self, *args):
2998  r"""
2999  get_contains(Sphere5D self, Sphere5D o) -> bool
3000  get_contains(Sphere5D self, Vector5D p) -> bool
3001  """
3002  return _IMP_algebra.Sphere5D_get_contains(self, *args)
3003 
3004  def show(self, *args):
3005  r"""show(Sphere5D self, _ostream out=std::cout)"""
3006  return _IMP_algebra.Sphere5D_show(self, *args)
3007 
3008  def get_dimension(self):
3009  r"""get_dimension(Sphere5D self) -> unsigned int"""
3010  return _IMP_algebra.Sphere5D_get_dimension(self)
3011 
3012  def __str__(self):
3013  r"""__str__(Sphere5D self) -> std::string"""
3014  return _IMP_algebra.Sphere5D___str__(self)
3015 
3016  def __repr__(self):
3017  r"""__repr__(Sphere5D self) -> std::string"""
3018  return _IMP_algebra.Sphere5D___repr__(self)
3019 
3020  def __cmp__(self, arg2):
3021  r"""__cmp__(Sphere5D self, Sphere5D arg2) -> int"""
3022  return _IMP_algebra.Sphere5D___cmp__(self, arg2)
3023 
3024  def __eq__(self, arg2):
3025  r"""__eq__(Sphere5D self, Sphere5D arg2) -> bool"""
3026  return _IMP_algebra.Sphere5D___eq__(self, arg2)
3027 
3028  def _get_as_binary(self):
3029  r"""_get_as_binary(Sphere5D self) -> PyObject *"""
3030  return _IMP_algebra.Sphere5D__get_as_binary(self)
3031 
3032  def _set_from_binary(self, p):
3033  r"""_set_from_binary(Sphere5D self, PyObject * p)"""
3034  return _IMP_algebra.Sphere5D__set_from_binary(self, p)
3035 
3036  def __getstate__(self):
3037  p = self._get_as_binary()
3038  if len(self.__dict__) > 1:
3039  d = self.__dict__.copy()
3040  del d['this']
3041  p = (d, p)
3042  return p
3043 
3044  def __setstate__(self, p):
3045  if not hasattr(self, 'this'):
3046  self.__init__()
3047  if isinstance(p, tuple):
3048  d, p = p
3049  self.__dict__.update(d)
3050  return self._set_from_binary(p)
3051 
3052  __swig_destroy__ = _IMP_algebra.delete_Sphere5D
3053 
3054 # Register Sphere5D in _IMP_algebra:
3055 _IMP_algebra.Sphere5D_swigregister(Sphere5D)
3056 class Sphere6D(IMP._GeometricPrimitive6D):
3057  r"""Proxy of C++ IMP::algebra::SphereD< 6 > class."""
3058 
3059  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3060 
3061  def __init__(self, *args):
3062  r"""
3063  __init__(Sphere6D self) -> Sphere6D
3064  __init__(Sphere6D self, Vector6D center, double radius) -> Sphere6D
3065  """
3066  _IMP_algebra.Sphere6D_swiginit(self, _IMP_algebra.new_Sphere6D(*args))
3067 
3068  def get_radius(self):
3069  r"""get_radius(Sphere6D self) -> double"""
3070  return _IMP_algebra.Sphere6D_get_radius(self)
3071 
3072  def get_center(self):
3073  r"""get_center(Sphere6D self) -> Vector6D"""
3074  return _IMP_algebra.Sphere6D_get_center(self)
3075 
3076  def get_contains(self, *args):
3077  r"""
3078  get_contains(Sphere6D self, Sphere6D o) -> bool
3079  get_contains(Sphere6D self, Vector6D p) -> bool
3080  """
3081  return _IMP_algebra.Sphere6D_get_contains(self, *args)
3082 
3083  def show(self, *args):
3084  r"""show(Sphere6D self, _ostream out=std::cout)"""
3085  return _IMP_algebra.Sphere6D_show(self, *args)
3086 
3087  def get_dimension(self):
3088  r"""get_dimension(Sphere6D self) -> unsigned int"""
3089  return _IMP_algebra.Sphere6D_get_dimension(self)
3090 
3091  def __str__(self):
3092  r"""__str__(Sphere6D self) -> std::string"""
3093  return _IMP_algebra.Sphere6D___str__(self)
3094 
3095  def __repr__(self):
3096  r"""__repr__(Sphere6D self) -> std::string"""
3097  return _IMP_algebra.Sphere6D___repr__(self)
3098 
3099  def __cmp__(self, arg2):
3100  r"""__cmp__(Sphere6D self, Sphere6D arg2) -> int"""
3101  return _IMP_algebra.Sphere6D___cmp__(self, arg2)
3102 
3103  def __eq__(self, arg2):
3104  r"""__eq__(Sphere6D self, Sphere6D arg2) -> bool"""
3105  return _IMP_algebra.Sphere6D___eq__(self, arg2)
3106 
3107  def _get_as_binary(self):
3108  r"""_get_as_binary(Sphere6D self) -> PyObject *"""
3109  return _IMP_algebra.Sphere6D__get_as_binary(self)
3110 
3111  def _set_from_binary(self, p):
3112  r"""_set_from_binary(Sphere6D self, PyObject * p)"""
3113  return _IMP_algebra.Sphere6D__set_from_binary(self, p)
3114 
3115  def __getstate__(self):
3116  p = self._get_as_binary()
3117  if len(self.__dict__) > 1:
3118  d = self.__dict__.copy()
3119  del d['this']
3120  p = (d, p)
3121  return p
3122 
3123  def __setstate__(self, p):
3124  if not hasattr(self, 'this'):
3125  self.__init__()
3126  if isinstance(p, tuple):
3127  d, p = p
3128  self.__dict__.update(d)
3129  return self._set_from_binary(p)
3130 
3131  __swig_destroy__ = _IMP_algebra.delete_Sphere6D
3132 
3133 # Register Sphere6D in _IMP_algebra:
3134 _IMP_algebra.Sphere6D_swigregister(Sphere6D)
3135 class SphereKD(IMP._GeometricPrimitiveKD):
3136  r"""Proxy of C++ IMP::algebra::SphereD< -1 > class."""
3137 
3138  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3139 
3140  def __init__(self, *args):
3141  r"""
3142  __init__(SphereKD self) -> SphereKD
3143  __init__(SphereKD self, VectorKD center, double radius) -> SphereKD
3144  """
3145  _IMP_algebra.SphereKD_swiginit(self, _IMP_algebra.new_SphereKD(*args))
3146 
3147  def get_radius(self):
3148  r"""get_radius(SphereKD self) -> double"""
3149  return _IMP_algebra.SphereKD_get_radius(self)
3150 
3151  def get_center(self):
3152  r"""get_center(SphereKD self) -> VectorKD"""
3153  return _IMP_algebra.SphereKD_get_center(self)
3154 
3155  def get_contains(self, *args):
3156  r"""
3157  get_contains(SphereKD self, SphereKD o) -> bool
3158  get_contains(SphereKD self, VectorKD p) -> bool
3159  """
3160  return _IMP_algebra.SphereKD_get_contains(self, *args)
3161 
3162  def show(self, *args):
3163  r"""show(SphereKD self, _ostream out=std::cout)"""
3164  return _IMP_algebra.SphereKD_show(self, *args)
3165 
3166  def get_dimension(self):
3167  r"""get_dimension(SphereKD self) -> unsigned int"""
3168  return _IMP_algebra.SphereKD_get_dimension(self)
3169 
3170  def __str__(self):
3171  r"""__str__(SphereKD self) -> std::string"""
3172  return _IMP_algebra.SphereKD___str__(self)
3173 
3174  def __repr__(self):
3175  r"""__repr__(SphereKD self) -> std::string"""
3176  return _IMP_algebra.SphereKD___repr__(self)
3177 
3178  def __cmp__(self, arg2):
3179  r"""__cmp__(SphereKD self, SphereKD arg2) -> int"""
3180  return _IMP_algebra.SphereKD___cmp__(self, arg2)
3181 
3182  def __eq__(self, arg2):
3183  r"""__eq__(SphereKD self, SphereKD arg2) -> bool"""
3184  return _IMP_algebra.SphereKD___eq__(self, arg2)
3185 
3186  def _get_as_binary(self):
3187  r"""_get_as_binary(SphereKD self) -> PyObject *"""
3188  return _IMP_algebra.SphereKD__get_as_binary(self)
3189 
3190  def _set_from_binary(self, p):
3191  r"""_set_from_binary(SphereKD self, PyObject * p)"""
3192  return _IMP_algebra.SphereKD__set_from_binary(self, p)
3193 
3194  def __getstate__(self):
3195  p = self._get_as_binary()
3196  if len(self.__dict__) > 1:
3197  d = self.__dict__.copy()
3198  del d['this']
3199  p = (d, p)
3200  return p
3201 
3202  def __setstate__(self, p):
3203  if not hasattr(self, 'this'):
3204  self.__init__()
3205  if isinstance(p, tuple):
3206  d, p = p
3207  self.__dict__.update(d)
3208  return self._set_from_binary(p)
3209 
3210  __swig_destroy__ = _IMP_algebra.delete_SphereKD
3211 
3212 # Register SphereKD in _IMP_algebra:
3213 _IMP_algebra.SphereKD_swigregister(SphereKD)
3214 class UnitSimplex1D(_UnitSimplexBase1D):
3215  r"""Proxy of C++ IMP::algebra::UnitSimplexD< 1 > class."""
3216 
3217  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3218 
3219  def __init__(self):
3220  r"""__init__(UnitSimplex1D self) -> UnitSimplex1D"""
3221  _IMP_algebra.UnitSimplex1D_swiginit(self, _IMP_algebra.new_UnitSimplex1D())
3222 
3223  def show(self, *args):
3224  r"""show(UnitSimplex1D self, _ostream out=std::cout)"""
3225  return _IMP_algebra.UnitSimplex1D_show(self, *args)
3226 
3227  def __str__(self):
3228  r"""__str__(UnitSimplex1D self) -> std::string"""
3229  return _IMP_algebra.UnitSimplex1D___str__(self)
3230 
3231  def __repr__(self):
3232  r"""__repr__(UnitSimplex1D self) -> std::string"""
3233  return _IMP_algebra.UnitSimplex1D___repr__(self)
3234 
3235  def __cmp__(self, arg2):
3236  r"""__cmp__(UnitSimplex1D self, UnitSimplex1D arg2) -> int"""
3237  return _IMP_algebra.UnitSimplex1D___cmp__(self, arg2)
3238 
3239  def __eq__(self, arg2):
3240  r"""__eq__(UnitSimplex1D self, UnitSimplex1D arg2) -> bool"""
3241  return _IMP_algebra.UnitSimplex1D___eq__(self, arg2)
3242 
3243  def _get_as_binary(self):
3244  r"""_get_as_binary(UnitSimplex1D self) -> PyObject *"""
3245  return _IMP_algebra.UnitSimplex1D__get_as_binary(self)
3246 
3247  def _set_from_binary(self, p):
3248  r"""_set_from_binary(UnitSimplex1D self, PyObject * p)"""
3249  return _IMP_algebra.UnitSimplex1D__set_from_binary(self, p)
3250 
3251  def __getstate__(self):
3252  p = self._get_as_binary()
3253  if len(self.__dict__) > 1:
3254  d = self.__dict__.copy()
3255  del d['this']
3256  p = (d, p)
3257  return p
3258 
3259  def __setstate__(self, p):
3260  if not hasattr(self, 'this'):
3261  self.__init__()
3262  if isinstance(p, tuple):
3263  d, p = p
3264  self.__dict__.update(d)
3265  return self._set_from_binary(p)
3266 
3267  __swig_destroy__ = _IMP_algebra.delete_UnitSimplex1D
3268 
3269 # Register UnitSimplex1D in _IMP_algebra:
3270 _IMP_algebra.UnitSimplex1D_swigregister(UnitSimplex1D)
3271 class UnitSimplex2D(_UnitSimplexBase2D):
3272  r"""Proxy of C++ IMP::algebra::UnitSimplexD< 2 > class."""
3273 
3274  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3275 
3276  def __init__(self):
3277  r"""__init__(UnitSimplex2D self) -> UnitSimplex2D"""
3278  _IMP_algebra.UnitSimplex2D_swiginit(self, _IMP_algebra.new_UnitSimplex2D())
3279 
3280  def show(self, *args):
3281  r"""show(UnitSimplex2D self, _ostream out=std::cout)"""
3282  return _IMP_algebra.UnitSimplex2D_show(self, *args)
3283 
3284  def __str__(self):
3285  r"""__str__(UnitSimplex2D self) -> std::string"""
3286  return _IMP_algebra.UnitSimplex2D___str__(self)
3287 
3288  def __repr__(self):
3289  r"""__repr__(UnitSimplex2D self) -> std::string"""
3290  return _IMP_algebra.UnitSimplex2D___repr__(self)
3291 
3292  def __cmp__(self, arg2):
3293  r"""__cmp__(UnitSimplex2D self, UnitSimplex2D arg2) -> int"""
3294  return _IMP_algebra.UnitSimplex2D___cmp__(self, arg2)
3295 
3296  def __eq__(self, arg2):
3297  r"""__eq__(UnitSimplex2D self, UnitSimplex2D arg2) -> bool"""
3298  return _IMP_algebra.UnitSimplex2D___eq__(self, arg2)
3299 
3300  def _get_as_binary(self):
3301  r"""_get_as_binary(UnitSimplex2D self) -> PyObject *"""
3302  return _IMP_algebra.UnitSimplex2D__get_as_binary(self)
3303 
3304  def _set_from_binary(self, p):
3305  r"""_set_from_binary(UnitSimplex2D self, PyObject * p)"""
3306  return _IMP_algebra.UnitSimplex2D__set_from_binary(self, p)
3307 
3308  def __getstate__(self):
3309  p = self._get_as_binary()
3310  if len(self.__dict__) > 1:
3311  d = self.__dict__.copy()
3312  del d['this']
3313  p = (d, p)
3314  return p
3315 
3316  def __setstate__(self, p):
3317  if not hasattr(self, 'this'):
3318  self.__init__()
3319  if isinstance(p, tuple):
3320  d, p = p
3321  self.__dict__.update(d)
3322  return self._set_from_binary(p)
3323 
3324  __swig_destroy__ = _IMP_algebra.delete_UnitSimplex2D
3325 
3326 # Register UnitSimplex2D in _IMP_algebra:
3327 _IMP_algebra.UnitSimplex2D_swigregister(UnitSimplex2D)
3328 class UnitSimplex3D(_UnitSimplexBase3D):
3329  r"""Proxy of C++ IMP::algebra::UnitSimplexD< 3 > class."""
3330 
3331  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3332 
3333  def __init__(self):
3334  r"""__init__(UnitSimplex3D self) -> UnitSimplex3D"""
3335  _IMP_algebra.UnitSimplex3D_swiginit(self, _IMP_algebra.new_UnitSimplex3D())
3336 
3337  def show(self, *args):
3338  r"""show(UnitSimplex3D self, _ostream out=std::cout)"""
3339  return _IMP_algebra.UnitSimplex3D_show(self, *args)
3340 
3341  def __str__(self):
3342  r"""__str__(UnitSimplex3D self) -> std::string"""
3343  return _IMP_algebra.UnitSimplex3D___str__(self)
3344 
3345  def __repr__(self):
3346  r"""__repr__(UnitSimplex3D self) -> std::string"""
3347  return _IMP_algebra.UnitSimplex3D___repr__(self)
3348 
3349  def __cmp__(self, arg2):
3350  r"""__cmp__(UnitSimplex3D self, UnitSimplex3D arg2) -> int"""
3351  return _IMP_algebra.UnitSimplex3D___cmp__(self, arg2)
3352 
3353  def __eq__(self, arg2):
3354  r"""__eq__(UnitSimplex3D self, UnitSimplex3D arg2) -> bool"""
3355  return _IMP_algebra.UnitSimplex3D___eq__(self, arg2)
3356 
3357  def _get_as_binary(self):
3358  r"""_get_as_binary(UnitSimplex3D self) -> PyObject *"""
3359  return _IMP_algebra.UnitSimplex3D__get_as_binary(self)
3360 
3361  def _set_from_binary(self, p):
3362  r"""_set_from_binary(UnitSimplex3D self, PyObject * p)"""
3363  return _IMP_algebra.UnitSimplex3D__set_from_binary(self, p)
3364 
3365  def __getstate__(self):
3366  p = self._get_as_binary()
3367  if len(self.__dict__) > 1:
3368  d = self.__dict__.copy()
3369  del d['this']
3370  p = (d, p)
3371  return p
3372 
3373  def __setstate__(self, p):
3374  if not hasattr(self, 'this'):
3375  self.__init__()
3376  if isinstance(p, tuple):
3377  d, p = p
3378  self.__dict__.update(d)
3379  return self._set_from_binary(p)
3380 
3381  __swig_destroy__ = _IMP_algebra.delete_UnitSimplex3D
3382 
3383 # Register UnitSimplex3D in _IMP_algebra:
3384 _IMP_algebra.UnitSimplex3D_swigregister(UnitSimplex3D)
3385 class UnitSimplex4D(_UnitSimplexBase4D):
3386  r"""Proxy of C++ IMP::algebra::UnitSimplexD< 4 > class."""
3387 
3388  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3389 
3390  def __init__(self):
3391  r"""__init__(UnitSimplex4D self) -> UnitSimplex4D"""
3392  _IMP_algebra.UnitSimplex4D_swiginit(self, _IMP_algebra.new_UnitSimplex4D())
3393 
3394  def show(self, *args):
3395  r"""show(UnitSimplex4D self, _ostream out=std::cout)"""
3396  return _IMP_algebra.UnitSimplex4D_show(self, *args)
3397 
3398  def __str__(self):
3399  r"""__str__(UnitSimplex4D self) -> std::string"""
3400  return _IMP_algebra.UnitSimplex4D___str__(self)
3401 
3402  def __repr__(self):
3403  r"""__repr__(UnitSimplex4D self) -> std::string"""
3404  return _IMP_algebra.UnitSimplex4D___repr__(self)
3405 
3406  def __cmp__(self, arg2):
3407  r"""__cmp__(UnitSimplex4D self, UnitSimplex4D arg2) -> int"""
3408  return _IMP_algebra.UnitSimplex4D___cmp__(self, arg2)
3409 
3410  def __eq__(self, arg2):
3411  r"""__eq__(UnitSimplex4D self, UnitSimplex4D arg2) -> bool"""
3412  return _IMP_algebra.UnitSimplex4D___eq__(self, arg2)
3413 
3414  def _get_as_binary(self):
3415  r"""_get_as_binary(UnitSimplex4D self) -> PyObject *"""
3416  return _IMP_algebra.UnitSimplex4D__get_as_binary(self)
3417 
3418  def _set_from_binary(self, p):
3419  r"""_set_from_binary(UnitSimplex4D self, PyObject * p)"""
3420  return _IMP_algebra.UnitSimplex4D__set_from_binary(self, p)
3421 
3422  def __getstate__(self):
3423  p = self._get_as_binary()
3424  if len(self.__dict__) > 1:
3425  d = self.__dict__.copy()
3426  del d['this']
3427  p = (d, p)
3428  return p
3429 
3430  def __setstate__(self, p):
3431  if not hasattr(self, 'this'):
3432  self.__init__()
3433  if isinstance(p, tuple):
3434  d, p = p
3435  self.__dict__.update(d)
3436  return self._set_from_binary(p)
3437 
3438  __swig_destroy__ = _IMP_algebra.delete_UnitSimplex4D
3439 
3440 # Register UnitSimplex4D in _IMP_algebra:
3441 _IMP_algebra.UnitSimplex4D_swigregister(UnitSimplex4D)
3442 class UnitSimplex5D(_UnitSimplexBase5D):
3443  r"""Proxy of C++ IMP::algebra::UnitSimplexD< 5 > class."""
3444 
3445  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3446 
3447  def __init__(self):
3448  r"""__init__(UnitSimplex5D self) -> UnitSimplex5D"""
3449  _IMP_algebra.UnitSimplex5D_swiginit(self, _IMP_algebra.new_UnitSimplex5D())
3450 
3451  def show(self, *args):
3452  r"""show(UnitSimplex5D self, _ostream out=std::cout)"""
3453  return _IMP_algebra.UnitSimplex5D_show(self, *args)
3454 
3455  def __str__(self):
3456  r"""__str__(UnitSimplex5D self) -> std::string"""
3457  return _IMP_algebra.UnitSimplex5D___str__(self)
3458 
3459  def __repr__(self):
3460  r"""__repr__(UnitSimplex5D self) -> std::string"""
3461  return _IMP_algebra.UnitSimplex5D___repr__(self)
3462 
3463  def __cmp__(self, arg2):
3464  r"""__cmp__(UnitSimplex5D self, UnitSimplex5D arg2) -> int"""
3465  return _IMP_algebra.UnitSimplex5D___cmp__(self, arg2)
3466 
3467  def __eq__(self, arg2):
3468  r"""__eq__(UnitSimplex5D self, UnitSimplex5D arg2) -> bool"""
3469  return _IMP_algebra.UnitSimplex5D___eq__(self, arg2)
3470 
3471  def _get_as_binary(self):
3472  r"""_get_as_binary(UnitSimplex5D self) -> PyObject *"""
3473  return _IMP_algebra.UnitSimplex5D__get_as_binary(self)
3474 
3475  def _set_from_binary(self, p):
3476  r"""_set_from_binary(UnitSimplex5D self, PyObject * p)"""
3477  return _IMP_algebra.UnitSimplex5D__set_from_binary(self, p)
3478 
3479  def __getstate__(self):
3480  p = self._get_as_binary()
3481  if len(self.__dict__) > 1:
3482  d = self.__dict__.copy()
3483  del d['this']
3484  p = (d, p)
3485  return p
3486 
3487  def __setstate__(self, p):
3488  if not hasattr(self, 'this'):
3489  self.__init__()
3490  if isinstance(p, tuple):
3491  d, p = p
3492  self.__dict__.update(d)
3493  return self._set_from_binary(p)
3494 
3495  __swig_destroy__ = _IMP_algebra.delete_UnitSimplex5D
3496 
3497 # Register UnitSimplex5D in _IMP_algebra:
3498 _IMP_algebra.UnitSimplex5D_swigregister(UnitSimplex5D)
3499 class UnitSimplex6D(_UnitSimplexBase6D):
3500  r"""Proxy of C++ IMP::algebra::UnitSimplexD< 6 > class."""
3501 
3502  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3503 
3504  def __init__(self):
3505  r"""__init__(UnitSimplex6D self) -> UnitSimplex6D"""
3506  _IMP_algebra.UnitSimplex6D_swiginit(self, _IMP_algebra.new_UnitSimplex6D())
3507 
3508  def show(self, *args):
3509  r"""show(UnitSimplex6D self, _ostream out=std::cout)"""
3510  return _IMP_algebra.UnitSimplex6D_show(self, *args)
3511 
3512  def __str__(self):
3513  r"""__str__(UnitSimplex6D self) -> std::string"""
3514  return _IMP_algebra.UnitSimplex6D___str__(self)
3515 
3516  def __repr__(self):
3517  r"""__repr__(UnitSimplex6D self) -> std::string"""
3518  return _IMP_algebra.UnitSimplex6D___repr__(self)
3519 
3520  def __cmp__(self, arg2):
3521  r"""__cmp__(UnitSimplex6D self, UnitSimplex6D arg2) -> int"""
3522  return _IMP_algebra.UnitSimplex6D___cmp__(self, arg2)
3523 
3524  def __eq__(self, arg2):
3525  r"""__eq__(UnitSimplex6D self, UnitSimplex6D arg2) -> bool"""
3526  return _IMP_algebra.UnitSimplex6D___eq__(self, arg2)
3527 
3528  def _get_as_binary(self):
3529  r"""_get_as_binary(UnitSimplex6D self) -> PyObject *"""
3530  return _IMP_algebra.UnitSimplex6D__get_as_binary(self)
3531 
3532  def _set_from_binary(self, p):
3533  r"""_set_from_binary(UnitSimplex6D self, PyObject * p)"""
3534  return _IMP_algebra.UnitSimplex6D__set_from_binary(self, p)
3535 
3536  def __getstate__(self):
3537  p = self._get_as_binary()
3538  if len(self.__dict__) > 1:
3539  d = self.__dict__.copy()
3540  del d['this']
3541  p = (d, p)
3542  return p
3543 
3544  def __setstate__(self, p):
3545  if not hasattr(self, 'this'):
3546  self.__init__()
3547  if isinstance(p, tuple):
3548  d, p = p
3549  self.__dict__.update(d)
3550  return self._set_from_binary(p)
3551 
3552  __swig_destroy__ = _IMP_algebra.delete_UnitSimplex6D
3553 
3554 # Register UnitSimplex6D in _IMP_algebra:
3555 _IMP_algebra.UnitSimplex6D_swigregister(UnitSimplex6D)
3556 class UnitSimplexKD(_UnitSimplexBaseKD):
3557  r"""Proxy of C++ IMP::algebra::UnitSimplexD< -1 > class."""
3558 
3559  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3560  __repr__ = _swig_repr
3561 
3562  def __init__(self, d=1):
3563  r"""__init__(UnitSimplexKD self, int d=1) -> UnitSimplexKD"""
3564  _IMP_algebra.UnitSimplexKD_swiginit(self, _IMP_algebra.new_UnitSimplexKD(d))
3565 
3566  def show(self, *args):
3567  r"""show(UnitSimplexKD self, _ostream out=std::cout)"""
3568  return _IMP_algebra.UnitSimplexKD_show(self, *args)
3569 
3570  def _get_as_binary(self):
3571  r"""_get_as_binary(UnitSimplexKD self) -> PyObject *"""
3572  return _IMP_algebra.UnitSimplexKD__get_as_binary(self)
3573 
3574  def _set_from_binary(self, p):
3575  r"""_set_from_binary(UnitSimplexKD self, PyObject * p)"""
3576  return _IMP_algebra.UnitSimplexKD__set_from_binary(self, p)
3577 
3578  def __getstate__(self):
3579  p = self._get_as_binary()
3580  if len(self.__dict__) > 1:
3581  d = self.__dict__.copy()
3582  del d['this']
3583  p = (d, p)
3584  return p
3585 
3586  def __setstate__(self, p):
3587  if not hasattr(self, 'this'):
3588  self.__init__()
3589  if isinstance(p, tuple):
3590  d, p = p
3591  self.__dict__.update(d)
3592  return self._set_from_binary(p)
3593 
3594  __swig_destroy__ = _IMP_algebra.delete_UnitSimplexKD
3595 
3596 # Register UnitSimplexKD in _IMP_algebra:
3597 _IMP_algebra.UnitSimplexKD_swigregister(UnitSimplexKD)
3598 class ReferenceFrame3D(object):
3599  r"""Proxy of C++ IMP::algebra::ReferenceFrame3D class."""
3600 
3601  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3602 
3603  def __init__(self, *args):
3604  r"""
3605  __init__(ReferenceFrame3D self, ReferenceFrame3D arg2) -> ReferenceFrame3D
3606  __init__(ReferenceFrame3D self) -> ReferenceFrame3D
3607  __init__(ReferenceFrame3D self, Transformation3D tr) -> ReferenceFrame3D
3608  """
3609  _IMP_algebra.ReferenceFrame3D_swiginit(self, _IMP_algebra.new_ReferenceFrame3D(*args))
3610  __swig_destroy__ = _IMP_algebra.delete_ReferenceFrame3D
3611 
3612  def get_transformation_to(self):
3613  r"""get_transformation_to(ReferenceFrame3D self) -> Transformation3D"""
3614  return _IMP_algebra.ReferenceFrame3D_get_transformation_to(self)
3615 
3616  def get_transformation_from(self):
3617  r"""get_transformation_from(ReferenceFrame3D self) -> Transformation3D"""
3618  return _IMP_algebra.ReferenceFrame3D_get_transformation_from(self)
3619 
3620  def get_global_coordinates(self, v):
3621  r"""get_global_coordinates(ReferenceFrame3D self, Vector3D v) -> Vector3D"""
3622  return _IMP_algebra.ReferenceFrame3D_get_global_coordinates(self, v)
3623 
3624  def get_local_coordinates(self, v):
3625  r"""get_local_coordinates(ReferenceFrame3D self, Vector3D v) -> Vector3D"""
3626  return _IMP_algebra.ReferenceFrame3D_get_local_coordinates(self, v)
3627 
3628  def get_global_reference_frame(self, v):
3629  r"""get_global_reference_frame(ReferenceFrame3D self, ReferenceFrame3D v) -> ReferenceFrame3D"""
3630  return _IMP_algebra.ReferenceFrame3D_get_global_reference_frame(self, v)
3631 
3632  def get_local_reference_frame(self, v):
3633  r"""get_local_reference_frame(ReferenceFrame3D self, ReferenceFrame3D v) -> ReferenceFrame3D"""
3634  return _IMP_algebra.ReferenceFrame3D_get_local_reference_frame(self, v)
3635 
3636  def show(self, *args):
3637  r"""show(ReferenceFrame3D self, _ostream out=std::cout)"""
3638  return _IMP_algebra.ReferenceFrame3D_show(self, *args)
3639 
3640  def __str__(self):
3641  r"""__str__(ReferenceFrame3D self) -> std::string"""
3642  return _IMP_algebra.ReferenceFrame3D___str__(self)
3643 
3644  def __repr__(self):
3645  r"""__repr__(ReferenceFrame3D self) -> std::string"""
3646  return _IMP_algebra.ReferenceFrame3D___repr__(self)
3647 
3648  def _get_as_binary(self):
3649  r"""_get_as_binary(ReferenceFrame3D self) -> PyObject *"""
3650  return _IMP_algebra.ReferenceFrame3D__get_as_binary(self)
3651 
3652  def _set_from_binary(self, p):
3653  r"""_set_from_binary(ReferenceFrame3D self, PyObject * p)"""
3654  return _IMP_algebra.ReferenceFrame3D__set_from_binary(self, p)
3655 
3656  def __getstate__(self):
3657  p = self._get_as_binary()
3658  if len(self.__dict__) > 1:
3659  d = self.__dict__.copy()
3660  del d['this']
3661  p = (d, p)
3662  return p
3663 
3664  def __setstate__(self, p):
3665  if not hasattr(self, 'this'):
3666  self.__init__()
3667  if isinstance(p, tuple):
3668  d, p = p
3669  self.__dict__.update(d)
3670  return self._set_from_binary(p)
3671 
3672 
3673 # Register ReferenceFrame3D in _IMP_algebra:
3674 _IMP_algebra.ReferenceFrame3D_swigregister(ReferenceFrame3D)
3675 
3676 def get_transformed(*args):
3677  r"""
3678  get_transformed(BoundingBox3D bb, Transformation3D tr) -> BoundingBox3D
3679  get_transformed(Line3D l, Transformation3D tr) -> Line3D
3680  get_transformed(ReferenceFrame3D rf, Transformation3D tr) -> ReferenceFrame3D
3681  """
3682  return _IMP_algebra.get_transformed(*args)
3683 
3684 def get_transformation_from_first_to_second(a, b):
3685  r"""get_transformation_from_first_to_second(ReferenceFrame3D a, ReferenceFrame3D b) -> Transformation3D"""
3686  return _IMP_algebra.get_transformation_from_first_to_second(a, b)
3687 class SphericalVector3D(IMP._GeometricPrimitive3D):
3688  r"""Proxy of C++ IMP::algebra::SphericalVector3D class."""
3689 
3690  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3691 
3692  def __init__(self, *args):
3693  r"""
3694  __init__(SphericalVector3D self) -> SphericalVector3D
3695  __init__(SphericalVector3D self, Vector3D v) -> SphericalVector3D
3696  __init__(SphericalVector3D self, double r, double theta, double psi, bool apply_check=True) -> SphericalVector3D
3697  """
3698  _IMP_algebra.SphericalVector3D_swiginit(self, _IMP_algebra.new_SphericalVector3D(*args))
3699 
3700  def get_cartesian_coordinates(self):
3701  r"""get_cartesian_coordinates(SphericalVector3D self) -> Vector3D"""
3702  return _IMP_algebra.SphericalVector3D_get_cartesian_coordinates(self)
3703 
3704  def show(self, *args):
3705  r"""show(SphericalVector3D self, _ostream out=std::cout)"""
3706  return _IMP_algebra.SphericalVector3D_show(self, *args)
3707 
3708  def __str__(self):
3709  r"""__str__(SphericalVector3D self) -> std::string"""
3710  return _IMP_algebra.SphericalVector3D___str__(self)
3711 
3712  def __repr__(self):
3713  r"""__repr__(SphericalVector3D self) -> std::string"""
3714  return _IMP_algebra.SphericalVector3D___repr__(self)
3715 
3716  def _get_as_binary(self):
3717  r"""_get_as_binary(SphericalVector3D self) -> PyObject *"""
3718  return _IMP_algebra.SphericalVector3D__get_as_binary(self)
3719 
3720  def _set_from_binary(self, p):
3721  r"""_set_from_binary(SphericalVector3D self, PyObject * p)"""
3722  return _IMP_algebra.SphericalVector3D__set_from_binary(self, p)
3723 
3724  def __getstate__(self):
3725  p = self._get_as_binary()
3726  if len(self.__dict__) > 1:
3727  d = self.__dict__.copy()
3728  del d['this']
3729  p = (d, p)
3730  return p
3731 
3732  def __setstate__(self, p):
3733  if not hasattr(self, 'this'):
3734  self.__init__()
3735  if isinstance(p, tuple):
3736  d, p = p
3737  self.__dict__.update(d)
3738  return self._set_from_binary(p)
3739 
3740 
3741  def __getitem__(self, index):
3742  r"""__getitem__(SphericalVector3D self, unsigned int index) -> double"""
3743  return _IMP_algebra.SphericalVector3D___getitem__(self, index)
3744 
3745  def __setitem__(self, index, val):
3746  r"""__setitem__(SphericalVector3D self, unsigned int index, double val)"""
3747  return _IMP_algebra.SphericalVector3D___setitem__(self, index, val)
3748  __swig_destroy__ = _IMP_algebra.delete_SphericalVector3D
3749 
3750 # Register SphericalVector3D in _IMP_algebra:
3751 _IMP_algebra.SphericalVector3D_swigregister(SphericalVector3D)
3752 
3753 def get_alignments_from_first_to_second(pca1, pca2):
3754  r"""get_alignments_from_first_to_second(PrincipalComponentAnalysis3D pca1, PrincipalComponentAnalysis3D pca2) -> IMP::algebra::Transformation3Ds"""
3755  return _IMP_algebra.get_alignments_from_first_to_second(pca1, pca2)
3756 class Line3D(IMP._GeometricPrimitive3D):
3757  r"""Proxy of C++ IMP::algebra::Line3D class."""
3758 
3759  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3760 
3761  def __init__(self, *args):
3762  r"""
3763  __init__(Line3D self) -> Line3D
3764  __init__(Line3D self, Vector3D direction, Vector3D point_on_line) -> Line3D
3765  __init__(Line3D self, Segment3D s) -> Line3D
3766  """
3767  _IMP_algebra.Line3D_swiginit(self, _IMP_algebra.new_Line3D(*args))
3768 
3769  def get_direction(self):
3770  r"""get_direction(Line3D self) -> Vector3D"""
3771  return _IMP_algebra.Line3D_get_direction(self)
3772 
3773  def get_point_on_line(self):
3774  r"""get_point_on_line(Line3D self) -> Vector3D"""
3775  return _IMP_algebra.Line3D_get_point_on_line(self)
3776 
3777  def get_moment(self, *args):
3778  r"""
3779  get_moment(Line3D self) -> Vector3D
3780  get_moment(Line3D self, Vector3D v) -> Vector3D
3781  """
3782  return _IMP_algebra.Line3D_get_moment(self, *args)
3783 
3784  def get_reciprocal_product(self, l):
3785  r"""get_reciprocal_product(Line3D self, Line3D l) -> double"""
3786  return _IMP_algebra.Line3D_get_reciprocal_product(self, l)
3787 
3788  def get_opposite(self):
3789  r"""get_opposite(Line3D self) -> Line3D"""
3790  return _IMP_algebra.Line3D_get_opposite(self)
3791 
3792  def get_segment_starting_at(self, v, d):
3793  r"""get_segment_starting_at(Line3D self, Vector3D v, double d) -> Segment3D"""
3794  return _IMP_algebra.Line3D_get_segment_starting_at(self, v, d)
3795 
3796  def show(self, *args):
3797  r"""show(Line3D self, _ostream out=std::cout)"""
3798  return _IMP_algebra.Line3D_show(self, *args)
3799 
3800  def __str__(self):
3801  r"""__str__(Line3D self) -> std::string"""
3802  return _IMP_algebra.Line3D___str__(self)
3803 
3804  def __repr__(self):
3805  r"""__repr__(Line3D self) -> std::string"""
3806  return _IMP_algebra.Line3D___repr__(self)
3807 
3808  def _get_as_binary(self):
3809  r"""_get_as_binary(Line3D self) -> PyObject *"""
3810  return _IMP_algebra.Line3D__get_as_binary(self)
3811 
3812  def _set_from_binary(self, p):
3813  r"""_set_from_binary(Line3D self, PyObject * p)"""
3814  return _IMP_algebra.Line3D__set_from_binary(self, p)
3815 
3816  def __getstate__(self):
3817  p = self._get_as_binary()
3818  if len(self.__dict__) > 1:
3819  d = self.__dict__.copy()
3820  del d['this']
3821  p = (d, p)
3822  return p
3823 
3824  def __setstate__(self, p):
3825  if not hasattr(self, 'this'):
3826  self.__init__()
3827  if isinstance(p, tuple):
3828  d, p = p
3829  self.__dict__.update(d)
3830  return self._set_from_binary(p)
3831 
3832  __swig_destroy__ = _IMP_algebra.delete_Line3D
3833 
3834 # Register Line3D in _IMP_algebra:
3835 _IMP_algebra.Line3D_swigregister(Line3D)
3836 
3837 def get_line_3d_geometry(g):
3838  r"""get_line_3d_geometry(Line3D g) -> Line3D"""
3839  return _IMP_algebra.get_line_3d_geometry(g)
3840 
3841 def get_angle(a, b):
3842  r"""get_angle(Line3D a, Line3D b) -> double"""
3843  return _IMP_algebra.get_angle(a, b)
3844 
3846  r"""get_segment_connecting_first_to_second(Line3D a, Line3D b) -> Segment3D"""
3847  return _IMP_algebra.get_segment_connecting_first_to_second(a, b)
3848 class Segment3D(IMP._GeometricPrimitive3D):
3849  r"""Proxy of C++ IMP::algebra::Segment3D class."""
3850 
3851  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3852 
3853  def __init__(self, *args):
3854  r"""
3855  __init__(Segment3D self) -> Segment3D
3856  __init__(Segment3D self, Vector3D start, Vector3D end) -> Segment3D
3857  """
3858  _IMP_algebra.Segment3D_swiginit(self, _IMP_algebra.new_Segment3D(*args))
3859 
3860  def get_point(self, i):
3861  if i < 0 or i >= 2:
3862  raise IMP.UsageException("Invalid point index")
3863  return _IMP_algebra.Segment3D_get_point(self, i)
3864 
3865 
3866 
3867  def get_middle_point(self):
3868  r"""get_middle_point(Segment3D self) -> Vector3D"""
3869  return _IMP_algebra.Segment3D_get_middle_point(self)
3870 
3871  def get_direction(self):
3872  r"""get_direction(Segment3D self) -> Vector3D"""
3873  return _IMP_algebra.Segment3D_get_direction(self)
3874 
3875  def get_length(self):
3876  r"""get_length(Segment3D self) -> double"""
3877  return _IMP_algebra.Segment3D_get_length(self)
3878 
3879  def show(self, *args):
3880  r"""show(Segment3D self, _ostream out=std::cout)"""
3881  return _IMP_algebra.Segment3D_show(self, *args)
3882 
3883  def __str__(self):
3884  r"""__str__(Segment3D self) -> std::string"""
3885  return _IMP_algebra.Segment3D___str__(self)
3886 
3887  def __repr__(self):
3888  r"""__repr__(Segment3D self) -> std::string"""
3889  return _IMP_algebra.Segment3D___repr__(self)
3890 
3891  def _get_as_binary(self):
3892  r"""_get_as_binary(Segment3D self) -> PyObject *"""
3893  return _IMP_algebra.Segment3D__get_as_binary(self)
3894 
3895  def _set_from_binary(self, p):
3896  r"""_set_from_binary(Segment3D self, PyObject * p)"""
3897  return _IMP_algebra.Segment3D__set_from_binary(self, p)
3898 
3899  def __getstate__(self):
3900  p = self._get_as_binary()
3901  if len(self.__dict__) > 1:
3902  d = self.__dict__.copy()
3903  del d['this']
3904  p = (d, p)
3905  return p
3906 
3907  def __setstate__(self, p):
3908  if not hasattr(self, 'this'):
3909  self.__init__()
3910  if isinstance(p, tuple):
3911  d, p = p
3912  self.__dict__.update(d)
3913  return self._set_from_binary(p)
3914 
3915  __swig_destroy__ = _IMP_algebra.delete_Segment3D
3916 
3917 # Register Segment3D in _IMP_algebra:
3918 _IMP_algebra.Segment3D_swigregister(Segment3D)
3919 
3920 def get_segment_3d_geometry(g):
3921  r"""get_segment_3d_geometry(Segment3D g) -> Segment3D"""
3922  return _IMP_algebra.get_segment_3d_geometry(g)
3923 
3925  r"""get_relative_projection_on_segment(Segment3D s, Vector3D p) -> double"""
3926  return _IMP_algebra.get_relative_projection_on_segment(s, p)
3927 class Triangle3D(IMP._GeometricPrimitive3D):
3928  r"""Proxy of C++ IMP::algebra::Triangle3D class."""
3929 
3930  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3931 
3932  def __init__(self, *args):
3933  r"""
3934  __init__(Triangle3D self) -> Triangle3D
3935  __init__(Triangle3D self, Vector3D p1, Vector3D p2, Vector3D p3) -> Triangle3D
3936  """
3937  _IMP_algebra.Triangle3D_swiginit(self, _IMP_algebra.new_Triangle3D(*args))
3938 
3939  def get_point(self, i):
3940  r"""get_point(Triangle3D self, unsigned int i) -> Vector3D"""
3941  return _IMP_algebra.Triangle3D_get_point(self, i)
3942 
3943  def show(self, *args):
3944  r"""show(Triangle3D self, _ostream out=std::cout)"""
3945  return _IMP_algebra.Triangle3D_show(self, *args)
3946 
3947  def get_edge_lengths(self):
3948  r"""get_edge_lengths(Triangle3D self) -> IMP::Floats"""
3949  return _IMP_algebra.Triangle3D_get_edge_lengths(self)
3950 
3951  def __str__(self):
3952  r"""__str__(Triangle3D self) -> std::string"""
3953  return _IMP_algebra.Triangle3D___str__(self)
3954 
3955  def __repr__(self):
3956  r"""__repr__(Triangle3D self) -> std::string"""
3957  return _IMP_algebra.Triangle3D___repr__(self)
3958 
3959  def _get_as_binary(self):
3960  r"""_get_as_binary(Triangle3D self) -> PyObject *"""
3961  return _IMP_algebra.Triangle3D__get_as_binary(self)
3962 
3963  def _set_from_binary(self, p):
3964  r"""_set_from_binary(Triangle3D self, PyObject * p)"""
3965  return _IMP_algebra.Triangle3D__set_from_binary(self, p)
3966 
3967  def __getstate__(self):
3968  p = self._get_as_binary()
3969  if len(self.__dict__) > 1:
3970  d = self.__dict__.copy()
3971  del d['this']
3972  p = (d, p)
3973  return p
3974 
3975  def __setstate__(self, p):
3976  if not hasattr(self, 'this'):
3977  self.__init__()
3978  if isinstance(p, tuple):
3979  d, p = p
3980  self.__dict__.update(d)
3981  return self._set_from_binary(p)
3982 
3983  __swig_destroy__ = _IMP_algebra.delete_Triangle3D
3984 
3985 # Register Triangle3D in _IMP_algebra:
3986 _IMP_algebra.Triangle3D_swigregister(Triangle3D)
3987 
3988 def get_largest_triangle(points):
3989  r"""get_largest_triangle(IMP::algebra::Vector3Ds const & points) -> Triangle3D"""
3990  return _IMP_algebra.get_largest_triangle(points)
3991 
3992 def get_transformation_from_first_triangle_to_second(first_tri, second_tri):
3993  r"""get_transformation_from_first_triangle_to_second(Triangle3D first_tri, Triangle3D second_tri) -> Transformation3D"""
3994  return _IMP_algebra.get_transformation_from_first_triangle_to_second(first_tri, second_tri)
3995 
3996 def get_are_colinear(p1, p2, p3):
3997  r"""get_are_colinear(Vector3D p1, Vector3D p2, Vector3D p3) -> bool"""
3998  return _IMP_algebra.get_are_colinear(p1, p2, p3)
3999 class LinearFit2D(IMP._GeometricPrimitive2D):
4000  r"""Proxy of C++ IMP::algebra::LinearFit2D class."""
4001 
4002  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4003 
4004  def __init__(self, *args):
4005  r"""
4006  __init__(LinearFit2D self) -> LinearFit2D
4007  __init__(LinearFit2D self, IMP::algebra::Vector2Ds const & data, IMP::Floats const & error_bars=IMP::Floats()) -> LinearFit2D
4008  """
4009  _IMP_algebra.LinearFit2D_swiginit(self, _IMP_algebra.new_LinearFit2D(*args))
4010 
4011  def get_fit_error(self):
4012  r"""get_fit_error(LinearFit2D self) -> double"""
4013  return _IMP_algebra.LinearFit2D_get_fit_error(self)
4014 
4015  def get_a(self):
4016  r"""get_a(LinearFit2D self) -> double"""
4017  return _IMP_algebra.LinearFit2D_get_a(self)
4018 
4019  def get_b(self):
4020  r"""get_b(LinearFit2D self) -> double"""
4021  return _IMP_algebra.LinearFit2D_get_b(self)
4022 
4023  def show(self, *args):
4024  r"""show(LinearFit2D self, _ostream out=std::cout)"""
4025  return _IMP_algebra.LinearFit2D_show(self, *args)
4026 
4027  def __str__(self):
4028  r"""__str__(LinearFit2D self) -> std::string"""
4029  return _IMP_algebra.LinearFit2D___str__(self)
4030 
4031  def __repr__(self):
4032  r"""__repr__(LinearFit2D self) -> std::string"""
4033  return _IMP_algebra.LinearFit2D___repr__(self)
4034 
4035  def _get_as_binary(self):
4036  r"""_get_as_binary(LinearFit2D self) -> PyObject *"""
4037  return _IMP_algebra.LinearFit2D__get_as_binary(self)
4038 
4039  def _set_from_binary(self, p):
4040  r"""_set_from_binary(LinearFit2D self, PyObject * p)"""
4041  return _IMP_algebra.LinearFit2D__set_from_binary(self, p)
4042 
4043  def __getstate__(self):
4044  p = self._get_as_binary()
4045  if len(self.__dict__) > 1:
4046  d = self.__dict__.copy()
4047  del d['this']
4048  p = (d, p)
4049  return p
4050 
4051  def __setstate__(self, p):
4052  if not hasattr(self, 'this'):
4053  self.__init__()
4054  if isinstance(p, tuple):
4055  d, p = p
4056  self.__dict__.update(d)
4057  return self._set_from_binary(p)
4058 
4059  __swig_destroy__ = _IMP_algebra.delete_LinearFit2D
4060 
4061 # Register LinearFit2D in _IMP_algebra:
4062 _IMP_algebra.LinearFit2D_swigregister(LinearFit2D)
4063 class ParabolicFit2D(IMP._GeometricPrimitive2D):
4064  r"""Proxy of C++ IMP::algebra::ParabolicFit2D class."""
4065 
4066  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4067 
4068  def __init__(self, *args):
4069  r"""
4070  __init__(ParabolicFit2D self) -> ParabolicFit2D
4071  __init__(ParabolicFit2D self, IMP::algebra::Vector2Ds const & data) -> ParabolicFit2D
4072  """
4073  _IMP_algebra.ParabolicFit2D_swiginit(self, _IMP_algebra.new_ParabolicFit2D(*args))
4074 
4075  def get_fit_error(self):
4076  r"""get_fit_error(ParabolicFit2D self) -> double"""
4077  return _IMP_algebra.ParabolicFit2D_get_fit_error(self)
4078 
4079  def get_a(self):
4080  r"""get_a(ParabolicFit2D self) -> double"""
4081  return _IMP_algebra.ParabolicFit2D_get_a(self)
4082 
4083  def get_b(self):
4084  r"""get_b(ParabolicFit2D self) -> double"""
4085  return _IMP_algebra.ParabolicFit2D_get_b(self)
4086 
4087  def get_c(self):
4088  r"""get_c(ParabolicFit2D self) -> double"""
4089  return _IMP_algebra.ParabolicFit2D_get_c(self)
4090 
4091  def show(self, *args):
4092  r"""show(ParabolicFit2D self, _ostream out=std::cout)"""
4093  return _IMP_algebra.ParabolicFit2D_show(self, *args)
4094 
4095  def __str__(self):
4096  r"""__str__(ParabolicFit2D self) -> std::string"""
4097  return _IMP_algebra.ParabolicFit2D___str__(self)
4098 
4099  def __repr__(self):
4100  r"""__repr__(ParabolicFit2D self) -> std::string"""
4101  return _IMP_algebra.ParabolicFit2D___repr__(self)
4102 
4103  def _get_as_binary(self):
4104  r"""_get_as_binary(ParabolicFit2D self) -> PyObject *"""
4105  return _IMP_algebra.ParabolicFit2D__get_as_binary(self)
4106 
4107  def _set_from_binary(self, p):
4108  r"""_set_from_binary(ParabolicFit2D self, PyObject * p)"""
4109  return _IMP_algebra.ParabolicFit2D__set_from_binary(self, p)
4110 
4111  def __getstate__(self):
4112  p = self._get_as_binary()
4113  if len(self.__dict__) > 1:
4114  d = self.__dict__.copy()
4115  del d['this']
4116  p = (d, p)
4117  return p
4118 
4119  def __setstate__(self, p):
4120  if not hasattr(self, 'this'):
4121  self.__init__()
4122  if isinstance(p, tuple):
4123  d, p = p
4124  self.__dict__.update(d)
4125  return self._set_from_binary(p)
4126 
4127  __swig_destroy__ = _IMP_algebra.delete_ParabolicFit2D
4128 
4129 # Register ParabolicFit2D in _IMP_algebra:
4130 _IMP_algebra.ParabolicFit2D_swigregister(ParabolicFit2D)
4131 class Plane3D(IMP._GeometricPrimitive3D):
4132  r"""Proxy of C++ IMP::algebra::Plane3D class."""
4133 
4134  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4135 
4136  def __init__(self, *args):
4137  r"""
4138  __init__(Plane3D self) -> Plane3D
4139  __init__(Plane3D self, Vector3D point_on_plane, Vector3D normal_to_plane) -> Plane3D
4140  __init__(Plane3D self, double distance_to_plane, Vector3D normal_to_plane) -> Plane3D
4141  """
4142  _IMP_algebra.Plane3D_swiginit(self, _IMP_algebra.new_Plane3D(*args))
4143 
4144  def get_point_on_plane(self):
4145  r"""get_point_on_plane(Plane3D self) -> Vector3D"""
4146  return _IMP_algebra.Plane3D_get_point_on_plane(self)
4147 
4148  def get_normal(self):
4149  r"""get_normal(Plane3D self) -> Vector3D"""
4150  return _IMP_algebra.Plane3D_get_normal(self)
4151 
4152  def get_projected(self, p):
4153  r"""get_projected(Plane3D self, Vector3D p) -> Vector3D"""
4154  return _IMP_algebra.Plane3D_get_projected(self, p)
4155 
4156  def get_is_above(self, p):
4157  r"""get_is_above(Plane3D self, Vector3D p) -> bool"""
4158  return _IMP_algebra.Plane3D_get_is_above(self, p)
4159 
4160  def get_is_below(self, p):
4161  r"""get_is_below(Plane3D self, Vector3D p) -> bool"""
4162  return _IMP_algebra.Plane3D_get_is_below(self, p)
4163 
4164  def get_height(self, p):
4165  r"""get_height(Plane3D self, Vector3D p) -> double"""
4166  return _IMP_algebra.Plane3D_get_height(self, p)
4167 
4168  def show(self, *args):
4169  r"""show(Plane3D self, _ostream out=std::cout)"""
4170  return _IMP_algebra.Plane3D_show(self, *args)
4171 
4172  def get_opposite(self):
4173  r"""get_opposite(Plane3D self) -> Plane3D"""
4174  return _IMP_algebra.Plane3D_get_opposite(self)
4175 
4176  def get_distance_from_origin(self):
4177  r"""get_distance_from_origin(Plane3D self) -> double"""
4178  return _IMP_algebra.Plane3D_get_distance_from_origin(self)
4179 
4180  def __str__(self):
4181  r"""__str__(Plane3D self) -> std::string"""
4182  return _IMP_algebra.Plane3D___str__(self)
4183 
4184  def __repr__(self):
4185  r"""__repr__(Plane3D self) -> std::string"""
4186  return _IMP_algebra.Plane3D___repr__(self)
4187 
4188  def _get_as_binary(self):
4189  r"""_get_as_binary(Plane3D self) -> PyObject *"""
4190  return _IMP_algebra.Plane3D__get_as_binary(self)
4191 
4192  def _set_from_binary(self, p):
4193  r"""_set_from_binary(Plane3D self, PyObject * p)"""
4194  return _IMP_algebra.Plane3D__set_from_binary(self, p)
4195 
4196  def __getstate__(self):
4197  p = self._get_as_binary()
4198  if len(self.__dict__) > 1:
4199  d = self.__dict__.copy()
4200  del d['this']
4201  p = (d, p)
4202  return p
4203 
4204  def __setstate__(self, p):
4205  if not hasattr(self, 'this'):
4206  self.__init__()
4207  if isinstance(p, tuple):
4208  d, p = p
4209  self.__dict__.update(d)
4210  return self._set_from_binary(p)
4211 
4212  __swig_destroy__ = _IMP_algebra.delete_Plane3D
4213 
4214 # Register Plane3D in _IMP_algebra:
4215 _IMP_algebra.Plane3D_swigregister(Plane3D)
4216 
4217 def get_reflected(pln, p):
4218  r"""get_reflected(Plane3D pln, Vector3D p) -> Vector3D"""
4219  return _IMP_algebra.get_reflected(pln, p)
4220 
4221 def get_plane_3d_geometry(g):
4222  r"""get_plane_3d_geometry(Plane3D g) -> Plane3D"""
4223  return _IMP_algebra.get_plane_3d_geometry(g)
4224 class Reflection3D(IMP._GeometricPrimitive3D):
4225  r"""Proxy of C++ IMP::algebra::Reflection3D class."""
4226 
4227  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4228 
4229  def __init__(self, *args):
4230  r"""
4231  __init__(Reflection3D self) -> Reflection3D
4232  __init__(Reflection3D self, Plane3D pl) -> Reflection3D
4233  """
4234  _IMP_algebra.Reflection3D_swiginit(self, _IMP_algebra.new_Reflection3D(*args))
4235 
4236  def get_reflected(self, v):
4237  r"""get_reflected(Reflection3D self, Vector3D v) -> Vector3D"""
4238  return _IMP_algebra.Reflection3D_get_reflected(self, v)
4239 
4240  def show(self, *args):
4241  r"""show(Reflection3D self, _ostream out=std::cout)"""
4242  return _IMP_algebra.Reflection3D_show(self, *args)
4243 
4244  def __str__(self):
4245  r"""__str__(Reflection3D self) -> std::string"""
4246  return _IMP_algebra.Reflection3D___str__(self)
4247 
4248  def __repr__(self):
4249  r"""__repr__(Reflection3D self) -> std::string"""
4250  return _IMP_algebra.Reflection3D___repr__(self)
4251 
4252  def _get_as_binary(self):
4253  r"""_get_as_binary(Reflection3D self) -> PyObject *"""
4254  return _IMP_algebra.Reflection3D__get_as_binary(self)
4255 
4256  def _set_from_binary(self, p):
4257  r"""_set_from_binary(Reflection3D self, PyObject * p)"""
4258  return _IMP_algebra.Reflection3D__set_from_binary(self, p)
4259 
4260  def __getstate__(self):
4261  p = self._get_as_binary()
4262  if len(self.__dict__) > 1:
4263  d = self.__dict__.copy()
4264  del d['this']
4265  p = (d, p)
4266  return p
4267 
4268  def __setstate__(self, p):
4269  if not hasattr(self, 'this'):
4270  self.__init__()
4271  if isinstance(p, tuple):
4272  d, p = p
4273  self.__dict__.update(d)
4274  return self._set_from_binary(p)
4275 
4276  __swig_destroy__ = _IMP_algebra.delete_Reflection3D
4277 
4278 # Register Reflection3D in _IMP_algebra:
4279 _IMP_algebra.Reflection3D_swigregister(Reflection3D)
4280 class Cylinder3D(IMP._GeometricPrimitive3D):
4281  r"""Proxy of C++ IMP::algebra::Cylinder3D class."""
4282 
4283  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4284 
4285  def __init__(self, *args):
4286  r"""
4287  __init__(Cylinder3D self) -> Cylinder3D
4288  __init__(Cylinder3D self, Segment3D s, double radius) -> Cylinder3D
4289  """
4290  _IMP_algebra.Cylinder3D_swiginit(self, _IMP_algebra.new_Cylinder3D(*args))
4291 
4292  def get_radius(self):
4293  r"""get_radius(Cylinder3D self) -> double"""
4294  return _IMP_algebra.Cylinder3D_get_radius(self)
4295 
4296  def get_segment(self):
4297  r"""get_segment(Cylinder3D self) -> Segment3D"""
4298  return _IMP_algebra.Cylinder3D_get_segment(self)
4299 
4300  def get_surface_point_at(self, relative_height, angle):
4301  r"""get_surface_point_at(Cylinder3D self, double relative_height, double angle) -> Vector3D"""
4302  return _IMP_algebra.Cylinder3D_get_surface_point_at(self, relative_height, angle)
4303 
4304  def get_inner_point_at(self, relative_height, relative_radius, angle):
4305  r"""get_inner_point_at(Cylinder3D self, double relative_height, double relative_radius, double angle) -> Vector3D"""
4306  return _IMP_algebra.Cylinder3D_get_inner_point_at(self, relative_height, relative_radius, angle)
4307 
4308  def show(self, *args):
4309  r"""show(Cylinder3D self, _ostream out=std::cout)"""
4310  return _IMP_algebra.Cylinder3D_show(self, *args)
4311 
4312  def __str__(self):
4313  r"""__str__(Cylinder3D self) -> std::string"""
4314  return _IMP_algebra.Cylinder3D___str__(self)
4315 
4316  def __repr__(self):
4317  r"""__repr__(Cylinder3D self) -> std::string"""
4318  return _IMP_algebra.Cylinder3D___repr__(self)
4319 
4320  def _get_as_binary(self):
4321  r"""_get_as_binary(Cylinder3D self) -> PyObject *"""
4322  return _IMP_algebra.Cylinder3D__get_as_binary(self)
4323 
4324  def _set_from_binary(self, p):
4325  r"""_set_from_binary(Cylinder3D self, PyObject * p)"""
4326  return _IMP_algebra.Cylinder3D__set_from_binary(self, p)
4327 
4328  def __getstate__(self):
4329  p = self._get_as_binary()
4330  if len(self.__dict__) > 1:
4331  d = self.__dict__.copy()
4332  del d['this']
4333  p = (d, p)
4334  return p
4335 
4336  def __setstate__(self, p):
4337  if not hasattr(self, 'this'):
4338  self.__init__()
4339  if isinstance(p, tuple):
4340  d, p = p
4341  self.__dict__.update(d)
4342  return self._set_from_binary(p)
4343 
4344  __swig_destroy__ = _IMP_algebra.delete_Cylinder3D
4345 
4346 # Register Cylinder3D in _IMP_algebra:
4347 _IMP_algebra.Cylinder3D_swigregister(Cylinder3D)
4348 
4349 def get_cylinder_3d_geometry(g):
4350  r"""get_cylinder_3d_geometry(Cylinder3D g) -> Cylinder3D"""
4351  return _IMP_algebra.get_cylinder_3d_geometry(g)
4352 class Ellipsoid3D(IMP._GeometricPrimitive3D):
4353  r"""Proxy of C++ IMP::algebra::Ellipsoid3D class."""
4354 
4355  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4356 
4357  def __init__(self, *args):
4358  r"""
4359  __init__(Ellipsoid3D self) -> Ellipsoid3D
4360  __init__(Ellipsoid3D self, ReferenceFrame3D rf, Vector3D radii) -> Ellipsoid3D
4361  __init__(Ellipsoid3D self, Vector3D center, double radius_x, double radius_y, double radius_z, Rotation3D rot) -> Ellipsoid3D
4362  """
4363  _IMP_algebra.Ellipsoid3D_swiginit(self, _IMP_algebra.new_Ellipsoid3D(*args))
4364 
4365  def get_radii(self):
4366  r"""get_radii(Ellipsoid3D self) -> Vector3D"""
4367  return _IMP_algebra.Ellipsoid3D_get_radii(self)
4368 
4369  def get_reference_frame(self):
4370  r"""get_reference_frame(Ellipsoid3D self) -> ReferenceFrame3D"""
4371  return _IMP_algebra.Ellipsoid3D_get_reference_frame(self)
4372 
4373  def show(self, *args):
4374  r"""show(Ellipsoid3D self, _ostream out=std::cout)"""
4375  return _IMP_algebra.Ellipsoid3D_show(self, *args)
4376 
4377  def __str__(self):
4378  r"""__str__(Ellipsoid3D self) -> std::string"""
4379  return _IMP_algebra.Ellipsoid3D___str__(self)
4380 
4381  def __repr__(self):
4382  r"""__repr__(Ellipsoid3D self) -> std::string"""
4383  return _IMP_algebra.Ellipsoid3D___repr__(self)
4384 
4385  def _get_as_binary(self):
4386  r"""_get_as_binary(Ellipsoid3D self) -> PyObject *"""
4387  return _IMP_algebra.Ellipsoid3D__get_as_binary(self)
4388 
4389  def _set_from_binary(self, p):
4390  r"""_set_from_binary(Ellipsoid3D self, PyObject * p)"""
4391  return _IMP_algebra.Ellipsoid3D__set_from_binary(self, p)
4392 
4393  def __getstate__(self):
4394  p = self._get_as_binary()
4395  if len(self.__dict__) > 1:
4396  d = self.__dict__.copy()
4397  del d['this']
4398  p = (d, p)
4399  return p
4400 
4401  def __setstate__(self, p):
4402  if not hasattr(self, 'this'):
4403  self.__init__()
4404  if isinstance(p, tuple):
4405  d, p = p
4406  self.__dict__.update(d)
4407  return self._set_from_binary(p)
4408 
4409  __swig_destroy__ = _IMP_algebra.delete_Ellipsoid3D
4410 
4411 # Register Ellipsoid3D in _IMP_algebra:
4412 _IMP_algebra.Ellipsoid3D_swigregister(Ellipsoid3D)
4413 
4414 def get_ellipsoid_3d_geometry(g):
4415  r"""get_ellipsoid_3d_geometry(Ellipsoid3D g) -> Ellipsoid3D"""
4416  return _IMP_algebra.get_ellipsoid_3d_geometry(g)
4417 class ConnollySurfacePoint(object):
4418  r"""Proxy of C++ IMP::algebra::ConnollySurfacePoint class."""
4419 
4420  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4421 
4422  def __init__(self, *args):
4423  r"""
4424  __init__(ConnollySurfacePoint self) -> ConnollySurfacePoint
4425  __init__(ConnollySurfacePoint self, int a0, int a1, int a2, Vector3D sp, float a, Vector3D n) -> ConnollySurfacePoint
4426  """
4427  _IMP_algebra.ConnollySurfacePoint_swiginit(self, _IMP_algebra.new_ConnollySurfacePoint(*args))
4428 
4429  def get_atom(self, i):
4430  r"""get_atom(ConnollySurfacePoint self, unsigned int i) -> int"""
4431  return _IMP_algebra.ConnollySurfacePoint_get_atom(self, i)
4432 
4433  def get_surface_point(self):
4434  r"""get_surface_point(ConnollySurfacePoint self) -> Vector3D"""
4435  return _IMP_algebra.ConnollySurfacePoint_get_surface_point(self)
4436 
4437  def get_area(self):
4438  r"""get_area(ConnollySurfacePoint self) -> double"""
4439  return _IMP_algebra.ConnollySurfacePoint_get_area(self)
4440 
4441  def get_normal(self):
4442  r"""get_normal(ConnollySurfacePoint self) -> Vector3D"""
4443  return _IMP_algebra.ConnollySurfacePoint_get_normal(self)
4444 
4445  def show(self, *args):
4446  r"""show(ConnollySurfacePoint self, _ostream out=std::cout)"""
4447  return _IMP_algebra.ConnollySurfacePoint_show(self, *args)
4448 
4449  def __str__(self):
4450  r"""__str__(ConnollySurfacePoint self) -> std::string"""
4451  return _IMP_algebra.ConnollySurfacePoint___str__(self)
4452 
4453  def __repr__(self):
4454  r"""__repr__(ConnollySurfacePoint self) -> std::string"""
4455  return _IMP_algebra.ConnollySurfacePoint___repr__(self)
4456 
4457  def _get_as_binary(self):
4458  r"""_get_as_binary(ConnollySurfacePoint self) -> PyObject *"""
4459  return _IMP_algebra.ConnollySurfacePoint__get_as_binary(self)
4460 
4461  def _set_from_binary(self, p):
4462  r"""_set_from_binary(ConnollySurfacePoint self, PyObject * p)"""
4463  return _IMP_algebra.ConnollySurfacePoint__set_from_binary(self, p)
4464 
4465  def __getstate__(self):
4466  p = self._get_as_binary()
4467  if len(self.__dict__) > 1:
4468  d = self.__dict__.copy()
4469  del d['this']
4470  p = (d, p)
4471  return p
4472 
4473  def __setstate__(self, p):
4474  if not hasattr(self, 'this'):
4475  self.__init__()
4476  if isinstance(p, tuple):
4477  d, p = p
4478  self.__dict__.update(d)
4479  return self._set_from_binary(p)
4480 
4481  __swig_destroy__ = _IMP_algebra.delete_ConnollySurfacePoint
4482 
4483 # Register ConnollySurfacePoint in _IMP_algebra:
4484 _IMP_algebra.ConnollySurfacePoint_swigregister(ConnollySurfacePoint)
4485 
4486 def get_connolly_surface(spheres, density, probe_radius):
4487  r"""get_connolly_surface(IMP::algebra::Sphere3Ds const & spheres, double density, double probe_radius) -> IMP::algebra::ConnollySurfacePoints"""
4488  return _IMP_algebra.get_connolly_surface(spheres, density, probe_radius)
4489 class LogEmbedding3D(object):
4490  r"""Proxy of C++ IMP::algebra::LogEmbeddingD< 3 > class."""
4491 
4492  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4493 
4494  def __init__(self, *args):
4495  r"""
4496  __init__(LogEmbedding3D self, Vector3D origin, Vector3D cell, Vector3D base) -> LogEmbedding3D
4497  __init__(LogEmbedding3D self, BoundingBox3D bb, Vector3D bases, IMP::Ints const & counts, bool bound_centers=False) -> LogEmbedding3D
4498  __init__(LogEmbedding3D self, Vector3D arg2, Vector3D arg3) -> LogEmbedding3D
4499  __init__(LogEmbedding3D self) -> LogEmbedding3D
4500  """
4501  _IMP_algebra.LogEmbedding3D_swiginit(self, _IMP_algebra.new_LogEmbedding3D(*args))
4502 
4503  def set_origin(self, o):
4504  r"""set_origin(LogEmbedding3D self, Vector3D o)"""
4505  return _IMP_algebra.LogEmbedding3D_set_origin(self, o)
4506 
4507  def get_origin(self):
4508  r"""get_origin(LogEmbedding3D self) -> Vector3D"""
4509  return _IMP_algebra.LogEmbedding3D_get_origin(self)
4510 
4511  def get_dimension(self):
4512  r"""get_dimension(LogEmbedding3D self) -> unsigned int"""
4513  return _IMP_algebra.LogEmbedding3D_get_dimension(self)
4514 
4515  def set_unit_cell(self, *args):
4516  r"""
4517  set_unit_cell(LogEmbedding3D self, Vector3D o, Vector3D base)
4518  set_unit_cell(LogEmbedding3D self, Vector3D o)
4519  """
4520  return _IMP_algebra.LogEmbedding3D_set_unit_cell(self, *args)
4521 
4522  def get_unit_cell(self):
4523  r"""get_unit_cell(LogEmbedding3D self) -> Vector3D"""
4524  return _IMP_algebra.LogEmbedding3D_get_unit_cell(self)
4525 
4526  def get_extended_index(self, o):
4527  r"""get_extended_index(LogEmbedding3D self, Vector3D o) -> ExtendedGridIndex3D"""
4528  return _IMP_algebra.LogEmbedding3D_get_extended_index(self, o)
4529 
4530  def get_index(self, o):
4531  r"""get_index(LogEmbedding3D self, Vector3D o) -> GridIndex3D"""
4532  return _IMP_algebra.LogEmbedding3D_get_index(self, o)
4533 
4534  def get_center(self, *args):
4535  r"""
4536  get_center(LogEmbedding3D self, ExtendedGridIndex3D ei) -> Vector3D
4537  get_center(LogEmbedding3D self, GridIndex3D ei) -> Vector3D
4538  """
4539  return _IMP_algebra.LogEmbedding3D_get_center(self, *args)
4540 
4541  def get_bounding_box(self, *args):
4542  r"""
4543  get_bounding_box(LogEmbedding3D self, ExtendedGridIndex3D ei) -> BoundingBox3D
4544  get_bounding_box(LogEmbedding3D self, GridIndex3D ei) -> BoundingBox3D
4545  """
4546  return _IMP_algebra.LogEmbedding3D_get_bounding_box(self, *args)
4547 
4548  def show(self, *args):
4549  r"""show(LogEmbedding3D self, _ostream out=std::cout)"""
4550  return _IMP_algebra.LogEmbedding3D_show(self, *args)
4551 
4552  def __str__(self):
4553  r"""__str__(LogEmbedding3D self) -> std::string"""
4554  return _IMP_algebra.LogEmbedding3D___str__(self)
4555 
4556  def __repr__(self):
4557  r"""__repr__(LogEmbedding3D self) -> std::string"""
4558  return _IMP_algebra.LogEmbedding3D___repr__(self)
4559 
4560  def __cmp__(self, arg2):
4561  r"""__cmp__(LogEmbedding3D self, LogEmbedding3D arg2) -> int"""
4562  return _IMP_algebra.LogEmbedding3D___cmp__(self, arg2)
4563 
4564  def __eq__(self, arg2):
4565  r"""__eq__(LogEmbedding3D self, LogEmbedding3D arg2) -> bool"""
4566  return _IMP_algebra.LogEmbedding3D___eq__(self, arg2)
4567 
4568  def _get_as_binary(self):
4569  r"""_get_as_binary(LogEmbedding3D self) -> PyObject *"""
4570  return _IMP_algebra.LogEmbedding3D__get_as_binary(self)
4571 
4572  def _set_from_binary(self, p):
4573  r"""_set_from_binary(LogEmbedding3D self, PyObject * p)"""
4574  return _IMP_algebra.LogEmbedding3D__set_from_binary(self, p)
4575 
4576  def __getstate__(self):
4577  p = self._get_as_binary()
4578  if len(self.__dict__) > 1:
4579  d = self.__dict__.copy()
4580  del d['this']
4581  p = (d, p)
4582  return p
4583 
4584  def __setstate__(self, p):
4585  if not hasattr(self, 'this'):
4586  self.__init__()
4587  if isinstance(p, tuple):
4588  d, p = p
4589  self.__dict__.update(d)
4590  return self._set_from_binary(p)
4591 
4592  __swig_destroy__ = _IMP_algebra.delete_LogEmbedding3D
4593 
4594 # Register LogEmbedding3D in _IMP_algebra:
4595 _IMP_algebra.LogEmbedding3D_swigregister(LogEmbedding3D)
4596 class LogEmbeddingKD(object):
4597  r"""Proxy of C++ IMP::algebra::LogEmbeddingD< -1 > class."""
4598 
4599  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4600 
4601  def __init__(self, *args):
4602  r"""
4603  __init__(LogEmbeddingKD self, VectorKD origin, VectorKD cell, VectorKD base) -> LogEmbeddingKD
4604  __init__(LogEmbeddingKD self, BoundingBoxKD bb, VectorKD bases, IMP::Ints const & counts, bool bound_centers=False) -> LogEmbeddingKD
4605  __init__(LogEmbeddingKD self, VectorKD arg2, VectorKD arg3) -> LogEmbeddingKD
4606  __init__(LogEmbeddingKD self) -> LogEmbeddingKD
4607  """
4608  _IMP_algebra.LogEmbeddingKD_swiginit(self, _IMP_algebra.new_LogEmbeddingKD(*args))
4609 
4610  def set_origin(self, o):
4611  r"""set_origin(LogEmbeddingKD self, VectorKD o)"""
4612  return _IMP_algebra.LogEmbeddingKD_set_origin(self, o)
4613 
4614  def get_origin(self):
4615  r"""get_origin(LogEmbeddingKD self) -> VectorKD"""
4616  return _IMP_algebra.LogEmbeddingKD_get_origin(self)
4617 
4618  def get_dimension(self):
4619  r"""get_dimension(LogEmbeddingKD self) -> unsigned int"""
4620  return _IMP_algebra.LogEmbeddingKD_get_dimension(self)
4621 
4622  def set_unit_cell(self, *args):
4623  r"""
4624  set_unit_cell(LogEmbeddingKD self, VectorKD o, VectorKD base)
4625  set_unit_cell(LogEmbeddingKD self, VectorKD o)
4626  """
4627  return _IMP_algebra.LogEmbeddingKD_set_unit_cell(self, *args)
4628 
4629  def get_unit_cell(self):
4630  r"""get_unit_cell(LogEmbeddingKD self) -> VectorKD"""
4631  return _IMP_algebra.LogEmbeddingKD_get_unit_cell(self)
4632 
4633  def get_extended_index(self, o):
4634  r"""get_extended_index(LogEmbeddingKD self, VectorKD o) -> ExtendedGridIndexKD"""
4635  return _IMP_algebra.LogEmbeddingKD_get_extended_index(self, o)
4636 
4637  def get_index(self, o):
4638  r"""get_index(LogEmbeddingKD self, VectorKD o) -> GridIndexKD"""
4639  return _IMP_algebra.LogEmbeddingKD_get_index(self, o)
4640 
4641  def get_center(self, *args):
4642  r"""
4643  get_center(LogEmbeddingKD self, ExtendedGridIndexKD ei) -> VectorKD
4644  get_center(LogEmbeddingKD self, GridIndexKD ei) -> VectorKD
4645  """
4646  return _IMP_algebra.LogEmbeddingKD_get_center(self, *args)
4647 
4648  def get_bounding_box(self, *args):
4649  r"""
4650  get_bounding_box(LogEmbeddingKD self, ExtendedGridIndexKD ei) -> BoundingBoxKD
4651  get_bounding_box(LogEmbeddingKD self, GridIndexKD ei) -> BoundingBoxKD
4652  """
4653  return _IMP_algebra.LogEmbeddingKD_get_bounding_box(self, *args)
4654 
4655  def show(self, *args):
4656  r"""show(LogEmbeddingKD self, _ostream out=std::cout)"""
4657  return _IMP_algebra.LogEmbeddingKD_show(self, *args)
4658 
4659  def __str__(self):
4660  r"""__str__(LogEmbeddingKD self) -> std::string"""
4661  return _IMP_algebra.LogEmbeddingKD___str__(self)
4662 
4663  def __repr__(self):
4664  r"""__repr__(LogEmbeddingKD self) -> std::string"""
4665  return _IMP_algebra.LogEmbeddingKD___repr__(self)
4666 
4667  def __cmp__(self, arg2):
4668  r"""__cmp__(LogEmbeddingKD self, LogEmbeddingKD arg2) -> int"""
4669  return _IMP_algebra.LogEmbeddingKD___cmp__(self, arg2)
4670 
4671  def __eq__(self, arg2):
4672  r"""__eq__(LogEmbeddingKD self, LogEmbeddingKD arg2) -> bool"""
4673  return _IMP_algebra.LogEmbeddingKD___eq__(self, arg2)
4674 
4675  def _get_as_binary(self):
4676  r"""_get_as_binary(LogEmbeddingKD self) -> PyObject *"""
4677  return _IMP_algebra.LogEmbeddingKD__get_as_binary(self)
4678 
4679  def _set_from_binary(self, p):
4680  r"""_set_from_binary(LogEmbeddingKD self, PyObject * p)"""
4681  return _IMP_algebra.LogEmbeddingKD__set_from_binary(self, p)
4682 
4683  def __getstate__(self):
4684  p = self._get_as_binary()
4685  if len(self.__dict__) > 1:
4686  d = self.__dict__.copy()
4687  del d['this']
4688  p = (d, p)
4689  return p
4690 
4691  def __setstate__(self, p):
4692  if not hasattr(self, 'this'):
4693  self.__init__()
4694  if isinstance(p, tuple):
4695  d, p = p
4696  self.__dict__.update(d)
4697  return self._set_from_binary(p)
4698 
4699  __swig_destroy__ = _IMP_algebra.delete_LogEmbeddingKD
4700 
4701 # Register LogEmbeddingKD in _IMP_algebra:
4702 _IMP_algebra.LogEmbeddingKD_swigregister(LogEmbeddingKD)
4703 class DenseFloatLogGridKD(object):
4704  r"""Proxy of C++ IMP::algebra::DenseFloatLogGridKD class."""
4705 
4706  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4707 
4708  def __init__(self, sz, le):
4709  r"""__init__(DenseFloatLogGridKD self, IMP::Ints const & sz, LogEmbeddingKD le) -> DenseFloatLogGridKD"""
4710  _IMP_algebra.DenseFloatLogGridKD_swiginit(self, _IMP_algebra.new_DenseFloatLogGridKD(sz, le))
4711 
4712  def add_voxel(self, i, q):
4713  r"""add_voxel(DenseFloatLogGridKD self, ExtendedGridIndexKD i, float const & q) -> GridIndexKD"""
4714  return _IMP_algebra.DenseFloatLogGridKD_add_voxel(self, i, q)
4715 
4716  def __getitem__(self, *args):
4717  r"""
4718  __getitem__(DenseFloatLogGridKD self, GridIndexKD i) -> float
4719  __getitem__(DenseFloatLogGridKD self, VectorKD i) -> float
4720  """
4721  return _IMP_algebra.DenseFloatLogGridKD___getitem__(self, *args)
4722 
4723  def __setitem__(self, *args):
4724  r"""
4725  __setitem__(DenseFloatLogGridKD self, GridIndexKD i, float const & q)
4726  __setitem__(DenseFloatLogGridKD self, VectorKD i, float const & q)
4727  """
4728  return _IMP_algebra.DenseFloatLogGridKD___setitem__(self, *args)
4729 
4730  def get_bounding_box(self, *args):
4731  r"""
4732  get_bounding_box(DenseFloatLogGridKD self, ExtendedGridIndexKD v) -> BoundingBoxKD
4733  get_bounding_box(DenseFloatLogGridKD self) -> BoundingBoxKD
4734  """
4735  return _IMP_algebra.DenseFloatLogGridKD_get_bounding_box(self, *args)
4736 
4737  def get_indexes(self, *args):
4738  r"""
4739  get_indexes(DenseFloatLogGridKD self, BoundingBoxKD bb) -> IMP::Vector< IMP::algebra::GridIndexD< -1 >,std::allocator< IMP::algebra::GridIndexD< -1 > > >
4740  get_indexes(DenseFloatLogGridKD self, ExtendedGridIndexKD lb, ExtendedGridIndexKD ub) -> IMP::Vector< IMP::algebra::GridIndexD< -1 >,std::allocator< IMP::algebra::GridIndexD< -1 > > >
4741  """
4742  return _IMP_algebra.DenseFloatLogGridKD_get_indexes(self, *args)
4743 
4744  def get_all_indexes(self):
4745  r"""get_all_indexes(DenseFloatLogGridKD self) -> IMP::Vector< IMP::algebra::GridIndexD< -1 >,std::allocator< IMP::algebra::GridIndexD< -1 > > >"""
4746  return _IMP_algebra.DenseFloatLogGridKD_get_all_indexes(self)
4747 
4748  def get_extended_indexes(self, *args):
4749  r"""
4750  get_extended_indexes(DenseFloatLogGridKD self, ExtendedGridIndexKD lb, ExtendedGridIndexKD ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< -1 >,std::allocator< IMP::algebra::ExtendedGridIndexD< -1 > > >
4751  get_extended_indexes(DenseFloatLogGridKD self, BoundingBoxKD bb) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< -1 >,std::allocator< IMP::algebra::ExtendedGridIndexD< -1 > > >
4752  """
4753  return _IMP_algebra.DenseFloatLogGridKD_get_extended_indexes(self, *args)
4754 
4755  def get_center(self, *args):
4756  r"""
4757  get_center(DenseFloatLogGridKD self, ExtendedGridIndexKD ei) -> VectorKD
4758  get_center(DenseFloatLogGridKD self, GridIndexKD ei) -> VectorKD
4759  """
4760  return _IMP_algebra.DenseFloatLogGridKD_get_center(self, *args)
4761 
4762  def get_extended_index(self, v):
4763  r"""get_extended_index(DenseFloatLogGridKD self, VectorKD v) -> ExtendedGridIndexKD"""
4764  return _IMP_algebra.DenseFloatLogGridKD_get_extended_index(self, v)
4765 
4766  def get_index(self, v):
4767  r"""get_index(DenseFloatLogGridKD self, ExtendedGridIndexKD v) -> GridIndexKD"""
4768  return _IMP_algebra.DenseFloatLogGridKD_get_index(self, v)
4769 
4770  def get_origin(self):
4771  r"""get_origin(DenseFloatLogGridKD self) -> VectorKD"""
4772  return _IMP_algebra.DenseFloatLogGridKD_get_origin(self)
4773 
4774  def get_dimension(self):
4775  r"""get_dimension(DenseFloatLogGridKD self) -> unsigned int"""
4776  return _IMP_algebra.DenseFloatLogGridKD_get_dimension(self)
4777 
4778  def get_unit_cell(self):
4779  r"""get_unit_cell(DenseFloatLogGridKD self) -> VectorKD"""
4780  return _IMP_algebra.DenseFloatLogGridKD_get_unit_cell(self)
4781 
4782  def get_has_index(self, v):
4783  r"""get_has_index(DenseFloatLogGridKD self, ExtendedGridIndexKD v) -> bool"""
4784  return _IMP_algebra.DenseFloatLogGridKD_get_has_index(self, v)
4785 
4786  def __str__(self):
4787  r"""__str__(DenseFloatLogGridKD self) -> std::string"""
4788  return _IMP_algebra.DenseFloatLogGridKD___str__(self)
4789 
4790  def __repr__(self):
4791  r"""__repr__(DenseFloatLogGridKD self) -> std::string"""
4792  return _IMP_algebra.DenseFloatLogGridKD___repr__(self)
4793 
4794  def show(self, *args):
4795  r"""show(DenseFloatLogGridKD self, _ostream out=std::cout)"""
4796  return _IMP_algebra.DenseFloatLogGridKD_show(self, *args)
4797  __swig_destroy__ = _IMP_algebra.delete_DenseFloatLogGridKD
4798 
4799 # Register DenseFloatLogGridKD in _IMP_algebra:
4800 _IMP_algebra.DenseFloatLogGridKD_swigregister(DenseFloatLogGridKD)
4801 class DenseIntLogGrid3D(object):
4802  r"""Proxy of C++ IMP::algebra::DenseIntLogGrid3D class."""
4803 
4804  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4805 
4806  def __init__(self, sz, le):
4807  r"""__init__(DenseIntLogGrid3D self, IMP::Ints const & sz, LogEmbedding3D le) -> DenseIntLogGrid3D"""
4808  _IMP_algebra.DenseIntLogGrid3D_swiginit(self, _IMP_algebra.new_DenseIntLogGrid3D(sz, le))
4809 
4810  def add_voxel(self, i, q):
4811  r"""add_voxel(DenseIntLogGrid3D self, ExtendedGridIndex3D i, int const & q) -> GridIndex3D"""
4812  return _IMP_algebra.DenseIntLogGrid3D_add_voxel(self, i, q)
4813 
4814  def __getitem__(self, *args):
4815  r"""
4816  __getitem__(DenseIntLogGrid3D self, GridIndex3D i) -> int
4817  __getitem__(DenseIntLogGrid3D self, Vector3D i) -> int
4818  """
4819  return _IMP_algebra.DenseIntLogGrid3D___getitem__(self, *args)
4820 
4821  def __setitem__(self, *args):
4822  r"""
4823  __setitem__(DenseIntLogGrid3D self, GridIndex3D i, int const & q)
4824  __setitem__(DenseIntLogGrid3D self, Vector3D i, int const & q)
4825  """
4826  return _IMP_algebra.DenseIntLogGrid3D___setitem__(self, *args)
4827 
4828  def get_bounding_box(self, *args):
4829  r"""
4830  get_bounding_box(DenseIntLogGrid3D self, ExtendedGridIndex3D v) -> BoundingBox3D
4831  get_bounding_box(DenseIntLogGrid3D self) -> BoundingBox3D
4832  """
4833  return _IMP_algebra.DenseIntLogGrid3D_get_bounding_box(self, *args)
4834 
4835  def get_indexes(self, *args):
4836  r"""
4837  get_indexes(DenseIntLogGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
4838  get_indexes(DenseIntLogGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
4839  """
4840  return _IMP_algebra.DenseIntLogGrid3D_get_indexes(self, *args)
4841 
4842  def get_all_indexes(self):
4843  r"""get_all_indexes(DenseIntLogGrid3D self) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >"""
4844  return _IMP_algebra.DenseIntLogGrid3D_get_all_indexes(self)
4845 
4846  def get_extended_indexes(self, *args):
4847  r"""
4848  get_extended_indexes(DenseIntLogGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
4849  get_extended_indexes(DenseIntLogGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
4850  """
4851  return _IMP_algebra.DenseIntLogGrid3D_get_extended_indexes(self, *args)
4852 
4853  def get_center(self, *args):
4854  r"""
4855  get_center(DenseIntLogGrid3D self, ExtendedGridIndex3D ei) -> Vector3D
4856  get_center(DenseIntLogGrid3D self, GridIndex3D ei) -> Vector3D
4857  """
4858  return _IMP_algebra.DenseIntLogGrid3D_get_center(self, *args)
4859 
4860  def get_extended_index(self, v):
4861  r"""get_extended_index(DenseIntLogGrid3D self, Vector3D v) -> ExtendedGridIndex3D"""
4862  return _IMP_algebra.DenseIntLogGrid3D_get_extended_index(self, v)
4863 
4864  def get_index(self, v):
4865  r"""get_index(DenseIntLogGrid3D self, ExtendedGridIndex3D v) -> GridIndex3D"""
4866  return _IMP_algebra.DenseIntLogGrid3D_get_index(self, v)
4867 
4868  def get_origin(self):
4869  r"""get_origin(DenseIntLogGrid3D self) -> Vector3D"""
4870  return _IMP_algebra.DenseIntLogGrid3D_get_origin(self)
4871 
4872  def get_dimension(self):
4873  r"""get_dimension(DenseIntLogGrid3D self) -> unsigned int"""
4874  return _IMP_algebra.DenseIntLogGrid3D_get_dimension(self)
4875 
4876  def get_unit_cell(self):
4877  r"""get_unit_cell(DenseIntLogGrid3D self) -> Vector3D"""
4878  return _IMP_algebra.DenseIntLogGrid3D_get_unit_cell(self)
4879 
4880  def get_has_index(self, v):
4881  r"""get_has_index(DenseIntLogGrid3D self, ExtendedGridIndex3D v) -> bool"""
4882  return _IMP_algebra.DenseIntLogGrid3D_get_has_index(self, v)
4883 
4884  def __str__(self):
4885  r"""__str__(DenseIntLogGrid3D self) -> std::string"""
4886  return _IMP_algebra.DenseIntLogGrid3D___str__(self)
4887 
4888  def __repr__(self):
4889  r"""__repr__(DenseIntLogGrid3D self) -> std::string"""
4890  return _IMP_algebra.DenseIntLogGrid3D___repr__(self)
4891 
4892  def show(self, *args):
4893  r"""show(DenseIntLogGrid3D self, _ostream out=std::cout)"""
4894  return _IMP_algebra.DenseIntLogGrid3D_show(self, *args)
4895  __swig_destroy__ = _IMP_algebra.delete_DenseIntLogGrid3D
4896 
4897 # Register DenseIntLogGrid3D in _IMP_algebra:
4898 _IMP_algebra.DenseIntLogGrid3D_swigregister(DenseIntLogGrid3D)
4899 class DenseDoubleGrid3D(object):
4900  r"""Proxy of C++ IMP::algebra::DenseGrid3D< double > class."""
4901 
4902  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4903 
4904  def __init__(self, *args):
4905  r"""
4906  __init__(DenseDoubleGrid3D self, double side, BoundingBox3D bb, double _def=double()) -> DenseDoubleGrid3D
4907  __init__(DenseDoubleGrid3D self) -> DenseDoubleGrid3D
4908  """
4909  _IMP_algebra.DenseDoubleGrid3D_swiginit(self, _IMP_algebra.new_DenseDoubleGrid3D(*args))
4910 
4911  def add_voxel(self, i, q):
4912  r"""add_voxel(DenseDoubleGrid3D self, ExtendedGridIndex3D i, double const & q) -> GridIndex3D"""
4913  return _IMP_algebra.DenseDoubleGrid3D_add_voxel(self, i, q)
4914 
4915  def __getitem__(self, *args):
4916  r"""
4917  __getitem__(DenseDoubleGrid3D self, GridIndex3D i) -> double
4918  __getitem__(DenseDoubleGrid3D self, Vector3D i) -> double
4919  """
4920  return _IMP_algebra.DenseDoubleGrid3D___getitem__(self, *args)
4921 
4922  def __setitem__(self, *args):
4923  r"""
4924  __setitem__(DenseDoubleGrid3D self, GridIndex3D i, double const & q)
4925  __setitem__(DenseDoubleGrid3D self, Vector3D i, double const & q)
4926  """
4927  return _IMP_algebra.DenseDoubleGrid3D___setitem__(self, *args)
4928 
4929  def get_bounding_box(self, *args):
4930  r"""
4931  get_bounding_box(DenseDoubleGrid3D self, ExtendedGridIndex3D v) -> BoundingBox3D
4932  get_bounding_box(DenseDoubleGrid3D self) -> BoundingBox3D
4933  """
4934  return _IMP_algebra.DenseDoubleGrid3D_get_bounding_box(self, *args)
4935 
4936  def get_indexes(self, *args):
4937  r"""
4938  get_indexes(DenseDoubleGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
4939  get_indexes(DenseDoubleGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
4940  """
4941  return _IMP_algebra.DenseDoubleGrid3D_get_indexes(self, *args)
4942 
4943  def get_all_indexes(self):
4944  r"""get_all_indexes(DenseDoubleGrid3D self) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >"""
4945  return _IMP_algebra.DenseDoubleGrid3D_get_all_indexes(self)
4946 
4947  def get_extended_indexes(self, *args):
4948  r"""
4949  get_extended_indexes(DenseDoubleGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
4950  get_extended_indexes(DenseDoubleGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
4951  """
4952  return _IMP_algebra.DenseDoubleGrid3D_get_extended_indexes(self, *args)
4953 
4954  def get_center(self, *args):
4955  r"""
4956  get_center(DenseDoubleGrid3D self, ExtendedGridIndex3D ei) -> Vector3D
4957  get_center(DenseDoubleGrid3D self, GridIndex3D ei) -> Vector3D
4958  """
4959  return _IMP_algebra.DenseDoubleGrid3D_get_center(self, *args)
4960 
4961  def get_extended_index(self, v):
4962  r"""get_extended_index(DenseDoubleGrid3D self, Vector3D v) -> ExtendedGridIndex3D"""
4963  return _IMP_algebra.DenseDoubleGrid3D_get_extended_index(self, v)
4964 
4965  def get_index(self, v):
4966  r"""get_index(DenseDoubleGrid3D self, ExtendedGridIndex3D v) -> GridIndex3D"""
4967  return _IMP_algebra.DenseDoubleGrid3D_get_index(self, v)
4968 
4969  def get_origin(self):
4970  r"""get_origin(DenseDoubleGrid3D self) -> Vector3D"""
4971  return _IMP_algebra.DenseDoubleGrid3D_get_origin(self)
4972 
4973  def get_dimension(self):
4974  r"""get_dimension(DenseDoubleGrid3D self) -> unsigned int"""
4975  return _IMP_algebra.DenseDoubleGrid3D_get_dimension(self)
4976 
4977  def get_unit_cell(self):
4978  r"""get_unit_cell(DenseDoubleGrid3D self) -> Vector3D"""
4979  return _IMP_algebra.DenseDoubleGrid3D_get_unit_cell(self)
4980 
4981  def get_has_index(self, v):
4982  r"""get_has_index(DenseDoubleGrid3D self, ExtendedGridIndex3D v) -> bool"""
4983  return _IMP_algebra.DenseDoubleGrid3D_get_has_index(self, v)
4984 
4985  def __str__(self):
4986  r"""__str__(DenseDoubleGrid3D self) -> std::string"""
4987  return _IMP_algebra.DenseDoubleGrid3D___str__(self)
4988 
4989  def __repr__(self):
4990  r"""__repr__(DenseDoubleGrid3D self) -> std::string"""
4991  return _IMP_algebra.DenseDoubleGrid3D___repr__(self)
4992 
4993  def show(self, *args):
4994  r"""show(DenseDoubleGrid3D self, _ostream out=std::cout)"""
4995  return _IMP_algebra.DenseDoubleGrid3D_show(self, *args)
4996  __swig_destroy__ = _IMP_algebra.delete_DenseDoubleGrid3D
4997 
4998 # Register DenseDoubleGrid3D in _IMP_algebra:
4999 _IMP_algebra.DenseDoubleGrid3D_swigregister(DenseDoubleGrid3D)
5000 class DenseFloatGrid3D(object):
5001  r"""Proxy of C++ IMP::algebra::DenseGrid3D< float > class."""
5002 
5003  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5004 
5005  def __init__(self, *args):
5006  r"""
5007  __init__(DenseFloatGrid3D self, double side, BoundingBox3D bb, float _def=float()) -> DenseFloatGrid3D
5008  __init__(DenseFloatGrid3D self) -> DenseFloatGrid3D
5009  """
5010  _IMP_algebra.DenseFloatGrid3D_swiginit(self, _IMP_algebra.new_DenseFloatGrid3D(*args))
5011 
5012  def add_voxel(self, i, q):
5013  r"""add_voxel(DenseFloatGrid3D self, ExtendedGridIndex3D i, float const & q) -> GridIndex3D"""
5014  return _IMP_algebra.DenseFloatGrid3D_add_voxel(self, i, q)
5015 
5016  def __getitem__(self, *args):
5017  r"""
5018  __getitem__(DenseFloatGrid3D self, GridIndex3D i) -> float
5019  __getitem__(DenseFloatGrid3D self, Vector3D i) -> float
5020  """
5021  return _IMP_algebra.DenseFloatGrid3D___getitem__(self, *args)
5022 
5023  def __setitem__(self, *args):
5024  r"""
5025  __setitem__(DenseFloatGrid3D self, GridIndex3D i, float const & q)
5026  __setitem__(DenseFloatGrid3D self, Vector3D i, float const & q)
5027  """
5028  return _IMP_algebra.DenseFloatGrid3D___setitem__(self, *args)
5029 
5030  def get_bounding_box(self, *args):
5031  r"""
5032  get_bounding_box(DenseFloatGrid3D self, ExtendedGridIndex3D v) -> BoundingBox3D
5033  get_bounding_box(DenseFloatGrid3D self) -> BoundingBox3D
5034  """
5035  return _IMP_algebra.DenseFloatGrid3D_get_bounding_box(self, *args)
5036 
5037  def get_indexes(self, *args):
5038  r"""
5039  get_indexes(DenseFloatGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
5040  get_indexes(DenseFloatGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
5041  """
5042  return _IMP_algebra.DenseFloatGrid3D_get_indexes(self, *args)
5043 
5044  def get_all_indexes(self):
5045  r"""get_all_indexes(DenseFloatGrid3D self) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >"""
5046  return _IMP_algebra.DenseFloatGrid3D_get_all_indexes(self)
5047 
5048  def get_extended_indexes(self, *args):
5049  r"""
5050  get_extended_indexes(DenseFloatGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
5051  get_extended_indexes(DenseFloatGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
5052  """
5053  return _IMP_algebra.DenseFloatGrid3D_get_extended_indexes(self, *args)
5054 
5055  def get_center(self, *args):
5056  r"""
5057  get_center(DenseFloatGrid3D self, ExtendedGridIndex3D ei) -> Vector3D
5058  get_center(DenseFloatGrid3D self, GridIndex3D ei) -> Vector3D
5059  """
5060  return _IMP_algebra.DenseFloatGrid3D_get_center(self, *args)
5061 
5062  def get_extended_index(self, v):
5063  r"""get_extended_index(DenseFloatGrid3D self, Vector3D v) -> ExtendedGridIndex3D"""
5064  return _IMP_algebra.DenseFloatGrid3D_get_extended_index(self, v)
5065 
5066  def get_index(self, v):
5067  r"""get_index(DenseFloatGrid3D self, ExtendedGridIndex3D v) -> GridIndex3D"""
5068  return _IMP_algebra.DenseFloatGrid3D_get_index(self, v)
5069 
5070  def get_origin(self):
5071  r"""get_origin(DenseFloatGrid3D self) -> Vector3D"""
5072  return _IMP_algebra.DenseFloatGrid3D_get_origin(self)
5073 
5074  def get_dimension(self):
5075  r"""get_dimension(DenseFloatGrid3D self) -> unsigned int"""
5076  return _IMP_algebra.DenseFloatGrid3D_get_dimension(self)
5077 
5078  def get_unit_cell(self):
5079  r"""get_unit_cell(DenseFloatGrid3D self) -> Vector3D"""
5080  return _IMP_algebra.DenseFloatGrid3D_get_unit_cell(self)
5081 
5082  def get_has_index(self, v):
5083  r"""get_has_index(DenseFloatGrid3D self, ExtendedGridIndex3D v) -> bool"""
5084  return _IMP_algebra.DenseFloatGrid3D_get_has_index(self, v)
5085 
5086  def __str__(self):
5087  r"""__str__(DenseFloatGrid3D self) -> std::string"""
5088  return _IMP_algebra.DenseFloatGrid3D___str__(self)
5089 
5090  def __repr__(self):
5091  r"""__repr__(DenseFloatGrid3D self) -> std::string"""
5092  return _IMP_algebra.DenseFloatGrid3D___repr__(self)
5093 
5094  def show(self, *args):
5095  r"""show(DenseFloatGrid3D self, _ostream out=std::cout)"""
5096  return _IMP_algebra.DenseFloatGrid3D_show(self, *args)
5097  __swig_destroy__ = _IMP_algebra.delete_DenseFloatGrid3D
5098 
5099 # Register DenseFloatGrid3D in _IMP_algebra:
5100 _IMP_algebra.DenseFloatGrid3D_swigregister(DenseFloatGrid3D)
5101 class SparseUnboundedIntGrid3D(object):
5102  r"""Proxy of C++ IMP::algebra::SparseUnboundedGrid3D< int > class."""
5103 
5104  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5105 
5106  def __init__(self, *args):
5107  r"""
5108  __init__(SparseUnboundedIntGrid3D self, double side, Vector3D origin, int _def=int()) -> SparseUnboundedIntGrid3D
5109  __init__(SparseUnboundedIntGrid3D self, Vector3D sides, Vector3D origin, int _def=int()) -> SparseUnboundedIntGrid3D
5110  __init__(SparseUnboundedIntGrid3D self) -> SparseUnboundedIntGrid3D
5111  """
5112  _IMP_algebra.SparseUnboundedIntGrid3D_swiginit(self, _IMP_algebra.new_SparseUnboundedIntGrid3D(*args))
5113 
5114  def add_voxel(self, i, q):
5115  r"""add_voxel(SparseUnboundedIntGrid3D self, ExtendedGridIndex3D i, int const & q) -> GridIndex3D"""
5116  return _IMP_algebra.SparseUnboundedIntGrid3D_add_voxel(self, i, q)
5117 
5118  def __getitem__(self, *args):
5119  r"""
5120  __getitem__(SparseUnboundedIntGrid3D self, GridIndex3D i) -> int
5121  __getitem__(SparseUnboundedIntGrid3D self, Vector3D i) -> int
5122  """
5123  return _IMP_algebra.SparseUnboundedIntGrid3D___getitem__(self, *args)
5124 
5125  def __setitem__(self, *args):
5126  r"""
5127  __setitem__(SparseUnboundedIntGrid3D self, GridIndex3D i, int const & q)
5128  __setitem__(SparseUnboundedIntGrid3D self, Vector3D i, int const & q)
5129  """
5130  return _IMP_algebra.SparseUnboundedIntGrid3D___setitem__(self, *args)
5131 
5132  def get_bounding_box(self, *args):
5133  r"""
5134  get_bounding_box(SparseUnboundedIntGrid3D self, ExtendedGridIndex3D v) -> BoundingBox3D
5135  get_bounding_box(SparseUnboundedIntGrid3D self) -> BoundingBox3D
5136  """
5137  return _IMP_algebra.SparseUnboundedIntGrid3D_get_bounding_box(self, *args)
5138 
5139  def get_indexes(self, *args):
5140  r"""
5141  get_indexes(SparseUnboundedIntGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
5142  get_indexes(SparseUnboundedIntGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >
5143  """
5144  return _IMP_algebra.SparseUnboundedIntGrid3D_get_indexes(self, *args)
5145 
5146  def get_all_indexes(self):
5147  r"""get_all_indexes(SparseUnboundedIntGrid3D self) -> IMP::Vector< IMP::algebra::GridIndexD< 3 >,std::allocator< IMP::algebra::GridIndexD< 3 > > >"""
5148  return _IMP_algebra.SparseUnboundedIntGrid3D_get_all_indexes(self)
5149 
5150  def get_extended_indexes(self, *args):
5151  r"""
5152  get_extended_indexes(SparseUnboundedIntGrid3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
5153  get_extended_indexes(SparseUnboundedIntGrid3D self, BoundingBox3D bb) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 >,std::allocator< IMP::algebra::ExtendedGridIndexD< 3 > > >
5154  """
5155  return _IMP_algebra.SparseUnboundedIntGrid3D_get_extended_indexes(self, *args)
5156 
5157  def get_center(self, *args):
5158  r"""
5159  get_center(SparseUnboundedIntGrid3D self, ExtendedGridIndex3D ei) -> Vector3D
5160  get_center(SparseUnboundedIntGrid3D self, GridIndex3D ei) -> Vector3D
5161  """
5162  return _IMP_algebra.SparseUnboundedIntGrid3D_get_center(self, *args)
5163 
5164  def get_extended_index(self, v):
5165  r"""get_extended_index(SparseUnboundedIntGrid3D self, Vector3D v) -> ExtendedGridIndex3D"""
5166  return _IMP_algebra.SparseUnboundedIntGrid3D_get_extended_index(self, v)
5167 
5168  def get_index(self, v):
5169  r"""get_index(SparseUnboundedIntGrid3D self, ExtendedGridIndex3D v) -> GridIndex3D"""
5170  return _IMP_algebra.SparseUnboundedIntGrid3D_get_index(self, v)
5171 
5172  def get_origin(self):
5173  r"""get_origin(SparseUnboundedIntGrid3D self) -> Vector3D"""
5174  return _IMP_algebra.SparseUnboundedIntGrid3D_get_origin(self)
5175 
5176  def get_dimension(self):
5177  r"""get_dimension(SparseUnboundedIntGrid3D self) -> unsigned int"""
5178  return _IMP_algebra.SparseUnboundedIntGrid3D_get_dimension(self)
5179 
5180  def get_unit_cell(self):
5181  r"""get_unit_cell(SparseUnboundedIntGrid3D self) -> Vector3D"""
5182  return _IMP_algebra.SparseUnboundedIntGrid3D_get_unit_cell(self)
5183 
5184  def get_has_index(self, v):
5185  r"""get_has_index(SparseUnboundedIntGrid3D self, ExtendedGridIndex3D v) -> bool"""
5186  return _IMP_algebra.SparseUnboundedIntGrid3D_get_has_index(self, v)
5187 
5188  def __str__(self):
5189  r"""__str__(SparseUnboundedIntGrid3D self) -> std::string"""
5190  return _IMP_algebra.SparseUnboundedIntGrid3D___str__(self)
5191 
5192  def __repr__(self):
5193  r"""__repr__(SparseUnboundedIntGrid3D self) -> std::string"""
5194  return _IMP_algebra.SparseUnboundedIntGrid3D___repr__(self)
5195 
5196  def show(self, *args):
5197  r"""show(SparseUnboundedIntGrid3D self, _ostream out=std::cout)"""
5198  return _IMP_algebra.SparseUnboundedIntGrid3D_show(self, *args)
5199  __swig_destroy__ = _IMP_algebra.delete_SparseUnboundedIntGrid3D
5200 
5201 # Register SparseUnboundedIntGrid3D in _IMP_algebra:
5202 _IMP_algebra.SparseUnboundedIntGrid3D_swigregister(SparseUnboundedIntGrid3D)
5203 class SparseUnboundedIntGridKD(object):
5204  r"""Proxy of C++ IMP::algebra::SparseUnboundedGridD< -1,int > class."""
5205 
5206  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5207 
5208  def __init__(self, *args):
5209  r"""
5210  __init__(SparseUnboundedIntGridKD self, double side, VectorKD origin, int _def=int()) -> SparseUnboundedIntGridKD
5211  __init__(SparseUnboundedIntGridKD self) -> SparseUnboundedIntGridKD
5212  """
5213  _IMP_algebra.SparseUnboundedIntGridKD_swiginit(self, _IMP_algebra.new_SparseUnboundedIntGridKD(*args))
5214 
5215  def add_voxel(self, i, q):
5216  r"""add_voxel(SparseUnboundedIntGridKD self, ExtendedGridIndexKD i, int const & q) -> GridIndexKD"""
5217  return _IMP_algebra.SparseUnboundedIntGridKD_add_voxel(self, i, q)
5218 
5219  def __getitem__(self, *args):
5220  r"""
5221  __getitem__(SparseUnboundedIntGridKD self, GridIndexKD i) -> int
5222  __getitem__(SparseUnboundedIntGridKD self, VectorKD i) -> int
5223  """
5224  return _IMP_algebra.SparseUnboundedIntGridKD___getitem__(self, *args)
5225 
5226  def __setitem__(self, *args):
5227  r"""
5228  __setitem__(SparseUnboundedIntGridKD self, GridIndexKD i, int const & q)
5229  __setitem__(SparseUnboundedIntGridKD self, VectorKD i, int const & q)
5230  """
5231  return _IMP_algebra.SparseUnboundedIntGridKD___setitem__(self, *args)
5232 
5233  def get_bounding_box(self, *args):
5234  r"""
5235  get_bounding_box(SparseUnboundedIntGridKD self, ExtendedGridIndexKD v) -> BoundingBoxKD
5236  get_bounding_box(SparseUnboundedIntGridKD self) -> BoundingBoxKD
5237  """
5238  return _IMP_algebra.SparseUnboundedIntGridKD_get_bounding_box(self, *args)
5239 
5240  def get_indexes(self, *args):
5241  r"""
5242  get_indexes(SparseUnboundedIntGridKD self, BoundingBoxKD bb) -> IMP::Vector< IMP::algebra::GridIndexD< -1 >,std::allocator< IMP::algebra::GridIndexD< -1 > > >
5243  get_indexes(SparseUnboundedIntGridKD self, ExtendedGridIndexKD lb, ExtendedGridIndexKD ub) -> IMP::Vector< IMP::algebra::GridIndexD< -1 >,std::allocator< IMP::algebra::GridIndexD< -1 > > >
5244  """
5245  return _IMP_algebra.SparseUnboundedIntGridKD_get_indexes(self, *args)
5246 
5247  def get_all_indexes(self):
5248  r"""get_all_indexes(SparseUnboundedIntGridKD self) -> IMP::Vector< IMP::algebra::GridIndexD< -1 >,std::allocator< IMP::algebra::GridIndexD< -1 > > >"""
5249  return _IMP_algebra.SparseUnboundedIntGridKD_get_all_indexes(self)
5250 
5251  def get_extended_indexes(self, *args):
5252  r"""
5253  get_extended_indexes(SparseUnboundedIntGridKD self, ExtendedGridIndexKD lb, ExtendedGridIndexKD ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< -1 >,std::allocator< IMP::algebra::ExtendedGridIndexD< -1 > > >
5254  get_extended_indexes(SparseUnboundedIntGridKD self, BoundingBoxKD bb) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< -1 >,std::allocator< IMP::algebra::ExtendedGridIndexD< -1 > > >
5255  """
5256  return _IMP_algebra.SparseUnboundedIntGridKD_get_extended_indexes(self, *args)
5257 
5258  def get_center(self, *args):
5259  r"""
5260  get_center(SparseUnboundedIntGridKD self, ExtendedGridIndexKD ei) -> VectorKD
5261  get_center(SparseUnboundedIntGridKD self, GridIndexKD ei) -> VectorKD
5262  """
5263  return _IMP_algebra.SparseUnboundedIntGridKD_get_center(self, *args)
5264 
5265  def get_extended_index(self, v):
5266  r"""get_extended_index(SparseUnboundedIntGridKD self, VectorKD v) -> ExtendedGridIndexKD"""
5267  return _IMP_algebra.SparseUnboundedIntGridKD_get_extended_index(self, v)
5268 
5269  def get_index(self, v):
5270  r"""get_index(SparseUnboundedIntGridKD self, ExtendedGridIndexKD v) -> GridIndexKD"""
5271  return _IMP_algebra.SparseUnboundedIntGridKD_get_index(self, v)
5272 
5273  def get_origin(self):
5274  r"""get_origin(SparseUnboundedIntGridKD self) -> VectorKD"""
5275  return _IMP_algebra.SparseUnboundedIntGridKD_get_origin(self)
5276 
5277  def get_dimension(self):
5278  r"""get_dimension(SparseUnboundedIntGridKD self) -> unsigned int"""
5279  return _IMP_algebra.SparseUnboundedIntGridKD_get_dimension(self)
5280 
5281  def get_unit_cell(self):
5282  r"""get_unit_cell(SparseUnboundedIntGridKD self) -> VectorKD"""
5283  return _IMP_algebra.SparseUnboundedIntGridKD_get_unit_cell(self)
5284 
5285  def get_has_index(self, v):
5286  r"""get_has_index(SparseUnboundedIntGridKD self, ExtendedGridIndexKD v) -> bool"""
5287  return _IMP_algebra.SparseUnboundedIntGridKD_get_has_index(self, v)
5288 
5289  def __str__(self):
5290  r"""__str__(SparseUnboundedIntGridKD self) -> std::string"""
5291  return _IMP_algebra.SparseUnboundedIntGridKD___str__(self)
5292 
5293  def __repr__(self):
5294  r"""__repr__(SparseUnboundedIntGridKD self) -> std::string"""
5295  return _IMP_algebra.SparseUnboundedIntGridKD___repr__(self)
5296 
5297  def show(self, *args):
5298  r"""show(SparseUnboundedIntGridKD self, _ostream out=std::cout)"""
5299  return _IMP_algebra.SparseUnboundedIntGridKD_show(self, *args)
5300  __swig_destroy__ = _IMP_algebra.delete_SparseUnboundedIntGridKD
5301 
5302 # Register SparseUnboundedIntGridKD in _IMP_algebra:
5303 _IMP_algebra.SparseUnboundedIntGridKD_swigregister(SparseUnboundedIntGridKD)
5304 class GridIndex1D(IMP._Value):
5305  r"""Proxy of C++ IMP::algebra::GridIndexD< 1 > class."""
5306 
5307  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5308 
5309  def __init__(self, *args):
5310  r"""
5311  __init__(GridIndex1D self) -> GridIndex1D
5312  __init__(GridIndex1D self, int x) -> GridIndex1D
5313  __init__(GridIndex1D self, int x, int y) -> GridIndex1D
5314  __init__(GridIndex1D self, int x, int y, int z) -> GridIndex1D
5315  __init__(GridIndex1D self, int i, int j, int k, int l) -> GridIndex1D
5316  __init__(GridIndex1D self, int i, int j, int k, int l, int m) -> GridIndex1D
5317  __init__(GridIndex1D self, int i, int j, int k, int l, int m, int n) -> GridIndex1D
5318  """
5319  _IMP_algebra.GridIndex1D_swiginit(self, _IMP_algebra.new_GridIndex1D(*args))
5320 
5321  def get_dimension(self):
5322  r"""get_dimension(GridIndex1D self) -> unsigned int"""
5323  return _IMP_algebra.GridIndex1D_get_dimension(self)
5324 
5325  def __getitem__(self, i):
5326  r"""__getitem__(GridIndex1D self, unsigned int i) -> int const &"""
5327  return _IMP_algebra.GridIndex1D___getitem__(self, i)
5328 
5329  def show(self, *args):
5330  r"""show(GridIndex1D self, _ostream out=std::cout)"""
5331  return _IMP_algebra.GridIndex1D_show(self, *args)
5332 
5333  def __len__(self):
5334  r"""__len__(GridIndex1D self) -> unsigned int"""
5335  return _IMP_algebra.GridIndex1D___len__(self)
5336 
5337  def __cmp__(self, o):
5338  r"""__cmp__(GridIndex1D self, GridIndex1D o) -> int"""
5339  return _IMP_algebra.GridIndex1D___cmp__(self, o)
5340 
5341  def __eq__(self, o):
5342  r"""__eq__(GridIndex1D self, GridIndex1D o) -> bool"""
5343  return _IMP_algebra.GridIndex1D___eq__(self, o)
5344 
5345  def __ne__(self, o):
5346  r"""__ne__(GridIndex1D self, GridIndex1D o) -> bool"""
5347  return _IMP_algebra.GridIndex1D___ne__(self, o)
5348 
5349  def __lt__(self, o):
5350  r"""__lt__(GridIndex1D self, GridIndex1D o) -> bool"""
5351  return _IMP_algebra.GridIndex1D___lt__(self, o)
5352 
5353  def __gt__(self, o):
5354  r"""__gt__(GridIndex1D self, GridIndex1D o) -> bool"""
5355  return _IMP_algebra.GridIndex1D___gt__(self, o)
5356 
5357  def __ge__(self, o):
5358  r"""__ge__(GridIndex1D self, GridIndex1D o) -> bool"""
5359  return _IMP_algebra.GridIndex1D___ge__(self, o)
5360 
5361  def __le__(self, o):
5362  r"""__le__(GridIndex1D self, GridIndex1D o) -> bool"""
5363  return _IMP_algebra.GridIndex1D___le__(self, o)
5364 
5365  def __hash__(self):
5366  r"""__hash__(GridIndex1D self) -> std::size_t"""
5367  return _IMP_algebra.GridIndex1D___hash__(self)
5368 
5369  def __str__(self):
5370  r"""__str__(GridIndex1D self) -> std::string"""
5371  return _IMP_algebra.GridIndex1D___str__(self)
5372 
5373  def __repr__(self):
5374  r"""__repr__(GridIndex1D self) -> std::string"""
5375  return _IMP_algebra.GridIndex1D___repr__(self)
5376 
5377  def _get_as_binary(self):
5378  r"""_get_as_binary(GridIndex1D self) -> PyObject *"""
5379  return _IMP_algebra.GridIndex1D__get_as_binary(self)
5380 
5381  def _set_from_binary(self, p):
5382  r"""_set_from_binary(GridIndex1D self, PyObject * p)"""
5383  return _IMP_algebra.GridIndex1D__set_from_binary(self, p)
5384 
5385  def __getstate__(self):
5386  p = self._get_as_binary()
5387  if len(self.__dict__) > 1:
5388  d = self.__dict__.copy()
5389  del d['this']
5390  p = (d, p)
5391  return p
5392 
5393  def __setstate__(self, p):
5394  if not hasattr(self, 'this'):
5395  self.__init__()
5396  if isinstance(p, tuple):
5397  d, p = p
5398  self.__dict__.update(d)
5399  return self._set_from_binary(p)
5400 
5401  __swig_destroy__ = _IMP_algebra.delete_GridIndex1D
5402 
5403 # Register GridIndex1D in _IMP_algebra:
5404 _IMP_algebra.GridIndex1D_swigregister(GridIndex1D)
5405 class GridIndex2D(IMP._Value):
5406  r"""Proxy of C++ IMP::algebra::GridIndexD< 2 > class."""
5407 
5408  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5409 
5410  def __init__(self, *args):
5411  r"""
5412  __init__(GridIndex2D self) -> GridIndex2D
5413  __init__(GridIndex2D self, int x) -> GridIndex2D
5414  __init__(GridIndex2D self, int x, int y) -> GridIndex2D
5415  __init__(GridIndex2D self, int x, int y, int z) -> GridIndex2D
5416  __init__(GridIndex2D self, int i, int j, int k, int l) -> GridIndex2D
5417  __init__(GridIndex2D self, int i, int j, int k, int l, int m) -> GridIndex2D
5418  __init__(GridIndex2D self, int i, int j, int k, int l, int m, int n) -> GridIndex2D
5419  """
5420  _IMP_algebra.GridIndex2D_swiginit(self, _IMP_algebra.new_GridIndex2D(*args))
5421 
5422  def get_dimension(self):
5423  r"""get_dimension(GridIndex2D self) -> unsigned int"""
5424  return _IMP_algebra.GridIndex2D_get_dimension(self)
5425 
5426  def __getitem__(self, i):
5427  r"""__getitem__(GridIndex2D self, unsigned int i) -> int const &"""
5428  return _IMP_algebra.GridIndex2D___getitem__(self, i)
5429 
5430  def show(self, *args):
5431  r"""show(GridIndex2D self, _ostream out=std::cout)"""
5432  return _IMP_algebra.GridIndex2D_show(self, *args)
5433 
5434  def __len__(self):
5435  r"""__len__(GridIndex2D self) -> unsigned int"""
5436  return _IMP_algebra.GridIndex2D___len__(self)
5437 
5438  def __cmp__(self, o):
5439  r"""__cmp__(GridIndex2D self, GridIndex2D o) -> int"""
5440  return _IMP_algebra.GridIndex2D___cmp__(self, o)
5441 
5442  def __eq__(self, o):
5443  r"""__eq__(GridIndex2D self, GridIndex2D o) -> bool"""
5444  return _IMP_algebra.GridIndex2D___eq__(self, o)
5445 
5446  def __ne__(self, o):
5447  r"""__ne__(GridIndex2D self, GridIndex2D o) -> bool"""
5448  return _IMP_algebra.GridIndex2D___ne__(self, o)
5449 
5450  def __lt__(self, o):
5451  r"""__lt__(GridIndex2D self, GridIndex2D o) -> bool"""
5452  return _IMP_algebra.GridIndex2D___lt__(self, o)
5453 
5454  def __gt__(self, o):
5455  r"""__gt__(GridIndex2D self, GridIndex2D o) -> bool"""
5456  return _IMP_algebra.GridIndex2D___gt__(self, o)
5457 
5458  def __ge__(self, o):
5459  r"""__ge__(GridIndex2D self, GridIndex2D o) -> bool"""
5460  return _IMP_algebra.GridIndex2D___ge__(self, o)
5461 
5462  def __le__(self, o):
5463  r"""__le__(GridIndex2D self, GridIndex2D o) -> bool"""
5464  return _IMP_algebra.GridIndex2D___le__(self, o)
5465 
5466  def __hash__(self):
5467  r"""__hash__(GridIndex2D self) -> std::size_t"""
5468  return _IMP_algebra.GridIndex2D___hash__(self)
5469 
5470  def __str__(self):
5471  r"""__str__(GridIndex2D self) -> std::string"""
5472  return _IMP_algebra.GridIndex2D___str__(self)
5473 
5474  def __repr__(self):
5475  r"""__repr__(GridIndex2D self) -> std::string"""
5476  return _IMP_algebra.GridIndex2D___repr__(self)
5477 
5478  def _get_as_binary(self):
5479  r"""_get_as_binary(GridIndex2D self) -> PyObject *"""
5480  return _IMP_algebra.GridIndex2D__get_as_binary(self)
5481 
5482  def _set_from_binary(self, p):
5483  r"""_set_from_binary(GridIndex2D self, PyObject * p)"""
5484  return _IMP_algebra.GridIndex2D__set_from_binary(self, p)
5485 
5486  def __getstate__(self):
5487  p = self._get_as_binary()
5488  if len(self.__dict__) > 1:
5489  d = self.__dict__.copy()
5490  del d['this']
5491  p = (d, p)
5492  return p
5493 
5494  def __setstate__(self, p):
5495  if not hasattr(self, 'this'):
5496  self.__init__()
5497  if isinstance(p, tuple):
5498  d, p = p
5499  self.__dict__.update(d)
5500  return self._set_from_binary(p)
5501 
5502  __swig_destroy__ = _IMP_algebra.delete_GridIndex2D
5503 
5504 # Register GridIndex2D in _IMP_algebra:
5505 _IMP_algebra.GridIndex2D_swigregister(GridIndex2D)
5506 class GridIndex3D(IMP._Value):
5507  r"""Proxy of C++ IMP::algebra::GridIndexD< 3 > class."""
5508 
5509  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5510 
5511  def __init__(self, *args):
5512  r"""
5513  __init__(GridIndex3D self) -> GridIndex3D
5514  __init__(GridIndex3D self, int x) -> GridIndex3D
5515  __init__(GridIndex3D self, int x, int y) -> GridIndex3D
5516  __init__(GridIndex3D self, int x, int y, int z) -> GridIndex3D
5517  __init__(GridIndex3D self, int i, int j, int k, int l) -> GridIndex3D
5518  __init__(GridIndex3D self, int i, int j, int k, int l, int m) -> GridIndex3D
5519  __init__(GridIndex3D self, int i, int j, int k, int l, int m, int n) -> GridIndex3D
5520  """
5521  _IMP_algebra.GridIndex3D_swiginit(self, _IMP_algebra.new_GridIndex3D(*args))
5522 
5523  def get_dimension(self):
5524  r"""get_dimension(GridIndex3D self) -> unsigned int"""
5525  return _IMP_algebra.GridIndex3D_get_dimension(self)
5526 
5527  def __getitem__(self, i):
5528  r"""__getitem__(GridIndex3D self, unsigned int i) -> int const &"""
5529  return _IMP_algebra.GridIndex3D___getitem__(self, i)
5530 
5531  def show(self, *args):
5532  r"""show(GridIndex3D self, _ostream out=std::cout)"""
5533  return _IMP_algebra.GridIndex3D_show(self, *args)
5534 
5535  def __len__(self):
5536  r"""__len__(GridIndex3D self) -> unsigned int"""
5537  return _IMP_algebra.GridIndex3D___len__(self)
5538 
5539  def __cmp__(self, o):
5540  r"""__cmp__(GridIndex3D self, GridIndex3D o) -> int"""
5541  return _IMP_algebra.GridIndex3D___cmp__(self, o)
5542 
5543  def __eq__(self, o):
5544  r"""__eq__(GridIndex3D self, GridIndex3D o) -> bool"""
5545  return _IMP_algebra.GridIndex3D___eq__(self, o)
5546 
5547  def __ne__(self, o):
5548  r"""__ne__(GridIndex3D self, GridIndex3D o) -> bool"""
5549  return _IMP_algebra.GridIndex3D___ne__(self, o)
5550 
5551  def __lt__(self, o):
5552  r"""__lt__(GridIndex3D self, GridIndex3D o) -> bool"""
5553  return _IMP_algebra.GridIndex3D___lt__(self, o)
5554 
5555  def __gt__(self, o):
5556  r"""__gt__(GridIndex3D self, GridIndex3D o) -> bool"""
5557  return _IMP_algebra.GridIndex3D___gt__(self, o)
5558 
5559  def __ge__(self, o):
5560  r"""__ge__(GridIndex3D self, GridIndex3D o) -> bool"""
5561  return _IMP_algebra.GridIndex3D___ge__(self, o)
5562 
5563  def __le__(self, o):
5564  r"""__le__(GridIndex3D self, GridIndex3D o) -> bool"""
5565  return _IMP_algebra.GridIndex3D___le__(self, o)
5566 
5567  def __hash__(self):
5568  r"""__hash__(GridIndex3D self) -> std::size_t"""
5569  return _IMP_algebra.GridIndex3D___hash__(self)
5570 
5571  def __str__(self):
5572  r"""__str__(GridIndex3D self) -> std::string"""
5573  return _IMP_algebra.GridIndex3D___str__(self)
5574 
5575  def __repr__(self):
5576  r"""__repr__(GridIndex3D self) -> std::string"""
5577  return _IMP_algebra.GridIndex3D___repr__(self)
5578 
5579  def _get_as_binary(self):
5580  r"""_get_as_binary(GridIndex3D self) -> PyObject *"""
5581  return _IMP_algebra.GridIndex3D__get_as_binary(self)
5582 
5583  def _set_from_binary(self, p):
5584  r"""_set_from_binary(GridIndex3D self, PyObject * p)"""
5585  return _IMP_algebra.GridIndex3D__set_from_binary(self, p)
5586 
5587  def __getstate__(self):
5588  p = self._get_as_binary()
5589  if len(self.__dict__) > 1:
5590  d = self.__dict__.copy()
5591  del d['this']
5592  p = (d, p)
5593  return p
5594 
5595  def __setstate__(self, p):
5596  if not hasattr(self, 'this'):
5597  self.__init__()
5598  if isinstance(p, tuple):
5599  d, p = p
5600  self.__dict__.update(d)
5601  return self._set_from_binary(p)
5602 
5603  __swig_destroy__ = _IMP_algebra.delete_GridIndex3D
5604 
5605 # Register GridIndex3D in _IMP_algebra:
5606 _IMP_algebra.GridIndex3D_swigregister(GridIndex3D)
5607 class GridIndex4D(IMP._Value):
5608  r"""Proxy of C++ IMP::algebra::GridIndexD< 4 > class."""
5609 
5610  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5611 
5612  def __init__(self, *args):
5613  r"""
5614  __init__(GridIndex4D self) -> GridIndex4D
5615  __init__(GridIndex4D self, int x) -> GridIndex4D
5616  __init__(GridIndex4D self, int x, int y) -> GridIndex4D
5617  __init__(GridIndex4D self, int x, int y, int z) -> GridIndex4D
5618  __init__(GridIndex4D self, int i, int j, int k, int l) -> GridIndex4D
5619  __init__(GridIndex4D self, int i, int j, int k, int l, int m) -> GridIndex4D
5620  __init__(GridIndex4D self, int i, int j, int k, int l, int m, int n) -> GridIndex4D
5621  """
5622  _IMP_algebra.GridIndex4D_swiginit(self, _IMP_algebra.new_GridIndex4D(*args))
5623 
5624  def get_dimension(self):
5625  r"""get_dimension(GridIndex4D self) -> unsigned int"""
5626  return _IMP_algebra.GridIndex4D_get_dimension(self)
5627 
5628  def __getitem__(self, i):
5629  r"""__getitem__(GridIndex4D self, unsigned int i) -> int const &"""
5630  return _IMP_algebra.GridIndex4D___getitem__(self, i)
5631 
5632  def show(self, *args):
5633  r"""show(GridIndex4D self, _ostream out=std::cout)"""
5634  return _IMP_algebra.GridIndex4D_show(self, *args)
5635 
5636  def __len__(self):
5637  r"""__len__(GridIndex4D self) -> unsigned int"""
5638  return _IMP_algebra.GridIndex4D___len__(self)
5639 
5640  def __cmp__(self, o):
5641  r"""__cmp__(GridIndex4D self, GridIndex4D o) -> int"""
5642  return _IMP_algebra.GridIndex4D___cmp__(self, o)
5643 
5644  def __eq__(self, o):
5645  r"""__eq__(GridIndex4D self, GridIndex4D o) -> bool"""
5646  return _IMP_algebra.GridIndex4D___eq__(self, o)
5647 
5648  def __ne__(self, o):
5649  r"""__ne__(GridIndex4D self, GridIndex4D o) -> bool"""
5650  return _IMP_algebra.GridIndex4D___ne__(self, o)
5651 
5652  def __lt__(self, o):
5653  r"""__lt__(GridIndex4D self, GridIndex4D o) -> bool"""
5654  return _IMP_algebra.GridIndex4D___lt__(self, o)
5655 
5656  def __gt__(self, o):
5657  r"""__gt__(GridIndex4D self, GridIndex4D o) -> bool"""
5658  return _IMP_algebra.GridIndex4D___gt__(self, o)
5659 
5660  def __ge__(self, o):
5661  r"""__ge__(GridIndex4D self, GridIndex4D o) -> bool"""
5662  return _IMP_algebra.GridIndex4D___ge__(self, o)
5663 
5664  def __le__(self, o):
5665  r"""__le__(GridIndex4D self, GridIndex4D o) -> bool"""
5666  return _IMP_algebra.GridIndex4D___le__(self, o)
5667 
5668  def __hash__(self):
5669  r"""__hash__(GridIndex4D self) -> std::size_t"""
5670  return _IMP_algebra.GridIndex4D___hash__(self)
5671 
5672  def __str__(self):
5673  r"""__str__(GridIndex4D self) -> std::string"""
5674  return _IMP_algebra.GridIndex4D___str__(self)
5675 
5676  def __repr__(self):
5677  r"""__repr__(GridIndex4D self) -> std::string"""
5678  return _IMP_algebra.GridIndex4D___repr__(self)
5679 
5680  def _get_as_binary(self):
5681  r"""_get_as_binary(GridIndex4D self) -> PyObject *"""
5682  return _IMP_algebra.GridIndex4D__get_as_binary(self)
5683 
5684  def _set_from_binary(self, p):
5685  r"""_set_from_binary(GridIndex4D self, PyObject * p)"""
5686  return _IMP_algebra.GridIndex4D__set_from_binary(self, p)
5687 
5688  def __getstate__(self):
5689  p = self._get_as_binary()
5690  if len(self.__dict__) > 1:
5691  d = self.__dict__.copy()
5692  del d['this']
5693  p = (d, p)
5694  return p
5695 
5696  def __setstate__(self, p):
5697  if not hasattr(self, 'this'):
5698  self.__init__()
5699  if isinstance(p, tuple):
5700  d, p = p
5701  self.__dict__.update(d)
5702  return self._set_from_binary(p)
5703 
5704  __swig_destroy__ = _IMP_algebra.delete_GridIndex4D
5705 
5706 # Register GridIndex4D in _IMP_algebra:
5707 _IMP_algebra.GridIndex4D_swigregister(GridIndex4D)
5708 class GridIndex5D(IMP._Value):
5709  r"""Proxy of C++ IMP::algebra::GridIndexD< 5 > class."""
5710 
5711  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5712 
5713  def __init__(self, *args):
5714  r"""
5715  __init__(GridIndex5D self) -> GridIndex5D
5716  __init__(GridIndex5D self, int x) -> GridIndex5D
5717  __init__(GridIndex5D self, int x, int y) -> GridIndex5D
5718  __init__(GridIndex5D self, int x, int y, int z) -> GridIndex5D
5719  __init__(GridIndex5D self, int i, int j, int k, int l) -> GridIndex5D
5720  __init__(GridIndex5D self, int i, int j, int k, int l, int m) -> GridIndex5D
5721  __init__(GridIndex5D self, int i, int j, int k, int l, int m, int n) -> GridIndex5D
5722  """
5723  _IMP_algebra.GridIndex5D_swiginit(self, _IMP_algebra.new_GridIndex5D(*args))
5724 
5725  def get_dimension(self):
5726  r"""get_dimension(GridIndex5D self) -> unsigned int"""
5727  return _IMP_algebra.GridIndex5D_get_dimension(self)
5728 
5729  def __getitem__(self, i):
5730  r"""__getitem__(GridIndex5D self, unsigned int i) -> int const &"""
5731  return _IMP_algebra.GridIndex5D___getitem__(self, i)
5732 
5733  def show(self, *args):
5734  r"""show(GridIndex5D self, _ostream out=std::cout)"""
5735  return _IMP_algebra.GridIndex5D_show(self, *args)
5736 
5737  def __len__(self):
5738  r"""__len__(GridIndex5D self) -> unsigned int"""
5739  return _IMP_algebra.GridIndex5D___len__(self)
5740 
5741  def __cmp__(self, o):
5742  r"""__cmp__(GridIndex5D self, GridIndex5D o) -> int"""
5743  return _IMP_algebra.GridIndex5D___cmp__(self, o)
5744 
5745  def __eq__(self, o):
5746  r"""__eq__(GridIndex5D self, GridIndex5D o) -> bool"""
5747  return _IMP_algebra.GridIndex5D___eq__(self, o)
5748 
5749  def __ne__(self, o):
5750  r"""__ne__(GridIndex5D self, GridIndex5D o) -> bool"""
5751  return _IMP_algebra.GridIndex5D___ne__(self, o)
5752 
5753  def __lt__(self, o):
5754  r"""__lt__(GridIndex5D self, GridIndex5D o) -> bool"""
5755  return _IMP_algebra.GridIndex5D___lt__(self, o)
5756 
5757  def __gt__(self, o):
5758  r"""__gt__(GridIndex5D self, GridIndex5D o) -> bool"""
5759  return _IMP_algebra.GridIndex5D___gt__(self, o)
5760 
5761  def __ge__(self, o):
5762  r"""__ge__(GridIndex5D self, GridIndex5D o) -> bool"""
5763  return _IMP_algebra.GridIndex5D___ge__(self, o)
5764 
5765  def __le__(self, o):
5766  r"""__le__(GridIndex5D self, GridIndex5D o) -> bool"""
5767  return _IMP_algebra.GridIndex5D___le__(self, o)
5768 
5769  def __hash__(self):
5770  r"""__hash__(GridIndex5D self) -> std::size_t"""
5771  return _IMP_algebra.GridIndex5D___hash__(self)
5772 
5773  def __str__(self):
5774  r"""__str__(GridIndex5D self) -> std::string"""
5775  return _IMP_algebra.GridIndex5D___str__(self)
5776 
5777  def __repr__(self):
5778  r"""__repr__(GridIndex5D self) -> std::string"""
5779  return _IMP_algebra.GridIndex5D___repr__(self)
5780 
5781  def _get_as_binary(self):
5782  r"""_get_as_binary(GridIndex5D self) -> PyObject *"""
5783  return _IMP_algebra.GridIndex5D__get_as_binary(self)
5784 
5785  def _set_from_binary(self, p):
5786  r"""_set_from_binary(GridIndex5D self, PyObject * p)"""
5787  return _IMP_algebra.GridIndex5D__set_from_binary(self, p)
5788 
5789  def __getstate__(self):
5790  p = self._get_as_binary()
5791  if len(self.__dict__) > 1:
5792  d = self.__dict__.copy()
5793  del d['this']
5794  p = (d, p)
5795  return p
5796 
5797  def __setstate__(self, p):
5798  if not hasattr(self, 'this'):
5799  self.__init__()
5800  if isinstance(p, tuple):
5801  d, p = p
5802  self.__dict__.update(d)
5803  return self._set_from_binary(p)
5804 
5805  __swig_destroy__ = _IMP_algebra.delete_GridIndex5D
5806 
5807 # Register GridIndex5D in _IMP_algebra:
5808 _IMP_algebra.GridIndex5D_swigregister(GridIndex5D)
5809 class GridIndex6D(IMP._Value):
5810  r"""Proxy of C++ IMP::algebra::GridIndexD< 6 > class."""
5811 
5812  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5813 
5814  def __init__(self, *args):
5815  r"""
5816  __init__(GridIndex6D self) -> GridIndex6D
5817  __init__(GridIndex6D self, int x) -> GridIndex6D
5818  __init__(GridIndex6D self, int x, int y) -> GridIndex6D
5819  __init__(GridIndex6D self, int x, int y, int z) -> GridIndex6D
5820  __init__(GridIndex6D self, int i, int j, int k, int l) -> GridIndex6D
5821  __init__(GridIndex6D self, int i, int j, int k, int l, int m) -> GridIndex6D
5822  __init__(GridIndex6D self, int i, int j, int k, int l, int m, int n) -> GridIndex6D
5823  """
5824  _IMP_algebra.GridIndex6D_swiginit(self, _IMP_algebra.new_GridIndex6D(*args))
5825 
5826  def get_dimension(self):
5827  r"""get_dimension(GridIndex6D self) -> unsigned int"""
5828  return _IMP_algebra.GridIndex6D_get_dimension(self)
5829 
5830  def __getitem__(self, i):
5831  r"""__getitem__(GridIndex6D self, unsigned int i) -> int const &"""
5832  return _IMP_algebra.GridIndex6D___getitem__(self, i)
5833 
5834  def show(self, *args):
5835  r"""show(GridIndex6D self, _ostream out=std::cout)"""
5836  return _IMP_algebra.GridIndex6D_show(self, *args)
5837 
5838  def __len__(self):
5839  r"""__len__(GridIndex6D self) -> unsigned int"""
5840  return _IMP_algebra.GridIndex6D___len__(self)
5841 
5842  def __cmp__(self, o):
5843  r"""__cmp__(GridIndex6D self, GridIndex6D o) -> int"""
5844  return _IMP_algebra.GridIndex6D___cmp__(self, o)
5845 
5846  def __eq__(self, o):
5847  r"""__eq__(GridIndex6D self, GridIndex6D o) -> bool"""
5848  return _IMP_algebra.GridIndex6D___eq__(self, o)
5849 
5850  def __ne__(self, o):
5851  r"""__ne__(GridIndex6D self, GridIndex6D o) -> bool"""
5852  return _IMP_algebra.GridIndex6D___ne__(self, o)
5853 
5854  def __lt__(self, o):
5855  r"""__lt__(GridIndex6D self, GridIndex6D o) -> bool"""
5856  return _IMP_algebra.GridIndex6D___lt__(self, o)
5857 
5858  def __gt__(self, o):
5859  r"""__gt__(GridIndex6D self, GridIndex6D o) -> bool"""
5860  return _IMP_algebra.GridIndex6D___gt__(self, o)
5861 
5862  def __ge__(self, o):
5863  r"""__ge__(GridIndex6D self, GridIndex6D o) -> bool"""
5864  return _IMP_algebra.GridIndex6D___ge__(self, o)
5865 
5866  def __le__(self, o):
5867  r"""__le__(GridIndex6D self, GridIndex6D o) -> bool"""
5868  return _IMP_algebra.GridIndex6D___le__(self, o)
5869 
5870  def __hash__(self):
5871  r"""__hash__(GridIndex6D self) -> std::size_t"""
5872  return _IMP_algebra.GridIndex6D___hash__(self)
5873 
5874  def __str__(self):
5875  r"""__str__(GridIndex6D self) -> std::string"""
5876  return _IMP_algebra.GridIndex6D___str__(self)
5877 
5878  def __repr__(self):
5879  r"""__repr__(GridIndex6D self) -> std::string"""
5880  return _IMP_algebra.GridIndex6D___repr__(self)
5881 
5882  def _get_as_binary(self):
5883  r"""_get_as_binary(GridIndex6D self) -> PyObject *"""
5884  return _IMP_algebra.GridIndex6D__get_as_binary(self)
5885 
5886  def _set_from_binary(self, p):
5887  r"""_set_from_binary(GridIndex6D self, PyObject * p)"""
5888  return _IMP_algebra.GridIndex6D__set_from_binary(self, p)
5889 
5890  def __getstate__(self):
5891  p = self._get_as_binary()
5892  if len(self.__dict__) > 1:
5893  d = self.__dict__.copy()
5894  del d['this']
5895  p = (d, p)
5896  return p
5897 
5898  def __setstate__(self, p):
5899  if not hasattr(self, 'this'):
5900  self.__init__()
5901  if isinstance(p, tuple):
5902  d, p = p
5903  self.__dict__.update(d)
5904  return self._set_from_binary(p)
5905 
5906  __swig_destroy__ = _IMP_algebra.delete_GridIndex6D
5907 
5908 # Register GridIndex6D in _IMP_algebra:
5909 _IMP_algebra.GridIndex6D_swigregister(GridIndex6D)
5910 class GridIndexKD(IMP._Value):
5911  r"""Proxy of C++ IMP::algebra::GridIndexD< -1 > class."""
5912 
5913  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5914 
5915  def __init__(self, *args):
5916  r"""
5917  __init__(GridIndexKD self) -> GridIndexKD
5918  __init__(GridIndexKD self, int x) -> GridIndexKD
5919  __init__(GridIndexKD self, int x, int y) -> GridIndexKD
5920  __init__(GridIndexKD self, int x, int y, int z) -> GridIndexKD
5921  __init__(GridIndexKD self, int i, int j, int k, int l) -> GridIndexKD
5922  __init__(GridIndexKD self, int i, int j, int k, int l, int m) -> GridIndexKD
5923  __init__(GridIndexKD self, int i, int j, int k, int l, int m, int n) -> GridIndexKD
5924  """
5925  _IMP_algebra.GridIndexKD_swiginit(self, _IMP_algebra.new_GridIndexKD(*args))
5926 
5927  def get_dimension(self):
5928  r"""get_dimension(GridIndexKD self) -> unsigned int"""
5929  return _IMP_algebra.GridIndexKD_get_dimension(self)
5930 
5931  def __getitem__(self, i):
5932  r"""__getitem__(GridIndexKD self, unsigned int i) -> int const &"""
5933  return _IMP_algebra.GridIndexKD___getitem__(self, i)
5934 
5935  def show(self, *args):
5936  r"""show(GridIndexKD self, _ostream out=std::cout)"""
5937  return _IMP_algebra.GridIndexKD_show(self, *args)
5938 
5939  def __len__(self):
5940  r"""__len__(GridIndexKD self) -> unsigned int"""
5941  return _IMP_algebra.GridIndexKD___len__(self)
5942 
5943  def __cmp__(self, o):
5944  r"""__cmp__(GridIndexKD self, GridIndexKD o) -> int"""
5945  return _IMP_algebra.GridIndexKD___cmp__(self, o)
5946 
5947  def __eq__(self, o):
5948  r"""__eq__(GridIndexKD self, GridIndexKD o) -> bool"""
5949  return _IMP_algebra.GridIndexKD___eq__(self, o)
5950 
5951  def __ne__(self, o):
5952  r"""__ne__(GridIndexKD self, GridIndexKD o) -> bool"""
5953  return _IMP_algebra.GridIndexKD___ne__(self, o)
5954 
5955  def __lt__(self, o):
5956  r"""__lt__(GridIndexKD self, GridIndexKD o) -> bool"""
5957  return _IMP_algebra.GridIndexKD___lt__(self, o)
5958 
5959  def __gt__(self, o):
5960  r"""__gt__(GridIndexKD self, GridIndexKD o) -> bool"""
5961  return _IMP_algebra.GridIndexKD___gt__(self, o)
5962 
5963  def __ge__(self, o):
5964  r"""__ge__(GridIndexKD self, GridIndexKD o) -> bool"""
5965  return _IMP_algebra.GridIndexKD___ge__(self, o)
5966 
5967  def __le__(self, o):
5968  r"""__le__(GridIndexKD self, GridIndexKD o) -> bool"""
5969  return _IMP_algebra.GridIndexKD___le__(self, o)
5970 
5971  def __hash__(self):
5972  r"""__hash__(GridIndexKD self) -> std::size_t"""
5973  return _IMP_algebra.GridIndexKD___hash__(self)
5974 
5975  def __str__(self):
5976  r"""__str__(GridIndexKD self) -> std::string"""
5977  return _IMP_algebra.GridIndexKD___str__(self)
5978 
5979  def __repr__(self):
5980  r"""__repr__(GridIndexKD self) -> std::string"""
5981  return _IMP_algebra.GridIndexKD___repr__(self)
5982 
5983  def _get_as_binary(self):
5984  r"""_get_as_binary(GridIndexKD self) -> PyObject *"""
5985  return _IMP_algebra.GridIndexKD__get_as_binary(self)
5986 
5987  def _set_from_binary(self, p):
5988  r"""_set_from_binary(GridIndexKD self, PyObject * p)"""
5989  return _IMP_algebra.GridIndexKD__set_from_binary(self, p)
5990 
5991  def __getstate__(self):
5992  p = self._get_as_binary()
5993  if len(self.__dict__) > 1:
5994  d = self.__dict__.copy()
5995  del d['this']
5996  p = (d, p)
5997  return p
5998 
5999  def __setstate__(self, p):
6000  if not hasattr(self, 'this'):
6001  self.__init__()
6002  if isinstance(p, tuple):
6003  d, p = p
6004  self.__dict__.update(d)
6005  return self._set_from_binary(p)
6006 
6007  __swig_destroy__ = _IMP_algebra.delete_GridIndexKD
6008 
6009 # Register GridIndexKD in _IMP_algebra:
6010 _IMP_algebra.GridIndexKD_swigregister(GridIndexKD)
6011 class ExtendedGridIndex1D(IMP._Value):
6012  r"""Proxy of C++ IMP::algebra::ExtendedGridIndexD< 1 > class."""
6013 
6014  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6015 
6016  def __init__(self, *args):
6017  r"""
6018  __init__(ExtendedGridIndex1D self, IMP::Ints vals) -> ExtendedGridIndex1D
6019  __init__(ExtendedGridIndex1D self, int x) -> ExtendedGridIndex1D
6020  __init__(ExtendedGridIndex1D self, int x, int y) -> ExtendedGridIndex1D
6021  __init__(ExtendedGridIndex1D self, int x, int y, int z) -> ExtendedGridIndex1D
6022  __init__(ExtendedGridIndex1D self, int i, int j, int k, int l) -> ExtendedGridIndex1D
6023  __init__(ExtendedGridIndex1D self, int i, int j, int k, int l, int m) -> ExtendedGridIndex1D
6024  __init__(ExtendedGridIndex1D self, int i, int j, int k, int l, int m, int n) -> ExtendedGridIndex1D
6025  __init__(ExtendedGridIndex1D self) -> ExtendedGridIndex1D
6026  """
6027  _IMP_algebra.ExtendedGridIndex1D_swiginit(self, _IMP_algebra.new_ExtendedGridIndex1D(*args))
6028 
6029  def get_dimension(self):
6030  r"""get_dimension(ExtendedGridIndex1D self) -> unsigned int"""
6031  return _IMP_algebra.ExtendedGridIndex1D_get_dimension(self)
6032 
6033  def __cmp__(self, o):
6034  r"""__cmp__(ExtendedGridIndex1D self, ExtendedGridIndex1D o) -> int"""
6035  return _IMP_algebra.ExtendedGridIndex1D___cmp__(self, o)
6036 
6037  def __eq__(self, o):
6038  r"""__eq__(ExtendedGridIndex1D self, ExtendedGridIndex1D o) -> bool"""
6039  return _IMP_algebra.ExtendedGridIndex1D___eq__(self, o)
6040 
6041  def __ne__(self, o):
6042  r"""__ne__(ExtendedGridIndex1D self, ExtendedGridIndex1D o) -> bool"""
6043  return _IMP_algebra.ExtendedGridIndex1D___ne__(self, o)
6044 
6045  def __lt__(self, o):
6046  r"""__lt__(ExtendedGridIndex1D self, ExtendedGridIndex1D o) -> bool"""
6047  return _IMP_algebra.ExtendedGridIndex1D___lt__(self, o)
6048 
6049  def __gt__(self, o):
6050  r"""__gt__(ExtendedGridIndex1D self, ExtendedGridIndex1D o) -> bool"""
6051  return _IMP_algebra.ExtendedGridIndex1D___gt__(self, o)
6052 
6053  def __ge__(self, o):
6054  r"""__ge__(ExtendedGridIndex1D self, ExtendedGridIndex1D o) -> bool"""
6055  return _IMP_algebra.ExtendedGridIndex1D___ge__(self, o)
6056 
6057  def __le__(self, o):
6058  r"""__le__(ExtendedGridIndex1D self, ExtendedGridIndex1D o) -> bool"""
6059  return _IMP_algebra.ExtendedGridIndex1D___le__(self, o)
6060 
6061  def __setitem__(self, i, v):
6062  r"""__setitem__(ExtendedGridIndex1D self, unsigned int i, int const & v)"""
6063  return _IMP_algebra.ExtendedGridIndex1D___setitem__(self, i, v)
6064 
6065  def __getitem__(self, i):
6066  r"""__getitem__(ExtendedGridIndex1D self, unsigned int i) -> int const &"""
6067  return _IMP_algebra.ExtendedGridIndex1D___getitem__(self, i)
6068 
6069  def show(self, *args):
6070  r"""show(ExtendedGridIndex1D self, _ostream out=std::cout)"""
6071  return _IMP_algebra.ExtendedGridIndex1D_show(self, *args)
6072 
6073  def __len__(self):
6074  r"""__len__(ExtendedGridIndex1D self) -> unsigned int"""
6075  return _IMP_algebra.ExtendedGridIndex1D___len__(self)
6076 
6077  def __hash__(self):
6078  r"""__hash__(ExtendedGridIndex1D self) -> std::size_t"""
6079  return _IMP_algebra.ExtendedGridIndex1D___hash__(self)
6080 
6081  def get_uniform_offset(self, ii):
6082  r"""get_uniform_offset(ExtendedGridIndex1D self, int ii) -> ExtendedGridIndex1D"""
6083  return _IMP_algebra.ExtendedGridIndex1D_get_uniform_offset(self, ii)
6084 
6085  def get_offset(self, i, j, k):
6086  r"""get_offset(ExtendedGridIndex1D self, int i, int j, int k) -> ExtendedGridIndex1D"""
6087  return _IMP_algebra.ExtendedGridIndex1D_get_offset(self, i, j, k)
6088 
6089  def __str__(self):
6090  r"""__str__(ExtendedGridIndex1D self) -> std::string"""
6091  return _IMP_algebra.ExtendedGridIndex1D___str__(self)
6092 
6093  def __repr__(self):
6094  r"""__repr__(ExtendedGridIndex1D self) -> std::string"""
6095  return _IMP_algebra.ExtendedGridIndex1D___repr__(self)
6096 
6097  def _get_as_binary(self):
6098  r"""_get_as_binary(ExtendedGridIndex1D self) -> PyObject *"""
6099  return _IMP_algebra.ExtendedGridIndex1D__get_as_binary(self)
6100 
6101  def _set_from_binary(self, p):
6102  r"""_set_from_binary(ExtendedGridIndex1D self, PyObject * p)"""
6103  return _IMP_algebra.ExtendedGridIndex1D__set_from_binary(self, p)
6104 
6105  def __getstate__(self):
6106  p = self._get_as_binary()
6107  if len(self.__dict__) > 1:
6108  d = self.__dict__.copy()
6109  del d['this']
6110  p = (d, p)
6111  return p
6112 
6113  def __setstate__(self, p):
6114  if not hasattr(self, 'this'):
6115  self.__init__()
6116  if isinstance(p, tuple):
6117  d, p = p
6118  self.__dict__.update(d)
6119  return self._set_from_binary(p)
6120 
6121  __swig_destroy__ = _IMP_algebra.delete_ExtendedGridIndex1D
6122 
6123 # Register ExtendedGridIndex1D in _IMP_algebra:
6124 _IMP_algebra.ExtendedGridIndex1D_swigregister(ExtendedGridIndex1D)
6125 class ExtendedGridIndex2D(IMP._Value):
6126  r"""Proxy of C++ IMP::algebra::ExtendedGridIndexD< 2 > class."""
6127 
6128  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6129 
6130  def __init__(self, *args):
6131  r"""
6132  __init__(ExtendedGridIndex2D self, IMP::Ints vals) -> ExtendedGridIndex2D
6133  __init__(ExtendedGridIndex2D self, int x) -> ExtendedGridIndex2D
6134  __init__(ExtendedGridIndex2D self, int x, int y) -> ExtendedGridIndex2D
6135  __init__(ExtendedGridIndex2D self, int x, int y, int z) -> ExtendedGridIndex2D
6136  __init__(ExtendedGridIndex2D self, int i, int j, int k, int l) -> ExtendedGridIndex2D
6137  __init__(ExtendedGridIndex2D self, int i, int j, int k, int l, int m) -> ExtendedGridIndex2D
6138  __init__(ExtendedGridIndex2D self, int i, int j, int k, int l, int m, int n) -> ExtendedGridIndex2D
6139  __init__(ExtendedGridIndex2D self) -> ExtendedGridIndex2D
6140  """
6141  _IMP_algebra.ExtendedGridIndex2D_swiginit(self, _IMP_algebra.new_ExtendedGridIndex2D(*args))
6142 
6143  def get_dimension(self):
6144  r"""get_dimension(ExtendedGridIndex2D self) -> unsigned int"""
6145  return _IMP_algebra.ExtendedGridIndex2D_get_dimension(self)
6146 
6147  def __cmp__(self, o):
6148  r"""__cmp__(ExtendedGridIndex2D self, ExtendedGridIndex2D o) -> int"""
6149  return _IMP_algebra.ExtendedGridIndex2D___cmp__(self, o)
6150 
6151  def __eq__(self, o):
6152  r"""__eq__(ExtendedGridIndex2D self, ExtendedGridIndex2D o) -> bool"""
6153  return _IMP_algebra.ExtendedGridIndex2D___eq__(self, o)
6154 
6155  def __ne__(self, o):
6156  r"""__ne__(ExtendedGridIndex2D self, ExtendedGridIndex2D o) -> bool"""
6157  return _IMP_algebra.ExtendedGridIndex2D___ne__(self, o)
6158 
6159  def __lt__(self, o):
6160  r"""__lt__(ExtendedGridIndex2D self, ExtendedGridIndex2D o) -> bool"""
6161  return _IMP_algebra.ExtendedGridIndex2D___lt__(self, o)
6162 
6163  def __gt__(self, o):
6164  r"""__gt__(ExtendedGridIndex2D self, ExtendedGridIndex2D o) -> bool"""
6165  return _IMP_algebra.ExtendedGridIndex2D___gt__(self, o)
6166 
6167  def __ge__(self, o):
6168  r"""__ge__(ExtendedGridIndex2D self, ExtendedGridIndex2D o) -> bool"""
6169  return _IMP_algebra.ExtendedGridIndex2D___ge__(self, o)
6170 
6171  def __le__(self, o):
6172  r"""__le__(ExtendedGridIndex2D self, ExtendedGridIndex2D o) -> bool"""
6173  return _IMP_algebra.ExtendedGridIndex2D___le__(self, o)
6174 
6175  def __setitem__(self, i, v):
6176  r"""__setitem__(ExtendedGridIndex2D self, unsigned int i, int const & v)"""
6177  return _IMP_algebra.ExtendedGridIndex2D___setitem__(self, i, v)
6178 
6179  def __getitem__(self, i):
6180  r"""__getitem__(ExtendedGridIndex2D self, unsigned int i) -> int const &"""
6181  return _IMP_algebra.ExtendedGridIndex2D___getitem__(self, i)
6182 
6183  def show(self, *args):
6184  r"""show(ExtendedGridIndex2D self, _ostream out=std::cout)"""
6185  return _IMP_algebra.ExtendedGridIndex2D_show(self, *args)
6186 
6187  def __len__(self):
6188  r"""__len__(ExtendedGridIndex2D self) -> unsigned int"""
6189  return _IMP_algebra.ExtendedGridIndex2D___len__(self)
6190 
6191  def __hash__(self):
6192  r"""__hash__(ExtendedGridIndex2D self) -> std::size_t"""
6193  return _IMP_algebra.ExtendedGridIndex2D___hash__(self)
6194 
6195  def get_uniform_offset(self, ii):
6196  r"""get_uniform_offset(ExtendedGridIndex2D self, int ii) -> ExtendedGridIndex2D"""
6197  return _IMP_algebra.ExtendedGridIndex2D_get_uniform_offset(self, ii)
6198 
6199  def get_offset(self, i, j, k):
6200  r"""get_offset(ExtendedGridIndex2D self, int i, int j, int k) -> ExtendedGridIndex2D"""
6201  return _IMP_algebra.ExtendedGridIndex2D_get_offset(self, i, j, k)
6202 
6203  def __str__(self):
6204  r"""__str__(ExtendedGridIndex2D self) -> std::string"""
6205  return _IMP_algebra.ExtendedGridIndex2D___str__(self)
6206 
6207  def __repr__(self):
6208  r"""__repr__(ExtendedGridIndex2D self) -> std::string"""
6209  return _IMP_algebra.ExtendedGridIndex2D___repr__(self)
6210 
6211  def _get_as_binary(self):
6212  r"""_get_as_binary(ExtendedGridIndex2D self) -> PyObject *"""
6213  return _IMP_algebra.ExtendedGridIndex2D__get_as_binary(self)
6214 
6215  def _set_from_binary(self, p):
6216  r"""_set_from_binary(ExtendedGridIndex2D self, PyObject * p)"""
6217  return _IMP_algebra.ExtendedGridIndex2D__set_from_binary(self, p)
6218 
6219  def __getstate__(self):
6220  p = self._get_as_binary()
6221  if len(self.__dict__) > 1:
6222  d = self.__dict__.copy()
6223  del d['this']
6224  p = (d, p)
6225  return p
6226 
6227  def __setstate__(self, p):
6228  if not hasattr(self, 'this'):
6229  self.__init__()
6230  if isinstance(p, tuple):
6231  d, p = p
6232  self.__dict__.update(d)
6233  return self._set_from_binary(p)
6234 
6235  __swig_destroy__ = _IMP_algebra.delete_ExtendedGridIndex2D
6236 
6237 # Register ExtendedGridIndex2D in _IMP_algebra:
6238 _IMP_algebra.ExtendedGridIndex2D_swigregister(ExtendedGridIndex2D)
6239 class ExtendedGridIndex3D(IMP._Value):
6240  r"""Proxy of C++ IMP::algebra::ExtendedGridIndexD< 3 > class."""
6241 
6242  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6243 
6244  def __init__(self, *args):
6245  r"""
6246  __init__(ExtendedGridIndex3D self, IMP::Ints vals) -> ExtendedGridIndex3D
6247  __init__(ExtendedGridIndex3D self, int x) -> ExtendedGridIndex3D
6248  __init__(ExtendedGridIndex3D self, int x, int y) -> ExtendedGridIndex3D
6249  __init__(ExtendedGridIndex3D self, int x, int y, int z) -> ExtendedGridIndex3D
6250  __init__(ExtendedGridIndex3D self, int i, int j, int k, int l) -> ExtendedGridIndex3D
6251  __init__(ExtendedGridIndex3D self, int i, int j, int k, int l, int m) -> ExtendedGridIndex3D
6252  __init__(ExtendedGridIndex3D self, int i, int j, int k, int l, int m, int n) -> ExtendedGridIndex3D
6253  __init__(ExtendedGridIndex3D self) -> ExtendedGridIndex3D
6254  """
6255  _IMP_algebra.ExtendedGridIndex3D_swiginit(self, _IMP_algebra.new_ExtendedGridIndex3D(*args))
6256 
6257  def get_dimension(self):
6258  r"""get_dimension(ExtendedGridIndex3D self) -> unsigned int"""
6259  return _IMP_algebra.ExtendedGridIndex3D_get_dimension(self)
6260 
6261  def __cmp__(self, o):
6262  r"""__cmp__(ExtendedGridIndex3D self, ExtendedGridIndex3D o) -> int"""
6263  return _IMP_algebra.ExtendedGridIndex3D___cmp__(self, o)
6264 
6265  def __eq__(self, o):
6266  r"""__eq__(ExtendedGridIndex3D self, ExtendedGridIndex3D o) -> bool"""
6267  return _IMP_algebra.ExtendedGridIndex3D___eq__(self, o)
6268 
6269  def __ne__(self, o):
6270  r"""__ne__(ExtendedGridIndex3D self, ExtendedGridIndex3D o) -> bool"""
6271  return _IMP_algebra.ExtendedGridIndex3D___ne__(self, o)
6272 
6273  def __lt__(self, o):
6274  r"""__lt__(ExtendedGridIndex3D self, ExtendedGridIndex3D o) -> bool"""
6275  return _IMP_algebra.ExtendedGridIndex3D___lt__(self, o)
6276 
6277  def __gt__(self, o):
6278  r"""__gt__(ExtendedGridIndex3D self, ExtendedGridIndex3D o) -> bool"""
6279  return _IMP_algebra.ExtendedGridIndex3D___gt__(self, o)
6280 
6281  def __ge__(self, o):
6282  r"""__ge__(ExtendedGridIndex3D self, ExtendedGridIndex3D o) -> bool"""
6283  return _IMP_algebra.ExtendedGridIndex3D___ge__(self, o)
6284 
6285  def __le__(self, o):
6286  r"""__le__(ExtendedGridIndex3D self, ExtendedGridIndex3D o) -> bool"""
6287  return _IMP_algebra.ExtendedGridIndex3D___le__(self, o)
6288 
6289  def __setitem__(self, i, v):
6290  r"""__setitem__(ExtendedGridIndex3D self, unsigned int i, int const & v)"""
6291  return _IMP_algebra.ExtendedGridIndex3D___setitem__(self, i, v)
6292 
6293  def __getitem__(self, i):
6294  r"""__getitem__(ExtendedGridIndex3D self, unsigned int i) -> int const &"""
6295  return _IMP_algebra.ExtendedGridIndex3D___getitem__(self, i)
6296 
6297  def show(self, *args):
6298  r"""show(ExtendedGridIndex3D self, _ostream out=std::cout)"""
6299  return _IMP_algebra.ExtendedGridIndex3D_show(self, *args)
6300 
6301  def __len__(self):
6302  r"""__len__(ExtendedGridIndex3D self) -> unsigned int"""
6303  return _IMP_algebra.ExtendedGridIndex3D___len__(self)
6304 
6305  def __hash__(self):
6306  r"""__hash__(ExtendedGridIndex3D self) -> std::size_t"""
6307  return _IMP_algebra.ExtendedGridIndex3D___hash__(self)
6308 
6309  def get_uniform_offset(self, ii):
6310  r"""get_uniform_offset(ExtendedGridIndex3D self, int ii) -> ExtendedGridIndex3D"""
6311  return _IMP_algebra.ExtendedGridIndex3D_get_uniform_offset(self, ii)
6312 
6313  def get_offset(self, i, j, k):
6314  r"""get_offset(ExtendedGridIndex3D self, int i, int j, int k) -> ExtendedGridIndex3D"""
6315  return _IMP_algebra.ExtendedGridIndex3D_get_offset(self, i, j, k)
6316 
6317  def __str__(self):
6318  r"""__str__(ExtendedGridIndex3D self) -> std::string"""
6319  return _IMP_algebra.ExtendedGridIndex3D___str__(self)
6320 
6321  def __repr__(self):
6322  r"""__repr__(ExtendedGridIndex3D self) -> std::string"""
6323  return _IMP_algebra.ExtendedGridIndex3D___repr__(self)
6324 
6325  def _get_as_binary(self):
6326  r"""_get_as_binary(ExtendedGridIndex3D self) -> PyObject *"""
6327  return _IMP_algebra.ExtendedGridIndex3D__get_as_binary(self)
6328 
6329  def _set_from_binary(self, p):
6330  r"""_set_from_binary(ExtendedGridIndex3D self, PyObject * p)"""
6331  return _IMP_algebra.ExtendedGridIndex3D__set_from_binary(self, p)
6332 
6333  def __getstate__(self):
6334  p = self._get_as_binary()
6335  if len(self.__dict__) > 1:
6336  d = self.__dict__.copy()
6337  del d['this']
6338  p = (d, p)
6339  return p
6340 
6341  def __setstate__(self, p):
6342  if not hasattr(self, 'this'):
6343  self.__init__()
6344  if isinstance(p, tuple):
6345  d, p = p
6346  self.__dict__.update(d)
6347  return self._set_from_binary(p)
6348 
6349  __swig_destroy__ = _IMP_algebra.delete_ExtendedGridIndex3D
6350 
6351 # Register ExtendedGridIndex3D in _IMP_algebra:
6352 _IMP_algebra.ExtendedGridIndex3D_swigregister(ExtendedGridIndex3D)
6353 class ExtendedGridIndex4D(IMP._Value):
6354  r"""Proxy of C++ IMP::algebra::ExtendedGridIndexD< 4 > class."""
6355 
6356  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6357 
6358  def __init__(self, *args):
6359  r"""
6360  __init__(ExtendedGridIndex4D self, IMP::Ints vals) -> ExtendedGridIndex4D
6361  __init__(ExtendedGridIndex4D self, int x) -> ExtendedGridIndex4D
6362  __init__(ExtendedGridIndex4D self, int x, int y) -> ExtendedGridIndex4D
6363  __init__(ExtendedGridIndex4D self, int x, int y, int z) -> ExtendedGridIndex4D
6364  __init__(ExtendedGridIndex4D self, int i, int j, int k, int l) -> ExtendedGridIndex4D
6365  __init__(ExtendedGridIndex4D self, int i, int j, int k, int l, int m) -> ExtendedGridIndex4D
6366  __init__(ExtendedGridIndex4D self, int i, int j, int k, int l, int m, int n) -> ExtendedGridIndex4D
6367  __init__(ExtendedGridIndex4D self) -> ExtendedGridIndex4D
6368  """
6369  _IMP_algebra.ExtendedGridIndex4D_swiginit(self, _IMP_algebra.new_ExtendedGridIndex4D(*args))
6370 
6371  def get_dimension(self):
6372  r"""get_dimension(ExtendedGridIndex4D self) -> unsigned int"""
6373  return _IMP_algebra.ExtendedGridIndex4D_get_dimension(self)
6374 
6375  def __cmp__(self, o):
6376  r"""__cmp__(ExtendedGridIndex4D self, ExtendedGridIndex4D o) -> int"""
6377  return _IMP_algebra.ExtendedGridIndex4D___cmp__(self, o)
6378 
6379  def __eq__(self, o):
6380  r"""__eq__(ExtendedGridIndex4D self, ExtendedGridIndex4D o) -> bool"""
6381  return _IMP_algebra.ExtendedGridIndex4D___eq__(self, o)
6382 
6383  def __ne__(self, o):
6384  r"""__ne__(ExtendedGridIndex4D self, ExtendedGridIndex4D o) -> bool"""
6385  return _IMP_algebra.ExtendedGridIndex4D___ne__(self, o)
6386 
6387  def __lt__(self, o):
6388  r"""__lt__(ExtendedGridIndex4D self, ExtendedGridIndex4D o) -> bool"""
6389  return _IMP_algebra.ExtendedGridIndex4D___lt__(self, o)
6390 
6391  def __gt__(self, o):
6392  r"""__gt__(ExtendedGridIndex4D self, ExtendedGridIndex4D o) -> bool"""
6393  return _IMP_algebra.ExtendedGridIndex4D___gt__(self, o)
6394 
6395  def __ge__(self, o):
6396  r"""__ge__(ExtendedGridIndex4D self, ExtendedGridIndex4D o) -> bool"""
6397  return _IMP_algebra.ExtendedGridIndex4D___ge__(self, o)
6398 
6399  def __le__(self, o):
6400  r"""__le__(ExtendedGridIndex4D self, ExtendedGridIndex4D o) -> bool"""
6401  return _IMP_algebra.ExtendedGridIndex4D___le__(self, o)
6402 
6403  def __setitem__(self, i, v):
6404  r"""__setitem__(ExtendedGridIndex4D self, unsigned int i, int const & v)"""
6405  return _IMP_algebra.ExtendedGridIndex4D___setitem__(self, i, v)
6406 
6407  def __getitem__(self, i):
6408  r"""__getitem__(ExtendedGridIndex4D self, unsigned int i) -> int const &"""
6409  return _IMP_algebra.ExtendedGridIndex4D___getitem__(self, i)
6410 
6411  def show(self, *args):
6412  r"""show(ExtendedGridIndex4D self, _ostream out=std::cout)"""
6413  return _IMP_algebra.ExtendedGridIndex4D_show(self, *args)
6414 
6415  def __len__(self):
6416  r"""__len__(ExtendedGridIndex4D self) -> unsigned int"""
6417  return _IMP_algebra.ExtendedGridIndex4D___len__(self)
6418 
6419  def __hash__(self):
6420  r"""__hash__(ExtendedGridIndex4D self) -> std::size_t"""
6421  return _IMP_algebra.ExtendedGridIndex4D___hash__(self)
6422 
6423  def get_uniform_offset(self, ii):
6424  r"""get_uniform_offset(ExtendedGridIndex4D self, int ii) -> ExtendedGridIndex4D"""
6425  return _IMP_algebra.ExtendedGridIndex4D_get_uniform_offset(self, ii)
6426 
6427  def get_offset(self, i, j, k):
6428  r"""get_offset(ExtendedGridIndex4D self, int i, int j, int k) -> ExtendedGridIndex4D"""
6429  return _IMP_algebra.ExtendedGridIndex4D_get_offset(self, i, j, k)
6430 
6431  def __str__(self):
6432  r"""__str__(ExtendedGridIndex4D self) -> std::string"""
6433  return _IMP_algebra.ExtendedGridIndex4D___str__(self)
6434 
6435  def __repr__(self):
6436  r"""__repr__(ExtendedGridIndex4D self) -> std::string"""
6437  return _IMP_algebra.ExtendedGridIndex4D___repr__(self)
6438 
6439  def _get_as_binary(self):
6440  r"""_get_as_binary(ExtendedGridIndex4D self) -> PyObject *"""
6441  return _IMP_algebra.ExtendedGridIndex4D__get_as_binary(self)
6442 
6443  def _set_from_binary(self, p):
6444  r"""_set_from_binary(ExtendedGridIndex4D self, PyObject * p)"""
6445  return _IMP_algebra.ExtendedGridIndex4D__set_from_binary(self, p)
6446 
6447  def __getstate__(self):
6448  p = self._get_as_binary()
6449  if len(self.__dict__) > 1:
6450  d = self.__dict__.copy()
6451  del d['this']
6452  p = (d, p)
6453  return p
6454 
6455  def __setstate__(self, p):
6456  if not hasattr(self, 'this'):
6457  self.__init__()
6458  if isinstance(p, tuple):
6459  d, p = p
6460  self.__dict__.update(d)
6461  return self._set_from_binary(p)
6462 
6463  __swig_destroy__ = _IMP_algebra.delete_ExtendedGridIndex4D
6464 
6465 # Register ExtendedGridIndex4D in _IMP_algebra:
6466 _IMP_algebra.ExtendedGridIndex4D_swigregister(ExtendedGridIndex4D)
6467 class ExtendedGridIndex5D(IMP._Value):
6468  r"""Proxy of C++ IMP::algebra::ExtendedGridIndexD< 5 > class."""
6469 
6470  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6471 
6472  def __init__(self, *args):
6473  r"""
6474  __init__(ExtendedGridIndex5D self, IMP::Ints vals) -> ExtendedGridIndex5D
6475  __init__(ExtendedGridIndex5D self, int x) -> ExtendedGridIndex5D
6476  __init__(ExtendedGridIndex5D self, int x, int y) -> ExtendedGridIndex5D
6477  __init__(ExtendedGridIndex5D self, int x, int y, int z) -> ExtendedGridIndex5D
6478  __init__(ExtendedGridIndex5D self, int i, int j, int k, int l) -> ExtendedGridIndex5D
6479  __init__(ExtendedGridIndex5D self, int i, int j, int k, int l, int m) -> ExtendedGridIndex5D
6480  __init__(ExtendedGridIndex5D self, int i, int j, int k, int l, int m, int n) -> ExtendedGridIndex5D
6481  __init__(ExtendedGridIndex5D self) -> ExtendedGridIndex5D
6482  """
6483  _IMP_algebra.ExtendedGridIndex5D_swiginit(self, _IMP_algebra.new_ExtendedGridIndex5D(*args))
6484 
6485  def get_dimension(self):
6486  r"""get_dimension(ExtendedGridIndex5D self) -> unsigned int"""
6487  return _IMP_algebra.ExtendedGridIndex5D_get_dimension(self)
6488 
6489  def __cmp__(self, o):
6490  r"""__cmp__(ExtendedGridIndex5D self, ExtendedGridIndex5D o) -> int"""
6491  return _IMP_algebra.ExtendedGridIndex5D___cmp__(self, o)
6492 
6493  def __eq__(self, o):
6494  r"""__eq__(ExtendedGridIndex5D self, ExtendedGridIndex5D o) -> bool"""
6495  return _IMP_algebra.ExtendedGridIndex5D___eq__(self, o)
6496 
6497  def __ne__(self, o):
6498  r"""__ne__(ExtendedGridIndex5D self, ExtendedGridIndex5D o) -> bool"""
6499  return _IMP_algebra.ExtendedGridIndex5D___ne__(self, o)
6500 
6501  def __lt__(self, o):
6502  r"""__lt__(ExtendedGridIndex5D self, ExtendedGridIndex5D o) -> bool"""
6503  return _IMP_algebra.ExtendedGridIndex5D___lt__(self, o)
6504 
6505  def __gt__(self, o):
6506  r"""__gt__(ExtendedGridIndex5D self, ExtendedGridIndex5D o) -> bool"""
6507  return _IMP_algebra.ExtendedGridIndex5D___gt__(self, o)
6508 
6509  def __ge__(self, o):
6510  r"""__ge__(ExtendedGridIndex5D self, ExtendedGridIndex5D o) -> bool"""
6511  return _IMP_algebra.ExtendedGridIndex5D___ge__(self, o)
6512 
6513  def __le__(self, o):
6514  r"""__le__(ExtendedGridIndex5D self, ExtendedGridIndex5D o) -> bool"""
6515  return _IMP_algebra.ExtendedGridIndex5D___le__(self, o)
6516 
6517  def __setitem__(self, i, v):
6518  r"""__setitem__(ExtendedGridIndex5D self, unsigned int i, int const & v)"""
6519  return _IMP_algebra.ExtendedGridIndex5D___setitem__(self, i, v)
6520 
6521  def __getitem__(self, i):
6522  r"""__getitem__(ExtendedGridIndex5D self, unsigned int i) -> int const &"""
6523  return _IMP_algebra.ExtendedGridIndex5D___getitem__(self, i)
6524 
6525  def show(self, *args):
6526  r"""show(ExtendedGridIndex5D self, _ostream out=std::cout)"""
6527  return _IMP_algebra.ExtendedGridIndex5D_show(self, *args)
6528 
6529  def __len__(self):
6530  r"""__len__(ExtendedGridIndex5D self) -> unsigned int"""
6531  return _IMP_algebra.ExtendedGridIndex5D___len__(self)
6532 
6533  def __hash__(self):
6534  r"""__hash__(ExtendedGridIndex5D self) -> std::size_t"""
6535  return _IMP_algebra.ExtendedGridIndex5D___hash__(self)
6536 
6537  def get_uniform_offset(self, ii):
6538  r"""get_uniform_offset(ExtendedGridIndex5D self, int ii) -> ExtendedGridIndex5D"""
6539  return _IMP_algebra.ExtendedGridIndex5D_get_uniform_offset(self, ii)
6540 
6541  def get_offset(self, i, j, k):
6542  r"""get_offset(ExtendedGridIndex5D self, int i, int j, int k) -> ExtendedGridIndex5D"""
6543  return _IMP_algebra.ExtendedGridIndex5D_get_offset(self, i, j, k)
6544 
6545  def __str__(self):
6546  r"""__str__(ExtendedGridIndex5D self) -> std::string"""
6547  return _IMP_algebra.ExtendedGridIndex5D___str__(self)
6548 
6549  def __repr__(self):
6550  r"""__repr__(ExtendedGridIndex5D self) -> std::string"""
6551  return _IMP_algebra.ExtendedGridIndex5D___repr__(self)
6552 
6553  def _get_as_binary(self):
6554  r"""_get_as_binary(ExtendedGridIndex5D self) -> PyObject *"""
6555  return _IMP_algebra.ExtendedGridIndex5D__get_as_binary(self)
6556 
6557  def _set_from_binary(self, p):
6558  r"""_set_from_binary(ExtendedGridIndex5D self, PyObject * p)"""
6559  return _IMP_algebra.ExtendedGridIndex5D__set_from_binary(self, p)
6560 
6561  def __getstate__(self):
6562  p = self._get_as_binary()
6563  if len(self.__dict__) > 1:
6564  d = self.__dict__.copy()
6565  del d['this']
6566  p = (d, p)
6567  return p
6568 
6569  def __setstate__(self, p):
6570  if not hasattr(self, 'this'):
6571  self.__init__()
6572  if isinstance(p, tuple):
6573  d, p = p
6574  self.__dict__.update(d)
6575  return self._set_from_binary(p)
6576 
6577  __swig_destroy__ = _IMP_algebra.delete_ExtendedGridIndex5D
6578 
6579 # Register ExtendedGridIndex5D in _IMP_algebra:
6580 _IMP_algebra.ExtendedGridIndex5D_swigregister(ExtendedGridIndex5D)
6581 class ExtendedGridIndex6D(IMP._Value):
6582  r"""Proxy of C++ IMP::algebra::ExtendedGridIndexD< 6 > class."""
6583 
6584  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6585 
6586  def __init__(self, *args):
6587  r"""
6588  __init__(ExtendedGridIndex6D self, IMP::Ints vals) -> ExtendedGridIndex6D
6589  __init__(ExtendedGridIndex6D self, int x) -> ExtendedGridIndex6D
6590  __init__(ExtendedGridIndex6D self, int x, int y) -> ExtendedGridIndex6D
6591  __init__(ExtendedGridIndex6D self, int x, int y, int z) -> ExtendedGridIndex6D
6592  __init__(ExtendedGridIndex6D self, int i, int j, int k, int l) -> ExtendedGridIndex6D
6593  __init__(ExtendedGridIndex6D self, int i, int j, int k, int l, int m) -> ExtendedGridIndex6D
6594  __init__(ExtendedGridIndex6D self, int i, int j, int k, int l, int m, int n) -> ExtendedGridIndex6D
6595  __init__(ExtendedGridIndex6D self) -> ExtendedGridIndex6D
6596  """
6597  _IMP_algebra.ExtendedGridIndex6D_swiginit(self, _IMP_algebra.new_ExtendedGridIndex6D(*args))
6598 
6599  def get_dimension(self):
6600  r"""get_dimension(ExtendedGridIndex6D self) -> unsigned int"""
6601  return _IMP_algebra.ExtendedGridIndex6D_get_dimension(self)
6602 
6603  def __cmp__(self, o):
6604  r"""__cmp__(ExtendedGridIndex6D self, ExtendedGridIndex6D o) -> int"""
6605  return _IMP_algebra.ExtendedGridIndex6D___cmp__(self, o)
6606 
6607  def __eq__(self, o):
6608  r"""__eq__(ExtendedGridIndex6D self, ExtendedGridIndex6D o) -> bool"""
6609  return _IMP_algebra.ExtendedGridIndex6D___eq__(self, o)
6610 
6611  def __ne__(self, o):
6612  r"""__ne__(ExtendedGridIndex6D self, ExtendedGridIndex6D o) -> bool"""
6613  return _IMP_algebra.ExtendedGridIndex6D___ne__(self, o)
6614 
6615  def __lt__(self, o):
6616  r"""__lt__(ExtendedGridIndex6D self, ExtendedGridIndex6D o) -> bool"""
6617  return _IMP_algebra.ExtendedGridIndex6D___lt__(self, o)
6618 
6619  def __gt__(self, o):
6620  r"""__gt__(ExtendedGridIndex6D self, ExtendedGridIndex6D o) -> bool"""
6621  return _IMP_algebra.ExtendedGridIndex6D___gt__(self, o)
6622 
6623  def __ge__(self, o):
6624  r"""__ge__(ExtendedGridIndex6D self, ExtendedGridIndex6D o) -> bool"""
6625  return _IMP_algebra.ExtendedGridIndex6D___ge__(self, o)
6626 
6627  def __le__(self, o):
6628  r"""__le__(ExtendedGridIndex6D self, ExtendedGridIndex6D o) -> bool"""
6629  return _IMP_algebra.ExtendedGridIndex6D___le__(self, o)
6630 
6631  def __setitem__(self, i, v):
6632  r"""__setitem__(ExtendedGridIndex6D self, unsigned int i, int const & v)"""
6633  return _IMP_algebra.ExtendedGridIndex6D___setitem__(self, i, v)
6634 
6635  def __getitem__(self, i):
6636  r"""__getitem__(ExtendedGridIndex6D self, unsigned int i) -> int const &"""
6637  return _IMP_algebra.ExtendedGridIndex6D___getitem__(self, i)
6638 
6639  def show(self, *args):
6640  r"""show(ExtendedGridIndex6D self, _ostream out=std::cout)"""
6641  return _IMP_algebra.ExtendedGridIndex6D_show(self, *args)
6642 
6643  def __len__(self):
6644  r"""__len__(ExtendedGridIndex6D self) -> unsigned int"""
6645  return _IMP_algebra.ExtendedGridIndex6D___len__(self)
6646 
6647  def __hash__(self):
6648  r"""__hash__(ExtendedGridIndex6D self) -> std::size_t"""
6649  return _IMP_algebra.ExtendedGridIndex6D___hash__(self)
6650 
6651  def get_uniform_offset(self, ii):
6652  r"""get_uniform_offset(ExtendedGridIndex6D self, int ii) -> ExtendedGridIndex6D"""
6653  return _IMP_algebra.ExtendedGridIndex6D_get_uniform_offset(self, ii)
6654 
6655  def get_offset(self, i, j, k):
6656  r"""get_offset(ExtendedGridIndex6D self, int i, int j, int k) -> ExtendedGridIndex6D"""
6657  return _IMP_algebra.ExtendedGridIndex6D_get_offset(self, i, j, k)
6658 
6659  def __str__(self):
6660  r"""__str__(ExtendedGridIndex6D self) -> std::string"""
6661  return _IMP_algebra.ExtendedGridIndex6D___str__(self)
6662 
6663  def __repr__(self):
6664  r"""__repr__(ExtendedGridIndex6D self) -> std::string"""
6665  return _IMP_algebra.ExtendedGridIndex6D___repr__(self)
6666 
6667  def _get_as_binary(self):
6668  r"""_get_as_binary(ExtendedGridIndex6D self) -> PyObject *"""
6669  return _IMP_algebra.ExtendedGridIndex6D__get_as_binary(self)
6670 
6671  def _set_from_binary(self, p):
6672  r"""_set_from_binary(ExtendedGridIndex6D self, PyObject * p)"""
6673  return _IMP_algebra.ExtendedGridIndex6D__set_from_binary(self, p)
6674 
6675  def __getstate__(self):
6676  p = self._get_as_binary()
6677  if len(self.__dict__) > 1:
6678  d = self.__dict__.copy()
6679  del d['this']
6680  p = (d, p)
6681  return p
6682 
6683  def __setstate__(self, p):
6684  if not hasattr(self, 'this'):
6685  self.__init__()
6686  if isinstance(p, tuple):
6687  d, p = p
6688  self.__dict__.update(d)
6689  return self._set_from_binary(p)
6690 
6691  __swig_destroy__ = _IMP_algebra.delete_ExtendedGridIndex6D
6692 
6693 # Register ExtendedGridIndex6D in _IMP_algebra:
6694 _IMP_algebra.ExtendedGridIndex6D_swigregister(ExtendedGridIndex6D)
6695 class ExtendedGridIndexKD(IMP._Value):
6696  r"""Proxy of C++ IMP::algebra::ExtendedGridIndexD< -1 > class."""
6697 
6698  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6699 
6700  def __init__(self, *args):
6701  r"""
6702  __init__(ExtendedGridIndexKD self, IMP::Ints vals) -> ExtendedGridIndexKD
6703  __init__(ExtendedGridIndexKD self, int x) -> ExtendedGridIndexKD
6704  __init__(ExtendedGridIndexKD self, int x, int y) -> ExtendedGridIndexKD
6705  __init__(ExtendedGridIndexKD self, int x, int y, int z) -> ExtendedGridIndexKD
6706  __init__(ExtendedGridIndexKD self, int i, int j, int k, int l) -> ExtendedGridIndexKD
6707  __init__(ExtendedGridIndexKD self, int i, int j, int k, int l, int m) -> ExtendedGridIndexKD
6708  __init__(ExtendedGridIndexKD self, int i, int j, int k, int l, int m, int n) -> ExtendedGridIndexKD
6709  __init__(ExtendedGridIndexKD self) -> ExtendedGridIndexKD
6710  """
6711  _IMP_algebra.ExtendedGridIndexKD_swiginit(self, _IMP_algebra.new_ExtendedGridIndexKD(*args))
6712 
6713  def get_dimension(self):
6714  r"""get_dimension(ExtendedGridIndexKD self) -> unsigned int"""
6715  return _IMP_algebra.ExtendedGridIndexKD_get_dimension(self)
6716 
6717  def __cmp__(self, o):
6718  r"""__cmp__(ExtendedGridIndexKD self, ExtendedGridIndexKD o) -> int"""
6719  return _IMP_algebra.ExtendedGridIndexKD___cmp__(self, o)
6720 
6721  def __eq__(self, o):
6722  r"""__eq__(ExtendedGridIndexKD self, ExtendedGridIndexKD o) -> bool"""
6723  return _IMP_algebra.ExtendedGridIndexKD___eq__(self, o)
6724 
6725  def __ne__(self, o):
6726  r"""__ne__(ExtendedGridIndexKD self, ExtendedGridIndexKD o) -> bool"""
6727  return _IMP_algebra.ExtendedGridIndexKD___ne__(self, o)
6728 
6729  def __lt__(self, o):
6730  r"""__lt__(ExtendedGridIndexKD self, ExtendedGridIndexKD o) -> bool"""
6731  return _IMP_algebra.ExtendedGridIndexKD___lt__(self, o)
6732 
6733  def __gt__(self, o):
6734  r"""__gt__(ExtendedGridIndexKD self, ExtendedGridIndexKD o) -> bool"""
6735  return _IMP_algebra.ExtendedGridIndexKD___gt__(self, o)
6736 
6737  def __ge__(self, o):
6738  r"""__ge__(ExtendedGridIndexKD self, ExtendedGridIndexKD o) -> bool"""
6739  return _IMP_algebra.ExtendedGridIndexKD___ge__(self, o)
6740 
6741  def __le__(self, o):
6742  r"""__le__(ExtendedGridIndexKD self, ExtendedGridIndexKD o) -> bool"""
6743  return _IMP_algebra.ExtendedGridIndexKD___le__(self, o)
6744 
6745  def __setitem__(self, i, v):
6746  r"""__setitem__(ExtendedGridIndexKD self, unsigned int i, int const & v)"""
6747  return _IMP_algebra.ExtendedGridIndexKD___setitem__(self, i, v)
6748 
6749  def __getitem__(self, i):
6750  r"""__getitem__(ExtendedGridIndexKD self, unsigned int i) -> int const &"""
6751  return _IMP_algebra.ExtendedGridIndexKD___getitem__(self, i)
6752 
6753  def show(self, *args):
6754  r"""show(ExtendedGridIndexKD self, _ostream out=std::cout)"""
6755  return _IMP_algebra.ExtendedGridIndexKD_show(self, *args)
6756 
6757  def __len__(self):
6758  r"""__len__(ExtendedGridIndexKD self) -> unsigned int"""
6759  return _IMP_algebra.ExtendedGridIndexKD___len__(self)
6760 
6761  def __hash__(self):
6762  r"""__hash__(ExtendedGridIndexKD self) -> std::size_t"""
6763  return _IMP_algebra.ExtendedGridIndexKD___hash__(self)
6764 
6765  def get_uniform_offset(self, ii):
6766  r"""get_uniform_offset(ExtendedGridIndexKD self, int ii) -> ExtendedGridIndexKD"""
6767  return _IMP_algebra.ExtendedGridIndexKD_get_uniform_offset(self, ii)
6768 
6769  def get_offset(self, i, j, k):
6770  r"""get_offset(ExtendedGridIndexKD self, int i, int j, int k) -> ExtendedGridIndexKD"""
6771  return _IMP_algebra.ExtendedGridIndexKD_get_offset(self, i, j, k)
6772 
6773  def __str__(self):
6774  r"""__str__(ExtendedGridIndexKD self) -> std::string"""
6775  return _IMP_algebra.ExtendedGridIndexKD___str__(self)
6776 
6777  def __repr__(self):
6778  r"""__repr__(ExtendedGridIndexKD self) -> std::string"""
6779  return _IMP_algebra.ExtendedGridIndexKD___repr__(self)
6780 
6781  def _get_as_binary(self):
6782  r"""_get_as_binary(ExtendedGridIndexKD self) -> PyObject *"""
6783  return _IMP_algebra.ExtendedGridIndexKD__get_as_binary(self)
6784 
6785  def _set_from_binary(self, p):
6786  r"""_set_from_binary(ExtendedGridIndexKD self, PyObject * p)"""
6787  return _IMP_algebra.ExtendedGridIndexKD__set_from_binary(self, p)
6788 
6789  def __getstate__(self):
6790  p = self._get_as_binary()
6791  if len(self.__dict__) > 1:
6792  d = self.__dict__.copy()
6793  del d['this']
6794  p = (d, p)
6795  return p
6796 
6797  def __setstate__(self, p):
6798  if not hasattr(self, 'this'):
6799  self.__init__()
6800  if isinstance(p, tuple):
6801  d, p = p
6802  self.__dict__.update(d)
6803  return self._set_from_binary(p)
6804 
6805  __swig_destroy__ = _IMP_algebra.delete_ExtendedGridIndexKD
6806 
6807 # Register ExtendedGridIndexKD in _IMP_algebra:
6808 _IMP_algebra.ExtendedGridIndexKD_swigregister(ExtendedGridIndexKD)
6809 class BoundedGridRange1D(object):
6810  r"""Proxy of C++ IMP::algebra::BoundedGridRangeD< 1 > class."""
6811 
6812  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6813 
6814  @staticmethod
6815  def get_is_bounded():
6816  r"""get_is_bounded() -> bool"""
6817  return _IMP_algebra.BoundedGridRange1D_get_is_bounded()
6818 
6819  def __init__(self, *args):
6820  r"""
6821  __init__(BoundedGridRange1D self) -> BoundedGridRange1D
6822  __init__(BoundedGridRange1D self, IMP::Ints const & counts) -> BoundedGridRange1D
6823  """
6824  _IMP_algebra.BoundedGridRange1D_swiginit(self, _IMP_algebra.new_BoundedGridRange1D(*args))
6825 
6826  def get_number_of_voxels(self, *args):
6827  r"""
6828  get_number_of_voxels(BoundedGridRange1D self, unsigned int i) -> unsigned int
6829  get_number_of_voxels(BoundedGridRange1D self) -> unsigned int
6830  """
6831  return _IMP_algebra.BoundedGridRange1D_get_number_of_voxels(self, *args)
6832 
6833  def get_end_index(self):
6834  r"""get_end_index(BoundedGridRange1D self) -> ExtendedGridIndex1D"""
6835  return _IMP_algebra.BoundedGridRange1D_get_end_index(self)
6836 
6837  def show(self, *args):
6838  r"""show(BoundedGridRange1D self, _ostream out=std::cout)"""
6839  return _IMP_algebra.BoundedGridRange1D_show(self, *args)
6840 
6841  def get_all_indexes(self):
6842  r"""get_all_indexes(BoundedGridRange1D self) -> IMP::Vector< IMP::algebra::GridIndexD< 1 > >"""
6843  return _IMP_algebra.BoundedGridRange1D_get_all_indexes(self)
6844 
6845  def get_indexes(self, lb, ub):
6846  r"""get_indexes(BoundedGridRange1D self, ExtendedGridIndex1D lb, ExtendedGridIndex1D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 1 > >"""
6847  return _IMP_algebra.BoundedGridRange1D_get_indexes(self, lb, ub)
6848 
6849  def get_extended_indexes(self, lb, ub):
6850  r"""get_extended_indexes(BoundedGridRange1D self, ExtendedGridIndex1D lb, ExtendedGridIndex1D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 1 > >"""
6851  return _IMP_algebra.BoundedGridRange1D_get_extended_indexes(self, lb, ub)
6852 
6853  def get_index(self, v):
6854  r"""get_index(BoundedGridRange1D self, ExtendedGridIndex1D v) -> GridIndex1D"""
6855  return _IMP_algebra.BoundedGridRange1D_get_index(self, v)
6856 
6857  def get_has_index(self, v):
6858  r"""get_has_index(BoundedGridRange1D self, ExtendedGridIndex1D v) -> bool"""
6859  return _IMP_algebra.BoundedGridRange1D_get_has_index(self, v)
6860 
6861  def get_minimum_extended_index(self):
6862  r"""get_minimum_extended_index(BoundedGridRange1D self) -> ExtendedGridIndex1D"""
6863  return _IMP_algebra.BoundedGridRange1D_get_minimum_extended_index(self)
6864 
6865  def get_maximum_extended_index(self):
6866  r"""get_maximum_extended_index(BoundedGridRange1D self) -> ExtendedGridIndex1D"""
6867  return _IMP_algebra.BoundedGridRange1D_get_maximum_extended_index(self)
6868 
6869  def __str__(self):
6870  r"""__str__(BoundedGridRange1D self) -> std::string"""
6871  return _IMP_algebra.BoundedGridRange1D___str__(self)
6872 
6873  def __repr__(self):
6874  r"""__repr__(BoundedGridRange1D self) -> std::string"""
6875  return _IMP_algebra.BoundedGridRange1D___repr__(self)
6876 
6877  def __cmp__(self, arg2):
6878  r"""__cmp__(BoundedGridRange1D self, BoundedGridRange1D arg2) -> int"""
6879  return _IMP_algebra.BoundedGridRange1D___cmp__(self, arg2)
6880 
6881  def __eq__(self, arg2):
6882  r"""__eq__(BoundedGridRange1D self, BoundedGridRange1D arg2) -> bool"""
6883  return _IMP_algebra.BoundedGridRange1D___eq__(self, arg2)
6884 
6885  def _get_as_binary(self):
6886  r"""_get_as_binary(BoundedGridRange1D self) -> PyObject *"""
6887  return _IMP_algebra.BoundedGridRange1D__get_as_binary(self)
6888 
6889  def _set_from_binary(self, p):
6890  r"""_set_from_binary(BoundedGridRange1D self, PyObject * p)"""
6891  return _IMP_algebra.BoundedGridRange1D__set_from_binary(self, p)
6892 
6893  def __getstate__(self):
6894  p = self._get_as_binary()
6895  if len(self.__dict__) > 1:
6896  d = self.__dict__.copy()
6897  del d['this']
6898  p = (d, p)
6899  return p
6900 
6901  def __setstate__(self, p):
6902  if not hasattr(self, 'this'):
6903  self.__init__()
6904  if isinstance(p, tuple):
6905  d, p = p
6906  self.__dict__.update(d)
6907  return self._set_from_binary(p)
6908 
6909  __swig_destroy__ = _IMP_algebra.delete_BoundedGridRange1D
6910 
6911 # Register BoundedGridRange1D in _IMP_algebra:
6912 _IMP_algebra.BoundedGridRange1D_swigregister(BoundedGridRange1D)
6913 class BoundedGridRange2D(object):
6914  r"""Proxy of C++ IMP::algebra::BoundedGridRangeD< 2 > class."""
6915 
6916  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6917 
6918  @staticmethod
6919  def get_is_bounded():
6920  r"""get_is_bounded() -> bool"""
6921  return _IMP_algebra.BoundedGridRange2D_get_is_bounded()
6922 
6923  def __init__(self, *args):
6924  r"""
6925  __init__(BoundedGridRange2D self) -> BoundedGridRange2D
6926  __init__(BoundedGridRange2D self, IMP::Ints const & counts) -> BoundedGridRange2D
6927  """
6928  _IMP_algebra.BoundedGridRange2D_swiginit(self, _IMP_algebra.new_BoundedGridRange2D(*args))
6929 
6930  def get_number_of_voxels(self, *args):
6931  r"""
6932  get_number_of_voxels(BoundedGridRange2D self, unsigned int i) -> unsigned int
6933  get_number_of_voxels(BoundedGridRange2D self) -> unsigned int
6934  """
6935  return _IMP_algebra.BoundedGridRange2D_get_number_of_voxels(self, *args)
6936 
6937  def get_end_index(self):
6938  r"""get_end_index(BoundedGridRange2D self) -> ExtendedGridIndex2D"""
6939  return _IMP_algebra.BoundedGridRange2D_get_end_index(self)
6940 
6941  def show(self, *args):
6942  r"""show(BoundedGridRange2D self, _ostream out=std::cout)"""
6943  return _IMP_algebra.BoundedGridRange2D_show(self, *args)
6944 
6945  def get_all_indexes(self):
6946  r"""get_all_indexes(BoundedGridRange2D self) -> IMP::Vector< IMP::algebra::GridIndexD< 2 > >"""
6947  return _IMP_algebra.BoundedGridRange2D_get_all_indexes(self)
6948 
6949  def get_indexes(self, lb, ub):
6950  r"""get_indexes(BoundedGridRange2D self, ExtendedGridIndex2D lb, ExtendedGridIndex2D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 2 > >"""
6951  return _IMP_algebra.BoundedGridRange2D_get_indexes(self, lb, ub)
6952 
6953  def get_extended_indexes(self, lb, ub):
6954  r"""get_extended_indexes(BoundedGridRange2D self, ExtendedGridIndex2D lb, ExtendedGridIndex2D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 2 > >"""
6955  return _IMP_algebra.BoundedGridRange2D_get_extended_indexes(self, lb, ub)
6956 
6957  def get_index(self, v):
6958  r"""get_index(BoundedGridRange2D self, ExtendedGridIndex2D v) -> GridIndex2D"""
6959  return _IMP_algebra.BoundedGridRange2D_get_index(self, v)
6960 
6961  def get_has_index(self, v):
6962  r"""get_has_index(BoundedGridRange2D self, ExtendedGridIndex2D v) -> bool"""
6963  return _IMP_algebra.BoundedGridRange2D_get_has_index(self, v)
6964 
6965  def get_minimum_extended_index(self):
6966  r"""get_minimum_extended_index(BoundedGridRange2D self) -> ExtendedGridIndex2D"""
6967  return _IMP_algebra.BoundedGridRange2D_get_minimum_extended_index(self)
6968 
6969  def get_maximum_extended_index(self):
6970  r"""get_maximum_extended_index(BoundedGridRange2D self) -> ExtendedGridIndex2D"""
6971  return _IMP_algebra.BoundedGridRange2D_get_maximum_extended_index(self)
6972 
6973  def __str__(self):
6974  r"""__str__(BoundedGridRange2D self) -> std::string"""
6975  return _IMP_algebra.BoundedGridRange2D___str__(self)
6976 
6977  def __repr__(self):
6978  r"""__repr__(BoundedGridRange2D self) -> std::string"""
6979  return _IMP_algebra.BoundedGridRange2D___repr__(self)
6980 
6981  def __cmp__(self, arg2):
6982  r"""__cmp__(BoundedGridRange2D self, BoundedGridRange2D arg2) -> int"""
6983  return _IMP_algebra.BoundedGridRange2D___cmp__(self, arg2)
6984 
6985  def __eq__(self, arg2):
6986  r"""__eq__(BoundedGridRange2D self, BoundedGridRange2D arg2) -> bool"""
6987  return _IMP_algebra.BoundedGridRange2D___eq__(self, arg2)
6988 
6989  def _get_as_binary(self):
6990  r"""_get_as_binary(BoundedGridRange2D self) -> PyObject *"""
6991  return _IMP_algebra.BoundedGridRange2D__get_as_binary(self)
6992 
6993  def _set_from_binary(self, p):
6994  r"""_set_from_binary(BoundedGridRange2D self, PyObject * p)"""
6995  return _IMP_algebra.BoundedGridRange2D__set_from_binary(self, p)
6996 
6997  def __getstate__(self):
6998  p = self._get_as_binary()
6999  if len(self.__dict__) > 1:
7000  d = self.__dict__.copy()
7001  del d['this']
7002  p = (d, p)
7003  return p
7004 
7005  def __setstate__(self, p):
7006  if not hasattr(self, 'this'):
7007  self.__init__()
7008  if isinstance(p, tuple):
7009  d, p = p
7010  self.__dict__.update(d)
7011  return self._set_from_binary(p)
7012 
7013  __swig_destroy__ = _IMP_algebra.delete_BoundedGridRange2D
7014 
7015 # Register BoundedGridRange2D in _IMP_algebra:
7016 _IMP_algebra.BoundedGridRange2D_swigregister(BoundedGridRange2D)
7017 class BoundedGridRange3D(object):
7018  r"""Proxy of C++ IMP::algebra::BoundedGridRangeD< 3 > class."""
7019 
7020  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7021 
7022  @staticmethod
7023  def get_is_bounded():
7024  r"""get_is_bounded() -> bool"""
7025  return _IMP_algebra.BoundedGridRange3D_get_is_bounded()
7026 
7027  def __init__(self, *args):
7028  r"""
7029  __init__(BoundedGridRange3D self) -> BoundedGridRange3D
7030  __init__(BoundedGridRange3D self, IMP::Ints const & counts) -> BoundedGridRange3D
7031  """
7032  _IMP_algebra.BoundedGridRange3D_swiginit(self, _IMP_algebra.new_BoundedGridRange3D(*args))
7033 
7034  def get_number_of_voxels(self, *args):
7035  r"""
7036  get_number_of_voxels(BoundedGridRange3D self, unsigned int i) -> unsigned int
7037  get_number_of_voxels(BoundedGridRange3D self) -> unsigned int
7038  """
7039  return _IMP_algebra.BoundedGridRange3D_get_number_of_voxels(self, *args)
7040 
7041  def get_end_index(self):
7042  r"""get_end_index(BoundedGridRange3D self) -> ExtendedGridIndex3D"""
7043  return _IMP_algebra.BoundedGridRange3D_get_end_index(self)
7044 
7045  def show(self, *args):
7046  r"""show(BoundedGridRange3D self, _ostream out=std::cout)"""
7047  return _IMP_algebra.BoundedGridRange3D_show(self, *args)
7048 
7049  def get_all_indexes(self):
7050  r"""get_all_indexes(BoundedGridRange3D self) -> IMP::Vector< IMP::algebra::GridIndexD< 3 > >"""
7051  return _IMP_algebra.BoundedGridRange3D_get_all_indexes(self)
7052 
7053  def get_indexes(self, lb, ub):
7054  r"""get_indexes(BoundedGridRange3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 3 > >"""
7055  return _IMP_algebra.BoundedGridRange3D_get_indexes(self, lb, ub)
7056 
7057  def get_extended_indexes(self, lb, ub):
7058  r"""get_extended_indexes(BoundedGridRange3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 > >"""
7059  return _IMP_algebra.BoundedGridRange3D_get_extended_indexes(self, lb, ub)
7060 
7061  def get_index(self, v):
7062  r"""get_index(BoundedGridRange3D self, ExtendedGridIndex3D v) -> GridIndex3D"""
7063  return _IMP_algebra.BoundedGridRange3D_get_index(self, v)
7064 
7065  def get_has_index(self, v):
7066  r"""get_has_index(BoundedGridRange3D self, ExtendedGridIndex3D v) -> bool"""
7067  return _IMP_algebra.BoundedGridRange3D_get_has_index(self, v)
7068 
7069  def get_minimum_extended_index(self):
7070  r"""get_minimum_extended_index(BoundedGridRange3D self) -> ExtendedGridIndex3D"""
7071  return _IMP_algebra.BoundedGridRange3D_get_minimum_extended_index(self)
7072 
7073  def get_maximum_extended_index(self):
7074  r"""get_maximum_extended_index(BoundedGridRange3D self) -> ExtendedGridIndex3D"""
7075  return _IMP_algebra.BoundedGridRange3D_get_maximum_extended_index(self)
7076 
7077  def __str__(self):
7078  r"""__str__(BoundedGridRange3D self) -> std::string"""
7079  return _IMP_algebra.BoundedGridRange3D___str__(self)
7080 
7081  def __repr__(self):
7082  r"""__repr__(BoundedGridRange3D self) -> std::string"""
7083  return _IMP_algebra.BoundedGridRange3D___repr__(self)
7084 
7085  def __cmp__(self, arg2):
7086  r"""__cmp__(BoundedGridRange3D self, BoundedGridRange3D arg2) -> int"""
7087  return _IMP_algebra.BoundedGridRange3D___cmp__(self, arg2)
7088 
7089  def __eq__(self, arg2):
7090  r"""__eq__(BoundedGridRange3D self, BoundedGridRange3D arg2) -> bool"""
7091  return _IMP_algebra.BoundedGridRange3D___eq__(self, arg2)
7092 
7093  def _get_as_binary(self):
7094  r"""_get_as_binary(BoundedGridRange3D self) -> PyObject *"""
7095  return _IMP_algebra.BoundedGridRange3D__get_as_binary(self)
7096 
7097  def _set_from_binary(self, p):
7098  r"""_set_from_binary(BoundedGridRange3D self, PyObject * p)"""
7099  return _IMP_algebra.BoundedGridRange3D__set_from_binary(self, p)
7100 
7101  def __getstate__(self):
7102  p = self._get_as_binary()
7103  if len(self.__dict__) > 1:
7104  d = self.__dict__.copy()
7105  del d['this']
7106  p = (d, p)
7107  return p
7108 
7109  def __setstate__(self, p):
7110  if not hasattr(self, 'this'):
7111  self.__init__()
7112  if isinstance(p, tuple):
7113  d, p = p
7114  self.__dict__.update(d)
7115  return self._set_from_binary(p)
7116 
7117  __swig_destroy__ = _IMP_algebra.delete_BoundedGridRange3D
7118 
7119 # Register BoundedGridRange3D in _IMP_algebra:
7120 _IMP_algebra.BoundedGridRange3D_swigregister(BoundedGridRange3D)
7121 class BoundedGridRange4D(object):
7122  r"""Proxy of C++ IMP::algebra::BoundedGridRangeD< 4 > class."""
7123 
7124  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7125 
7126  @staticmethod
7127  def get_is_bounded():
7128  r"""get_is_bounded() -> bool"""
7129  return _IMP_algebra.BoundedGridRange4D_get_is_bounded()
7130 
7131  def __init__(self, *args):
7132  r"""
7133  __init__(BoundedGridRange4D self) -> BoundedGridRange4D
7134  __init__(BoundedGridRange4D self, IMP::Ints const & counts) -> BoundedGridRange4D
7135  """
7136  _IMP_algebra.BoundedGridRange4D_swiginit(self, _IMP_algebra.new_BoundedGridRange4D(*args))
7137 
7138  def get_number_of_voxels(self, *args):
7139  r"""
7140  get_number_of_voxels(BoundedGridRange4D self, unsigned int i) -> unsigned int
7141  get_number_of_voxels(BoundedGridRange4D self) -> unsigned int
7142  """
7143  return _IMP_algebra.BoundedGridRange4D_get_number_of_voxels(self, *args)
7144 
7145  def get_end_index(self):
7146  r"""get_end_index(BoundedGridRange4D self) -> ExtendedGridIndex4D"""
7147  return _IMP_algebra.BoundedGridRange4D_get_end_index(self)
7148 
7149  def show(self, *args):
7150  r"""show(BoundedGridRange4D self, _ostream out=std::cout)"""
7151  return _IMP_algebra.BoundedGridRange4D_show(self, *args)
7152 
7153  def get_all_indexes(self):
7154  r"""get_all_indexes(BoundedGridRange4D self) -> IMP::Vector< IMP::algebra::GridIndexD< 4 > >"""
7155  return _IMP_algebra.BoundedGridRange4D_get_all_indexes(self)
7156 
7157  def get_indexes(self, lb, ub):
7158  r"""get_indexes(BoundedGridRange4D self, ExtendedGridIndex4D lb, ExtendedGridIndex4D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 4 > >"""
7159  return _IMP_algebra.BoundedGridRange4D_get_indexes(self, lb, ub)
7160 
7161  def get_extended_indexes(self, lb, ub):
7162  r"""get_extended_indexes(BoundedGridRange4D self, ExtendedGridIndex4D lb, ExtendedGridIndex4D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 4 > >"""
7163  return _IMP_algebra.BoundedGridRange4D_get_extended_indexes(self, lb, ub)
7164 
7165  def get_index(self, v):
7166  r"""get_index(BoundedGridRange4D self, ExtendedGridIndex4D v) -> GridIndex4D"""
7167  return _IMP_algebra.BoundedGridRange4D_get_index(self, v)
7168 
7169  def get_has_index(self, v):
7170  r"""get_has_index(BoundedGridRange4D self, ExtendedGridIndex4D v) -> bool"""
7171  return _IMP_algebra.BoundedGridRange4D_get_has_index(self, v)
7172 
7173  def get_minimum_extended_index(self):
7174  r"""get_minimum_extended_index(BoundedGridRange4D self) -> ExtendedGridIndex4D"""
7175  return _IMP_algebra.BoundedGridRange4D_get_minimum_extended_index(self)
7176 
7177  def get_maximum_extended_index(self):
7178  r"""get_maximum_extended_index(BoundedGridRange4D self) -> ExtendedGridIndex4D"""
7179  return _IMP_algebra.BoundedGridRange4D_get_maximum_extended_index(self)
7180 
7181  def __str__(self):
7182  r"""__str__(BoundedGridRange4D self) -> std::string"""
7183  return _IMP_algebra.BoundedGridRange4D___str__(self)
7184 
7185  def __repr__(self):
7186  r"""__repr__(BoundedGridRange4D self) -> std::string"""
7187  return _IMP_algebra.BoundedGridRange4D___repr__(self)
7188 
7189  def __cmp__(self, arg2):
7190  r"""__cmp__(BoundedGridRange4D self, BoundedGridRange4D arg2) -> int"""
7191  return _IMP_algebra.BoundedGridRange4D___cmp__(self, arg2)
7192 
7193  def __eq__(self, arg2):
7194  r"""__eq__(BoundedGridRange4D self, BoundedGridRange4D arg2) -> bool"""
7195  return _IMP_algebra.BoundedGridRange4D___eq__(self, arg2)
7196 
7197  def _get_as_binary(self):
7198  r"""_get_as_binary(BoundedGridRange4D self) -> PyObject *"""
7199  return _IMP_algebra.BoundedGridRange4D__get_as_binary(self)
7200 
7201  def _set_from_binary(self, p):
7202  r"""_set_from_binary(BoundedGridRange4D self, PyObject * p)"""
7203  return _IMP_algebra.BoundedGridRange4D__set_from_binary(self, p)
7204 
7205  def __getstate__(self):
7206  p = self._get_as_binary()
7207  if len(self.__dict__) > 1:
7208  d = self.__dict__.copy()
7209  del d['this']
7210  p = (d, p)
7211  return p
7212 
7213  def __setstate__(self, p):
7214  if not hasattr(self, 'this'):
7215  self.__init__()
7216  if isinstance(p, tuple):
7217  d, p = p
7218  self.__dict__.update(d)
7219  return self._set_from_binary(p)
7220 
7221  __swig_destroy__ = _IMP_algebra.delete_BoundedGridRange4D
7222 
7223 # Register BoundedGridRange4D in _IMP_algebra:
7224 _IMP_algebra.BoundedGridRange4D_swigregister(BoundedGridRange4D)
7225 class BoundedGridRange5D(object):
7226  r"""Proxy of C++ IMP::algebra::BoundedGridRangeD< 5 > class."""
7227 
7228  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7229 
7230  @staticmethod
7231  def get_is_bounded():
7232  r"""get_is_bounded() -> bool"""
7233  return _IMP_algebra.BoundedGridRange5D_get_is_bounded()
7234 
7235  def __init__(self, *args):
7236  r"""
7237  __init__(BoundedGridRange5D self) -> BoundedGridRange5D
7238  __init__(BoundedGridRange5D self, IMP::Ints const & counts) -> BoundedGridRange5D
7239  """
7240  _IMP_algebra.BoundedGridRange5D_swiginit(self, _IMP_algebra.new_BoundedGridRange5D(*args))
7241 
7242  def get_number_of_voxels(self, *args):
7243  r"""
7244  get_number_of_voxels(BoundedGridRange5D self, unsigned int i) -> unsigned int
7245  get_number_of_voxels(BoundedGridRange5D self) -> unsigned int
7246  """
7247  return _IMP_algebra.BoundedGridRange5D_get_number_of_voxels(self, *args)
7248 
7249  def get_end_index(self):
7250  r"""get_end_index(BoundedGridRange5D self) -> ExtendedGridIndex5D"""
7251  return _IMP_algebra.BoundedGridRange5D_get_end_index(self)
7252 
7253  def show(self, *args):
7254  r"""show(BoundedGridRange5D self, _ostream out=std::cout)"""
7255  return _IMP_algebra.BoundedGridRange5D_show(self, *args)
7256 
7257  def get_all_indexes(self):
7258  r"""get_all_indexes(BoundedGridRange5D self) -> IMP::Vector< IMP::algebra::GridIndexD< 5 > >"""
7259  return _IMP_algebra.BoundedGridRange5D_get_all_indexes(self)
7260 
7261  def get_indexes(self, lb, ub):
7262  r"""get_indexes(BoundedGridRange5D self, ExtendedGridIndex5D lb, ExtendedGridIndex5D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 5 > >"""
7263  return _IMP_algebra.BoundedGridRange5D_get_indexes(self, lb, ub)
7264 
7265  def get_extended_indexes(self, lb, ub):
7266  r"""get_extended_indexes(BoundedGridRange5D self, ExtendedGridIndex5D lb, ExtendedGridIndex5D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 5 > >"""
7267  return _IMP_algebra.BoundedGridRange5D_get_extended_indexes(self, lb, ub)
7268 
7269  def get_index(self, v):
7270  r"""get_index(BoundedGridRange5D self, ExtendedGridIndex5D v) -> GridIndex5D"""
7271  return _IMP_algebra.BoundedGridRange5D_get_index(self, v)
7272 
7273  def get_has_index(self, v):
7274  r"""get_has_index(BoundedGridRange5D self, ExtendedGridIndex5D v) -> bool"""
7275  return _IMP_algebra.BoundedGridRange5D_get_has_index(self, v)
7276 
7277  def get_minimum_extended_index(self):
7278  r"""get_minimum_extended_index(BoundedGridRange5D self) -> ExtendedGridIndex5D"""
7279  return _IMP_algebra.BoundedGridRange5D_get_minimum_extended_index(self)
7280 
7281  def get_maximum_extended_index(self):
7282  r"""get_maximum_extended_index(BoundedGridRange5D self) -> ExtendedGridIndex5D"""
7283  return _IMP_algebra.BoundedGridRange5D_get_maximum_extended_index(self)
7284 
7285  def __str__(self):
7286  r"""__str__(BoundedGridRange5D self) -> std::string"""
7287  return _IMP_algebra.BoundedGridRange5D___str__(self)
7288 
7289  def __repr__(self):
7290  r"""__repr__(BoundedGridRange5D self) -> std::string"""
7291  return _IMP_algebra.BoundedGridRange5D___repr__(self)
7292 
7293  def __cmp__(self, arg2):
7294  r"""__cmp__(BoundedGridRange5D self, BoundedGridRange5D arg2) -> int"""
7295  return _IMP_algebra.BoundedGridRange5D___cmp__(self, arg2)
7296 
7297  def __eq__(self, arg2):
7298  r"""__eq__(BoundedGridRange5D self, BoundedGridRange5D arg2) -> bool"""
7299  return _IMP_algebra.BoundedGridRange5D___eq__(self, arg2)
7300 
7301  def _get_as_binary(self):
7302  r"""_get_as_binary(BoundedGridRange5D self) -> PyObject *"""
7303  return _IMP_algebra.BoundedGridRange5D__get_as_binary(self)
7304 
7305  def _set_from_binary(self, p):
7306  r"""_set_from_binary(BoundedGridRange5D self, PyObject * p)"""
7307  return _IMP_algebra.BoundedGridRange5D__set_from_binary(self, p)
7308 
7309  def __getstate__(self):
7310  p = self._get_as_binary()
7311  if len(self.__dict__) > 1:
7312  d = self.__dict__.copy()
7313  del d['this']
7314  p = (d, p)
7315  return p
7316 
7317  def __setstate__(self, p):
7318  if not hasattr(self, 'this'):
7319  self.__init__()
7320  if isinstance(p, tuple):
7321  d, p = p
7322  self.__dict__.update(d)
7323  return self._set_from_binary(p)
7324 
7325  __swig_destroy__ = _IMP_algebra.delete_BoundedGridRange5D
7326 
7327 # Register BoundedGridRange5D in _IMP_algebra:
7328 _IMP_algebra.BoundedGridRange5D_swigregister(BoundedGridRange5D)
7329 class BoundedGridRange6D(object):
7330  r"""Proxy of C++ IMP::algebra::BoundedGridRangeD< 6 > class."""
7331 
7332  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7333 
7334  @staticmethod
7335  def get_is_bounded():
7336  r"""get_is_bounded() -> bool"""
7337  return _IMP_algebra.BoundedGridRange6D_get_is_bounded()
7338 
7339  def __init__(self, *args):
7340  r"""
7341  __init__(BoundedGridRange6D self) -> BoundedGridRange6D
7342  __init__(BoundedGridRange6D self, IMP::Ints const & counts) -> BoundedGridRange6D
7343  """
7344  _IMP_algebra.BoundedGridRange6D_swiginit(self, _IMP_algebra.new_BoundedGridRange6D(*args))
7345 
7346  def get_number_of_voxels(self, *args):
7347  r"""
7348  get_number_of_voxels(BoundedGridRange6D self, unsigned int i) -> unsigned int
7349  get_number_of_voxels(BoundedGridRange6D self) -> unsigned int
7350  """
7351  return _IMP_algebra.BoundedGridRange6D_get_number_of_voxels(self, *args)
7352 
7353  def get_end_index(self):
7354  r"""get_end_index(BoundedGridRange6D self) -> ExtendedGridIndex6D"""
7355  return _IMP_algebra.BoundedGridRange6D_get_end_index(self)
7356 
7357  def show(self, *args):
7358  r"""show(BoundedGridRange6D self, _ostream out=std::cout)"""
7359  return _IMP_algebra.BoundedGridRange6D_show(self, *args)
7360 
7361  def get_all_indexes(self):
7362  r"""get_all_indexes(BoundedGridRange6D self) -> IMP::Vector< IMP::algebra::GridIndexD< 6 > >"""
7363  return _IMP_algebra.BoundedGridRange6D_get_all_indexes(self)
7364 
7365  def get_indexes(self, lb, ub):
7366  r"""get_indexes(BoundedGridRange6D self, ExtendedGridIndex6D lb, ExtendedGridIndex6D ub) -> IMP::Vector< IMP::algebra::GridIndexD< 6 > >"""
7367  return _IMP_algebra.BoundedGridRange6D_get_indexes(self, lb, ub)
7368 
7369  def get_extended_indexes(self, lb, ub):
7370  r"""get_extended_indexes(BoundedGridRange6D self, ExtendedGridIndex6D lb, ExtendedGridIndex6D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 6 > >"""
7371  return _IMP_algebra.BoundedGridRange6D_get_extended_indexes(self, lb, ub)
7372 
7373  def get_index(self, v):
7374  r"""get_index(BoundedGridRange6D self, ExtendedGridIndex6D v) -> GridIndex6D"""
7375  return _IMP_algebra.BoundedGridRange6D_get_index(self, v)
7376 
7377  def get_has_index(self, v):
7378  r"""get_has_index(BoundedGridRange6D self, ExtendedGridIndex6D v) -> bool"""
7379  return _IMP_algebra.BoundedGridRange6D_get_has_index(self, v)
7380 
7381  def get_minimum_extended_index(self):
7382  r"""get_minimum_extended_index(BoundedGridRange6D self) -> ExtendedGridIndex6D"""
7383  return _IMP_algebra.BoundedGridRange6D_get_minimum_extended_index(self)
7384 
7385  def get_maximum_extended_index(self):
7386  r"""get_maximum_extended_index(BoundedGridRange6D self) -> ExtendedGridIndex6D"""
7387  return _IMP_algebra.BoundedGridRange6D_get_maximum_extended_index(self)
7388 
7389  def __str__(self):
7390  r"""__str__(BoundedGridRange6D self) -> std::string"""
7391  return _IMP_algebra.BoundedGridRange6D___str__(self)
7392 
7393  def __repr__(self):
7394  r"""__repr__(BoundedGridRange6D self) -> std::string"""
7395  return _IMP_algebra.BoundedGridRange6D___repr__(self)
7396 
7397  def __cmp__(self, arg2):
7398  r"""__cmp__(BoundedGridRange6D self, BoundedGridRange6D arg2) -> int"""
7399  return _IMP_algebra.BoundedGridRange6D___cmp__(self, arg2)
7400 
7401  def __eq__(self, arg2):
7402  r"""__eq__(BoundedGridRange6D self, BoundedGridRange6D arg2) -> bool"""
7403  return _IMP_algebra.BoundedGridRange6D___eq__(self, arg2)
7404 
7405  def _get_as_binary(self):
7406  r"""_get_as_binary(BoundedGridRange6D self) -> PyObject *"""
7407  return _IMP_algebra.BoundedGridRange6D__get_as_binary(self)
7408 
7409  def _set_from_binary(self, p):
7410  r"""_set_from_binary(BoundedGridRange6D self, PyObject * p)"""
7411  return _IMP_algebra.BoundedGridRange6D__set_from_binary(self, p)
7412 
7413  def __getstate__(self):
7414  p = self._get_as_binary()
7415  if len(self.__dict__) > 1:
7416  d = self.__dict__.copy()
7417  del d['this']
7418  p = (d, p)
7419  return p
7420 
7421  def __setstate__(self, p):
7422  if not hasattr(self, 'this'):
7423  self.__init__()
7424  if isinstance(p, tuple):
7425  d, p = p
7426  self.__dict__.update(d)
7427  return self._set_from_binary(p)
7428 
7429  __swig_destroy__ = _IMP_algebra.delete_BoundedGridRange6D
7430 
7431 # Register BoundedGridRange6D in _IMP_algebra:
7432 _IMP_algebra.BoundedGridRange6D_swigregister(BoundedGridRange6D)
7433 class BoundedGridRangeKD(object):
7434  r"""Proxy of C++ IMP::algebra::BoundedGridRangeD< -1 > class."""
7435 
7436  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7437 
7438  @staticmethod
7439  def get_is_bounded():
7440  r"""get_is_bounded() -> bool"""
7441  return _IMP_algebra.BoundedGridRangeKD_get_is_bounded()
7442 
7443  def __init__(self, *args):
7444  r"""
7445  __init__(BoundedGridRangeKD self) -> BoundedGridRangeKD
7446  __init__(BoundedGridRangeKD self, IMP::Ints const & counts) -> BoundedGridRangeKD
7447  """
7448  _IMP_algebra.BoundedGridRangeKD_swiginit(self, _IMP_algebra.new_BoundedGridRangeKD(*args))
7449 
7450  def get_number_of_voxels(self, *args):
7451  r"""
7452  get_number_of_voxels(BoundedGridRangeKD self, unsigned int i) -> unsigned int
7453  get_number_of_voxels(BoundedGridRangeKD self) -> unsigned int
7454  """
7455  return _IMP_algebra.BoundedGridRangeKD_get_number_of_voxels(self, *args)
7456 
7457  def get_end_index(self):
7458  r"""get_end_index(BoundedGridRangeKD self) -> ExtendedGridIndexKD"""
7459  return _IMP_algebra.BoundedGridRangeKD_get_end_index(self)
7460 
7461  def show(self, *args):
7462  r"""show(BoundedGridRangeKD self, _ostream out=std::cout)"""
7463  return _IMP_algebra.BoundedGridRangeKD_show(self, *args)
7464 
7465  def get_all_indexes(self):
7466  r"""get_all_indexes(BoundedGridRangeKD self) -> IMP::Vector< IMP::algebra::GridIndexD< -1 > >"""
7467  return _IMP_algebra.BoundedGridRangeKD_get_all_indexes(self)
7468 
7469  def get_indexes(self, lb, ub):
7470  r"""get_indexes(BoundedGridRangeKD self, ExtendedGridIndexKD lb, ExtendedGridIndexKD ub) -> IMP::Vector< IMP::algebra::GridIndexD< -1 > >"""
7471  return _IMP_algebra.BoundedGridRangeKD_get_indexes(self, lb, ub)
7472 
7473  def get_extended_indexes(self, lb, ub):
7474  r"""get_extended_indexes(BoundedGridRangeKD self, ExtendedGridIndexKD lb, ExtendedGridIndexKD ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< -1 > >"""
7475  return _IMP_algebra.BoundedGridRangeKD_get_extended_indexes(self, lb, ub)
7476 
7477  def get_index(self, v):
7478  r"""get_index(BoundedGridRangeKD self, ExtendedGridIndexKD v) -> GridIndexKD"""
7479  return _IMP_algebra.BoundedGridRangeKD_get_index(self, v)
7480 
7481  def get_has_index(self, v):
7482  r"""get_has_index(BoundedGridRangeKD self, ExtendedGridIndexKD v) -> bool"""
7483  return _IMP_algebra.BoundedGridRangeKD_get_has_index(self, v)
7484 
7485  def get_minimum_extended_index(self):
7486  r"""get_minimum_extended_index(BoundedGridRangeKD self) -> ExtendedGridIndexKD"""
7487  return _IMP_algebra.BoundedGridRangeKD_get_minimum_extended_index(self)
7488 
7489  def get_maximum_extended_index(self):
7490  r"""get_maximum_extended_index(BoundedGridRangeKD self) -> ExtendedGridIndexKD"""
7491  return _IMP_algebra.BoundedGridRangeKD_get_maximum_extended_index(self)
7492 
7493  def __str__(self):
7494  r"""__str__(BoundedGridRangeKD self) -> std::string"""
7495  return _IMP_algebra.BoundedGridRangeKD___str__(self)
7496 
7497  def __repr__(self):
7498  r"""__repr__(BoundedGridRangeKD self) -> std::string"""
7499  return _IMP_algebra.BoundedGridRangeKD___repr__(self)
7500 
7501  def __cmp__(self, arg2):
7502  r"""__cmp__(BoundedGridRangeKD self, BoundedGridRangeKD arg2) -> int"""
7503  return _IMP_algebra.BoundedGridRangeKD___cmp__(self, arg2)
7504 
7505  def __eq__(self, arg2):
7506  r"""__eq__(BoundedGridRangeKD self, BoundedGridRangeKD arg2) -> bool"""
7507  return _IMP_algebra.BoundedGridRangeKD___eq__(self, arg2)
7508 
7509  def _get_as_binary(self):
7510  r"""_get_as_binary(BoundedGridRangeKD self) -> PyObject *"""
7511  return _IMP_algebra.BoundedGridRangeKD__get_as_binary(self)
7512 
7513  def _set_from_binary(self, p):
7514  r"""_set_from_binary(BoundedGridRangeKD self, PyObject * p)"""
7515  return _IMP_algebra.BoundedGridRangeKD__set_from_binary(self, p)
7516 
7517  def __getstate__(self):
7518  p = self._get_as_binary()
7519  if len(self.__dict__) > 1:
7520  d = self.__dict__.copy()
7521  del d['this']
7522  p = (d, p)
7523  return p
7524 
7525  def __setstate__(self, p):
7526  if not hasattr(self, 'this'):
7527  self.__init__()
7528  if isinstance(p, tuple):
7529  d, p = p
7530  self.__dict__.update(d)
7531  return self._set_from_binary(p)
7532 
7533  __swig_destroy__ = _IMP_algebra.delete_BoundedGridRangeKD
7534 
7535 # Register BoundedGridRangeKD in _IMP_algebra:
7536 _IMP_algebra.BoundedGridRangeKD_swigregister(BoundedGridRangeKD)
7537 class UnboundedGridRange1D(object):
7538  r"""Proxy of C++ IMP::algebra::UnboundedGridRangeD< 1 > class."""
7539 
7540  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7541 
7542  def __init__(self, *args):
7543  r"""
7544  __init__(UnboundedGridRange1D self) -> UnboundedGridRange1D
7545  __init__(UnboundedGridRange1D self, IMP::Ints const & arg2) -> UnboundedGridRange1D
7546  """
7547  _IMP_algebra.UnboundedGridRange1D_swiginit(self, _IMP_algebra.new_UnboundedGridRange1D(*args))
7548 
7549  def set_number_of_voxels(self, arg2):
7550  r"""set_number_of_voxels(UnboundedGridRange1D self, IMP::Ints arg2)"""
7551  return _IMP_algebra.UnboundedGridRange1D_set_number_of_voxels(self, arg2)
7552 
7553  def get_number_of_voxels(self, arg2):
7554  r"""get_number_of_voxels(UnboundedGridRange1D self, int arg2) -> unsigned int"""
7555  return _IMP_algebra.UnboundedGridRange1D_get_number_of_voxels(self, arg2)
7556 
7557  @staticmethod
7558  def get_is_bounded():
7559  r"""get_is_bounded() -> bool"""
7560  return _IMP_algebra.UnboundedGridRange1D_get_is_bounded()
7561 
7562  def get_has_index(self, arg2):
7563  r"""get_has_index(UnboundedGridRange1D self, ExtendedGridIndex1D arg2) -> bool"""
7564  return _IMP_algebra.UnboundedGridRange1D_get_has_index(self, arg2)
7565 
7566  def show(self, *args):
7567  r"""show(UnboundedGridRange1D self, _ostream out=std::cout)"""
7568  return _IMP_algebra.UnboundedGridRange1D_show(self, *args)
7569 
7570  def get_extended_indexes(self, lb, ub):
7571  r"""get_extended_indexes(UnboundedGridRange1D self, ExtendedGridIndex1D lb, ExtendedGridIndex1D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 1 > >"""
7572  return _IMP_algebra.UnboundedGridRange1D_get_extended_indexes(self, lb, ub)
7573 
7574  def __str__(self):
7575  r"""__str__(UnboundedGridRange1D self) -> std::string"""
7576  return _IMP_algebra.UnboundedGridRange1D___str__(self)
7577 
7578  def __repr__(self):
7579  r"""__repr__(UnboundedGridRange1D self) -> std::string"""
7580  return _IMP_algebra.UnboundedGridRange1D___repr__(self)
7581 
7582  def __cmp__(self, arg2):
7583  r"""__cmp__(UnboundedGridRange1D self, UnboundedGridRange1D arg2) -> int"""
7584  return _IMP_algebra.UnboundedGridRange1D___cmp__(self, arg2)
7585 
7586  def __eq__(self, arg2):
7587  r"""__eq__(UnboundedGridRange1D self, UnboundedGridRange1D arg2) -> bool"""
7588  return _IMP_algebra.UnboundedGridRange1D___eq__(self, arg2)
7589 
7590  def _get_as_binary(self):
7591  r"""_get_as_binary(UnboundedGridRange1D self) -> PyObject *"""
7592  return _IMP_algebra.UnboundedGridRange1D__get_as_binary(self)
7593 
7594  def _set_from_binary(self, p):
7595  r"""_set_from_binary(UnboundedGridRange1D self, PyObject * p)"""
7596  return _IMP_algebra.UnboundedGridRange1D__set_from_binary(self, p)
7597 
7598  def __getstate__(self):
7599  p = self._get_as_binary()
7600  if len(self.__dict__) > 1:
7601  d = self.__dict__.copy()
7602  del d['this']
7603  p = (d, p)
7604  return p
7605 
7606  def __setstate__(self, p):
7607  if not hasattr(self, 'this'):
7608  self.__init__()
7609  if isinstance(p, tuple):
7610  d, p = p
7611  self.__dict__.update(d)
7612  return self._set_from_binary(p)
7613 
7614  __swig_destroy__ = _IMP_algebra.delete_UnboundedGridRange1D
7615 
7616 # Register UnboundedGridRange1D in _IMP_algebra:
7617 _IMP_algebra.UnboundedGridRange1D_swigregister(UnboundedGridRange1D)
7618 class UnboundedGridRange2D(object):
7619  r"""Proxy of C++ IMP::algebra::UnboundedGridRangeD< 2 > class."""
7620 
7621  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7622 
7623  def __init__(self, *args):
7624  r"""
7625  __init__(UnboundedGridRange2D self) -> UnboundedGridRange2D
7626  __init__(UnboundedGridRange2D self, IMP::Ints const & arg2) -> UnboundedGridRange2D
7627  """
7628  _IMP_algebra.UnboundedGridRange2D_swiginit(self, _IMP_algebra.new_UnboundedGridRange2D(*args))
7629 
7630  def set_number_of_voxels(self, arg2):
7631  r"""set_number_of_voxels(UnboundedGridRange2D self, IMP::Ints arg2)"""
7632  return _IMP_algebra.UnboundedGridRange2D_set_number_of_voxels(self, arg2)
7633 
7634  def get_number_of_voxels(self, arg2):
7635  r"""get_number_of_voxels(UnboundedGridRange2D self, int arg2) -> unsigned int"""
7636  return _IMP_algebra.UnboundedGridRange2D_get_number_of_voxels(self, arg2)
7637 
7638  @staticmethod
7639  def get_is_bounded():
7640  r"""get_is_bounded() -> bool"""
7641  return _IMP_algebra.UnboundedGridRange2D_get_is_bounded()
7642 
7643  def get_has_index(self, arg2):
7644  r"""get_has_index(UnboundedGridRange2D self, ExtendedGridIndex2D arg2) -> bool"""
7645  return _IMP_algebra.UnboundedGridRange2D_get_has_index(self, arg2)
7646 
7647  def show(self, *args):
7648  r"""show(UnboundedGridRange2D self, _ostream out=std::cout)"""
7649  return _IMP_algebra.UnboundedGridRange2D_show(self, *args)
7650 
7651  def get_extended_indexes(self, lb, ub):
7652  r"""get_extended_indexes(UnboundedGridRange2D self, ExtendedGridIndex2D lb, ExtendedGridIndex2D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 2 > >"""
7653  return _IMP_algebra.UnboundedGridRange2D_get_extended_indexes(self, lb, ub)
7654 
7655  def __str__(self):
7656  r"""__str__(UnboundedGridRange2D self) -> std::string"""
7657  return _IMP_algebra.UnboundedGridRange2D___str__(self)
7658 
7659  def __repr__(self):
7660  r"""__repr__(UnboundedGridRange2D self) -> std::string"""
7661  return _IMP_algebra.UnboundedGridRange2D___repr__(self)
7662 
7663  def __cmp__(self, arg2):
7664  r"""__cmp__(UnboundedGridRange2D self, UnboundedGridRange2D arg2) -> int"""
7665  return _IMP_algebra.UnboundedGridRange2D___cmp__(self, arg2)
7666 
7667  def __eq__(self, arg2):
7668  r"""__eq__(UnboundedGridRange2D self, UnboundedGridRange2D arg2) -> bool"""
7669  return _IMP_algebra.UnboundedGridRange2D___eq__(self, arg2)
7670 
7671  def _get_as_binary(self):
7672  r"""_get_as_binary(UnboundedGridRange2D self) -> PyObject *"""
7673  return _IMP_algebra.UnboundedGridRange2D__get_as_binary(self)
7674 
7675  def _set_from_binary(self, p):
7676  r"""_set_from_binary(UnboundedGridRange2D self, PyObject * p)"""
7677  return _IMP_algebra.UnboundedGridRange2D__set_from_binary(self, p)
7678 
7679  def __getstate__(self):
7680  p = self._get_as_binary()
7681  if len(self.__dict__) > 1:
7682  d = self.__dict__.copy()
7683  del d['this']
7684  p = (d, p)
7685  return p
7686 
7687  def __setstate__(self, p):
7688  if not hasattr(self, 'this'):
7689  self.__init__()
7690  if isinstance(p, tuple):
7691  d, p = p
7692  self.__dict__.update(d)
7693  return self._set_from_binary(p)
7694 
7695  __swig_destroy__ = _IMP_algebra.delete_UnboundedGridRange2D
7696 
7697 # Register UnboundedGridRange2D in _IMP_algebra:
7698 _IMP_algebra.UnboundedGridRange2D_swigregister(UnboundedGridRange2D)
7699 class UnboundedGridRange3D(object):
7700  r"""Proxy of C++ IMP::algebra::UnboundedGridRangeD< 3 > class."""
7701 
7702  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7703 
7704  def __init__(self, *args):
7705  r"""
7706  __init__(UnboundedGridRange3D self) -> UnboundedGridRange3D
7707  __init__(UnboundedGridRange3D self, IMP::Ints const & arg2) -> UnboundedGridRange3D
7708  """
7709  _IMP_algebra.UnboundedGridRange3D_swiginit(self, _IMP_algebra.new_UnboundedGridRange3D(*args))
7710 
7711  def set_number_of_voxels(self, arg2):
7712  r"""set_number_of_voxels(UnboundedGridRange3D self, IMP::Ints arg2)"""
7713  return _IMP_algebra.UnboundedGridRange3D_set_number_of_voxels(self, arg2)
7714 
7715  def get_number_of_voxels(self, arg2):
7716  r"""get_number_of_voxels(UnboundedGridRange3D self, int arg2) -> unsigned int"""
7717  return _IMP_algebra.UnboundedGridRange3D_get_number_of_voxels(self, arg2)
7718 
7719  @staticmethod
7720  def get_is_bounded():
7721  r"""get_is_bounded() -> bool"""
7722  return _IMP_algebra.UnboundedGridRange3D_get_is_bounded()
7723 
7724  def get_has_index(self, arg2):
7725  r"""get_has_index(UnboundedGridRange3D self, ExtendedGridIndex3D arg2) -> bool"""
7726  return _IMP_algebra.UnboundedGridRange3D_get_has_index(self, arg2)
7727 
7728  def show(self, *args):
7729  r"""show(UnboundedGridRange3D self, _ostream out=std::cout)"""
7730  return _IMP_algebra.UnboundedGridRange3D_show(self, *args)
7731 
7732  def get_extended_indexes(self, lb, ub):
7733  r"""get_extended_indexes(UnboundedGridRange3D self, ExtendedGridIndex3D lb, ExtendedGridIndex3D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 3 > >"""
7734  return _IMP_algebra.UnboundedGridRange3D_get_extended_indexes(self, lb, ub)
7735 
7736  def __str__(self):
7737  r"""__str__(UnboundedGridRange3D self) -> std::string"""
7738  return _IMP_algebra.UnboundedGridRange3D___str__(self)
7739 
7740  def __repr__(self):
7741  r"""__repr__(UnboundedGridRange3D self) -> std::string"""
7742  return _IMP_algebra.UnboundedGridRange3D___repr__(self)
7743 
7744  def __cmp__(self, arg2):
7745  r"""__cmp__(UnboundedGridRange3D self, UnboundedGridRange3D arg2) -> int"""
7746  return _IMP_algebra.UnboundedGridRange3D___cmp__(self, arg2)
7747 
7748  def __eq__(self, arg2):
7749  r"""__eq__(UnboundedGridRange3D self, UnboundedGridRange3D arg2) -> bool"""
7750  return _IMP_algebra.UnboundedGridRange3D___eq__(self, arg2)
7751 
7752  def _get_as_binary(self):
7753  r"""_get_as_binary(UnboundedGridRange3D self) -> PyObject *"""
7754  return _IMP_algebra.UnboundedGridRange3D__get_as_binary(self)
7755 
7756  def _set_from_binary(self, p):
7757  r"""_set_from_binary(UnboundedGridRange3D self, PyObject * p)"""
7758  return _IMP_algebra.UnboundedGridRange3D__set_from_binary(self, p)
7759 
7760  def __getstate__(self):
7761  p = self._get_as_binary()
7762  if len(self.__dict__) > 1:
7763  d = self.__dict__.copy()
7764  del d['this']
7765  p = (d, p)
7766  return p
7767 
7768  def __setstate__(self, p):
7769  if not hasattr(self, 'this'):
7770  self.__init__()
7771  if isinstance(p, tuple):
7772  d, p = p
7773  self.__dict__.update(d)
7774  return self._set_from_binary(p)
7775 
7776  __swig_destroy__ = _IMP_algebra.delete_UnboundedGridRange3D
7777 
7778 # Register UnboundedGridRange3D in _IMP_algebra:
7779 _IMP_algebra.UnboundedGridRange3D_swigregister(UnboundedGridRange3D)
7780 class UnboundedGridRange4D(object):
7781  r"""Proxy of C++ IMP::algebra::UnboundedGridRangeD< 4 > class."""
7782 
7783  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7784 
7785  def __init__(self, *args):
7786  r"""
7787  __init__(UnboundedGridRange4D self) -> UnboundedGridRange4D
7788  __init__(UnboundedGridRange4D self, IMP::Ints const & arg2) -> UnboundedGridRange4D
7789  """
7790  _IMP_algebra.UnboundedGridRange4D_swiginit(self, _IMP_algebra.new_UnboundedGridRange4D(*args))
7791 
7792  def set_number_of_voxels(self, arg2):
7793  r"""set_number_of_voxels(UnboundedGridRange4D self, IMP::Ints arg2)"""
7794  return _IMP_algebra.UnboundedGridRange4D_set_number_of_voxels(self, arg2)
7795 
7796  def get_number_of_voxels(self, arg2):
7797  r"""get_number_of_voxels(UnboundedGridRange4D self, int arg2) -> unsigned int"""
7798  return _IMP_algebra.UnboundedGridRange4D_get_number_of_voxels(self, arg2)
7799 
7800  @staticmethod
7801  def get_is_bounded():
7802  r"""get_is_bounded() -> bool"""
7803  return _IMP_algebra.UnboundedGridRange4D_get_is_bounded()
7804 
7805  def get_has_index(self, arg2):
7806  r"""get_has_index(UnboundedGridRange4D self, ExtendedGridIndex4D arg2) -> bool"""
7807  return _IMP_algebra.UnboundedGridRange4D_get_has_index(self, arg2)
7808 
7809  def show(self, *args):
7810  r"""show(UnboundedGridRange4D self, _ostream out=std::cout)"""
7811  return _IMP_algebra.UnboundedGridRange4D_show(self, *args)
7812 
7813  def get_extended_indexes(self, lb, ub):
7814  r"""get_extended_indexes(UnboundedGridRange4D self, ExtendedGridIndex4D lb, ExtendedGridIndex4D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 4 > >"""
7815  return _IMP_algebra.UnboundedGridRange4D_get_extended_indexes(self, lb, ub)
7816 
7817  def __str__(self):
7818  r"""__str__(UnboundedGridRange4D self) -> std::string"""
7819  return _IMP_algebra.UnboundedGridRange4D___str__(self)
7820 
7821  def __repr__(self):
7822  r"""__repr__(UnboundedGridRange4D self) -> std::string"""
7823  return _IMP_algebra.UnboundedGridRange4D___repr__(self)
7824 
7825  def __cmp__(self, arg2):
7826  r"""__cmp__(UnboundedGridRange4D self, UnboundedGridRange4D arg2) -> int"""
7827  return _IMP_algebra.UnboundedGridRange4D___cmp__(self, arg2)
7828 
7829  def __eq__(self, arg2):
7830  r"""__eq__(UnboundedGridRange4D self, UnboundedGridRange4D arg2) -> bool"""
7831  return _IMP_algebra.UnboundedGridRange4D___eq__(self, arg2)
7832 
7833  def _get_as_binary(self):
7834  r"""_get_as_binary(UnboundedGridRange4D self) -> PyObject *"""
7835  return _IMP_algebra.UnboundedGridRange4D__get_as_binary(self)
7836 
7837  def _set_from_binary(self, p):
7838  r"""_set_from_binary(UnboundedGridRange4D self, PyObject * p)"""
7839  return _IMP_algebra.UnboundedGridRange4D__set_from_binary(self, p)
7840 
7841  def __getstate__(self):
7842  p = self._get_as_binary()
7843  if len(self.__dict__) > 1:
7844  d = self.__dict__.copy()
7845  del d['this']
7846  p = (d, p)
7847  return p
7848 
7849  def __setstate__(self, p):
7850  if not hasattr(self, 'this'):
7851  self.__init__()
7852  if isinstance(p, tuple):
7853  d, p = p
7854  self.__dict__.update(d)
7855  return self._set_from_binary(p)
7856 
7857  __swig_destroy__ = _IMP_algebra.delete_UnboundedGridRange4D
7858 
7859 # Register UnboundedGridRange4D in _IMP_algebra:
7860 _IMP_algebra.UnboundedGridRange4D_swigregister(UnboundedGridRange4D)
7861 class UnboundedGridRange5D(object):
7862  r"""Proxy of C++ IMP::algebra::UnboundedGridRangeD< 5 > class."""
7863 
7864  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7865 
7866  def __init__(self, *args):
7867  r"""
7868  __init__(UnboundedGridRange5D self) -> UnboundedGridRange5D
7869  __init__(UnboundedGridRange5D self, IMP::Ints const & arg2) -> UnboundedGridRange5D
7870  """
7871  _IMP_algebra.UnboundedGridRange5D_swiginit(self, _IMP_algebra.new_UnboundedGridRange5D(*args))
7872 
7873  def set_number_of_voxels(self, arg2):
7874  r"""set_number_of_voxels(UnboundedGridRange5D self, IMP::Ints arg2)"""
7875  return _IMP_algebra.UnboundedGridRange5D_set_number_of_voxels(self, arg2)
7876 
7877  def get_number_of_voxels(self, arg2):
7878  r"""get_number_of_voxels(UnboundedGridRange5D self, int arg2) -> unsigned int"""
7879  return _IMP_algebra.UnboundedGridRange5D_get_number_of_voxels(self, arg2)
7880 
7881  @staticmethod
7882  def get_is_bounded():
7883  r"""get_is_bounded() -> bool"""
7884  return _IMP_algebra.UnboundedGridRange5D_get_is_bounded()
7885 
7886  def get_has_index(self, arg2):
7887  r"""get_has_index(UnboundedGridRange5D self, ExtendedGridIndex5D arg2) -> bool"""
7888  return _IMP_algebra.UnboundedGridRange5D_get_has_index(self, arg2)
7889 
7890  def show(self, *args):
7891  r"""show(UnboundedGridRange5D self, _ostream out=std::cout)"""
7892  return _IMP_algebra.UnboundedGridRange5D_show(self, *args)
7893 
7894  def get_extended_indexes(self, lb, ub):
7895  r"""get_extended_indexes(UnboundedGridRange5D self, ExtendedGridIndex5D lb, ExtendedGridIndex5D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 5 > >"""
7896  return _IMP_algebra.UnboundedGridRange5D_get_extended_indexes(self, lb, ub)
7897 
7898  def __str__(self):
7899  r"""__str__(UnboundedGridRange5D self) -> std::string"""
7900  return _IMP_algebra.UnboundedGridRange5D___str__(self)
7901 
7902  def __repr__(self):
7903  r"""__repr__(UnboundedGridRange5D self) -> std::string"""
7904  return _IMP_algebra.UnboundedGridRange5D___repr__(self)
7905 
7906  def __cmp__(self, arg2):
7907  r"""__cmp__(UnboundedGridRange5D self, UnboundedGridRange5D arg2) -> int"""
7908  return _IMP_algebra.UnboundedGridRange5D___cmp__(self, arg2)
7909 
7910  def __eq__(self, arg2):
7911  r"""__eq__(UnboundedGridRange5D self, UnboundedGridRange5D arg2) -> bool"""
7912  return _IMP_algebra.UnboundedGridRange5D___eq__(self, arg2)
7913 
7914  def _get_as_binary(self):
7915  r"""_get_as_binary(UnboundedGridRange5D self) -> PyObject *"""
7916  return _IMP_algebra.UnboundedGridRange5D__get_as_binary(self)
7917 
7918  def _set_from_binary(self, p):
7919  r"""_set_from_binary(UnboundedGridRange5D self, PyObject * p)"""
7920  return _IMP_algebra.UnboundedGridRange5D__set_from_binary(self, p)
7921 
7922  def __getstate__(self):
7923  p = self._get_as_binary()
7924  if len(self.__dict__) > 1:
7925  d = self.__dict__.copy()
7926  del d['this']
7927  p = (d, p)
7928  return p
7929 
7930  def __setstate__(self, p):
7931  if not hasattr(self, 'this'):
7932  self.__init__()
7933  if isinstance(p, tuple):
7934  d, p = p
7935  self.__dict__.update(d)
7936  return self._set_from_binary(p)
7937 
7938  __swig_destroy__ = _IMP_algebra.delete_UnboundedGridRange5D
7939 
7940 # Register UnboundedGridRange5D in _IMP_algebra:
7941 _IMP_algebra.UnboundedGridRange5D_swigregister(UnboundedGridRange5D)
7942 class UnboundedGridRange6D(object):
7943  r"""Proxy of C++ IMP::algebra::UnboundedGridRangeD< 6 > class."""
7944 
7945  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7946 
7947  def __init__(self, *args):
7948  r"""
7949  __init__(UnboundedGridRange6D self) -> UnboundedGridRange6D
7950  __init__(UnboundedGridRange6D self, IMP::Ints const & arg2) -> UnboundedGridRange6D
7951  """
7952  _IMP_algebra.UnboundedGridRange6D_swiginit(self, _IMP_algebra.new_UnboundedGridRange6D(*args))
7953 
7954  def set_number_of_voxels(self, arg2):
7955  r"""set_number_of_voxels(UnboundedGridRange6D self, IMP::Ints arg2)"""
7956  return _IMP_algebra.UnboundedGridRange6D_set_number_of_voxels(self, arg2)
7957 
7958  def get_number_of_voxels(self, arg2):
7959  r"""get_number_of_voxels(UnboundedGridRange6D self, int arg2) -> unsigned int"""
7960  return _IMP_algebra.UnboundedGridRange6D_get_number_of_voxels(self, arg2)
7961 
7962  @staticmethod
7963  def get_is_bounded():
7964  r"""get_is_bounded() -> bool"""
7965  return _IMP_algebra.UnboundedGridRange6D_get_is_bounded()
7966 
7967  def get_has_index(self, arg2):
7968  r"""get_has_index(UnboundedGridRange6D self, ExtendedGridIndex6D arg2) -> bool"""
7969  return _IMP_algebra.UnboundedGridRange6D_get_has_index(self, arg2)
7970 
7971  def show(self, *args):
7972  r"""show(UnboundedGridRange6D self, _ostream out=std::cout)"""
7973  return _IMP_algebra.UnboundedGridRange6D_show(self, *args)
7974 
7975  def get_extended_indexes(self, lb, ub):
7976  r"""get_extended_indexes(UnboundedGridRange6D self, ExtendedGridIndex6D lb, ExtendedGridIndex6D ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< 6 > >"""
7977  return _IMP_algebra.UnboundedGridRange6D_get_extended_indexes(self, lb, ub)
7978 
7979  def __str__(self):
7980  r"""__str__(UnboundedGridRange6D self) -> std::string"""
7981  return _IMP_algebra.UnboundedGridRange6D___str__(self)
7982 
7983  def __repr__(self):
7984  r"""__repr__(UnboundedGridRange6D self) -> std::string"""
7985  return _IMP_algebra.UnboundedGridRange6D___repr__(self)
7986 
7987  def __cmp__(self, arg2):
7988  r"""__cmp__(UnboundedGridRange6D self, UnboundedGridRange6D arg2) -> int"""
7989  return _IMP_algebra.UnboundedGridRange6D___cmp__(self, arg2)
7990 
7991  def __eq__(self, arg2):
7992  r"""__eq__(UnboundedGridRange6D self, UnboundedGridRange6D arg2) -> bool"""
7993  return _IMP_algebra.UnboundedGridRange6D___eq__(self, arg2)
7994 
7995  def _get_as_binary(self):
7996  r"""_get_as_binary(UnboundedGridRange6D self) -> PyObject *"""
7997  return _IMP_algebra.UnboundedGridRange6D__get_as_binary(self)
7998 
7999  def _set_from_binary(self, p):
8000  r"""_set_from_binary(UnboundedGridRange6D self, PyObject * p)"""
8001  return _IMP_algebra.UnboundedGridRange6D__set_from_binary(self, p)
8002 
8003  def __getstate__(self):
8004  p = self._get_as_binary()
8005  if len(self.__dict__) > 1:
8006  d = self.__dict__.copy()
8007  del d['this']
8008  p = (d, p)
8009  return p
8010 
8011  def __setstate__(self, p):
8012  if not hasattr(self, 'this'):
8013  self.__init__()
8014  if isinstance(p, tuple):
8015  d, p = p
8016  self.__dict__.update(d)
8017  return self._set_from_binary(p)
8018 
8019  __swig_destroy__ = _IMP_algebra.delete_UnboundedGridRange6D
8020 
8021 # Register UnboundedGridRange6D in _IMP_algebra:
8022 _IMP_algebra.UnboundedGridRange6D_swigregister(UnboundedGridRange6D)
8023 class UnboundedGridRangeKD(object):
8024  r"""Proxy of C++ IMP::algebra::UnboundedGridRangeD< -1 > class."""
8025 
8026  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8027 
8028  def __init__(self, *args):
8029  r"""
8030  __init__(UnboundedGridRangeKD self) -> UnboundedGridRangeKD
8031  __init__(UnboundedGridRangeKD self, IMP::Ints const & arg2) -> UnboundedGridRangeKD
8032  """
8033  _IMP_algebra.UnboundedGridRangeKD_swiginit(self, _IMP_algebra.new_UnboundedGridRangeKD(*args))
8034 
8035  def set_number_of_voxels(self, arg2):
8036  r"""set_number_of_voxels(UnboundedGridRangeKD self, IMP::Ints arg2)"""
8037  return _IMP_algebra.UnboundedGridRangeKD_set_number_of_voxels(self, arg2)
8038 
8039  def get_number_of_voxels(self, arg2):
8040  r"""get_number_of_voxels(UnboundedGridRangeKD self, int arg2) -> unsigned int"""
8041  return _IMP_algebra.UnboundedGridRangeKD_get_number_of_voxels(self, arg2)
8042 
8043  @staticmethod
8044  def get_is_bounded():
8045  r"""get_is_bounded() -> bool"""
8046  return _IMP_algebra.UnboundedGridRangeKD_get_is_bounded()
8047 
8048  def get_has_index(self, arg2):
8049  r"""get_has_index(UnboundedGridRangeKD self, ExtendedGridIndexKD arg2) -> bool"""
8050  return _IMP_algebra.UnboundedGridRangeKD_get_has_index(self, arg2)
8051 
8052  def show(self, *args):
8053  r"""show(UnboundedGridRangeKD self, _ostream out=std::cout)"""
8054  return _IMP_algebra.UnboundedGridRangeKD_show(self, *args)
8055 
8056  def get_extended_indexes(self, lb, ub):
8057  r"""get_extended_indexes(UnboundedGridRangeKD self, ExtendedGridIndexKD lb, ExtendedGridIndexKD ub) -> IMP::Vector< IMP::algebra::ExtendedGridIndexD< -1 > >"""
8058  return _IMP_algebra.UnboundedGridRangeKD_get_extended_indexes(self, lb, ub)
8059 
8060  def __str__(self):
8061  r"""__str__(UnboundedGridRangeKD self) -> std::string"""
8062  return _IMP_algebra.UnboundedGridRangeKD___str__(self)
8063 
8064  def __repr__(self):
8065  r"""__repr__(UnboundedGridRangeKD self) -> std::string"""
8066  return _IMP_algebra.UnboundedGridRangeKD___repr__(self)
8067 
8068  def __cmp__(self, arg2):
8069  r"""__cmp__(UnboundedGridRangeKD self, UnboundedGridRangeKD arg2) -> int"""
8070  return _IMP_algebra.UnboundedGridRangeKD___cmp__(self, arg2)
8071 
8072  def __eq__(self, arg2):
8073  r"""__eq__(UnboundedGridRangeKD self, UnboundedGridRangeKD arg2) -> bool"""
8074  return _IMP_algebra.UnboundedGridRangeKD___eq__(self, arg2)
8075 
8076  def _get_as_binary(self):
8077  r"""_get_as_binary(UnboundedGridRangeKD self) -> PyObject *"""
8078  return _IMP_algebra.UnboundedGridRangeKD__get_as_binary(self)
8079 
8080  def _set_from_binary(self, p):
8081  r"""_set_from_binary(UnboundedGridRangeKD self, PyObject * p)"""
8082  return _IMP_algebra.UnboundedGridRangeKD__set_from_binary(self, p)
8083 
8084  def __getstate__(self):
8085  p = self._get_as_binary()
8086  if len(self.__dict__) > 1:
8087  d = self.__dict__.copy()
8088  del d['this']
8089  p = (d, p)
8090  return p
8091 
8092  def __setstate__(self, p):
8093  if not hasattr(self, 'this'):
8094  self.__init__()
8095  if isinstance(p, tuple):
8096  d, p = p
8097  self.__dict__.update(d)
8098  return self._set_from_binary(p)
8099 
8100  __swig_destroy__ = _IMP_algebra.delete_UnboundedGridRangeKD
8101 
8102 # Register UnboundedGridRangeKD in _IMP_algebra:
8103 _IMP_algebra.UnboundedGridRangeKD_swigregister(UnboundedGridRangeKD)
8104 class DefaultEmbedding1D(object):
8105  r"""Proxy of C++ IMP::algebra::DefaultEmbeddingD< 1 > class."""
8106 
8107  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8108 
8109  def __init__(self, *args):
8110  r"""
8111  __init__(DefaultEmbedding1D self, Vector1D origin, Vector1D cell) -> DefaultEmbedding1D
8112  __init__(DefaultEmbedding1D self) -> DefaultEmbedding1D
8113  """
8114  _IMP_algebra.DefaultEmbedding1D_swiginit(self, _IMP_algebra.new_DefaultEmbedding1D(*args))
8115 
8116  def set_origin(self, o):
8117  r"""set_origin(DefaultEmbedding1D self, Vector1D o)"""
8118  return _IMP_algebra.DefaultEmbedding1D_set_origin(self, o)
8119 
8120  def get_origin(self):
8121  r"""get_origin(DefaultEmbedding1D self) -> Vector1D"""
8122  return _IMP_algebra.DefaultEmbedding1D_get_origin(self)
8123 
8124  def get_dimension(self):
8125  r"""get_dimension(DefaultEmbedding1D self) -> unsigned int"""
8126  return _IMP_algebra.DefaultEmbedding1D_get_dimension(self)
8127 
8128  def set_unit_cell(self, o):
8129  r"""set_unit_cell(DefaultEmbedding1D self, Vector1D o)"""
8130  return _IMP_algebra.DefaultEmbedding1D_set_unit_cell(self, o)
8131 
8132  def get_inverse_unit_cell(self):
8133  r"""get_inverse_unit_cell(DefaultEmbedding1D self) -> Vector1D"""
8134  return _IMP_algebra.DefaultEmbedding1D_get_inverse_unit_cell(self)
8135 
8136  def get_unit_cell(self):
8137  r"""get_unit_cell(DefaultEmbedding1D self) -> Vector1D"""
8138  return _IMP_algebra.DefaultEmbedding1D_get_unit_cell(self)
8139 
8140  def get_extended_index(self, o):
8141  r"""get_extended_index(DefaultEmbedding1D self, Vector1D o) -> ExtendedGridIndex1D"""
8142  return _IMP_algebra.DefaultEmbedding1D_get_extended_index(self, o)
8143 
8144  def get_index(self, o):
8145  r"""get_index(DefaultEmbedding1D self, Vector1D o) -> GridIndex1D"""
8146  return _IMP_algebra.DefaultEmbedding1D_get_index(self, o)
8147 
8148  def get_center(self, *args):
8149  r"""
8150  get_center(DefaultEmbedding1D self, ExtendedGridIndex1D ei) -> Vector1D
8151  get_center(DefaultEmbedding1D self, GridIndex1D ei) -> Vector1D
8152  """
8153  return _IMP_algebra.DefaultEmbedding1D_get_center(self, *args)
8154 
8155  def get_bounding_box(self, *args):
8156  r"""
8157  get_bounding_box(DefaultEmbedding1D self, ExtendedGridIndex1D ei) -> BoundingBox1D
8158  get_bounding_box(DefaultEmbedding1D self, GridIndex1D ei) -> BoundingBox1D
8159  """
8160  return _IMP_algebra.DefaultEmbedding1D_get_bounding_box(self, *args)
8161 
8162  def show(self, *args):
8163  r"""show(DefaultEmbedding1D self, _ostream out=std::cout)"""
8164  return _IMP_algebra.DefaultEmbedding1D_show(self, *args)
8165 
8166  def __str__(self):
8167  r"""__str__(DefaultEmbedding1D self) -> std::string"""
8168  return _IMP_algebra.DefaultEmbedding1D___str__(self)
8169 
8170  def __repr__(self):
8171  r"""__repr__(DefaultEmbedding1D self) -> std::string"""
8172  return _IMP_algebra.DefaultEmbedding1D___repr__(self)
8173 
8174  def __cmp__(self, arg2):
8175  r"""__cmp__(DefaultEmbedding1D self, DefaultEmbedding1D arg2) -> int"""
8176  return _IMP_algebra.DefaultEmbedding1D___cmp__(self, arg2)
8177 
8178  def __eq__(self, arg2):
8179  r"""__eq__(DefaultEmbedding1D self, DefaultEmbedding1D arg2) -> bool"""
8180  return _IMP_algebra.DefaultEmbedding1D___eq__(self, arg2)
8181 
8182  def _get_as_binary(self):
8183  r"""_get_as_binary(DefaultEmbedding1D self) -> PyObject *"""
8184  return _IMP_algebra.DefaultEmbedding1D__get_as_binary(self)
8185 
8186  def _set_from_binary(self, p):
8187  r"""_set_from_binary(DefaultEmbedding1D self, PyObject * p)"""
8188  return _IMP_algebra.DefaultEmbedding1D__set_from_binary(self, p)
8189 
8190  def __getstate__(self):
8191  p = self._get_as_binary()
8192  if len(self.__dict__) > 1:
8193  d = self.__dict__.copy()
8194  del d['this']
8195  p = (d, p)
8196  return p
8197 
8198  def __setstate__(self, p):
8199  if not hasattr(self, 'this'):
8200  self.__init__()
8201  if isinstance(p, tuple):
8202  d, p = p
8203  self.__dict__.update(d)
8204  return self._set_from_binary(p)
8205 
8206  __swig_destroy__ = _IMP_algebra.delete_DefaultEmbedding1D
8207 
8208 # Register DefaultEmbedding1D in _IMP_algebra:
8209 _IMP_algebra.DefaultEmbedding1D_swigregister(DefaultEmbedding1D)
8210 class DefaultEmbedding2D(object):
8211  r"""Proxy of C++ IMP::algebra::DefaultEmbeddingD< 2 > class."""
8212 
8213  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8214 
8215  def __init__(self, *args):
8216  r"""
8217  __init__(DefaultEmbedding2D self, Vector2D origin, Vector2D cell) -> DefaultEmbedding2D
8218  __init__(DefaultEmbedding2D self) -> DefaultEmbedding2D
8219  """
8220  _IMP_algebra.DefaultEmbedding2D_swiginit(self, _IMP_algebra.new_DefaultEmbedding2D(*args))
8221 
8222  def set_origin(self, o):
8223  r"""set_origin(DefaultEmbedding2D self, Vector2D o)"""
8224  return _IMP_algebra.DefaultEmbedding2D_set_origin(self, o)
8225 
8226  def get_origin(self):
8227  r"""get_origin(DefaultEmbedding2D self) -> Vector2D"""
8228  return _IMP_algebra.DefaultEmbedding2D_get_origin(self)
8229 
8230  def get_dimension(self):
8231  r"""get_dimension(DefaultEmbedding2D self) -> unsigned int"""
8232  return _IMP_algebra.DefaultEmbedding2D_get_dimension(self)
8233 
8234  def set_unit_cell(self, o):
8235  r"""set_unit_cell(DefaultEmbedding2D self, Vector2D o)"""
8236  return _IMP_algebra.DefaultEmbedding2D_set_unit_cell(self, o)
8237 
8238  def get_inverse_unit_cell(self):
8239  r"""get_inverse_unit_cell(DefaultEmbedding2D self) -> Vector2D"""
8240  return _IMP_algebra.DefaultEmbedding2D_get_inverse_unit_cell(self)
8241 
8242  def get_unit_cell(self):
8243  r"""get_unit_cell(DefaultEmbedding2D self) -> Vector2D"""
8244  return _IMP_algebra.DefaultEmbedding2D_get_unit_cell(self)
8245 
8246  def get_extended_index(self, o):
8247  r"""get_extended_index(DefaultEmbedding2D self, Vector2D o) -> ExtendedGridIndex2D"""
8248  return _IMP_algebra.DefaultEmbedding2D_get_extended_index(self, o)
8249 
8250  def get_index(self, o):
8251  r"""get_index(DefaultEmbedding2D self, Vector2D o) -> GridIndex2D"""
8252  return _IMP_algebra.DefaultEmbedding2D_get_index(self, o)
8253 
8254  def get_center(self, *args):
8255  r"""
8256  get_center(DefaultEmbedding2D self, ExtendedGridIndex2D ei) -> Vector2D
8257  get_center(DefaultEmbedding2D self, GridIndex2D ei) -> Vector2D
8258  """
8259  return _IMP_algebra.DefaultEmbedding2D_get_center(self, *args)
8260 
8261  def get_bounding_box(self, *args):
8262  r"""
8263  get_bounding_box(DefaultEmbedding2D self, ExtendedGridIndex2D ei) -> BoundingBox2D
8264  get_bounding_box(DefaultEmbedding2D self, GridIndex2D ei) -> BoundingBox2D
8265  """
8266  return _IMP_algebra.DefaultEmbedding2D_get_bounding_box(self, *args)
8267 
8268  def show(self, *args):
8269  r"""show(DefaultEmbedding2D self, _ostream out=std::cout)"""
8270  return _IMP_algebra.DefaultEmbedding2D_show(self, *args)
8271 
8272  def __str__(self):
8273  r"""__str__(DefaultEmbedding2D self) -> std::string"""
8274  return _IMP_algebra.DefaultEmbedding2D___str__(self)
8275 
8276  def __repr__(self):
8277  r"""__repr__(DefaultEmbedding2D self) -> std::string"""
8278  return _IMP_algebra.DefaultEmbedding2D___repr__(self)
8279 
8280  def __cmp__(self, arg2):
8281  r"""__cmp__(DefaultEmbedding2D self, DefaultEmbedding2D arg2) -> int"""
8282  return _IMP_algebra.DefaultEmbedding2D___cmp__(self, arg2)
8283 
8284  def __eq__(self, arg2):
8285  r"""__eq__(DefaultEmbedding2D self, DefaultEmbedding2D arg2) -> bool"""
8286  return _IMP_algebra.DefaultEmbedding2D___eq__(self, arg2)
8287 
8288  def _get_as_binary(self):
8289  r"""_get_as_binary(DefaultEmbedding2D self) -> PyObject *"""
8290  return _IMP_algebra.DefaultEmbedding2D__get_as_binary(self)
8291 
8292  def _set_from_binary(self, p):
8293  r"""_set_from_binary(DefaultEmbedding2D self, PyObject * p)"""
8294  return _IMP_algebra.DefaultEmbedding2D__set_from_binary(self, p)
8295 
8296  def __getstate__(self):
8297  p = self._get_as_binary()
8298  if len(self.__dict__) > 1:
8299  d = self.__dict__.copy()
8300  del d['this']
8301  p = (d, p)
8302  return p
8303 
8304  def __setstate__(self, p):
8305  if not hasattr(self, 'this'):
8306  self.__init__()
8307  if isinstance(p, tuple):
8308  d, p = p
8309  self.__dict__.update(d)
8310  return self._set_from_binary(p)
8311 
8312  __swig_destroy__ = _IMP_algebra.delete_DefaultEmbedding2D
8313 
8314 # Register DefaultEmbedding2D in _IMP_algebra:
8315 _IMP_algebra.DefaultEmbedding2D_swigregister(DefaultEmbedding2D)
8316 class DefaultEmbedding3D(object):
8317  r"""Proxy of C++ IMP::algebra::DefaultEmbeddingD< 3 > class."""
8318 
8319  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8320 
8321  def __init__(self, *args):
8322  r"""
8323  __init__(DefaultEmbedding3D self, Vector3D origin, Vector3D cell) -> DefaultEmbedding3D
8324  __init__(DefaultEmbedding3D self) -> DefaultEmbedding3D
8325  """
8326  _IMP_algebra.DefaultEmbedding3D_swiginit(self, _IMP_algebra.new_DefaultEmbedding3D(*args))
8327 
8328  def set_origin(self, o):
8329  r"""set_origin(DefaultEmbedding3D self, Vector3D o)"""
8330  return _IMP_algebra.DefaultEmbedding3D_set_origin(self, o)
8331 
8332  def get_origin(self):
8333  r"""get_origin(DefaultEmbedding3D self) -> Vector3D"""
8334  return _IMP_algebra.DefaultEmbedding3D_get_origin(self)
8335 
8336  def get_dimension(self):
8337  r"""get_dimension(DefaultEmbedding3D self) -> unsigned int"""
8338  return _IMP_algebra.DefaultEmbedding3D_get_dimension(self)
8339 
8340  def set_unit_cell(self, o):
8341  r"""set_unit_cell(DefaultEmbedding3D self, Vector3D o)"""
8342  return _IMP_algebra.DefaultEmbedding3D_set_unit_cell(self, o)
8343 
8344  def get_inverse_unit_cell(self):
8345  r"""get_inverse_unit_cell(DefaultEmbedding3D self) -> Vector3D"""
8346  return _IMP_algebra.DefaultEmbedding3D_get_inverse_unit_cell(self)
8347 
8348  def get_unit_cell(self):
8349  r"""get_unit_cell(DefaultEmbedding3D self) -> Vector3D"""
8350  return _IMP_algebra.DefaultEmbedding3D_get_unit_cell(self)
8351 
8352  def get_extended_index(self, o):
8353  r"""get_extended_index(DefaultEmbedding3D self, Vector3D o) -> ExtendedGridIndex3D"""
8354  return _IMP_algebra.DefaultEmbedding3D_get_extended_index(self, o)
8355 
8356  def get_index(self, o):
8357  r"""get_index(DefaultEmbedding3D self, Vector3D o) -> GridIndex3D"""
8358  return _IMP_algebra.DefaultEmbedding3D_get_index(self, o)
8359 
8360  def get_center(self, *args):
8361  r"""
8362  get_center(DefaultEmbedding3D self, ExtendedGridIndex3D ei) -> Vector3D
8363  get_center(DefaultEmbedding3D self, GridIndex3D ei) -> Vector3D
8364  """
8365  return _IMP_algebra.DefaultEmbedding3D_get_center(self, *args)
8366 
8367  def get_bounding_box(self, *args):
8368  r"""
8369  get_bounding_box(DefaultEmbedding3D self, ExtendedGridIndex3D ei) -> BoundingBox3D
8370  get_bounding_box(DefaultEmbedding3D self, GridIndex3D ei) -> BoundingBox3D
8371  """
8372  return _IMP_algebra.DefaultEmbedding3D_get_bounding_box(self, *args)
8373 
8374  def show(self, *args):
8375  r"""show(DefaultEmbedding3D self, _ostream out=std::cout)"""
8376  return _IMP_algebra.DefaultEmbedding3D_show(self, *args)
8377 
8378  def __str__(self):
8379  r"""__str__(DefaultEmbedding3D self) -> std::string"""
8380  return _IMP_algebra.DefaultEmbedding3D___str__(self)
8381 
8382  def __repr__(self):
8383  r"""__repr__(DefaultEmbedding3D self) -> std::string"""
8384  return _IMP_algebra.DefaultEmbedding3D___repr__(self)
8385 
8386  def __cmp__(self, arg2):
8387  r"""__cmp__(DefaultEmbedding3D self, DefaultEmbedding3D arg2) -> int"""
8388  return _IMP_algebra.DefaultEmbedding3D___cmp__(self, arg2)
8389 
8390  def __eq__(self, arg2):
8391  r"""__eq__(DefaultEmbedding3D self, DefaultEmbedding3D arg2) -> bool"""
8392  return _IMP_algebra.DefaultEmbedding3D___eq__(self, arg2)
8393 
8394  def _get_as_binary(self):
8395  r"""_get_as_binary(DefaultEmbedding3D self) -> PyObject *"""
8396  return _IMP_algebra.DefaultEmbedding3D__get_as_binary(self)
8397 
8398  def _set_from_binary(self, p):
8399  r"""_set_from_binary(DefaultEmbedding3D self, PyObject * p)"""
8400  return _IMP_algebra.DefaultEmbedding3D__set_from_binary(self, p)
8401 
8402  def __getstate__(self):
8403  p = self._get_as_binary()
8404  if len(self.__dict__) > 1:
8405  d = self.__dict__.copy()
8406  del d['this']
8407  p = (d, p)
8408  return p
8409 
8410  def __setstate__(self, p):
8411  if not hasattr(self, 'this'):
8412  self.__init__()
8413  if isinstance(p, tuple):
8414  d, p = p
8415  self.__dict__.update(d)
8416  return self._set_from_binary(p)
8417 
8418  __swig_destroy__ = _IMP_algebra.delete_DefaultEmbedding3D
8419 
8420 # Register DefaultEmbedding3D in _IMP_algebra:
8421 _IMP_algebra.DefaultEmbedding3D_swigregister(DefaultEmbedding3D)
8422 class DefaultEmbedding4D(object):
8423  r"""Proxy of C++ IMP::algebra::DefaultEmbeddingD< 4 > class."""
8424 
8425  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8426 
8427  def __init__(self, *args):
8428  r"""
8429  __init__(DefaultEmbedding4D self, Vector4D origin, Vector4D cell) -> DefaultEmbedding4D
8430  __init__(DefaultEmbedding4D self) -> DefaultEmbedding4D
8431  """
8432  _IMP_algebra.DefaultEmbedding4D_swiginit(self, _IMP_algebra.new_DefaultEmbedding4D(*args))
8433 
8434  def set_origin(self, o):
8435  r"""set_origin(DefaultEmbedding4D self, Vector4D o)"""
8436  return _IMP_algebra.DefaultEmbedding4D_set_origin(self, o)
8437 
8438  def get_origin(self):
8439  r"""get_origin(DefaultEmbedding4D self) -> Vector4D"""
8440  return _IMP_algebra.DefaultEmbedding4D_get_origin(self)
8441 
8442  def get_dimension(self):
8443  r"""get_dimension(DefaultEmbedding4D self) -> unsigned int"""
8444  return _IMP_algebra.DefaultEmbedding4D_get_dimension(self)
8445 
8446  def set_unit_cell(self, o):
8447  r"""set_unit_cell(DefaultEmbedding4D self, Vector4D o)"""
8448  return _IMP_algebra.DefaultEmbedding4D_set_unit_cell(self, o)
8449 
8450  def get_inverse_unit_cell(self):
8451  r"""get_inverse_unit_cell(DefaultEmbedding4D self) -> Vector4D"""
8452  return _IMP_algebra.DefaultEmbedding4D_get_inverse_unit_cell(self)
8453 
8454  def get_unit_cell(self):
8455  r"""get_unit_cell(DefaultEmbedding4D self) -> Vector4D"""
8456  return _IMP_algebra.DefaultEmbedding4D_get_unit_cell(self)
8457 
8458  def get_extended_index(self, o):
8459  r"""get_extended_index(DefaultEmbedding4D self, Vector4D o) -> ExtendedGridIndex4D"""
8460  return _IMP_algebra.DefaultEmbedding4D_get_extended_index(self, o)
8461 
8462  def get_index(self, o):
8463  r"""get_index(DefaultEmbedding4D self, Vector4D o) -> GridIndex4D"""
8464  return _IMP_algebra.DefaultEmbedding4D_get_index(self, o)
8465 
8466  def get_center(self, *args):
8467  r"""
8468  get_center(DefaultEmbedding4D self, ExtendedGridIndex4D ei) -> Vector4D
8469  get_center(DefaultEmbedding4D self, GridIndex4D ei) -> Vector4D
8470  """
8471  return _IMP_algebra.DefaultEmbedding4D_get_center(self, *args)
8472 
8473  def get_bounding_box(self, *args):
8474  r"""
8475  get_bounding_box(DefaultEmbedding4D self, ExtendedGridIndex4D ei) -> BoundingBox4D
8476  get_bounding_box(DefaultEmbedding4D self, GridIndex4D ei) -> BoundingBox4D
8477  """
8478  return _IMP_algebra.DefaultEmbedding4D_get_bounding_box(self, *args)
8479 
8480  def show(self, *args):
8481  r"""show(DefaultEmbedding4D self, _ostream out=std::cout)"""
8482  return _IMP_algebra.DefaultEmbedding4D_show(self, *args)
8483 
8484  def __str__(self):
8485  r"""__str__(DefaultEmbedding4D self) -> std::string"""
8486  return _IMP_algebra.DefaultEmbedding4D___str__(self)
8487 
8488  def __repr__(self):
8489  r"""__repr__(DefaultEmbedding4D self) -> std::string"""
8490  return _IMP_algebra.DefaultEmbedding4D___repr__(self)
8491 
8492  def __cmp__(self, arg2):
8493  r"""__cmp__(DefaultEmbedding4D self, DefaultEmbedding4D arg2) -> int"""
8494  return _IMP_algebra.DefaultEmbedding4D___cmp__(self, arg2)
8495 
8496  def __eq__(self, arg2):
8497  r"""__eq__(DefaultEmbedding4D self, DefaultEmbedding4D arg2) -> bool"""
8498  return _IMP_algebra.DefaultEmbedding4D___eq__(self, arg2)
8499 
8500  def _get_as_binary(self):
8501  r"""_get_as_binary(DefaultEmbedding4D self) -> PyObject *"""
8502  return _IMP_algebra.DefaultEmbedding4D__get_as_binary(self)
8503 
8504  def _set_from_binary(self, p):
8505  r"""_set_from_binary(DefaultEmbedding4D self, PyObject * p)"""
8506  return _IMP_algebra.DefaultEmbedding4D__set_from_binary(self, p)
8507 
8508  def __getstate__(self):
8509  p = self._get_as_binary()
8510  if len(self.__dict__) > 1:
8511  d = self.__dict__.copy()
8512  del d['this']
8513  p = (d, p)
8514  return p
8515 
8516  def __setstate__(self, p):
8517  if not hasattr(self, 'this'):
8518  self.__init__()
8519  if isinstance(p, tuple):
8520  d, p = p
8521  self.__dict__.update(d)
8522  return self._set_from_binary(p)
8523 
8524  __swig_destroy__ = _IMP_algebra.delete_DefaultEmbedding4D
8525 
8526 # Register DefaultEmbedding4D in _IMP_algebra:
8527 _IMP_algebra.DefaultEmbedding4D_swigregister(DefaultEmbedding4D)
8528 class DefaultEmbedding5D(object):
8529  r"""Proxy of C++ IMP::algebra::DefaultEmbeddingD< 5 > class."""
8530 
8531  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8532 
8533  def __init__(self, *args):
8534  r"""
8535  __init__(DefaultEmbedding5D self, Vector5D origin, Vector5D cell) -> DefaultEmbedding5D
8536  __init__(DefaultEmbedding5D self) -> DefaultEmbedding5D
8537  """
8538  _IMP_algebra.DefaultEmbedding5D_swiginit(self, _IMP_algebra.new_DefaultEmbedding5D(*args))
8539 
8540  def set_origin(self, o):
8541  r"""set_origin(DefaultEmbedding5D self, Vector5D o)"""
8542  return _IMP_algebra.DefaultEmbedding5D_set_origin(self, o)
8543 
8544  def get_origin(self):
8545  r"""get_origin(DefaultEmbedding5D self) -> Vector5D"""
8546  return _IMP_algebra.DefaultEmbedding5D_get_origin(self)
8547 
8548  def get_dimension(self):
8549  r"""get_dimension(DefaultEmbedding5D self) -> unsigned int"""
8550  return _IMP_algebra.DefaultEmbedding5D_get_dimension(self)
8551 
8552  def set_unit_cell(self, o):
8553  r"""set_unit_cell(DefaultEmbedding5D self, Vector5D o)"""
8554  return _IMP_algebra.DefaultEmbedding5D_set_unit_cell(self, o)
8555 
8556  def get_inverse_unit_cell(self):
8557  r"""get_inverse_unit_cell(DefaultEmbedding5D self) -> Vector5D"""
8558  return _IMP_algebra.DefaultEmbedding5D_get_inverse_unit_cell(self)
8559 
8560  def get_unit_cell(self):
8561  r"""get_unit_cell(DefaultEmbedding5D self) -> Vector5D"""
8562  return _IMP_algebra.DefaultEmbedding5D_get_unit_cell(self)
8563 
8564  def get_extended_index(self, o):
8565  r"""get_extended_index(DefaultEmbedding5D self, Vector5D o) -> ExtendedGridIndex5D"""
8566  return _IMP_algebra.DefaultEmbedding5D_get_extended_index(self, o)
8567 
8568  def get_index(self, o):
8569  r"""get_index(DefaultEmbedding5D self, Vector5D o) -> GridIndex5D"""
8570  return _IMP_algebra.DefaultEmbedding5D_get_index(self, o)
8571 
8572  def get_center(self, *args):
8573  r"""
8574  get_center(DefaultEmbedding5D self, ExtendedGridIndex5D ei) -> Vector5D
8575  get_center(DefaultEmbedding5D self, GridIndex5D ei) -> Vector5D
8576  """
8577  return _IMP_algebra.DefaultEmbedding5D_get_center(self, *args)
8578 
8579  def get_bounding_box(self, *args):
8580  r"""
8581  get_bounding_box(DefaultEmbedding5D self, ExtendedGridIndex5D ei) -> BoundingBox5D
8582  get_bounding_box(DefaultEmbedding5D self, GridIndex5D ei) -> BoundingBox5D
8583  """
8584  return _IMP_algebra.DefaultEmbedding5D_get_bounding_box(self, *args)
8585 
8586  def show(self, *args):
8587  r"""show(DefaultEmbedding5D self, _ostream out=std::cout)"""
8588  return _IMP_algebra.DefaultEmbedding5D_show(self, *args)
8589 
8590  def __str__(self):
8591  r"""__str__(DefaultEmbedding5D self) -> std::string"""
8592  return _IMP_algebra.DefaultEmbedding5D___str__(self)
8593 
8594  def __repr__(self):
8595  r"""__repr__(DefaultEmbedding5D self) -> std::string"""
8596  return _IMP_algebra.DefaultEmbedding5D___repr__(self)
8597 
8598  def __cmp__(self, arg2):
8599  r"""__cmp__(DefaultEmbedding5D self, DefaultEmbedding5D arg2) -> int"""
8600  return _IMP_algebra.DefaultEmbedding5D___cmp__(self, arg2)
8601 
8602  def __eq__(self, arg2):
8603  r"""__eq__(DefaultEmbedding5D self, DefaultEmbedding5D arg2) -> bool"""
8604  return _IMP_algebra.DefaultEmbedding5D___eq__(self, arg2)
8605 
8606  def _get_as_binary(self):
8607  r"""_get_as_binary(DefaultEmbedding5D self) -> PyObject *"""
8608  return _IMP_algebra.DefaultEmbedding5D__get_as_binary(self)
8609 
8610  def _set_from_binary(self, p):
8611  r"""_set_from_binary(DefaultEmbedding5D self, PyObject * p)"""
8612  return _IMP_algebra.DefaultEmbedding5D__set_from_binary(self, p)
8613 
8614  def __getstate__(self):
8615  p = self._get_as_binary()
8616  if len(self.__dict__) > 1:
8617  d = self.__dict__.copy()
8618  del d['this']
8619  p = (d, p)
8620  return p
8621 
8622  def __setstate__(self, p):
8623  if not hasattr(self, 'this'):
8624  self.__init__()
8625  if isinstance(p, tuple):
8626  d, p = p
8627  self.__dict__.update(d)
8628  return self._set_from_binary(p)
8629 
8630  __swig_destroy__ = _IMP_algebra.delete_DefaultEmbedding5D
8631 
8632 # Register DefaultEmbedding5D in _IMP_algebra:
8633 _IMP_algebra.DefaultEmbedding5D_swigregister(DefaultEmbedding5D)
8634 class DefaultEmbedding6D(object):
8635  r"""Proxy of C++ IMP::algebra::DefaultEmbeddingD< 6 > class."""
8636 
8637  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8638 
8639  def __init__(self, *args):
8640  r"""
8641  __init__(DefaultEmbedding6D self, Vector6D origin, Vector6D cell) -> DefaultEmbedding6D
8642  __init__(DefaultEmbedding6D self) -> DefaultEmbedding6D
8643  """
8644  _IMP_algebra.DefaultEmbedding6D_swiginit(self, _IMP_algebra.new_DefaultEmbedding6D(*args))
8645 
8646  def set_origin(self, o):
8647  r"""set_origin(DefaultEmbedding6D self, Vector6D o)"""
8648  return _IMP_algebra.DefaultEmbedding6D_set_origin(self, o)
8649 
8650  def get_origin(self):
8651  r"""get_origin(DefaultEmbedding6D self) -> Vector6D"""
8652  return _IMP_algebra.DefaultEmbedding6D_get_origin(self)
8653 
8654  def get_dimension(self):
8655  r"""get_dimension(DefaultEmbedding6D self) -> unsigned int"""
8656  return _IMP_algebra.DefaultEmbedding6D_get_dimension(self)
8657 
8658  def set_unit_cell(self, o):
8659  r"""set_unit_cell(DefaultEmbedding6D self, Vector6D o)"""
8660  return _IMP_algebra.DefaultEmbedding6D_set_unit_cell(self, o)
8661 
8662  def get_inverse_unit_cell(self):
8663  r"""get_inverse_unit_cell(DefaultEmbedding6D self) -> Vector6D"""
8664  return _IMP_algebra.DefaultEmbedding6D_get_inverse_unit_cell(self)
8665 
8666  def get_unit_cell(self):
8667  r"""get_unit_cell(DefaultEmbedding6D self) -> Vector6D"""
8668  return _IMP_algebra.DefaultEmbedding6D_get_unit_cell(self)
8669 
8670  def get_extended_index(self, o):
8671  r"""get_extended_index(DefaultEmbedding6D self, Vector6D o) -> ExtendedGridIndex6D"""
8672  return _IMP_algebra.DefaultEmbedding6D_get_extended_index(self, o)
8673 
8674  def get_index(self, o):
8675  r"""get_index(DefaultEmbedding6D self, Vector6D o) -> GridIndex6D"""
8676  return _IMP_algebra.DefaultEmbedding6D_get_index(self, o)
8677 
8678  def get_center(self, *args):
8679  r"""
8680  get_center(DefaultEmbedding6D self, ExtendedGridIndex6D ei) -> Vector6D
8681  get_center(DefaultEmbedding6D self, GridIndex6D ei) -> Vector6D
8682  """
8683  return _IMP_algebra.DefaultEmbedding6D_get_center(self, *args)
8684 
8685  def get_bounding_box(self, *args):
8686  r"""
8687  get_bounding_box(DefaultEmbedding6D self, ExtendedGridIndex6D ei) -> BoundingBox6D
8688  get_bounding_box(DefaultEmbedding6D self, GridIndex6D ei) -> BoundingBox6D
8689  """
8690  return _IMP_algebra.DefaultEmbedding6D_get_bounding_box(self, *args)
8691 
8692  def show(self, *args):
8693  r"""show(DefaultEmbedding6D self, _ostream out=std::cout)"""
8694  return _IMP_algebra.DefaultEmbedding6D_show(self, *args)
8695 
8696  def __str__(self):
8697  r"""__str__(DefaultEmbedding6D self) -> std::string"""
8698  return _IMP_algebra.DefaultEmbedding6D___str__(self)
8699 
8700  def __repr__(self):
8701  r"""__repr__(DefaultEmbedding6D self) -> std::string"""
8702  return _IMP_algebra.DefaultEmbedding6D___repr__(self)
8703 
8704  def __cmp__(self, arg2):
8705  r"""__cmp__(DefaultEmbedding6D self, DefaultEmbedding6D arg2) -> int"""
8706  return _IMP_algebra.DefaultEmbedding6D___cmp__(self, arg2)
8707 
8708  def __eq__(self, arg2):
8709  r"""__eq__(DefaultEmbedding6D self, DefaultEmbedding6D arg2) -> bool"""
8710  return _IMP_algebra.DefaultEmbedding6D___eq__(self, arg2)
8711 
8712  def _get_as_binary(self):
8713  r"""_get_as_binary(DefaultEmbedding6D self) -> PyObject *"""
8714  return _IMP_algebra.DefaultEmbedding6D__get_as_binary(self)
8715 
8716  def _set_from_binary(self, p):
8717  r"""_set_from_binary(DefaultEmbedding6D self, PyObject * p)"""
8718  return _IMP_algebra.DefaultEmbedding6D__set_from_binary(self, p)
8719 
8720  def __getstate__(self):
8721  p = self._get_as_binary()
8722  if len(self.__dict__) > 1:
8723  d = self.__dict__.copy()
8724  del d['this']
8725  p = (d, p)
8726  return p
8727 
8728  def __setstate__(self, p):
8729  if not hasattr(self, 'this'):
8730  self.__init__()
8731  if isinstance(p, tuple):
8732  d, p = p
8733  self.__dict__.update(d)
8734  return self._set_from_binary(p)
8735 
8736  __swig_destroy__ = _IMP_algebra.delete_DefaultEmbedding6D
8737 
8738 # Register DefaultEmbedding6D in _IMP_algebra:
8739 _IMP_algebra.DefaultEmbedding6D_swigregister(DefaultEmbedding6D)
8740 class DefaultEmbeddingKD(object):
8741  r"""Proxy of C++ IMP::algebra::DefaultEmbeddingD< -1 > class."""
8742 
8743  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8744 
8745  def __init__(self, *args):
8746  r"""
8747  __init__(DefaultEmbeddingKD self, VectorKD origin, VectorKD cell) -> DefaultEmbeddingKD
8748  __init__(DefaultEmbeddingKD self) -> DefaultEmbeddingKD
8749  """
8750  _IMP_algebra.DefaultEmbeddingKD_swiginit(self, _IMP_algebra.new_DefaultEmbeddingKD(*args))
8751 
8752  def set_origin(self, o):
8753  r"""set_origin(DefaultEmbeddingKD self, VectorKD o)"""
8754  return _IMP_algebra.DefaultEmbeddingKD_set_origin(self, o)
8755 
8756  def get_origin(self):
8757  r"""get_origin(DefaultEmbeddingKD self) -> VectorKD"""
8758  return _IMP_algebra.DefaultEmbeddingKD_get_origin(self)
8759 
8760  def get_dimension(self):
8761  r"""get_dimension(DefaultEmbeddingKD self) -> unsigned int"""
8762  return _IMP_algebra.DefaultEmbeddingKD_get_dimension(self)
8763 
8764  def set_unit_cell(self, o):
8765  r"""set_unit_cell(DefaultEmbeddingKD self, VectorKD o)"""
8766  return _IMP_algebra.DefaultEmbeddingKD_set_unit_cell(self, o)
8767 
8768  def get_inverse_unit_cell(self):
8769  r"""get_inverse_unit_cell(DefaultEmbeddingKD self) -> VectorKD"""
8770  return _IMP_algebra.DefaultEmbeddingKD_get_inverse_unit_cell(self)
8771 
8772  def get_unit_cell(self):
8773  r"""get_unit_cell(DefaultEmbeddingKD self) -> VectorKD"""
8774  return _IMP_algebra.DefaultEmbeddingKD_get_unit_cell(self)
8775 
8776  def get_extended_index(self, o):
8777  r"""get_extended_index(DefaultEmbeddingKD self, VectorKD o) -> ExtendedGridIndexKD"""
8778  return _IMP_algebra.DefaultEmbeddingKD_get_extended_index(self, o)
8779 
8780  def get_index(self, o):
8781  r"""get_index(DefaultEmbeddingKD self, VectorKD o) -> GridIndexKD"""
8782  return _IMP_algebra.DefaultEmbeddingKD_get_index(self, o)
8783 
8784  def get_center(self, *args):
8785  r"""
8786  get_center(DefaultEmbeddingKD self, ExtendedGridIndexKD ei) -> VectorKD
8787  get_center(DefaultEmbeddingKD self, GridIndexKD ei) -> VectorKD
8788  """
8789  return _IMP_algebra.DefaultEmbeddingKD_get_center(self, *args)
8790 
8791  def get_bounding_box(self, *args):
8792  r"""
8793  get_bounding_box(DefaultEmbeddingKD self, ExtendedGridIndexKD ei) -> BoundingBoxKD
8794  get_bounding_box(DefaultEmbeddingKD self, GridIndexKD ei) -> BoundingBoxKD
8795  """
8796  return _IMP_algebra.DefaultEmbeddingKD_get_bounding_box(self, *args)
8797 
8798  def show(self, *args):
8799  r"""show(DefaultEmbeddingKD self, _ostream out=std::cout)"""
8800  return _IMP_algebra.DefaultEmbeddingKD_show(self, *args)
8801 
8802  def __str__(self):
8803  r"""__str__(DefaultEmbeddingKD self) -> std::string"""
8804  return _IMP_algebra.DefaultEmbeddingKD___str__(self)
8805 
8806  def __repr__(self):
8807  r"""__repr__(DefaultEmbeddingKD self) -> std::string"""
8808  return _IMP_algebra.DefaultEmbeddingKD___repr__(self)
8809 
8810  def __cmp__(self, arg2):
8811  r"""__cmp__(DefaultEmbeddingKD self, DefaultEmbeddingKD arg2) -> int"""
8812  return _IMP_algebra.DefaultEmbeddingKD___cmp__(self, arg2)
8813 
8814  def __eq__(self, arg2):
8815  r"""__eq__(DefaultEmbeddingKD self, DefaultEmbeddingKD arg2) -> bool"""
8816  return _IMP_algebra.DefaultEmbeddingKD___eq__(self, arg2)
8817 
8818  def _get_as_binary(self):
8819  r"""_get_as_binary(DefaultEmbeddingKD self) -> PyObject *"""
8820  return _IMP_algebra.DefaultEmbeddingKD__get_as_binary(self)
8821 
8822  def _set_from_binary(self, p):
8823  r"""_set_from_binary(DefaultEmbeddingKD self, PyObject * p)"""
8824  return _IMP_algebra.DefaultEmbeddingKD__set_from_binary(self, p)
8825 
8826  def __getstate__(self):
8827  p = self._get_as_binary()
8828  if len(self.__dict__) > 1:
8829  d = self.__dict__.copy()
8830  del d['this']
8831  p = (d, p)
8832  return p
8833 
8834  def __setstate__(self, p):
8835  if not hasattr(self, 'this'):
8836  self.__init__()
8837  if isinstance(p, tuple):
8838  d, p = p
8839  self.__dict__.update(d)
8840  return self._set_from_binary(p)
8841 
8842  __swig_destroy__ = _IMP_algebra.delete_DefaultEmbeddingKD
8843 
8844 # Register DefaultEmbeddingKD in _IMP_algebra:
8845 _IMP_algebra.DefaultEmbeddingKD_swigregister(DefaultEmbeddingKD)
8846 class LogEmbedding1D(object):
8847  r"""Proxy of C++ IMP::algebra::LogEmbeddingD< 1 > class."""
8848 
8849  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8850 
8851  def __init__(self, *args):
8852  r"""
8853  __init__(LogEmbedding1D self, Vector1D origin, Vector1D cell, Vector1D base) -> LogEmbedding1D
8854  __init__(LogEmbedding1D self, BoundingBox1D bb, Vector1D bases, IMP::Ints const & counts, bool bound_centers=False) -> LogEmbedding1D
8855  __init__(LogEmbedding1D self, Vector1D arg2, Vector1D arg3) -> LogEmbedding1D
8856  __init__(LogEmbedding1D self) -> LogEmbedding1D
8857  """
8858  _IMP_algebra.LogEmbedding1D_swiginit(self, _IMP_algebra.new_LogEmbedding1D(*args))
8859 
8860  def set_origin(self, o):
8861  r"""set_origin(LogEmbedding1D self, Vector1D o)"""
8862  return _IMP_algebra.LogEmbedding1D_set_origin(self, o)
8863 
8864  def get_origin(self):
8865  r"""get_origin(LogEmbedding1D self) -> Vector1D"""
8866  return _IMP_algebra.LogEmbedding1D_get_origin(self)
8867 
8868  def get_dimension(self):
8869  r"""get_dimension(LogEmbedding1D self) -> unsigned int"""
8870  return _IMP_algebra.LogEmbedding1D_get_dimension(self)
8871 
8872  def set_unit_cell(self, *args):
8873  r"""
8874  set_unit_cell(LogEmbedding1D self, Vector1D o, Vector1D base)
8875  set_unit_cell(LogEmbedding1D self, Vector1D o)
8876  """
8877  return _IMP_algebra.LogEmbedding1D_set_unit_cell(self, *args)
8878 
8879  def get_unit_cell(self):
8880  r"""get_unit_cell(LogEmbedding1D self) -> Vector1D"""
8881  return _IMP_algebra.LogEmbedding1D_get_unit_cell(self)
8882 
8883  def get_extended_index(self, o):
8884  r"""get_extended_index(LogEmbedding1D self, Vector1D o) -> ExtendedGridIndex1D"""
8885  return _IMP_algebra.LogEmbedding1D_get_extended_index(self, o)
8886 
8887  def get_index(self, o):
8888  r"""get_index(LogEmbedding1D self, Vector1D o) -> GridIndex1D"""
8889  return _IMP_algebra.LogEmbedding1D_get_index(self, o)
8890 
8891  def get_center(self, *args):
8892  r"""
8893  get_center(LogEmbedding1D self, ExtendedGridIndex1D ei) -> Vector1D
8894  get_center(LogEmbedding1D self, GridIndex1D ei) -> Vector1D
8895  """
8896  return _IMP_algebra.LogEmbedding1D_get_center(self, *args)
8897 
8898  def get_bounding_box(self, *args):
8899  r"""
8900  get_bounding_box(LogEmbedding1D self, ExtendedGridIndex1D ei) -> BoundingBox1D
8901  get_bounding_box(LogEmbedding1D self, GridIndex1D ei) -> BoundingBox1D
8902  """
8903  return _IMP_algebra.LogEmbedding1D_get_bounding_box(self, *args)
8904 
8905  def show(self, *args):
8906  r"""show(LogEmbedding1D self, _ostream out=std::cout)"""
8907  return _IMP_algebra.LogEmbedding1D_show(self, *args)
8908 
8909  def __str__(self):
8910  r"""__str__(LogEmbedding1D self) -> std::string"""
8911  return _IMP_algebra.LogEmbedding1D___str__(self)
8912 
8913  def __repr__(self):
8914  r"""__repr__(LogEmbedding1D self) -> std::string"""
8915  return _IMP_algebra.LogEmbedding1D___repr__(self)
8916 
8917  def __cmp__(self, arg2):
8918  r"""__cmp__(LogEmbedding1D self, LogEmbedding1D arg2) -> int"""
8919  return _IMP_algebra.LogEmbedding1D___cmp__(self, arg2)
8920 
8921  def __eq__(self, arg2):
8922  r"""__eq__(LogEmbedding1D self, LogEmbedding1D arg2) -> bool"""
8923  return _IMP_algebra.LogEmbedding1D___eq__(self, arg2)
8924 
8925  def _get_as_binary(self):
8926  r"""_get_as_binary(LogEmbedding1D self) -> PyObject *"""
8927  return _IMP_algebra.LogEmbedding1D__get_as_binary(self)
8928 
8929  def _set_from_binary(self, p):
8930  r"""_set_from_binary(LogEmbedding1D self, PyObject * p)"""
8931  return _IMP_algebra.LogEmbedding1D__set_from_binary(self, p)
8932 
8933  def __getstate__(self):
8934  p = self._get_as_binary()
8935  if len(self.__dict__) > 1:
8936  d = self.__dict__.copy()
8937  del d['this']
8938  p = (d, p)
8939  return p
8940 
8941  def __setstate__(self, p):
8942  if not hasattr(self, 'this'):
8943  self.__init__()
8944  if isinstance(p, tuple):
8945  d, p = p
8946  self.__dict__.update(d)
8947  return self._set_from_binary(p)
8948 
8949  __swig_destroy__ = _IMP_algebra.delete_LogEmbedding1D
8950 
8951 # Register LogEmbedding1D in _IMP_algebra:
8952 _IMP_algebra.LogEmbedding1D_swigregister(LogEmbedding1D)
8953 class LogEmbedding2D(object):
8954  r"""Proxy of C++ IMP::algebra::LogEmbeddingD< 2 > class."""
8955 
8956  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8957 
8958  def __init__(self, *args):
8959  r"""
8960  __init__(LogEmbedding2D self, Vector2D origin, Vector2D cell, Vector2D base) -> LogEmbedding2D
8961  __init__(LogEmbedding2D self, BoundingBox2D bb, Vector2D bases, IMP::Ints const & counts, bool bound_centers=False) -> LogEmbedding2D
8962  __init__(LogEmbedding2D self, Vector2D arg2, Vector2D arg3) -> LogEmbedding2D
8963  __init__(LogEmbedding2D self) -> LogEmbedding2D
8964  """
8965  _IMP_algebra.LogEmbedding2D_swiginit(self, _IMP_algebra.new_LogEmbedding2D(*args))
8966 
8967  def set_origin(self, o):
8968  r"""set_origin(LogEmbedding2D self, Vector2D o)"""
8969  return _IMP_algebra.LogEmbedding2D_set_origin(self, o)
8970 
8971  def get_origin(self):
8972  r"""get_origin(LogEmbedding2D self) -> Vector2D"""
8973  return _IMP_algebra.LogEmbedding2D_get_origin(self)
8974 
8975  def get_dimension(self):
8976  r"""get_dimension(LogEmbedding2D self) -> unsigned int"""
8977  return _IMP_algebra.LogEmbedding2D_get_dimension(self)
8978 
8979  def set_unit_cell(self, *args):
8980  r"""
8981  set_unit_cell(LogEmbedding2D self, Vector2D o, Vector2D base)
8982  set_unit_cell(LogEmbedding2D self, Vector2D o)
8983  """
8984  return _IMP_algebra.LogEmbedding2D_set_unit_cell(self, *args)
8985 
8986  def get_unit_cell(self):
8987  r"""get_unit_cell(LogEmbedding2D self) -> Vector2D"""
8988  return _IMP_algebra.LogEmbedding2D_get_unit_cell(self)
8989 
8990  def get_extended_index(self, o):
8991  r"""get_extended_index(LogEmbedding2D self, Vector2D o) -> ExtendedGridIndex2D"""
8992  return _IMP_algebra.LogEmbedding2D_get_extended_index(self, o)
8993 
8994  def get_index(self, o):
8995  r"""get_index(LogEmbedding2D self, Vector2D o) -> GridIndex2D"""
8996  return _IMP_algebra.LogEmbedding2D_get_index(self, o)
8997 
8998  def get_center(self, *args):
8999  r"""
9000  get_center(LogEmbedding2D self, ExtendedGridIndex2D ei) -> Vector2D
9001  get_center(LogEmbedding2D self, GridIndex2D ei) -> Vector2D
9002  """
9003  return _IMP_algebra.LogEmbedding2D_get_center(self, *args)
9004 
9005  def get_bounding_box(self, *args):
9006  r"""
9007  get_bounding_box(LogEmbedding2D self, ExtendedGridIndex2D ei) -> BoundingBox2D
9008  get_bounding_box(LogEmbedding2D self, GridIndex2D ei) -> BoundingBox2D
9009  """
9010  return _IMP_algebra.LogEmbedding2D_get_bounding_box(self, *args)
9011 
9012  def show(self, *args):
9013  r"""show(LogEmbedding2D self, _ostream out=std::cout)"""
9014  return _IMP_algebra.LogEmbedding2D_show(self, *args)
9015 
9016  def __str__(self):
9017  r"""__str__(LogEmbedding2D self) -> std::string"""
9018  return _IMP_algebra.LogEmbedding2D___str__(self)
9019 
9020  def __repr__(self):
9021  r"""__repr__(LogEmbedding2D self) -> std::string"""
9022  return _IMP_algebra.LogEmbedding2D___repr__(self)
9023 
9024  def __cmp__(self, arg2):
9025  r"""__cmp__(LogEmbedding2D self, LogEmbedding2D arg2) -> int"""
9026  return _IMP_algebra.LogEmbedding2D___cmp__(self, arg2)
9027 
9028  def __eq__(self, arg2):
9029  r"""__eq__(LogEmbedding2D self, LogEmbedding2D arg2) -> bool"""
9030  return _IMP_algebra.LogEmbedding2D___eq__(self, arg2)
9031 
9032  def _get_as_binary(self):
9033  r"""_get_as_binary(LogEmbedding2D self) -> PyObject *"""
9034  return _IMP_algebra.LogEmbedding2D__get_as_binary(self)
9035 
9036  def _set_from_binary(self, p):
9037  r"""_set_from_binary(LogEmbedding2D self, PyObject * p)"""
9038  return _IMP_algebra.LogEmbedding2D__set_from_binary(self, p)
9039 
9040  def __getstate__(self):
9041  p = self._get_as_binary()
9042  if len(self.__dict__) > 1:
9043  d = self.__dict__.copy()
9044  del d['this']
9045  p = (d, p)
9046  return p
9047 
9048  def __setstate__(self, p):
9049  if not hasattr(self, 'this'):
9050  self.__init__()
9051  if isinstance(p, tuple):
9052  d, p = p
9053  self.__dict__.update(d)
9054  return self._set_from_binary(p)
9055 
9056  __swig_destroy__ = _IMP_algebra.delete_LogEmbedding2D
9057 
9058 # Register LogEmbedding2D in _IMP_algebra:
9059 _IMP_algebra.LogEmbedding2D_swigregister(LogEmbedding2D)
9060 class LogEmbedding4D(object):
9061  r"""Proxy of C++ IMP::algebra::LogEmbeddingD< 4 > class."""
9062 
9063  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9064 
9065  def __init__(self, *args):
9066  r"""
9067  __init__(LogEmbedding4D self, Vector4D origin, Vector4D cell, Vector4D base) -> LogEmbedding4D
9068  __init__(LogEmbedding4D self, BoundingBox4D bb, Vector4D bases, IMP::Ints const & counts, bool bound_centers=False) -> LogEmbedding4D
9069  __init__(LogEmbedding4D self, Vector4D arg2, Vector4D arg3) -> LogEmbedding4D
9070  __init__(LogEmbedding4D self) -> LogEmbedding4D
9071  """
9072  _IMP_algebra.LogEmbedding4D_swiginit(self, _IMP_algebra.new_LogEmbedding4D(*args))
9073 
9074  def set_origin(self, o):
9075  r"""set_origin(LogEmbedding4D self, Vector4D o)"""
9076  return _IMP_algebra.LogEmbedding4D_set_origin(self, o)
9077 
9078  def get_origin(self):
9079  r"""get_origin(LogEmbedding4D self) -> Vector4D"""
9080  return _IMP_algebra.LogEmbedding4D_get_origin(self)
9081 
9082  def get_dimension(self):
9083  r"""get_dimension(LogEmbedding4D self) -> unsigned int"""
9084  return _IMP_algebra.LogEmbedding4D_get_dimension(self)
9085 
9086  def set_unit_cell(self, *args):
9087  r"""
9088  set_unit_cell(LogEmbedding4D self, Vector4D o, Vector4D base)
9089  set_unit_cell(LogEmbedding4D self, Vector4D o)
9090  """
9091  return _IMP_algebra.LogEmbedding4D_set_unit_cell(self, *args)
9092 
9093  def get_unit_cell(self):
9094  r"""get_unit_cell(LogEmbedding4D self) -> Vector4D"""
9095  return _IMP_algebra.LogEmbedding4D_get_unit_cell(self)
9096 
9097  def get_extended_index(self, o):
9098  r"""get_extended_index(LogEmbedding4D self, Vector4D o) -> ExtendedGridIndex4D"""
9099  return _IMP_algebra.LogEmbedding4D_get_extended_index(self, o)
9100 
9101  def get_index(self, o):
9102  r"""get_index(LogEmbedding4D self, Vector4D o) -> GridIndex4D"""
9103  return _IMP_algebra.LogEmbedding4D_get_index(self, o)
9104 
9105  def get_center(self, *args):
9106  r"""
9107  get_center(LogEmbedding4D self, ExtendedGridIndex4D ei) -> Vector4D
9108  get_center(LogEmbedding4D self, GridIndex4D ei) -> Vector4D
9109  """
9110  return _IMP_algebra.LogEmbedding4D_get_center(self, *args)
9111 
9112  def get_bounding_box(self, *args):
9113  r"""
9114  get_bounding_box(LogEmbedding4D self, ExtendedGridIndex4D ei) -> BoundingBox4D
9115  get_bounding_box(LogEmbedding4D self, GridIndex4D ei) -> BoundingBox4D
9116  """
9117  return _IMP_algebra.LogEmbedding4D_get_bounding_box(self, *args)
9118 
9119  def show(self, *args):
9120  r"""show(LogEmbedding4D self, _ostream out=std::cout)"""
9121  return _IMP_algebra.LogEmbedding4D_show(self, *args)
9122 
9123  def __str__(self):
9124  r"""__str__(LogEmbedding4D self) -> std::string"""
9125  return _IMP_algebra.LogEmbedding4D___str__(self)
9126 
9127  def __repr__(self):
9128  r"""__repr__(LogEmbedding4D self) -> std::string"""
9129  return _IMP_algebra.LogEmbedding4D___repr__(self)
9130 
9131  def __cmp__(self, arg2):
9132  r"""__cmp__(LogEmbedding4D self, LogEmbedding4D arg2) -> int"""
9133  return _IMP_algebra.LogEmbedding4D___cmp__(self, arg2)
9134 
9135  def __eq__(self, arg2):
9136  r"""__eq__(LogEmbedding4D self, LogEmbedding4D arg2) -> bool"""
9137  return _IMP_algebra.LogEmbedding4D___eq__(self, arg2)
9138 
9139  def _get_as_binary(self):
9140  r"""_get_as_binary(LogEmbedding4D self) -> PyObject *"""
9141  return _IMP_algebra.LogEmbedding4D__get_as_binary(self)
9142 
9143  def _set_from_binary(self, p):
9144  r"""_set_from_binary(LogEmbedding4D self, PyObject * p)"""
9145  return _IMP_algebra.LogEmbedding4D__set_from_binary(self, p)
9146 
9147  def __getstate__(self):
9148  p = self._get_as_binary()
9149  if len(self.__dict__) > 1:
9150  d = self.__dict__.copy()
9151  del d['this']
9152  p = (d, p)
9153  return p
9154 
9155  def __setstate__(self, p):
9156  if not hasattr(self, 'this'):
9157  self.__init__()
9158  if isinstance(p, tuple):
9159  d, p = p
9160  self.__dict__.update(d)
9161  return self._set_from_binary(p)
9162 
9163  __swig_destroy__ = _IMP_algebra.delete_LogEmbedding4D
9164 
9165 # Register LogEmbedding4D in _IMP_algebra:
9166 _IMP_algebra.LogEmbedding4D_swigregister(LogEmbedding4D)
9167 class LogEmbedding5D(object):
9168  r"""Proxy of C++ IMP::algebra::LogEmbeddingD< 5 > class."""
9169 
9170  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9171 
9172  def __init__(self, *args):
9173  r"""
9174  __init__(LogEmbedding5D self, Vector5D origin, Vector5D cell, Vector5D base) -> LogEmbedding5D
9175  __init__(LogEmbedding5D self, BoundingBox5D bb, Vector5D bases, IMP::Ints const & counts, bool bound_centers=False) -> LogEmbedding5D
9176  __init__(LogEmbedding5D self, Vector5D arg2, Vector5D arg3) -> LogEmbedding5D
9177  __init__(LogEmbedding5D self) -> LogEmbedding5D
9178  """
9179  _IMP_algebra.LogEmbedding5D_swiginit(self, _IMP_algebra.new_LogEmbedding5D(*args))
9180 
9181  def set_origin(self, o):
9182  r"""set_origin(LogEmbedding5D self, Vector5D o)"""
9183  return _IMP_algebra.LogEmbedding5D_set_origin(self, o)
9184 
9185  def get_origin(self):
9186  r"""get_origin(LogEmbedding5D self) -> Vector5D"""
9187  return _IMP_algebra.LogEmbedding5D_get_origin(self)
9188 
9189  def get_dimension(self):
9190  r"""get_dimension(LogEmbedding5D self) -> unsigned int"""
9191  return _IMP_algebra.LogEmbedding5D_get_dimension(self)
9192 
9193  def set_unit_cell(self, *args):
9194  r"""
9195  set_unit_cell(LogEmbedding5D self, Vector5D o, Vector5D base)
9196  set_unit_cell(LogEmbedding5D self, Vector5D o)
9197  """
9198  return _IMP_algebra.LogEmbedding5D_set_unit_cell(self, *args)
9199 
9200  def get_unit_cell(self):
9201  r"""get_unit_cell(LogEmbedding5D self) -> Vector5D"""
9202  return _IMP_algebra.LogEmbedding5D_get_unit_cell(self)
9203 
9204  def get_extended_index(self, o):
9205  r"""get_extended_index(LogEmbedding5D self, Vector5D o) -> ExtendedGridIndex5D"""
9206  return _IMP_algebra.LogEmbedding5D_get_extended_index(self, o)
9207 
9208  def get_index(self, o):
9209  r"""get_index(LogEmbedding5D self, Vector5D o) -> GridIndex5D"""
9210  return _IMP_algebra.LogEmbedding5D_get_index(self, o)
9211 
9212  def get_center(self, *args):
9213  r"""
9214  get_center(LogEmbedding5D self, ExtendedGridIndex5D ei) -> Vector5D
9215  get_center(LogEmbedding5D self, GridIndex5D ei) -> Vector5D
9216  """
9217  return _IMP_algebra.LogEmbedding5D_get_center(self, *args)
9218 
9219  def get_bounding_box(self, *args):
9220  r"""
9221  get_bounding_box(LogEmbedding5D self, ExtendedGridIndex5D ei) -> BoundingBox5D
9222  get_bounding_box(LogEmbedding5D self, GridIndex5D ei) -> BoundingBox5D
9223  """
9224  return _IMP_algebra.LogEmbedding5D_get_bounding_box(self, *args)
9225 
9226  def show(self, *args):
9227  r"""show(LogEmbedding5D self, _ostream out=std::cout)"""
9228  return _IMP_algebra.LogEmbedding5D_show(self, *args)
9229 
9230  def __str__(self):
9231  r"""__str__(LogEmbedding5D self) -> std::string"""
9232  return _IMP_algebra.LogEmbedding5D___str__(self)
9233 
9234  def __repr__(self):
9235  r"""__repr__(LogEmbedding5D self) -> std::string"""
9236  return _IMP_algebra.LogEmbedding5D___repr__(self)
9237 
9238  def __cmp__(self, arg2):
9239  r"""__cmp__(LogEmbedding5D self, LogEmbedding5D arg2) -> int"""
9240  return _IMP_algebra.LogEmbedding5D___cmp__(self, arg2)
9241 
9242  def __eq__(self, arg2):
9243  r"""__eq__(LogEmbedding5D self, LogEmbedding5D arg2) -> bool"""
9244  return _IMP_algebra.LogEmbedding5D___eq__(self, arg2)
9245 
9246  def _get_as_binary(self):
9247  r"""_get_as_binary(LogEmbedding5D self) -> PyObject *"""
9248  return _IMP_algebra.LogEmbedding5D__get_as_binary(self)
9249 
9250  def _set_from_binary(self, p):
9251  r"""_set_from_binary(LogEmbedding5D self, PyObject * p)"""
9252  return _IMP_algebra.LogEmbedding5D__set_from_binary(self, p)
9253 
9254  def __getstate__(self):
9255  p = self._get_as_binary()
9256  if len(self.__dict__) > 1:
9257  d = self.__dict__.copy()
9258  del d['this']
9259  p = (d, p)
9260  return p
9261 
9262  def __setstate__(self, p):
9263  if not hasattr(self, 'this'):
9264  self.__init__()
9265  if isinstance(p, tuple):
9266  d, p = p
9267  self.__dict__.update(d)
9268  return self._set_from_binary(p)
9269 
9270  __swig_destroy__ = _IMP_algebra.delete_LogEmbedding5D
9271 
9272 # Register LogEmbedding5D in _IMP_algebra:
9273 _IMP_algebra.LogEmbedding5D_swigregister(LogEmbedding5D)
9274 class LogEmbedding6D(object):
9275  r"""Proxy of C++ IMP::algebra::LogEmbeddingD< 6 > class."""
9276 
9277  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9278 
9279  def __init__(self, *args):
9280  r"""
9281  __init__(LogEmbedding6D self, Vector6D origin, Vector6D cell, Vector6D base) -> LogEmbedding6D
9282  __init__(LogEmbedding6D self, BoundingBox6D bb, Vector6D bases, IMP::Ints const & counts, bool bound_centers=False) -> LogEmbedding6D
9283  __init__(LogEmbedding6D self, Vector6D arg2, Vector6D arg3) -> LogEmbedding6D
9284  __init__(LogEmbedding6D self) -> LogEmbedding6D
9285  """
9286  _IMP_algebra.LogEmbedding6D_swiginit(self, _IMP_algebra.new_LogEmbedding6D(*args))
9287 
9288  def set_origin(self, o):
9289  r"""set_origin(LogEmbedding6D self, Vector6D o)"""
9290  return _IMP_algebra.LogEmbedding6D_set_origin(self, o)
9291 
9292  def get_origin(self):
9293  r"""get_origin(LogEmbedding6D self) -> Vector6D"""
9294  return _IMP_algebra.LogEmbedding6D_get_origin(self)
9295 
9296  def get_dimension(self):
9297  r"""get_dimension(LogEmbedding6D self) -> unsigned int"""
9298  return _IMP_algebra.LogEmbedding6D_get_dimension(self)
9299 
9300  def set_unit_cell(self, *args):
9301  r"""
9302  set_unit_cell(LogEmbedding6D self, Vector6D o, Vector6D base)
9303  set_unit_cell(LogEmbedding6D self, Vector6D o)
9304  """
9305  return _IMP_algebra.LogEmbedding6D_set_unit_cell(self, *args)
9306 
9307  def get_unit_cell(self):
9308  r"""get_unit_cell(LogEmbedding6D self) -> Vector6D"""
9309  return _IMP_algebra.LogEmbedding6D_get_unit_cell(self)
9310 
9311  def get_extended_index(self, o):
9312  r"""get_extended_index(LogEmbedding6D self, Vector6D o) -> ExtendedGridIndex6D"""
9313  return _IMP_algebra.LogEmbedding6D_get_extended_index(self, o)
9314 
9315  def get_index(self, o):
9316  r"""get_index(LogEmbedding6D self, Vector6D o) -> GridIndex6D"""
9317  return _IMP_algebra.LogEmbedding6D_get_index(self, o)
9318 
9319  def get_center(self, *args):
9320  r"""
9321  get_center(LogEmbedding6D self, ExtendedGridIndex6D ei) -> Vector6D
9322  get_center(LogEmbedding6D self, GridIndex6D ei) -> Vector6D
9323  """
9324  return _IMP_algebra.LogEmbedding6D_get_center(self, *args)
9325 
9326  def get_bounding_box(self, *args):
9327  r"""
9328  get_bounding_box(LogEmbedding6D self, ExtendedGridIndex6D ei) -> BoundingBox6D
9329  get_bounding_box(LogEmbedding6D self, GridIndex6D ei) -> BoundingBox6D
9330  """
9331  return _IMP_algebra.LogEmbedding6D_get_bounding_box(self, *args)
9332 
9333  def show(self, *args):
9334  r"""show(LogEmbedding6D self, _ostream out=std::cout)"""
9335  return _IMP_algebra.LogEmbedding6D_show(self, *args)
9336 
9337  def __str__(self):
9338  r"""__str__(LogEmbedding6D self) -> std::string"""
9339  return _IMP_algebra.LogEmbedding6D___str__(self)
9340 
9341  def __repr__(self):
9342  r"""__repr__(LogEmbedding6D self) -> std::string"""
9343  return _IMP_algebra.LogEmbedding6D___repr__(self)
9344 
9345  def __cmp__(self, arg2):
9346  r"""__cmp__(LogEmbedding6D self, LogEmbedding6D arg2) -> int"""
9347  return _IMP_algebra.LogEmbedding6D___cmp__(self, arg2)
9348 
9349  def __eq__(self, arg2):
9350  r"""__eq__(LogEmbedding6D self, LogEmbedding6D arg2) -> bool"""
9351  return _IMP_algebra.LogEmbedding6D___eq__(self, arg2)
9352 
9353  def _get_as_binary(self):
9354  r"""_get_as_binary(LogEmbedding6D self) -> PyObject *"""
9355  return _IMP_algebra.LogEmbedding6D__get_as_binary(self)
9356 
9357  def _set_from_binary(self, p):
9358  r"""_set_from_binary(LogEmbedding6D self, PyObject * p)"""
9359  return _IMP_algebra.LogEmbedding6D__set_from_binary(self, p)
9360 
9361  def __getstate__(self):
9362  p = self._get_as_binary()
9363  if len(self.__dict__) > 1:
9364  d = self.__dict__.copy()
9365  del d['this']
9366  p = (d, p)
9367  return p
9368 
9369  def __setstate__(self, p):
9370  if not hasattr(self, 'this'):
9371  self.__init__()
9372  if isinstance(p, tuple):
9373  d, p = p
9374  self.__dict__.update(d)
9375  return self._set_from_binary(p)
9376 
9377  __swig_destroy__ = _IMP_algebra.delete_LogEmbedding6D
9378 
9379 # Register LogEmbedding6D in _IMP_algebra:
9380 _IMP_algebra.LogEmbedding6D_swigregister(LogEmbedding6D)
9381 class SpherePatch3D(IMP._GeometricPrimitive3D):
9382  r"""Proxy of C++ IMP::algebra::SpherePatch3D class."""
9383 
9384  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9385 
9386  def __init__(self, *args):
9387  r"""
9388  __init__(SpherePatch3D self) -> SpherePatch3D
9389  __init__(SpherePatch3D self, Sphere3D sph, Plane3D crossing_plane) -> SpherePatch3D
9390  """
9391  _IMP_algebra.SpherePatch3D_swiginit(self, _IMP_algebra.new_SpherePatch3D(*args))
9392 
9393  def get_contains(self, p):
9394  r"""get_contains(SpherePatch3D self, Vector3D p) -> bool"""
9395  return _IMP_algebra.SpherePatch3D_get_contains(self, p)
9396 
9397  def get_plane(self):
9398  r"""get_plane(SpherePatch3D self) -> Plane3D"""
9399  return _IMP_algebra.SpherePatch3D_get_plane(self)
9400 
9401  def get_sphere(self):
9402  r"""get_sphere(SpherePatch3D self) -> Sphere3D"""
9403  return _IMP_algebra.SpherePatch3D_get_sphere(self)
9404 
9405  def show(self, *args):
9406  r"""show(SpherePatch3D self, _ostream out=std::cout)"""
9407  return _IMP_algebra.SpherePatch3D_show(self, *args)
9408 
9409  def get_boundary_point(self):
9410  r"""get_boundary_point(SpherePatch3D self) -> Vector3D"""
9411  return _IMP_algebra.SpherePatch3D_get_boundary_point(self)
9412 
9413  def __str__(self):
9414  r"""__str__(SpherePatch3D self) -> std::string"""
9415  return _IMP_algebra.SpherePatch3D___str__(self)
9416 
9417  def __repr__(self):
9418  r"""__repr__(SpherePatch3D self) -> std::string"""
9419  return _IMP_algebra.SpherePatch3D___repr__(self)
9420 
9421  def _get_as_binary(self):
9422  r"""_get_as_binary(SpherePatch3D self) -> PyObject *"""
9423  return _IMP_algebra.SpherePatch3D__get_as_binary(self)
9424 
9425  def _set_from_binary(self, p):
9426  r"""_set_from_binary(SpherePatch3D self, PyObject * p)"""
9427  return _IMP_algebra.SpherePatch3D__set_from_binary(self, p)
9428 
9429  def __getstate__(self):
9430  p = self._get_as_binary()
9431  if len(self.__dict__) > 1:
9432  d = self.__dict__.copy()
9433  del d['this']
9434  p = (d, p)
9435  return p
9436 
9437  def __setstate__(self, p):
9438  if not hasattr(self, 'this'):
9439  self.__init__()
9440  if isinstance(p, tuple):
9441  d, p = p
9442  self.__dict__.update(d)
9443  return self._set_from_binary(p)
9444 
9445  __swig_destroy__ = _IMP_algebra.delete_SpherePatch3D
9446 
9447 # Register SpherePatch3D in _IMP_algebra:
9448 _IMP_algebra.SpherePatch3D_swigregister(SpherePatch3D)
9449 
9450 def get_area(*args):
9451  r"""
9452  get_area(Plane3D g) -> double
9453  get_area(SpherePatch3D g) -> double
9454  """
9455  return _IMP_algebra.get_area(*args)
9456 
9457 def get_sphere_patch_3d_geometry(g):
9458  r"""get_sphere_patch_3d_geometry(SpherePatch3D g) -> SpherePatch3D"""
9459  return _IMP_algebra.get_sphere_patch_3d_geometry(g)
9460 class Cone3D(IMP._GeometricPrimitive3D):
9461  r"""Proxy of C++ IMP::algebra::Cone3D class."""
9462 
9463  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9464 
9465  def __init__(self, *args):
9466  r"""
9467  __init__(Cone3D self) -> Cone3D
9468  __init__(Cone3D self, Segment3D s, double radius) -> Cone3D
9469  """
9470  _IMP_algebra.Cone3D_swiginit(self, _IMP_algebra.new_Cone3D(*args))
9471 
9472  def get_tip(self):
9473  r"""get_tip(Cone3D self) -> Vector3D"""
9474  return _IMP_algebra.Cone3D_get_tip(self)
9475 
9476  def get_direction(self):
9477  r"""get_direction(Cone3D self) -> Vector3D"""
9478  return _IMP_algebra.Cone3D_get_direction(self)
9479 
9480  def get_height(self):
9481  r"""get_height(Cone3D self) -> double"""
9482  return _IMP_algebra.Cone3D_get_height(self)
9483 
9484  def get_angle(self):
9485  r"""get_angle(Cone3D self) -> double"""
9486  return _IMP_algebra.Cone3D_get_angle(self)
9487 
9488  def get_radius(self):
9489  r"""get_radius(Cone3D self) -> double"""
9490  return _IMP_algebra.Cone3D_get_radius(self)
9491 
9492  def get_contains(self, v):
9493  r"""get_contains(Cone3D self, Vector3D v) -> bool"""
9494  return _IMP_algebra.Cone3D_get_contains(self, v)
9495 
9496  def get_base_plane(self):
9497  r"""get_base_plane(Cone3D self) -> Plane3D"""
9498  return _IMP_algebra.Cone3D_get_base_plane(self)
9499 
9500  def show(self, *args):
9501  r"""show(Cone3D self, _ostream out=std::cout)"""
9502  return _IMP_algebra.Cone3D_show(self, *args)
9503 
9504  def __str__(self):
9505  r"""__str__(Cone3D self) -> std::string"""
9506  return _IMP_algebra.Cone3D___str__(self)
9507 
9508  def __repr__(self):
9509  r"""__repr__(Cone3D self) -> std::string"""
9510  return _IMP_algebra.Cone3D___repr__(self)
9511 
9512  def _get_as_binary(self):
9513  r"""_get_as_binary(Cone3D self) -> PyObject *"""
9514  return _IMP_algebra.Cone3D__get_as_binary(self)
9515 
9516  def _set_from_binary(self, p):
9517  r"""_set_from_binary(Cone3D self, PyObject * p)"""
9518  return _IMP_algebra.Cone3D__set_from_binary(self, p)
9519 
9520  def __getstate__(self):
9521  p = self._get_as_binary()
9522  if len(self.__dict__) > 1:
9523  d = self.__dict__.copy()
9524  del d['this']
9525  p = (d, p)
9526  return p
9527 
9528  def __setstate__(self, p):
9529  if not hasattr(self, 'this'):
9530  self.__init__()
9531  if isinstance(p, tuple):
9532  d, p = p
9533  self.__dict__.update(d)
9534  return self._set_from_binary(p)
9535 
9536  __swig_destroy__ = _IMP_algebra.delete_Cone3D
9537 
9538 # Register Cone3D in _IMP_algebra:
9539 _IMP_algebra.Cone3D_swigregister(Cone3D)
9540 
9541 def get_surface_area(*args):
9542  r"""
9543  get_surface_area(BoundingBox3D g) -> double
9544  get_surface_area(Sphere3D g) -> double
9545  get_surface_area(Cylinder3D g) -> double
9546  get_surface_area(Ellipsoid3D g) -> double
9547  get_surface_area(Cone3D g) -> double
9548  """
9549  return _IMP_algebra.get_surface_area(*args)
9550 
9551 def get_volume(*args):
9552  r"""
9553  get_volume(BoundingBox3D g) -> double
9554  get_volume(Sphere3D g) -> double
9555  get_volume(Cylinder3D g) -> double
9556  get_volume(Ellipsoid3D g) -> double
9557  get_volume(Cone3D g) -> double
9558  """
9559  return _IMP_algebra.get_volume(*args)
9560 
9561 def get_cone_3d_geometry(g):
9562  r"""get_cone_3d_geometry(Cone3D g) -> Cone3D"""
9563  return _IMP_algebra.get_cone_3d_geometry(g)
9564 
9565 def write_pts(vs, out):
9566  r"""write_pts(IMP::algebra::Vector3Ds const & vs, TextOutput out)"""
9567  return _IMP_algebra.write_pts(vs, out)
9568 
9569 def read_pts(input):
9570  r"""read_pts(TextInput input) -> IMP::algebra::Vector3Ds"""
9571  return _IMP_algebra.read_pts(input)
9572 
9573 def write_spheres(vs, out):
9574  r"""write_spheres(IMP::algebra::Sphere3Ds const & vs, TextOutput out)"""
9575  return _IMP_algebra.write_spheres(vs, out)
9576 
9577 def read_spheres(input):
9578  r"""read_spheres(TextInput input) -> IMP::algebra::Sphere3Ds"""
9579  return _IMP_algebra.read_spheres(input)
9580 
9582  r"""get_random_vector_on_unit_sphere() -> Vector3D"""
9583  return _IMP_algebra.get_random_vector_on_unit_sphere()
9584 
9585 def get_grid_surface_cover(cyl, number_of_cycles, number_of_points_on_cycle):
9586  r"""get_grid_surface_cover(Cylinder3D cyl, int number_of_cycles, int number_of_points_on_cycle) -> IMP::algebra::Vector3Ds"""
9587  return _IMP_algebra.get_grid_surface_cover(cyl, number_of_cycles, number_of_points_on_cycle)
9588 
9589 def get_random_chain(*args):
9590  r"""get_random_chain(unsigned int n, double r, Vector3D start=IMP::Vector3D(0, 0, 0), IMP::algebra::Sphere3Ds const & obstacles=IMP::algebra::Sphere3Ds()) -> IMP::algebra::Vector3Ds"""
9591  return _IMP_algebra.get_random_chain(*args)
9592 
9593 def reversed_read(dest, size, nitems, f, reverse):
9594  r"""reversed_read(void * dest, size_t size, size_t nitems, std::ifstream & f, bool reverse)"""
9595  return _IMP_algebra.reversed_read(dest, size, nitems, f, reverse)
9596 
9597 def reversed_write(src, size, nitems, f, reverse=False):
9598  r"""reversed_write(void const * src, size_t size, size_t nitems, std::ofstream & f, bool reverse=False)"""
9599  return _IMP_algebra.reversed_write(src, size, nitems, f, reverse)
9600 
9601 def get_is_big_endian():
9602  r"""get_is_big_endian() -> bool"""
9603  return _IMP_algebra.get_is_big_endian()
9604 
9605 def get_is_little_endian():
9606  r"""get_is_little_endian() -> bool"""
9607  return _IMP_algebra.get_is_little_endian()
9608 
9609 def get_shortest_segment(*args):
9610  r"""
9611  get_shortest_segment(Segment3D s, Vector3D p) -> Segment3D
9612  get_shortest_segment(Segment3D sa, Segment3D sb) -> Segment3D
9613  """
9614  return _IMP_algebra.get_shortest_segment(*args)
9615 class DynamicNearestNeighbor3D(IMP.Object):
9616  r"""Proxy of C++ IMP::algebra::DynamicNearestNeighbor3D class."""
9617 
9618  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9619 
9620  def __init__(self, vs, query_estimate=1):
9621  r"""__init__(DynamicNearestNeighbor3D self, IMP::algebra::Vector3Ds const & vs, double query_estimate=1) -> DynamicNearestNeighbor3D"""
9622  _IMP_algebra.DynamicNearestNeighbor3D_swiginit(self, _IMP_algebra.new_DynamicNearestNeighbor3D(vs, query_estimate))
9623 
9624  def get_in_ball(self, id, distance):
9625  r"""get_in_ball(DynamicNearestNeighbor3D self, int id, double distance) -> IMP::Ints"""
9626  return _IMP_algebra.DynamicNearestNeighbor3D_get_in_ball(self, id, distance)
9627 
9628  def set_coordinates(self, id, nc):
9629  r"""set_coordinates(DynamicNearestNeighbor3D self, int id, Vector3D nc)"""
9630  return _IMP_algebra.DynamicNearestNeighbor3D_set_coordinates(self, id, nc)
9631 
9632  def get_version_info(self):
9633  r"""get_version_info(DynamicNearestNeighbor3D self) -> VersionInfo"""
9634  return _IMP_algebra.DynamicNearestNeighbor3D_get_version_info(self)
9635  __swig_destroy__ = _IMP_algebra.delete_DynamicNearestNeighbor3D
9636 
9637  def __str__(self):
9638  r"""__str__(DynamicNearestNeighbor3D self) -> std::string"""
9639  return _IMP_algebra.DynamicNearestNeighbor3D___str__(self)
9640 
9641  def __repr__(self):
9642  r"""__repr__(DynamicNearestNeighbor3D self) -> std::string"""
9643  return _IMP_algebra.DynamicNearestNeighbor3D___repr__(self)
9644 
9645  @staticmethod
9646  def get_from(o):
9647  return _object_cast_to_DynamicNearestNeighbor3D(o)
9648 
9649 
9650 # Register DynamicNearestNeighbor3D in _IMP_algebra:
9651 _IMP_algebra.DynamicNearestNeighbor3D_swigregister(DynamicNearestNeighbor3D)
9652 class VectorKDMetric(IMP.Object):
9653  r"""Proxy of C++ IMP::algebra::VectorKDMetric class."""
9654 
9655  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9656 
9657  def __init__(self, name):
9658  r"""__init__(VectorKDMetric self, std::string name) -> VectorKDMetric"""
9659  if self.__class__ == VectorKDMetric:
9660  _self = None
9661  else:
9662  _self = self
9663  _IMP_algebra.VectorKDMetric_swiginit(self, _IMP_algebra.new_VectorKDMetric(_self, name))
9664 
9665  if self.__class__ != VectorKDMetric:
9666  _director_objects.register(self)
9667 
9668 
9669 
9670 
9671  def get_distance(self, a, b):
9672  r"""get_distance(VectorKDMetric self, VectorKD a, VectorKD b) -> double"""
9673  return _IMP_algebra.VectorKDMetric_get_distance(self, a, b)
9674 
9675  def get_centroid(self, vs):
9676  r"""get_centroid(VectorKDMetric self, IMP::algebra::VectorKDs const & vs) -> VectorKD"""
9677  return _IMP_algebra.VectorKDMetric_get_centroid(self, vs)
9678 
9679  def __str__(self):
9680  r"""__str__(VectorKDMetric self) -> std::string"""
9681  return _IMP_algebra.VectorKDMetric___str__(self)
9682 
9683  def __repr__(self):
9684  r"""__repr__(VectorKDMetric self) -> std::string"""
9685  return _IMP_algebra.VectorKDMetric___repr__(self)
9686 
9687  @staticmethod
9688  def get_from(o):
9689  return _object_cast_to_VectorKDMetric(o)
9690 
9691 
9692  def do_show(self, out):
9693  pass
9694 
9695  @staticmethod
9696  def get_from(o):
9697  return _object_cast_to_VectorKDMetric(o)
9698 
9699  __swig_destroy__ = _IMP_algebra.delete_VectorKDMetric
9700  def __disown__(self):
9701  self.this.disown()
9702  _IMP_algebra.disown_VectorKDMetric(self)
9703  return weakref.proxy(self)
9704 
9705  def do_destroy(self):
9706  r"""do_destroy(VectorKDMetric self)"""
9707  return _IMP_algebra.VectorKDMetric_do_destroy(self)
9708 
9709 # Register VectorKDMetric in _IMP_algebra:
9710 _IMP_algebra.VectorKDMetric_swigregister(VectorKDMetric)
9711 class EuclideanVectorKDMetric(VectorKDMetric):
9712  r"""Proxy of C++ IMP::algebra::EuclideanVectorKDMetric class."""
9713 
9714  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9715 
9716  def __init__(self, *args):
9717  r"""__init__(EuclideanVectorKDMetric self, std::string name="EuclideanVectorKDMetric%1%") -> EuclideanVectorKDMetric"""
9718  _IMP_algebra.EuclideanVectorKDMetric_swiginit(self, _IMP_algebra.new_EuclideanVectorKDMetric(*args))
9719 
9720  def get_version_info(self):
9721  r"""get_version_info(EuclideanVectorKDMetric self) -> VersionInfo"""
9722  return _IMP_algebra.EuclideanVectorKDMetric_get_version_info(self)
9723  __swig_destroy__ = _IMP_algebra.delete_EuclideanVectorKDMetric
9724 
9725  def __str__(self):
9726  r"""__str__(EuclideanVectorKDMetric self) -> std::string"""
9727  return _IMP_algebra.EuclideanVectorKDMetric___str__(self)
9728 
9729  def __repr__(self):
9730  r"""__repr__(EuclideanVectorKDMetric self) -> std::string"""
9731  return _IMP_algebra.EuclideanVectorKDMetric___repr__(self)
9732 
9733  @staticmethod
9734  def get_from(o):
9735  return _object_cast_to_EuclideanVectorKDMetric(o)
9736 
9737 
9738  def _get_as_binary(self):
9739  r"""_get_as_binary(EuclideanVectorKDMetric self) -> PyObject *"""
9740  return _IMP_algebra.EuclideanVectorKDMetric__get_as_binary(self)
9741 
9742  def _set_from_binary(self, p):
9743  r"""_set_from_binary(EuclideanVectorKDMetric self, PyObject * p)"""
9744  return _IMP_algebra.EuclideanVectorKDMetric__set_from_binary(self, p)
9745 
9746  def __getstate__(self):
9747  p = self._get_as_binary()
9748  if len(self.__dict__) > 1:
9749  d = self.__dict__.copy()
9750  del d['this']
9751  p = (d, p)
9752  return p
9753 
9754  def __setstate__(self, p):
9755  if not hasattr(self, 'this'):
9756  self.__init__()
9757  if isinstance(p, tuple):
9758  d, p = p
9759  self.__dict__.update(d)
9760  return self._set_from_binary(p)
9761 
9762 
9763 # Register EuclideanVectorKDMetric in _IMP_algebra:
9764 _IMP_algebra.EuclideanVectorKDMetric_swigregister(EuclideanVectorKDMetric)
9765 class MaxVectorKDMetric(VectorKDMetric):
9766  r"""Proxy of C++ IMP::algebra::MaxVectorKDMetric class."""
9767 
9768  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9769 
9770  def __init__(self, *args):
9771  r"""__init__(MaxVectorKDMetric self, std::string name="MaxVectorKDMetric%1%") -> MaxVectorKDMetric"""
9772  _IMP_algebra.MaxVectorKDMetric_swiginit(self, _IMP_algebra.new_MaxVectorKDMetric(*args))
9773 
9774  def get_version_info(self):
9775  r"""get_version_info(MaxVectorKDMetric self) -> VersionInfo"""
9776  return _IMP_algebra.MaxVectorKDMetric_get_version_info(self)
9777  __swig_destroy__ = _IMP_algebra.delete_MaxVectorKDMetric
9778 
9779  def __str__(self):
9780  r"""__str__(MaxVectorKDMetric self) -> std::string"""
9781  return _IMP_algebra.MaxVectorKDMetric___str__(self)
9782 
9783  def __repr__(self):
9784  r"""__repr__(MaxVectorKDMetric self) -> std::string"""
9785  return _IMP_algebra.MaxVectorKDMetric___repr__(self)
9786 
9787  @staticmethod
9788  def get_from(o):
9789  return _object_cast_to_MaxVectorKDMetric(o)
9790 
9791 
9792  def _get_as_binary(self):
9793  r"""_get_as_binary(MaxVectorKDMetric self) -> PyObject *"""
9794  return _IMP_algebra.MaxVectorKDMetric__get_as_binary(self)
9795 
9796  def _set_from_binary(self, p):
9797  r"""_set_from_binary(MaxVectorKDMetric self, PyObject * p)"""
9798  return _IMP_algebra.MaxVectorKDMetric__set_from_binary(self, p)
9799 
9800  def __getstate__(self):
9801  p = self._get_as_binary()
9802  if len(self.__dict__) > 1:
9803  d = self.__dict__.copy()
9804  del d['this']
9805  p = (d, p)
9806  return p
9807 
9808  def __setstate__(self, p):
9809  if not hasattr(self, 'this'):
9810  self.__init__()
9811  if isinstance(p, tuple):
9812  d, p = p
9813  self.__dict__.update(d)
9814  return self._set_from_binary(p)
9815 
9816 
9817 # Register MaxVectorKDMetric in _IMP_algebra:
9818 _IMP_algebra.MaxVectorKDMetric_swigregister(MaxVectorKDMetric)
9819 class Gaussian3D(IMP._GeometricPrimitive3D):
9820  r"""Proxy of C++ IMP::algebra::Gaussian3D class."""
9821 
9822  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9823 
9824  def __init__(self, *args):
9825  r"""
9826  __init__(Gaussian3D self) -> Gaussian3D
9827  __init__(Gaussian3D self, ReferenceFrame3D tr, Vector3D variances) -> Gaussian3D
9828  """
9829  _IMP_algebra.Gaussian3D_swiginit(self, _IMP_algebra.new_Gaussian3D(*args))
9830 
9831  def get_reference_frame(self):
9832  r"""get_reference_frame(Gaussian3D self) -> ReferenceFrame3D"""
9833  return _IMP_algebra.Gaussian3D_get_reference_frame(self)
9834 
9835  def get_variances(self):
9836  r"""get_variances(Gaussian3D self) -> Vector3D"""
9837  return _IMP_algebra.Gaussian3D_get_variances(self)
9838 
9839  def get_center(self):
9840  r"""get_center(Gaussian3D self) -> Vector3D"""
9841  return _IMP_algebra.Gaussian3D_get_center(self)
9842 
9843  def show(self, *args):
9844  r"""show(Gaussian3D self, _ostream out=std::cout)"""
9845  return _IMP_algebra.Gaussian3D_show(self, *args)
9846 
9847  def __str__(self):
9848  r"""__str__(Gaussian3D self) -> std::string"""
9849  return _IMP_algebra.Gaussian3D___str__(self)
9850 
9851  def __repr__(self):
9852  r"""__repr__(Gaussian3D self) -> std::string"""
9853  return _IMP_algebra.Gaussian3D___repr__(self)
9854 
9855  def _get_as_binary(self):
9856  r"""_get_as_binary(Gaussian3D self) -> PyObject *"""
9857  return _IMP_algebra.Gaussian3D__get_as_binary(self)
9858 
9859  def _set_from_binary(self, p):
9860  r"""_set_from_binary(Gaussian3D self, PyObject * p)"""
9861  return _IMP_algebra.Gaussian3D__set_from_binary(self, p)
9862 
9863  def __getstate__(self):
9864  p = self._get_as_binary()
9865  if len(self.__dict__) > 1:
9866  d = self.__dict__.copy()
9867  del d['this']
9868  p = (d, p)
9869  return p
9870 
9871  def __setstate__(self, p):
9872  if not hasattr(self, 'this'):
9873  self.__init__()
9874  if isinstance(p, tuple):
9875  d, p = p
9876  self.__dict__.update(d)
9877  return self._set_from_binary(p)
9878 
9879  __swig_destroy__ = _IMP_algebra.delete_Gaussian3D
9880 
9881 # Register Gaussian3D in _IMP_algebra:
9882 _IMP_algebra.Gaussian3D_swigregister(Gaussian3D)
9883 
9884 def get_covariance(g):
9885  r"""get_covariance(Gaussian3D g) -> Eigen::Matrix3d"""
9886  return _IMP_algebra.get_covariance(g)
9887 
9888 def get_gaussian_from_covariance(covariance, center):
9889  r"""get_gaussian_from_covariance(Eigen::Matrix3d const & covariance, Vector3D center) -> Gaussian3D"""
9890  return _IMP_algebra.get_gaussian_from_covariance(covariance, center)
9891 
9892 def get_rasterized(gmm, weights, cell_width, bb):
9893  r"""get_rasterized(IMP::algebra::Gaussian3Ds const & gmm, IMP::Floats const & weights, double cell_width, BoundingBox3D bb) -> DenseDoubleGrid3D"""
9894  return _IMP_algebra.get_rasterized(gmm, weights, cell_width, bb)
9895 
9896 def get_rasterized_fast(gmm, weights, cell_width, bb, factor=2.5):
9897  r"""get_rasterized_fast(IMP::algebra::Gaussian3Ds const & gmm, IMP::Floats const & weights, double cell_width, BoundingBox3D bb, double factor=2.5) -> DenseDoubleGrid3D"""
9898  return _IMP_algebra.get_rasterized_fast(gmm, weights, cell_width, bb, factor)
9899 
9900 def _pass_matrix_xf(m):
9901  r"""_pass_matrix_xf(Eigen::MatrixXf const & m) -> Eigen::MatrixXf"""
9902  return _IMP_algebra._pass_matrix_xf(m)
9903 
9904 def _pass_matrix_xd(m):
9905  r"""_pass_matrix_xd(Eigen::MatrixXd const & m) -> Eigen::MatrixXd"""
9906  return _IMP_algebra._pass_matrix_xd(m)
9907 
9908 def _pass_matrix_3d(m):
9909  r"""_pass_matrix_3d(Eigen::Matrix3d const & m) -> Eigen::Matrix3d"""
9910  return _IMP_algebra._pass_matrix_3d(m)
9911 
9912 def _pass_array_xd(m):
9913  r"""_pass_array_xd(Eigen::ArrayXXd const & m) -> Eigen::ArrayXXd"""
9914  return _IMP_algebra._pass_array_xd(m)
9915 
9916 def _pass_vector_xd(m):
9917  r"""_pass_vector_xd(Eigen::VectorXd const & m) -> Eigen::VectorXd"""
9918  return _IMP_algebra._pass_vector_xd(m)
9919 class NearestNeighbor1D(IMP.Object):
9920  r"""Proxy of C++ IMP::algebra::NearestNeighborD< 1 > class."""
9921 
9922  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9923 
9924  def __init__(self, vs, epsilon=0):
9925  r"""__init__(NearestNeighbor1D self, IMP::Vector< IMP::algebra::VectorD< 1 > > const & vs, double epsilon=0) -> NearestNeighbor1D"""
9926  _IMP_algebra.NearestNeighbor1D_swiginit(self, _IMP_algebra.new_NearestNeighbor1D(vs, epsilon))
9927 
9928  def set_query_log(self, fname):
9929  r"""set_query_log(NearestNeighbor1D self, std::string fname)"""
9930  return _IMP_algebra.NearestNeighbor1D_set_query_log(self, fname)
9931 
9932  def get_nearest_neighbor(self, *args):
9933  r"""
9934  get_nearest_neighbor(NearestNeighbor1D self, Vector1D q) -> unsigned int
9935  get_nearest_neighbor(NearestNeighbor1D self, unsigned int i) -> unsigned int
9936  """
9937  return _IMP_algebra.NearestNeighbor1D_get_nearest_neighbor(self, *args)
9938 
9939  def get_nearest_neighbors(self, *args):
9940  r"""
9941  get_nearest_neighbors(NearestNeighbor1D self, unsigned int i, unsigned int k) -> IMP::Ints
9942  get_nearest_neighbors(NearestNeighbor1D self, Vector1D v, unsigned int k) -> IMP::Ints
9943  """
9944  return _IMP_algebra.NearestNeighbor1D_get_nearest_neighbors(self, *args)
9945 
9946  def get_in_ball(self, *args):
9947  r"""
9948  get_in_ball(NearestNeighbor1D self, unsigned int i, double distance) -> IMP::Ints
9949  get_in_ball(NearestNeighbor1D self, Vector1D pt, double distance) -> IMP::Ints
9950  """
9951  return _IMP_algebra.NearestNeighbor1D_get_in_ball(self, *args)
9952 
9953  def get_version_info(self):
9954  r"""get_version_info(NearestNeighbor1D self) -> VersionInfo"""
9955  return _IMP_algebra.NearestNeighbor1D_get_version_info(self)
9956  __swig_destroy__ = _IMP_algebra.delete_NearestNeighbor1D
9957 
9958  def __str__(self):
9959  r"""__str__(NearestNeighbor1D self) -> std::string"""
9960  return _IMP_algebra.NearestNeighbor1D___str__(self)
9961 
9962  def __repr__(self):
9963  r"""__repr__(NearestNeighbor1D self) -> std::string"""
9964  return _IMP_algebra.NearestNeighbor1D___repr__(self)
9965 
9966  @staticmethod
9967  def get_from(o):
9968  return _object_cast_to_NearestNeighborD(o)
9969 
9970 
9971 # Register NearestNeighbor1D in _IMP_algebra:
9972 _IMP_algebra.NearestNeighbor1D_swigregister(NearestNeighbor1D)
9973 class NearestNeighbor2D(IMP.Object):
9974  r"""Proxy of C++ IMP::algebra::NearestNeighborD< 2 > class."""
9975 
9976  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9977 
9978  def __init__(self, vs, epsilon=0):
9979  r"""__init__(NearestNeighbor2D self, IMP::Vector< IMP::algebra::VectorD< 2 > > const & vs, double epsilon=0) -> NearestNeighbor2D"""
9980  _IMP_algebra.NearestNeighbor2D_swiginit(self, _IMP_algebra.new_NearestNeighbor2D(vs, epsilon))
9981 
9982  def set_query_log(self, fname):
9983  r"""set_query_log(NearestNeighbor2D self, std::string fname)"""
9984  return _IMP_algebra.NearestNeighbor2D_set_query_log(self, fname)
9985 
9986  def get_nearest_neighbor(self, *args):
9987  r"""
9988  get_nearest_neighbor(NearestNeighbor2D self, Vector2D q) -> unsigned int
9989  get_nearest_neighbor(NearestNeighbor2D self, unsigned int i) -> unsigned int
9990  """
9991  return _IMP_algebra.NearestNeighbor2D_get_nearest_neighbor(self, *args)
9992 
9993  def get_nearest_neighbors(self, *args):
9994  r"""
9995  get_nearest_neighbors(NearestNeighbor2D self, unsigned int i, unsigned int k) -> IMP::Ints
9996  get_nearest_neighbors(NearestNeighbor2D self, Vector2D v, unsigned int k) -> IMP::Ints
9997  """
9998  return _IMP_algebra.NearestNeighbor2D_get_nearest_neighbors(self, *args)
9999 
10000  def get_in_ball(self, *args):
10001  r"""
10002  get_in_ball(NearestNeighbor2D self, unsigned int i, double distance) -> IMP::Ints
10003  get_in_ball(NearestNeighbor2D self, Vector2D pt, double distance) -> IMP::Ints
10004  """
10005  return _IMP_algebra.NearestNeighbor2D_get_in_ball(self, *args)
10006 
10007  def get_version_info(self):
10008  r"""get_version_info(NearestNeighbor2D self) -> VersionInfo"""
10009  return _IMP_algebra.NearestNeighbor2D_get_version_info(self)
10010  __swig_destroy__ = _IMP_algebra.delete_NearestNeighbor2D
10011 
10012  def __str__(self):
10013  r"""__str__(NearestNeighbor2D self) -> std::string"""
10014  return _IMP_algebra.NearestNeighbor2D___str__(self)
10015 
10016  def __repr__(self):
10017  r"""__repr__(NearestNeighbor2D self) -> std::string"""
10018  return _IMP_algebra.NearestNeighbor2D___repr__(self)
10019 
10020  @staticmethod
10021  def get_from(o):
10022  return _object_cast_to_NearestNeighborD(o)
10023 
10024 
10025 # Register NearestNeighbor2D in _IMP_algebra:
10026 _IMP_algebra.NearestNeighbor2D_swigregister(NearestNeighbor2D)
10027 class NearestNeighbor3D(IMP.Object):
10028  r"""Proxy of C++ IMP::algebra::NearestNeighborD< 3 > class."""
10029 
10030  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10031 
10032  def __init__(self, vs, epsilon=0):
10033  r"""__init__(NearestNeighbor3D self, IMP::Vector< IMP::algebra::VectorD< 3 > > const & vs, double epsilon=0) -> NearestNeighbor3D"""
10034  _IMP_algebra.NearestNeighbor3D_swiginit(self, _IMP_algebra.new_NearestNeighbor3D(vs, epsilon))
10035 
10036  def set_query_log(self, fname):
10037  r"""set_query_log(NearestNeighbor3D self, std::string fname)"""
10038  return _IMP_algebra.NearestNeighbor3D_set_query_log(self, fname)
10039 
10040  def get_nearest_neighbor(self, *args):
10041  r"""
10042  get_nearest_neighbor(NearestNeighbor3D self, Vector3D q) -> unsigned int
10043  get_nearest_neighbor(NearestNeighbor3D self, unsigned int i) -> unsigned int
10044  """
10045  return _IMP_algebra.NearestNeighbor3D_get_nearest_neighbor(self, *args)
10046 
10047  def get_nearest_neighbors(self, *args):
10048  r"""
10049  get_nearest_neighbors(NearestNeighbor3D self, unsigned int i, unsigned int k) -> IMP::Ints
10050  get_nearest_neighbors(NearestNeighbor3D self, Vector3D v, unsigned int k) -> IMP::Ints
10051  """
10052  return _IMP_algebra.NearestNeighbor3D_get_nearest_neighbors(self, *args)
10053 
10054  def get_in_ball(self, *args):
10055  r"""
10056  get_in_ball(NearestNeighbor3D self, unsigned int i, double distance) -> IMP::Ints
10057  get_in_ball(NearestNeighbor3D self, Vector3D pt, double distance) -> IMP::Ints
10058  """
10059  return _IMP_algebra.NearestNeighbor3D_get_in_ball(self, *args)
10060 
10061  def get_version_info(self):
10062  r"""get_version_info(NearestNeighbor3D self) -> VersionInfo"""
10063  return _IMP_algebra.NearestNeighbor3D_get_version_info(self)
10064  __swig_destroy__ = _IMP_algebra.delete_NearestNeighbor3D
10065 
10066  def __str__(self):
10067  r"""__str__(NearestNeighbor3D self) -> std::string"""
10068  return _IMP_algebra.NearestNeighbor3D___str__(self)
10069 
10070  def __repr__(self):
10071  r"""__repr__(NearestNeighbor3D self) -> std::string"""
10072  return _IMP_algebra.NearestNeighbor3D___repr__(self)
10073 
10074  @staticmethod
10075  def get_from(o):
10076  return _object_cast_to_NearestNeighborD(o)
10077 
10078 
10079 # Register NearestNeighbor3D in _IMP_algebra:
10080 _IMP_algebra.NearestNeighbor3D_swigregister(NearestNeighbor3D)
10081 class NearestNeighbor4D(IMP.Object):
10082  r"""Proxy of C++ IMP::algebra::NearestNeighborD< 4 > class."""
10083 
10084  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10085 
10086  def __init__(self, vs, epsilon=0):
10087  r"""__init__(NearestNeighbor4D self, IMP::Vector< IMP::algebra::VectorD< 4 > > const & vs, double epsilon=0) -> NearestNeighbor4D"""
10088  _IMP_algebra.NearestNeighbor4D_swiginit(self, _IMP_algebra.new_NearestNeighbor4D(vs, epsilon))
10089 
10090  def set_query_log(self, fname):
10091  r"""set_query_log(NearestNeighbor4D self, std::string fname)"""
10092  return _IMP_algebra.NearestNeighbor4D_set_query_log(self, fname)
10093 
10094  def get_nearest_neighbor(self, *args):
10095  r"""
10096  get_nearest_neighbor(NearestNeighbor4D self, Vector4D q) -> unsigned int
10097  get_nearest_neighbor(NearestNeighbor4D self, unsigned int i) -> unsigned int
10098  """
10099  return _IMP_algebra.NearestNeighbor4D_get_nearest_neighbor(self, *args)
10100 
10101  def get_nearest_neighbors(self, *args):
10102  r"""
10103  get_nearest_neighbors(NearestNeighbor4D self, unsigned int i, unsigned int k) -> IMP::Ints
10104  get_nearest_neighbors(NearestNeighbor4D self, Vector4D v, unsigned int k) -> IMP::Ints
10105  """
10106  return _IMP_algebra.NearestNeighbor4D_get_nearest_neighbors(self, *args)
10107 
10108  def get_in_ball(self, *args):
10109  r"""
10110  get_in_ball(NearestNeighbor4D self, unsigned int i, double distance) -> IMP::Ints
10111  get_in_ball(NearestNeighbor4D self, Vector4D pt, double distance) -> IMP::Ints
10112  """
10113  return _IMP_algebra.NearestNeighbor4D_get_in_ball(self, *args)
10114 
10115  def get_version_info(self):
10116  r"""get_version_info(NearestNeighbor4D self) -> VersionInfo"""
10117  return _IMP_algebra.NearestNeighbor4D_get_version_info(self)
10118  __swig_destroy__ = _IMP_algebra.delete_NearestNeighbor4D
10119 
10120  def __str__(self):
10121  r"""__str__(NearestNeighbor4D self) -> std::string"""
10122  return _IMP_algebra.NearestNeighbor4D___str__(self)
10123 
10124  def __repr__(self):
10125  r"""__repr__(NearestNeighbor4D self) -> std::string"""
10126  return _IMP_algebra.NearestNeighbor4D___repr__(self)
10127 
10128  @staticmethod
10129  def get_from(o):
10130  return _object_cast_to_NearestNeighborD(o)
10131 
10132 
10133 # Register NearestNeighbor4D in _IMP_algebra:
10134 _IMP_algebra.NearestNeighbor4D_swigregister(NearestNeighbor4D)
10135 class NearestNeighbor5D(IMP.Object):
10136  r"""Proxy of C++ IMP::algebra::NearestNeighborD< 5 > class."""
10137 
10138  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10139 
10140  def __init__(self, vs, epsilon=0):
10141  r"""__init__(NearestNeighbor5D self, IMP::Vector< IMP::algebra::VectorD< 5 > > const & vs, double epsilon=0) -> NearestNeighbor5D"""
10142  _IMP_algebra.NearestNeighbor5D_swiginit(self, _IMP_algebra.new_NearestNeighbor5D(vs, epsilon))
10143 
10144  def set_query_log(self, fname):
10145  r"""set_query_log(NearestNeighbor5D self, std::string fname)"""
10146  return _IMP_algebra.NearestNeighbor5D_set_query_log(self, fname)
10147 
10148  def get_nearest_neighbor(self, *args):
10149  r"""
10150  get_nearest_neighbor(NearestNeighbor5D self, Vector5D q) -> unsigned int
10151  get_nearest_neighbor(NearestNeighbor5D self, unsigned int i) -> unsigned int
10152  """
10153  return _IMP_algebra.NearestNeighbor5D_get_nearest_neighbor(self, *args)
10154 
10155  def get_nearest_neighbors(self, *args):
10156  r"""
10157  get_nearest_neighbors(NearestNeighbor5D self, unsigned int i, unsigned int k) -> IMP::Ints
10158  get_nearest_neighbors(NearestNeighbor5D self, Vector5D v, unsigned int k) -> IMP::Ints
10159  """
10160  return _IMP_algebra.NearestNeighbor5D_get_nearest_neighbors(self, *args)
10161 
10162  def get_in_ball(self, *args):
10163  r"""
10164  get_in_ball(NearestNeighbor5D self, unsigned int i, double distance) -> IMP::Ints
10165  get_in_ball(NearestNeighbor5D self, Vector5D pt, double distance) -> IMP::Ints
10166  """
10167  return _IMP_algebra.NearestNeighbor5D_get_in_ball(self, *args)
10168 
10169  def get_version_info(self):
10170  r"""get_version_info(NearestNeighbor5D self) -> VersionInfo"""
10171  return _IMP_algebra.NearestNeighbor5D_get_version_info(self)
10172  __swig_destroy__ = _IMP_algebra.delete_NearestNeighbor5D
10173 
10174  def __str__(self):
10175  r"""__str__(NearestNeighbor5D self) -> std::string"""
10176  return _IMP_algebra.NearestNeighbor5D___str__(self)
10177 
10178  def __repr__(self):
10179  r"""__repr__(NearestNeighbor5D self) -> std::string"""
10180  return _IMP_algebra.NearestNeighbor5D___repr__(self)
10181 
10182  @staticmethod
10183  def get_from(o):
10184  return _object_cast_to_NearestNeighborD(o)
10185 
10186 
10187 # Register NearestNeighbor5D in _IMP_algebra:
10188 _IMP_algebra.NearestNeighbor5D_swigregister(NearestNeighbor5D)
10189 class NearestNeighbor6D(IMP.Object):
10190  r"""Proxy of C++ IMP::algebra::NearestNeighborD< 6 > class."""
10191 
10192  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10193 
10194  def __init__(self, vs, epsilon=0):
10195  r"""__init__(NearestNeighbor6D self, IMP::Vector< IMP::algebra::VectorD< 6 > > const & vs, double epsilon=0) -> NearestNeighbor6D"""
10196  _IMP_algebra.NearestNeighbor6D_swiginit(self, _IMP_algebra.new_NearestNeighbor6D(vs, epsilon))
10197 
10198  def set_query_log(self, fname):
10199  r"""set_query_log(NearestNeighbor6D self, std::string fname)"""
10200  return _IMP_algebra.NearestNeighbor6D_set_query_log(self, fname)
10201 
10202  def get_nearest_neighbor(self, *args):
10203  r"""
10204  get_nearest_neighbor(NearestNeighbor6D self, Vector6D q) -> unsigned int
10205  get_nearest_neighbor(NearestNeighbor6D self, unsigned int i) -> unsigned int
10206  """
10207  return _IMP_algebra.NearestNeighbor6D_get_nearest_neighbor(self, *args)
10208 
10209  def get_nearest_neighbors(self, *args):
10210  r"""
10211  get_nearest_neighbors(NearestNeighbor6D self, unsigned int i, unsigned int k) -> IMP::Ints
10212  get_nearest_neighbors(NearestNeighbor6D self, Vector6D v, unsigned int k) -> IMP::Ints
10213  """
10214  return _IMP_algebra.NearestNeighbor6D_get_nearest_neighbors(self, *args)
10215 
10216  def get_in_ball(self, *args):
10217  r"""
10218  get_in_ball(NearestNeighbor6D self, unsigned int i, double distance) -> IMP::Ints
10219  get_in_ball(NearestNeighbor6D self, Vector6D pt, double distance) -> IMP::Ints
10220  """
10221  return _IMP_algebra.NearestNeighbor6D_get_in_ball(self, *args)
10222 
10223  def get_version_info(self):
10224  r"""get_version_info(NearestNeighbor6D self) -> VersionInfo"""
10225  return _IMP_algebra.NearestNeighbor6D_get_version_info(self)
10226  __swig_destroy__ = _IMP_algebra.delete_NearestNeighbor6D
10227 
10228  def __str__(self):
10229  r"""__str__(NearestNeighbor6D self) -> std::string"""
10230  return _IMP_algebra.NearestNeighbor6D___str__(self)
10231 
10232  def __repr__(self):
10233  r"""__repr__(NearestNeighbor6D self) -> std::string"""
10234  return _IMP_algebra.NearestNeighbor6D___repr__(self)
10235 
10236  @staticmethod
10237  def get_from(o):
10238  return _object_cast_to_NearestNeighborD(o)
10239 
10240 
10241 # Register NearestNeighbor6D in _IMP_algebra:
10242 _IMP_algebra.NearestNeighbor6D_swigregister(NearestNeighbor6D)
10243 class NearestNeighborKD(IMP.Object):
10244  r"""Proxy of C++ IMP::algebra::NearestNeighborD< -1 > class."""
10245 
10246  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10247 
10248  def __init__(self, vs, epsilon=0):
10249  r"""__init__(NearestNeighborKD self, IMP::Vector< IMP::algebra::VectorD< -1 > > const & vs, double epsilon=0) -> NearestNeighborKD"""
10250  _IMP_algebra.NearestNeighborKD_swiginit(self, _IMP_algebra.new_NearestNeighborKD(vs, epsilon))
10251 
10252  def set_query_log(self, fname):
10253  r"""set_query_log(NearestNeighborKD self, std::string fname)"""
10254  return _IMP_algebra.NearestNeighborKD_set_query_log(self, fname)
10255 
10256  def get_nearest_neighbor(self, *args):
10257  r"""
10258  get_nearest_neighbor(NearestNeighborKD self, VectorKD q) -> unsigned int
10259  get_nearest_neighbor(NearestNeighborKD self, unsigned int i) -> unsigned int
10260  """
10261  return _IMP_algebra.NearestNeighborKD_get_nearest_neighbor(self, *args)
10262 
10263  def get_nearest_neighbors(self, *args):
10264  r"""
10265  get_nearest_neighbors(NearestNeighborKD self, unsigned int i, unsigned int k) -> IMP::Ints
10266  get_nearest_neighbors(NearestNeighborKD self, VectorKD v, unsigned int k) -> IMP::Ints
10267  """
10268  return _IMP_algebra.NearestNeighborKD_get_nearest_neighbors(self, *args)
10269 
10270  def get_in_ball(self, *args):
10271  r"""
10272  get_in_ball(NearestNeighborKD self, unsigned int i, double distance) -> IMP::Ints
10273  get_in_ball(NearestNeighborKD self, VectorKD pt, double distance) -> IMP::Ints
10274  """
10275  return _IMP_algebra.NearestNeighborKD_get_in_ball(self, *args)
10276 
10277  def get_version_info(self):
10278  r"""get_version_info(NearestNeighborKD self) -> VersionInfo"""
10279  return _IMP_algebra.NearestNeighborKD_get_version_info(self)
10280  __swig_destroy__ = _IMP_algebra.delete_NearestNeighborKD
10281 
10282  def __str__(self):
10283  r"""__str__(NearestNeighborKD self) -> std::string"""
10284  return _IMP_algebra.NearestNeighborKD___str__(self)
10285 
10286  def __repr__(self):
10287  r"""__repr__(NearestNeighborKD self) -> std::string"""
10288  return _IMP_algebra.NearestNeighborKD___repr__(self)
10289 
10290  @staticmethod
10291  def get_from(o):
10292  return _object_cast_to_NearestNeighborD(o)
10293 
10294 
10295 # Register NearestNeighborKD in _IMP_algebra:
10296 _IMP_algebra.NearestNeighborKD_swigregister(NearestNeighborKD)
10297 
10298 def get_transformation_aligning_pair(set_from, set_to):
10299  r"""get_transformation_aligning_pair(IMP::algebra::Vector2Ds const & set_from, IMP::algebra::Vector2Ds const & set_to) -> Transformation2D"""
10300  return _IMP_algebra.get_transformation_aligning_pair(set_from, set_to)
10301 class PrincipalComponentAnalysis1D(IMP._GeometricPrimitive1D):
10302  r"""Proxy of C++ IMP::algebra::PrincipalComponentAnalysisD< 1 > class."""
10303 
10304  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10305 
10306  def __init__(self, *args):
10307  r"""
10308  __init__(PrincipalComponentAnalysis1D self) -> PrincipalComponentAnalysis1D
10309  __init__(PrincipalComponentAnalysis1D self, IMP::Vector< IMP::algebra::VectorD< 1 > > const & pcs, Vector1D values, Vector1D centroid) -> PrincipalComponentAnalysis1D
10310  """
10311  _IMP_algebra.PrincipalComponentAnalysis1D_swiginit(self, _IMP_algebra.new_PrincipalComponentAnalysis1D(*args))
10312 
10313  def get_principal_components(self):
10314  r"""get_principal_components(PrincipalComponentAnalysis1D self) -> IMP::Vector< IMP::algebra::VectorD< 1 > >"""
10315  return _IMP_algebra.PrincipalComponentAnalysis1D_get_principal_components(self)
10316 
10317  def get_principal_component(self, i):
10318  r"""get_principal_component(PrincipalComponentAnalysis1D self, unsigned int i) -> Vector1D"""
10319  return _IMP_algebra.PrincipalComponentAnalysis1D_get_principal_component(self, i)
10320 
10321  def get_principal_values(self):
10322  r"""get_principal_values(PrincipalComponentAnalysis1D self) -> Vector1D"""
10323  return _IMP_algebra.PrincipalComponentAnalysis1D_get_principal_values(self)
10324 
10325  def get_principal_value(self, i):
10326  r"""get_principal_value(PrincipalComponentAnalysis1D self, unsigned int i) -> double"""
10327  return _IMP_algebra.PrincipalComponentAnalysis1D_get_principal_value(self, i)
10328 
10329  def get_centroid(self):
10330  r"""get_centroid(PrincipalComponentAnalysis1D self) -> Vector1D"""
10331  return _IMP_algebra.PrincipalComponentAnalysis1D_get_centroid(self)
10332 
10333  def set_centroid(self, cntr):
10334  r"""set_centroid(PrincipalComponentAnalysis1D self, Vector1D cntr)"""
10335  return _IMP_algebra.PrincipalComponentAnalysis1D_set_centroid(self, cntr)
10336 
10337  def show(self, *args):
10338  r"""show(PrincipalComponentAnalysis1D self, _ostream out=std::cout)"""
10339  return _IMP_algebra.PrincipalComponentAnalysis1D_show(self, *args)
10340 
10341  def __cmp__(self, o):
10342  r"""__cmp__(PrincipalComponentAnalysis1D self, PrincipalComponentAnalysis1D o) -> int"""
10343  return _IMP_algebra.PrincipalComponentAnalysis1D___cmp__(self, o)
10344 
10345  def __eq__(self, o):
10346  r"""__eq__(PrincipalComponentAnalysis1D self, PrincipalComponentAnalysis1D o) -> bool"""
10347  return _IMP_algebra.PrincipalComponentAnalysis1D___eq__(self, o)
10348 
10349  def __ne__(self, o):
10350  r"""__ne__(PrincipalComponentAnalysis1D self, PrincipalComponentAnalysis1D o) -> bool"""
10351  return _IMP_algebra.PrincipalComponentAnalysis1D___ne__(self, o)
10352 
10353  def __lt__(self, o):
10354  r"""__lt__(PrincipalComponentAnalysis1D self, PrincipalComponentAnalysis1D o) -> bool"""
10355  return _IMP_algebra.PrincipalComponentAnalysis1D___lt__(self, o)
10356 
10357  def __gt__(self, o):
10358  r"""__gt__(PrincipalComponentAnalysis1D self, PrincipalComponentAnalysis1D o) -> bool"""
10359  return _IMP_algebra.PrincipalComponentAnalysis1D___gt__(self, o)
10360 
10361  def __ge__(self, o):
10362  r"""__ge__(PrincipalComponentAnalysis1D self, PrincipalComponentAnalysis1D o) -> bool"""
10363  return _IMP_algebra.PrincipalComponentAnalysis1D___ge__(self, o)
10364 
10365  def __le__(self, o):
10366  r"""__le__(PrincipalComponentAnalysis1D self, PrincipalComponentAnalysis1D o) -> bool"""
10367  return _IMP_algebra.PrincipalComponentAnalysis1D___le__(self, o)
10368 
10369  def __str__(self):
10370  r"""__str__(PrincipalComponentAnalysis1D self) -> std::string"""
10371  return _IMP_algebra.PrincipalComponentAnalysis1D___str__(self)
10372 
10373  def __repr__(self):
10374  r"""__repr__(PrincipalComponentAnalysis1D self) -> std::string"""
10375  return _IMP_algebra.PrincipalComponentAnalysis1D___repr__(self)
10376 
10377  def _get_as_binary(self):
10378  r"""_get_as_binary(PrincipalComponentAnalysis1D self) -> PyObject *"""
10379  return _IMP_algebra.PrincipalComponentAnalysis1D__get_as_binary(self)
10380 
10381  def _set_from_binary(self, p):
10382  r"""_set_from_binary(PrincipalComponentAnalysis1D self, PyObject * p)"""
10383  return _IMP_algebra.PrincipalComponentAnalysis1D__set_from_binary(self, p)
10384 
10385  def __getstate__(self):
10386  p = self._get_as_binary()
10387  if len(self.__dict__) > 1:
10388  d = self.__dict__.copy()
10389  del d['this']
10390  p = (d, p)
10391  return p
10392 
10393  def __setstate__(self, p):
10394  if not hasattr(self, 'this'):
10395  self.__init__()
10396  if isinstance(p, tuple):
10397  d, p = p
10398  self.__dict__.update(d)
10399  return self._set_from_binary(p)
10400 
10401  __swig_destroy__ = _IMP_algebra.delete_PrincipalComponentAnalysis1D
10402 
10403 # Register PrincipalComponentAnalysis1D in _IMP_algebra:
10404 _IMP_algebra.PrincipalComponentAnalysis1D_swigregister(PrincipalComponentAnalysis1D)
10405 class PrincipalComponentAnalysis2D(IMP._GeometricPrimitive2D):
10406  r"""Proxy of C++ IMP::algebra::PrincipalComponentAnalysisD< 2 > class."""
10407 
10408  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10409 
10410  def __init__(self, *args):
10411  r"""
10412  __init__(PrincipalComponentAnalysis2D self) -> PrincipalComponentAnalysis2D
10413  __init__(PrincipalComponentAnalysis2D self, IMP::Vector< IMP::algebra::VectorD< 2 > > const & pcs, Vector2D values, Vector2D centroid) -> PrincipalComponentAnalysis2D
10414  """
10415  _IMP_algebra.PrincipalComponentAnalysis2D_swiginit(self, _IMP_algebra.new_PrincipalComponentAnalysis2D(*args))
10416 
10417  def get_principal_components(self):
10418  r"""get_principal_components(PrincipalComponentAnalysis2D self) -> IMP::Vector< IMP::algebra::VectorD< 2 > >"""
10419  return _IMP_algebra.PrincipalComponentAnalysis2D_get_principal_components(self)
10420 
10421  def get_principal_component(self, i):
10422  r"""get_principal_component(PrincipalComponentAnalysis2D self, unsigned int i) -> Vector2D"""
10423  return _IMP_algebra.PrincipalComponentAnalysis2D_get_principal_component(self, i)
10424 
10425  def get_principal_values(self):
10426  r"""get_principal_values(PrincipalComponentAnalysis2D self) -> Vector2D"""
10427  return _IMP_algebra.PrincipalComponentAnalysis2D_get_principal_values(self)
10428 
10429  def get_principal_value(self, i):
10430  r"""get_principal_value(PrincipalComponentAnalysis2D self, unsigned int i) -> double"""
10431  return _IMP_algebra.PrincipalComponentAnalysis2D_get_principal_value(self, i)
10432 
10433  def get_centroid(self):
10434  r"""get_centroid(PrincipalComponentAnalysis2D self) -> Vector2D"""
10435  return _IMP_algebra.PrincipalComponentAnalysis2D_get_centroid(self)
10436 
10437  def set_centroid(self, cntr):
10438  r"""set_centroid(PrincipalComponentAnalysis2D self, Vector2D cntr)"""
10439  return _IMP_algebra.PrincipalComponentAnalysis2D_set_centroid(self, cntr)
10440 
10441  def show(self, *args):
10442  r"""show(PrincipalComponentAnalysis2D self, _ostream out=std::cout)"""
10443  return _IMP_algebra.PrincipalComponentAnalysis2D_show(self, *args)
10444 
10445  def __cmp__(self, o):
10446  r"""__cmp__(PrincipalComponentAnalysis2D self, PrincipalComponentAnalysis2D o) -> int"""
10447  return _IMP_algebra.PrincipalComponentAnalysis2D___cmp__(self, o)
10448 
10449  def __eq__(self, o):
10450  r"""__eq__(PrincipalComponentAnalysis2D self, PrincipalComponentAnalysis2D o) -> bool"""
10451  return _IMP_algebra.PrincipalComponentAnalysis2D___eq__(self, o)
10452 
10453  def __ne__(self, o):
10454  r"""__ne__(PrincipalComponentAnalysis2D self, PrincipalComponentAnalysis2D o) -> bool"""
10455  return _IMP_algebra.PrincipalComponentAnalysis2D___ne__(self, o)
10456 
10457  def __lt__(self, o):
10458  r"""__lt__(PrincipalComponentAnalysis2D self, PrincipalComponentAnalysis2D o) -> bool"""
10459  return _IMP_algebra.PrincipalComponentAnalysis2D___lt__(self, o)
10460 
10461  def __gt__(self, o):
10462  r"""__gt__(PrincipalComponentAnalysis2D self, PrincipalComponentAnalysis2D o) -> bool"""
10463  return _IMP_algebra.PrincipalComponentAnalysis2D___gt__(self, o)
10464 
10465  def __ge__(self, o):
10466  r"""__ge__(PrincipalComponentAnalysis2D self, PrincipalComponentAnalysis2D o) -> bool"""
10467  return _IMP_algebra.PrincipalComponentAnalysis2D___ge__(self, o)
10468 
10469  def __le__(self, o):
10470  r"""__le__(PrincipalComponentAnalysis2D self, PrincipalComponentAnalysis2D o) -> bool"""
10471  return _IMP_algebra.PrincipalComponentAnalysis2D___le__(self, o)
10472 
10473  def __str__(self):
10474  r"""__str__(PrincipalComponentAnalysis2D self) -> std::string"""
10475  return _IMP_algebra.PrincipalComponentAnalysis2D___str__(self)
10476 
10477  def __repr__(self):
10478  r"""__repr__(PrincipalComponentAnalysis2D self) -> std::string"""
10479  return _IMP_algebra.PrincipalComponentAnalysis2D___repr__(self)
10480 
10481  def _get_as_binary(self):
10482  r"""_get_as_binary(PrincipalComponentAnalysis2D self) -> PyObject *"""
10483  return _IMP_algebra.PrincipalComponentAnalysis2D__get_as_binary(self)
10484 
10485  def _set_from_binary(self, p):
10486  r"""_set_from_binary(PrincipalComponentAnalysis2D self, PyObject * p)"""
10487  return _IMP_algebra.PrincipalComponentAnalysis2D__set_from_binary(self, p)
10488 
10489  def __getstate__(self):
10490  p = self._get_as_binary()
10491  if len(self.__dict__) > 1:
10492  d = self.__dict__.copy()
10493  del d['this']
10494  p = (d, p)
10495  return p
10496 
10497  def __setstate__(self, p):
10498  if not hasattr(self, 'this'):
10499  self.__init__()
10500  if isinstance(p, tuple):
10501  d, p = p
10502  self.__dict__.update(d)
10503  return self._set_from_binary(p)
10504 
10505  __swig_destroy__ = _IMP_algebra.delete_PrincipalComponentAnalysis2D
10506 
10507 # Register PrincipalComponentAnalysis2D in _IMP_algebra:
10508 _IMP_algebra.PrincipalComponentAnalysis2D_swigregister(PrincipalComponentAnalysis2D)
10509 class PrincipalComponentAnalysis3D(IMP._GeometricPrimitive3D):
10510  r"""Proxy of C++ IMP::algebra::PrincipalComponentAnalysisD< 3 > class."""
10511 
10512  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10513 
10514  def __init__(self, *args):
10515  r"""
10516  __init__(PrincipalComponentAnalysis3D self) -> PrincipalComponentAnalysis3D
10517  __init__(PrincipalComponentAnalysis3D self, IMP::Vector< IMP::algebra::VectorD< 3 > > const & pcs, Vector3D values, Vector3D centroid) -> PrincipalComponentAnalysis3D
10518  """
10519  _IMP_algebra.PrincipalComponentAnalysis3D_swiginit(self, _IMP_algebra.new_PrincipalComponentAnalysis3D(*args))
10520 
10521  def get_principal_components(self):
10522  r"""get_principal_components(PrincipalComponentAnalysis3D self) -> IMP::Vector< IMP::algebra::VectorD< 3 > >"""
10523  return _IMP_algebra.PrincipalComponentAnalysis3D_get_principal_components(self)
10524 
10525  def get_principal_component(self, i):
10526  r"""get_principal_component(PrincipalComponentAnalysis3D self, unsigned int i) -> Vector3D"""
10527  return _IMP_algebra.PrincipalComponentAnalysis3D_get_principal_component(self, i)
10528 
10529  def get_principal_values(self):
10530  r"""get_principal_values(PrincipalComponentAnalysis3D self) -> Vector3D"""
10531  return _IMP_algebra.PrincipalComponentAnalysis3D_get_principal_values(self)
10532 
10533  def get_principal_value(self, i):
10534  r"""get_principal_value(PrincipalComponentAnalysis3D self, unsigned int i) -> double"""
10535  return _IMP_algebra.PrincipalComponentAnalysis3D_get_principal_value(self, i)
10536 
10537  def get_centroid(self):
10538  r"""get_centroid(PrincipalComponentAnalysis3D self) -> Vector3D"""
10539  return _IMP_algebra.PrincipalComponentAnalysis3D_get_centroid(self)
10540 
10541  def set_centroid(self, cntr):
10542  r"""set_centroid(PrincipalComponentAnalysis3D self, Vector3D cntr)"""
10543  return _IMP_algebra.PrincipalComponentAnalysis3D_set_centroid(self, cntr)
10544 
10545  def show(self, *args):
10546  r"""show(PrincipalComponentAnalysis3D self, _ostream out=std::cout)"""
10547  return _IMP_algebra.PrincipalComponentAnalysis3D_show(self, *args)
10548 
10549  def __cmp__(self, o):
10550  r"""__cmp__(PrincipalComponentAnalysis3D self, PrincipalComponentAnalysis3D o) -> int"""
10551  return _IMP_algebra.PrincipalComponentAnalysis3D___cmp__(self, o)
10552 
10553  def __eq__(self, o):
10554  r"""__eq__(PrincipalComponentAnalysis3D self, PrincipalComponentAnalysis3D o) -> bool"""
10555  return _IMP_algebra.PrincipalComponentAnalysis3D___eq__(self, o)
10556 
10557  def __ne__(self, o):
10558  r"""__ne__(PrincipalComponentAnalysis3D self, PrincipalComponentAnalysis3D o) -> bool"""
10559  return _IMP_algebra.PrincipalComponentAnalysis3D___ne__(self, o)
10560 
10561  def __lt__(self, o):
10562  r"""__lt__(PrincipalComponentAnalysis3D self, PrincipalComponentAnalysis3D o) -> bool"""
10563  return _IMP_algebra.PrincipalComponentAnalysis3D___lt__(self, o)
10564 
10565  def __gt__(self, o):
10566  r"""__gt__(PrincipalComponentAnalysis3D self, PrincipalComponentAnalysis3D o) -> bool"""
10567  return _IMP_algebra.PrincipalComponentAnalysis3D___gt__(self, o)
10568 
10569  def __ge__(self, o):
10570  r"""__ge__(PrincipalComponentAnalysis3D self, PrincipalComponentAnalysis3D o) -> bool"""
10571  return _IMP_algebra.PrincipalComponentAnalysis3D___ge__(self, o)
10572 
10573  def __le__(self, o):
10574  r"""__le__(PrincipalComponentAnalysis3D self, PrincipalComponentAnalysis3D o) -> bool"""
10575  return _IMP_algebra.PrincipalComponentAnalysis3D___le__(self, o)
10576 
10577  def __str__(self):
10578  r"""__str__(PrincipalComponentAnalysis3D self) -> std::string"""
10579  return _IMP_algebra.PrincipalComponentAnalysis3D___str__(self)
10580 
10581  def __repr__(self):
10582  r"""__repr__(PrincipalComponentAnalysis3D self) -> std::string"""
10583  return _IMP_algebra.PrincipalComponentAnalysis3D___repr__(self)
10584 
10585  def _get_as_binary(self):
10586  r"""_get_as_binary(PrincipalComponentAnalysis3D self) -> PyObject *"""
10587  return _IMP_algebra.PrincipalComponentAnalysis3D__get_as_binary(self)
10588 
10589  def _set_from_binary(self, p):
10590  r"""_set_from_binary(PrincipalComponentAnalysis3D self, PyObject * p)"""
10591  return _IMP_algebra.PrincipalComponentAnalysis3D__set_from_binary(self, p)
10592 
10593  def __getstate__(self):
10594  p = self._get_as_binary()
10595  if len(self.__dict__) > 1:
10596  d = self.__dict__.copy()
10597  del d['this']
10598  p = (d, p)
10599  return p
10600 
10601  def __setstate__(self, p):
10602  if not hasattr(self, 'this'):
10603  self.__init__()
10604  if isinstance(p, tuple):
10605  d, p = p
10606  self.__dict__.update(d)
10607  return self._set_from_binary(p)
10608 
10609  __swig_destroy__ = _IMP_algebra.delete_PrincipalComponentAnalysis3D
10610 
10611 # Register PrincipalComponentAnalysis3D in _IMP_algebra:
10612 _IMP_algebra.PrincipalComponentAnalysis3D_swigregister(PrincipalComponentAnalysis3D)
10613 class PrincipalComponentAnalysis4D(IMP._GeometricPrimitive4D):
10614  r"""Proxy of C++ IMP::algebra::PrincipalComponentAnalysisD< 4 > class."""
10615 
10616  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10617 
10618  def __init__(self, *args):
10619  r"""
10620  __init__(PrincipalComponentAnalysis4D self) -> PrincipalComponentAnalysis4D
10621  __init__(PrincipalComponentAnalysis4D self, IMP::Vector< IMP::algebra::VectorD< 4 > > const & pcs, Vector4D values, Vector4D centroid) -> PrincipalComponentAnalysis4D
10622  """
10623  _IMP_algebra.PrincipalComponentAnalysis4D_swiginit(self, _IMP_algebra.new_PrincipalComponentAnalysis4D(*args))
10624 
10625  def get_principal_components(self):
10626  r"""get_principal_components(PrincipalComponentAnalysis4D self) -> IMP::Vector< IMP::algebra::VectorD< 4 > >"""
10627  return _IMP_algebra.PrincipalComponentAnalysis4D_get_principal_components(self)
10628 
10629  def get_principal_component(self, i):
10630  r"""get_principal_component(PrincipalComponentAnalysis4D self, unsigned int i) -> Vector4D"""
10631  return _IMP_algebra.PrincipalComponentAnalysis4D_get_principal_component(self, i)
10632 
10633  def get_principal_values(self):
10634  r"""get_principal_values(PrincipalComponentAnalysis4D self) -> Vector4D"""
10635  return _IMP_algebra.PrincipalComponentAnalysis4D_get_principal_values(self)
10636 
10637  def get_principal_value(self, i):
10638  r"""get_principal_value(PrincipalComponentAnalysis4D self, unsigned int i) -> double"""
10639  return _IMP_algebra.PrincipalComponentAnalysis4D_get_principal_value(self, i)
10640 
10641  def get_centroid(self):
10642  r"""get_centroid(PrincipalComponentAnalysis4D self) -> Vector4D"""
10643  return _IMP_algebra.PrincipalComponentAnalysis4D_get_centroid(self)
10644 
10645  def set_centroid(self, cntr):
10646  r"""set_centroid(PrincipalComponentAnalysis4D self, Vector4D cntr)"""
10647  return _IMP_algebra.PrincipalComponentAnalysis4D_set_centroid(self, cntr)
10648 
10649  def show(self, *args):
10650  r"""show(PrincipalComponentAnalysis4D self, _ostream out=std::cout)"""
10651  return _IMP_algebra.PrincipalComponentAnalysis4D_show(self, *args)
10652 
10653  def __cmp__(self, o):
10654  r"""__cmp__(PrincipalComponentAnalysis4D self, PrincipalComponentAnalysis4D o) -> int"""
10655  return _IMP_algebra.PrincipalComponentAnalysis4D___cmp__(self, o)
10656 
10657  def __eq__(self, o):
10658  r"""__eq__(PrincipalComponentAnalysis4D self, PrincipalComponentAnalysis4D o) -> bool"""
10659  return _IMP_algebra.PrincipalComponentAnalysis4D___eq__(self, o)
10660 
10661  def __ne__(self, o):
10662  r"""__ne__(PrincipalComponentAnalysis4D self, PrincipalComponentAnalysis4D o) -> bool"""
10663  return _IMP_algebra.PrincipalComponentAnalysis4D___ne__(self, o)
10664 
10665  def __lt__(self, o):
10666  r"""__lt__(PrincipalComponentAnalysis4D self, PrincipalComponentAnalysis4D o) -> bool"""
10667  return _IMP_algebra.PrincipalComponentAnalysis4D___lt__(self, o)
10668 
10669  def __gt__(self, o):
10670  r"""__gt__(PrincipalComponentAnalysis4D self, PrincipalComponentAnalysis4D o) -> bool"""
10671  return _IMP_algebra.PrincipalComponentAnalysis4D___gt__(self, o)
10672 
10673  def __ge__(self, o):
10674  r"""__ge__(PrincipalComponentAnalysis4D self, PrincipalComponentAnalysis4D o) -> bool"""
10675  return _IMP_algebra.PrincipalComponentAnalysis4D___ge__(self, o)
10676 
10677  def __le__(self, o):
10678  r"""__le__(PrincipalComponentAnalysis4D self, PrincipalComponentAnalysis4D o) -> bool"""
10679  return _IMP_algebra.PrincipalComponentAnalysis4D___le__(self, o)
10680 
10681  def __str__(self):
10682  r"""__str__(PrincipalComponentAnalysis4D self) -> std::string"""
10683  return _IMP_algebra.PrincipalComponentAnalysis4D___str__(self)
10684 
10685  def __repr__(self):
10686  r"""__repr__(PrincipalComponentAnalysis4D self) -> std::string"""
10687  return _IMP_algebra.PrincipalComponentAnalysis4D___repr__(self)
10688 
10689  def _get_as_binary(self):
10690  r"""_get_as_binary(PrincipalComponentAnalysis4D self) -> PyObject *"""
10691  return _IMP_algebra.PrincipalComponentAnalysis4D__get_as_binary(self)
10692 
10693  def _set_from_binary(self, p):
10694  r"""_set_from_binary(PrincipalComponentAnalysis4D self, PyObject * p)"""
10695  return _IMP_algebra.PrincipalComponentAnalysis4D__set_from_binary(self, p)
10696 
10697  def __getstate__(self):
10698  p = self._get_as_binary()
10699  if len(self.__dict__) > 1:
10700  d = self.__dict__.copy()
10701  del d['this']
10702  p = (d, p)
10703  return p
10704 
10705  def __setstate__(self, p):
10706  if not hasattr(self, 'this'):
10707  self.__init__()
10708  if isinstance(p, tuple):
10709  d, p = p
10710  self.__dict__.update(d)
10711  return self._set_from_binary(p)
10712 
10713  __swig_destroy__ = _IMP_algebra.delete_PrincipalComponentAnalysis4D
10714 
10715 # Register PrincipalComponentAnalysis4D in _IMP_algebra:
10716 _IMP_algebra.PrincipalComponentAnalysis4D_swigregister(PrincipalComponentAnalysis4D)
10717 class PrincipalComponentAnalysis5D(IMP._GeometricPrimitive5D):
10718  r"""Proxy of C++ IMP::algebra::PrincipalComponentAnalysisD< 5 > class."""
10719 
10720  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10721 
10722  def __init__(self, *args):
10723  r"""
10724  __init__(PrincipalComponentAnalysis5D self) -> PrincipalComponentAnalysis5D
10725  __init__(PrincipalComponentAnalysis5D self, IMP::Vector< IMP::algebra::VectorD< 5 > > const & pcs, Vector5D values, Vector5D centroid) -> PrincipalComponentAnalysis5D
10726  """
10727  _IMP_algebra.PrincipalComponentAnalysis5D_swiginit(self, _IMP_algebra.new_PrincipalComponentAnalysis5D(*args))
10728 
10729  def get_principal_components(self):
10730  r"""get_principal_components(PrincipalComponentAnalysis5D self) -> IMP::Vector< IMP::algebra::VectorD< 5 > >"""
10731  return _IMP_algebra.PrincipalComponentAnalysis5D_get_principal_components(self)
10732 
10733  def get_principal_component(self, i):
10734  r"""get_principal_component(PrincipalComponentAnalysis5D self, unsigned int i) -> Vector5D"""
10735  return _IMP_algebra.PrincipalComponentAnalysis5D_get_principal_component(self, i)
10736 
10737  def get_principal_values(self):
10738  r"""get_principal_values(PrincipalComponentAnalysis5D self) -> Vector5D"""
10739  return _IMP_algebra.PrincipalComponentAnalysis5D_get_principal_values(self)
10740 
10741  def get_principal_value(self, i):
10742  r"""get_principal_value(PrincipalComponentAnalysis5D self, unsigned int i) -> double"""
10743  return _IMP_algebra.PrincipalComponentAnalysis5D_get_principal_value(self, i)
10744 
10745  def get_centroid(self):
10746  r"""get_centroid(PrincipalComponentAnalysis5D self) -> Vector5D"""
10747  return _IMP_algebra.PrincipalComponentAnalysis5D_get_centroid(self)
10748 
10749  def set_centroid(self, cntr):
10750  r"""set_centroid(PrincipalComponentAnalysis5D self, Vector5D cntr)"""
10751  return _IMP_algebra.PrincipalComponentAnalysis5D_set_centroid(self, cntr)
10752 
10753  def show(self, *args):
10754  r"""show(PrincipalComponentAnalysis5D self, _ostream out=std::cout)"""
10755  return _IMP_algebra.PrincipalComponentAnalysis5D_show(self, *args)
10756 
10757  def __cmp__(self, o):
10758  r"""__cmp__(PrincipalComponentAnalysis5D self, PrincipalComponentAnalysis5D o) -> int"""
10759  return _IMP_algebra.PrincipalComponentAnalysis5D___cmp__(self, o)
10760 
10761  def __eq__(self, o):
10762  r"""__eq__(PrincipalComponentAnalysis5D self, PrincipalComponentAnalysis5D o) -> bool"""
10763  return _IMP_algebra.PrincipalComponentAnalysis5D___eq__(self, o)
10764 
10765  def __ne__(self, o):
10766  r"""__ne__(PrincipalComponentAnalysis5D self, PrincipalComponentAnalysis5D o) -> bool"""
10767  return _IMP_algebra.PrincipalComponentAnalysis5D___ne__(self, o)
10768 
10769  def __lt__(self, o):
10770  r"""__lt__(PrincipalComponentAnalysis5D self, PrincipalComponentAnalysis5D o) -> bool"""
10771  return _IMP_algebra.PrincipalComponentAnalysis5D___lt__(self, o)
10772 
10773  def __gt__(self, o):
10774  r"""__gt__(PrincipalComponentAnalysis5D self, PrincipalComponentAnalysis5D o) -> bool"""
10775  return _IMP_algebra.PrincipalComponentAnalysis5D___gt__(self, o)
10776 
10777  def __ge__(self, o):
10778  r"""__ge__(PrincipalComponentAnalysis5D self, PrincipalComponentAnalysis5D o) -> bool"""
10779  return _IMP_algebra.PrincipalComponentAnalysis5D___ge__(self, o)
10780 
10781  def __le__(self, o):
10782  r"""__le__(PrincipalComponentAnalysis5D self, PrincipalComponentAnalysis5D o) -> bool"""
10783  return _IMP_algebra.PrincipalComponentAnalysis5D___le__(self, o)
10784 
10785  def __str__(self):
10786  r"""__str__(PrincipalComponentAnalysis5D self) -> std::string"""
10787  return _IMP_algebra.PrincipalComponentAnalysis5D___str__(self)
10788 
10789  def __repr__(self):
10790  r"""__repr__(PrincipalComponentAnalysis5D self) -> std::string"""
10791  return _IMP_algebra.PrincipalComponentAnalysis5D___repr__(self)
10792 
10793  def _get_as_binary(self):
10794  r"""_get_as_binary(PrincipalComponentAnalysis5D self) -> PyObject *"""
10795  return _IMP_algebra.PrincipalComponentAnalysis5D__get_as_binary(self)
10796 
10797  def _set_from_binary(self, p):
10798  r"""_set_from_binary(PrincipalComponentAnalysis5D self, PyObject * p)"""
10799  return _IMP_algebra.PrincipalComponentAnalysis5D__set_from_binary(self, p)
10800 
10801  def __getstate__(self):
10802  p = self._get_as_binary()
10803  if len(self.__dict__) > 1:
10804  d = self.__dict__.copy()
10805  del d['this']
10806  p = (d, p)
10807  return p
10808 
10809  def __setstate__(self, p):
10810  if not hasattr(self, 'this'):
10811  self.__init__()
10812  if isinstance(p, tuple):
10813  d, p = p
10814  self.__dict__.update(d)
10815  return self._set_from_binary(p)
10816 
10817  __swig_destroy__ = _IMP_algebra.delete_PrincipalComponentAnalysis5D
10818 
10819 # Register PrincipalComponentAnalysis5D in _IMP_algebra:
10820 _IMP_algebra.PrincipalComponentAnalysis5D_swigregister(PrincipalComponentAnalysis5D)
10821 class PrincipalComponentAnalysis6D(IMP._GeometricPrimitive6D):
10822  r"""Proxy of C++ IMP::algebra::PrincipalComponentAnalysisD< 6 > class."""
10823 
10824  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10825 
10826  def __init__(self, *args):
10827  r"""
10828  __init__(PrincipalComponentAnalysis6D self) -> PrincipalComponentAnalysis6D
10829  __init__(PrincipalComponentAnalysis6D self, IMP::Vector< IMP::algebra::VectorD< 6 > > const & pcs, Vector6D values, Vector6D centroid) -> PrincipalComponentAnalysis6D
10830  """
10831  _IMP_algebra.PrincipalComponentAnalysis6D_swiginit(self, _IMP_algebra.new_PrincipalComponentAnalysis6D(*args))
10832 
10833  def get_principal_components(self):
10834  r"""get_principal_components(PrincipalComponentAnalysis6D self) -> IMP::Vector< IMP::algebra::VectorD< 6 > >"""
10835  return _IMP_algebra.PrincipalComponentAnalysis6D_get_principal_components(self)
10836 
10837  def get_principal_component(self, i):
10838  r"""get_principal_component(PrincipalComponentAnalysis6D self, unsigned int i) -> Vector6D"""
10839  return _IMP_algebra.PrincipalComponentAnalysis6D_get_principal_component(self, i)
10840 
10841  def get_principal_values(self):
10842  r"""get_principal_values(PrincipalComponentAnalysis6D self) -> Vector6D"""
10843  return _IMP_algebra.PrincipalComponentAnalysis6D_get_principal_values(self)
10844 
10845  def get_principal_value(self, i):
10846  r"""get_principal_value(PrincipalComponentAnalysis6D self, unsigned int i) -> double"""
10847  return _IMP_algebra.PrincipalComponentAnalysis6D_get_principal_value(self, i)
10848 
10849  def get_centroid(self):
10850  r"""get_centroid(PrincipalComponentAnalysis6D self) -> Vector6D"""
10851  return _IMP_algebra.PrincipalComponentAnalysis6D_get_centroid(self)
10852 
10853  def set_centroid(self, cntr):
10854  r"""set_centroid(PrincipalComponentAnalysis6D self, Vector6D cntr)"""
10855  return _IMP_algebra.PrincipalComponentAnalysis6D_set_centroid(self, cntr)
10856 
10857  def show(self, *args):
10858  r"""show(PrincipalComponentAnalysis6D self, _ostream out=std::cout)"""
10859  return _IMP_algebra.PrincipalComponentAnalysis6D_show(self, *args)
10860 
10861  def __cmp__(self, o):
10862  r"""__cmp__(PrincipalComponentAnalysis6D self, PrincipalComponentAnalysis6D o) -> int"""
10863  return _IMP_algebra.PrincipalComponentAnalysis6D___cmp__(self, o)
10864 
10865  def __eq__(self, o):
10866  r"""__eq__(PrincipalComponentAnalysis6D self, PrincipalComponentAnalysis6D o) -> bool"""
10867  return _IMP_algebra.PrincipalComponentAnalysis6D___eq__(self, o)
10868 
10869  def __ne__(self, o):
10870  r"""__ne__(PrincipalComponentAnalysis6D self, PrincipalComponentAnalysis6D o) -> bool"""
10871  return _IMP_algebra.PrincipalComponentAnalysis6D___ne__(self, o)
10872 
10873  def __lt__(self, o):
10874  r"""__lt__(PrincipalComponentAnalysis6D self, PrincipalComponentAnalysis6D o) -> bool"""
10875  return _IMP_algebra.PrincipalComponentAnalysis6D___lt__(self, o)
10876 
10877  def __gt__(self, o):
10878  r"""__gt__(PrincipalComponentAnalysis6D self, PrincipalComponentAnalysis6D o) -> bool"""
10879  return _IMP_algebra.PrincipalComponentAnalysis6D___gt__(self, o)
10880 
10881  def __ge__(self, o):
10882  r"""__ge__(PrincipalComponentAnalysis6D self, PrincipalComponentAnalysis6D o) -> bool"""
10883  return _IMP_algebra.PrincipalComponentAnalysis6D___ge__(self, o)
10884 
10885  def __le__(self, o):
10886  r"""__le__(PrincipalComponentAnalysis6D self, PrincipalComponentAnalysis6D o) -> bool"""
10887  return _IMP_algebra.PrincipalComponentAnalysis6D___le__(self, o)
10888 
10889  def __str__(self):
10890  r"""__str__(PrincipalComponentAnalysis6D self) -> std::string"""
10891  return _IMP_algebra.PrincipalComponentAnalysis6D___str__(self)
10892 
10893  def __repr__(self):
10894  r"""__repr__(PrincipalComponentAnalysis6D self) -> std::string"""
10895  return _IMP_algebra.PrincipalComponentAnalysis6D___repr__(self)
10896 
10897  def _get_as_binary(self):
10898  r"""_get_as_binary(PrincipalComponentAnalysis6D self) -> PyObject *"""
10899  return _IMP_algebra.PrincipalComponentAnalysis6D__get_as_binary(self)
10900 
10901  def _set_from_binary(self, p):
10902  r"""_set_from_binary(PrincipalComponentAnalysis6D self, PyObject * p)"""
10903  return _IMP_algebra.PrincipalComponentAnalysis6D__set_from_binary(self, p)
10904 
10905  def __getstate__(self):
10906  p = self._get_as_binary()
10907  if len(self.__dict__) > 1:
10908  d = self.__dict__.copy()
10909  del d['this']
10910  p = (d, p)
10911  return p
10912 
10913  def __setstate__(self, p):
10914  if not hasattr(self, 'this'):
10915  self.__init__()
10916  if isinstance(p, tuple):
10917  d, p = p
10918  self.__dict__.update(d)
10919  return self._set_from_binary(p)
10920 
10921  __swig_destroy__ = _IMP_algebra.delete_PrincipalComponentAnalysis6D
10922 
10923 # Register PrincipalComponentAnalysis6D in _IMP_algebra:
10924 _IMP_algebra.PrincipalComponentAnalysis6D_swigregister(PrincipalComponentAnalysis6D)
10925 class PrincipalComponentAnalysisKD(IMP._GeometricPrimitiveKD):
10926  r"""Proxy of C++ IMP::algebra::PrincipalComponentAnalysisD< -1 > class."""
10927 
10928  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10929 
10930  def __init__(self, *args):
10931  r"""
10932  __init__(PrincipalComponentAnalysisKD self) -> PrincipalComponentAnalysisKD
10933  __init__(PrincipalComponentAnalysisKD self, IMP::Vector< IMP::algebra::VectorD< -1 > > const & pcs, VectorKD values, VectorKD centroid) -> PrincipalComponentAnalysisKD
10934  """
10935  _IMP_algebra.PrincipalComponentAnalysisKD_swiginit(self, _IMP_algebra.new_PrincipalComponentAnalysisKD(*args))
10936 
10937  def get_principal_components(self):
10938  r"""get_principal_components(PrincipalComponentAnalysisKD self) -> IMP::Vector< IMP::algebra::VectorD< -1 > >"""
10939  return _IMP_algebra.PrincipalComponentAnalysisKD_get_principal_components(self)
10940 
10941  def get_principal_component(self, i):
10942  r"""get_principal_component(PrincipalComponentAnalysisKD self, unsigned int i) -> VectorKD"""
10943  return _IMP_algebra.PrincipalComponentAnalysisKD_get_principal_component(self, i)
10944 
10945  def get_principal_values(self):
10946  r"""get_principal_values(PrincipalComponentAnalysisKD self) -> VectorKD"""
10947  return _IMP_algebra.PrincipalComponentAnalysisKD_get_principal_values(self)
10948 
10949  def get_principal_value(self, i):
10950  r"""get_principal_value(PrincipalComponentAnalysisKD self, unsigned int i) -> double"""
10951  return _IMP_algebra.PrincipalComponentAnalysisKD_get_principal_value(self, i)
10952 
10953  def get_centroid(self):
10954  r"""get_centroid(PrincipalComponentAnalysisKD self) -> VectorKD"""
10955  return _IMP_algebra.PrincipalComponentAnalysisKD_get_centroid(self)
10956 
10957  def set_centroid(self, cntr):
10958  r"""set_centroid(PrincipalComponentAnalysisKD self, VectorKD cntr)"""
10959  return _IMP_algebra.PrincipalComponentAnalysisKD_set_centroid(self, cntr)
10960 
10961  def show(self, *args):
10962  r"""show(PrincipalComponentAnalysisKD self, _ostream out=std::cout)"""
10963  return _IMP_algebra.PrincipalComponentAnalysisKD_show(self, *args)
10964 
10965  def __cmp__(self, o):
10966  r"""__cmp__(PrincipalComponentAnalysisKD self, PrincipalComponentAnalysisKD o) -> int"""
10967  return _IMP_algebra.PrincipalComponentAnalysisKD___cmp__(self, o)
10968 
10969  def __eq__(self, o):
10970  r"""__eq__(PrincipalComponentAnalysisKD self, PrincipalComponentAnalysisKD o) -> bool"""
10971  return _IMP_algebra.PrincipalComponentAnalysisKD___eq__(self, o)
10972 
10973  def __ne__(self, o):
10974  r"""__ne__(PrincipalComponentAnalysisKD self, PrincipalComponentAnalysisKD o) -> bool"""
10975  return _IMP_algebra.PrincipalComponentAnalysisKD___ne__(self, o)
10976 
10977  def __lt__(self, o):
10978  r"""__lt__(PrincipalComponentAnalysisKD self, PrincipalComponentAnalysisKD o) -> bool"""
10979  return _IMP_algebra.PrincipalComponentAnalysisKD___lt__(self, o)
10980 
10981  def __gt__(self, o):
10982  r"""__gt__(PrincipalComponentAnalysisKD self, PrincipalComponentAnalysisKD o) -> bool"""
10983  return _IMP_algebra.PrincipalComponentAnalysisKD___gt__(self, o)
10984 
10985  def __ge__(self, o):
10986  r"""__ge__(PrincipalComponentAnalysisKD self, PrincipalComponentAnalysisKD o) -> bool"""
10987  return _IMP_algebra.PrincipalComponentAnalysisKD___ge__(self, o)
10988 
10989  def __le__(self, o):
10990  r"""__le__(PrincipalComponentAnalysisKD self, PrincipalComponentAnalysisKD o) -> bool"""
10991  return _IMP_algebra.PrincipalComponentAnalysisKD___le__(self, o)
10992 
10993  def __str__(self):
10994  r"""__str__(PrincipalComponentAnalysisKD self) -> std::string"""
10995  return _IMP_algebra.PrincipalComponentAnalysisKD___str__(self)
10996 
10997  def __repr__(self):
10998  r"""__repr__(PrincipalComponentAnalysisKD self) -> std::string"""
10999  return _IMP_algebra.PrincipalComponentAnalysisKD___repr__(self)
11000 
11001  def _get_as_binary(self):
11002  r"""_get_as_binary(PrincipalComponentAnalysisKD self) -> PyObject *"""
11003  return _IMP_algebra.PrincipalComponentAnalysisKD__get_as_binary(self)
11004 
11005  def _set_from_binary(self, p):
11006  r"""_set_from_binary(PrincipalComponentAnalysisKD self, PyObject * p)"""
11007  return _IMP_algebra.PrincipalComponentAnalysisKD__set_from_binary(self, p)
11008 
11009  def __getstate__(self):
11010  p = self._get_as_binary()
11011  if len(self.__dict__) > 1:
11012  d = self.__dict__.copy()
11013  del d['this']
11014  p = (d, p)
11015  return p
11016 
11017  def __setstate__(self, p):
11018  if not hasattr(self, 'this'):
11019  self.__init__()
11020  if isinstance(p, tuple):
11021  d, p = p
11022  self.__dict__.update(d)
11023  return self._set_from_binary(p)
11024 
11025  __swig_destroy__ = _IMP_algebra.delete_PrincipalComponentAnalysisKD
11026 
11027 # Register PrincipalComponentAnalysisKD in _IMP_algebra:
11028 _IMP_algebra.PrincipalComponentAnalysisKD_swigregister(PrincipalComponentAnalysisKD)
11029 
11030 def get_principal_components(*args):
11031  r"""
11032  get_principal_components(IMP::Vector< IMP::Vector1D,std::allocator< IMP::Vector1D > > const & a) -> PrincipalComponentAnalysis1D
11033  get_principal_components(IMP::Vector< IMP::Vector2D,std::allocator< IMP::Vector2D > > const & a) -> PrincipalComponentAnalysis2D
11034  get_principal_components(IMP::Vector< IMP::Vector3D,std::allocator< IMP::Vector3D > > const & a) -> PrincipalComponentAnalysis3D
11035  get_principal_components(IMP::Vector< IMP::Vector4D,std::allocator< IMP::Vector4D > > const & a) -> PrincipalComponentAnalysis4D
11036  get_principal_components(IMP::Vector< IMP::Vector5D,std::allocator< IMP::Vector5D > > const & a) -> PrincipalComponentAnalysis5D
11037  get_principal_components(IMP::Vector< IMP::Vector6D,std::allocator< IMP::Vector6D > > const & a) -> PrincipalComponentAnalysis6D
11038  get_principal_components(IMP::Vector< IMP::VectorKD,std::allocator< IMP::VectorKD > > const & a) -> PrincipalComponentAnalysisKD
11039  """
11040  return _IMP_algebra.get_principal_components(*args)
11041 
11042 def get_distance(*args):
11043  r"""
11044  get_distance()
11045  get_distance(Rotation3D r0, Rotation3D r1) -> double
11046  get_distance(Line3D s, Vector3D p) -> double
11047  get_distance(Line3D a, Line3D b) -> double
11048  get_distance(Segment3D s, Vector3D p) -> double
11049  get_distance(Segment3D a, Segment3D b) -> double
11050  get_distance(Plane3D pln, Vector3D p) -> double
11051  get_distance(Vector1D a, Vector1D b) -> double
11052  get_distance(Vector2D a, Vector2D b) -> double
11053  get_distance(Vector3D a, Vector3D b) -> double
11054  get_distance(Vector4D a, Vector4D b) -> double
11055  get_distance(Vector5D a, Vector5D b) -> double
11056  get_distance(Vector6D a, Vector6D b) -> double
11057  get_distance(VectorKD a, VectorKD b) -> double
11058  get_distance(Sphere1D a, Sphere1D b) -> double
11059  get_distance(Sphere2D a, Sphere2D b) -> double
11060  get_distance(Sphere3D a, Sphere3D b) -> double
11061  get_distance(Sphere4D a, Sphere4D b) -> double
11062  get_distance(Sphere5D a, Sphere5D b) -> double
11063  get_distance(Sphere6D a, Sphere6D b) -> double
11064  get_distance(SphereKD a, SphereKD b) -> double
11065  """
11066  return _IMP_algebra.get_distance(*args)
11067 
11068 def get_squared_distance(*args):
11069  r"""
11070  get_squared_distance()
11071  get_squared_distance(Vector1D a, Vector1D b) -> double
11072  get_squared_distance(Vector2D a, Vector2D b) -> double
11073  get_squared_distance(Vector3D a, Vector3D b) -> double
11074  get_squared_distance(Vector4D a, Vector4D b) -> double
11075  get_squared_distance(Vector5D a, Vector5D b) -> double
11076  get_squared_distance(Vector6D a, Vector6D b) -> double
11077  get_squared_distance(VectorKD a, VectorKD b) -> double
11078  """
11079  return _IMP_algebra.get_squared_distance(*args)
11080 
11081 def get_unit_bounding_box_1d():
11082  r"""get_unit_bounding_box_1d() -> BoundingBox1D"""
11083  return _IMP_algebra.get_unit_bounding_box_1d()
11084 
11085 def get_unit_bounding_box_2d():
11086  r"""get_unit_bounding_box_2d() -> BoundingBox2D"""
11087  return _IMP_algebra.get_unit_bounding_box_2d()
11088 
11089 def get_unit_bounding_box_3d():
11090  r"""get_unit_bounding_box_3d() -> BoundingBox3D"""
11091  return _IMP_algebra.get_unit_bounding_box_3d()
11092 
11093 def get_unit_bounding_box_4d():
11094  r"""get_unit_bounding_box_4d() -> BoundingBox4D"""
11095  return _IMP_algebra.get_unit_bounding_box_4d()
11096 
11097 def get_unit_bounding_box_5d():
11098  r"""get_unit_bounding_box_5d() -> BoundingBox5D"""
11099  return _IMP_algebra.get_unit_bounding_box_5d()
11100 
11101 def get_unit_bounding_box_6d():
11102  r"""get_unit_bounding_box_6d() -> BoundingBox6D"""
11103  return _IMP_algebra.get_unit_bounding_box_6d()
11104 
11105 def get_cube_1d(radius):
11106  r"""get_cube_1d(double radius) -> BoundingBox1D"""
11107  return _IMP_algebra.get_cube_1d(radius)
11108 
11109 def get_cube_2d(radius):
11110  r"""get_cube_2d(double radius) -> BoundingBox2D"""
11111  return _IMP_algebra.get_cube_2d(radius)
11112 
11113 def get_cube_3d(radius):
11114  r"""get_cube_3d(double radius) -> BoundingBox3D"""
11115  return _IMP_algebra.get_cube_3d(radius)
11116 
11117 def get_cube_4d(radius):
11118  r"""get_cube_4d(double radius) -> BoundingBox4D"""
11119  return _IMP_algebra.get_cube_4d(radius)
11120 
11121 def get_cube_5d(radius):
11122  r"""get_cube_5d(double radius) -> BoundingBox5D"""
11123  return _IMP_algebra.get_cube_5d(radius)
11124 
11125 def get_cube_6d(radius):
11126  r"""get_cube_6d(double radius) -> BoundingBox6D"""
11127  return _IMP_algebra.get_cube_6d(radius)
11128 
11129 def get_unit_sphere_1d():
11130  r"""get_unit_sphere_1d() -> Sphere1D"""
11131  return _IMP_algebra.get_unit_sphere_1d()
11132 
11133 def get_unit_sphere_2d():
11134  r"""get_unit_sphere_2d() -> Sphere2D"""
11135  return _IMP_algebra.get_unit_sphere_2d()
11136 
11137 def get_unit_sphere_3d():
11138  r"""get_unit_sphere_3d() -> Sphere3D"""
11139  return _IMP_algebra.get_unit_sphere_3d()
11140 
11141 def get_unit_sphere_4d():
11142  r"""get_unit_sphere_4d() -> Sphere4D"""
11143  return _IMP_algebra.get_unit_sphere_4d()
11144 
11145 def get_unit_sphere_5d():
11146  r"""get_unit_sphere_5d() -> Sphere5D"""
11147  return _IMP_algebra.get_unit_sphere_5d()
11148 
11149 def get_unit_sphere_6d():
11150  r"""get_unit_sphere_6d() -> Sphere6D"""
11151  return _IMP_algebra.get_unit_sphere_6d()
11152 
11153 def get_interiors_intersect(*args):
11154  r"""
11155  get_interiors_intersect(Sphere1D a, Sphere1D b) -> bool
11156  get_interiors_intersect(Sphere2D a, Sphere2D b) -> bool
11157  get_interiors_intersect(Sphere3D a, Sphere3D b) -> bool
11158  get_interiors_intersect(Sphere4D a, Sphere4D b) -> bool
11159  get_interiors_intersect(Sphere5D a, Sphere5D b) -> bool
11160  get_interiors_intersect(Sphere6D a, Sphere6D b) -> bool
11161  get_interiors_intersect(SphereKD a, SphereKD b) -> bool
11162  get_interiors_intersect(BoundingBox1D a, BoundingBox1D b) -> bool
11163  get_interiors_intersect(BoundingBox2D a, BoundingBox2D b) -> bool
11164  get_interiors_intersect(BoundingBox3D a, BoundingBox3D b) -> bool
11165  get_interiors_intersect(BoundingBox4D a, BoundingBox4D b) -> bool
11166  get_interiors_intersect(BoundingBox5D a, BoundingBox5D b) -> bool
11167  get_interiors_intersect(BoundingBox6D a, BoundingBox6D b) -> bool
11168  get_interiors_intersect(BoundingBoxKD a, BoundingBoxKD b) -> bool
11169  """
11170  return _IMP_algebra.get_interiors_intersect(*args)
11171 
11172 def get_random_vector_on(*args):
11173  r"""
11174  get_random_vector_on(Sphere1D a) -> Vector1D
11175  get_random_vector_on(Sphere2D a) -> Vector2D
11176  get_random_vector_on(Sphere3D a) -> Vector3D
11177  get_random_vector_on(Sphere4D a) -> Vector4D
11178  get_random_vector_on(Sphere5D a) -> Vector5D
11179  get_random_vector_on(Sphere6D a) -> Vector6D
11180  get_random_vector_on(SphereKD a) -> VectorKD
11181  get_random_vector_on(UnitSimplex1D a) -> Vector1D
11182  get_random_vector_on(UnitSimplex2D a) -> Vector2D
11183  get_random_vector_on(UnitSimplex3D a) -> Vector3D
11184  get_random_vector_on(UnitSimplex4D a) -> Vector4D
11185  get_random_vector_on(UnitSimplex5D a) -> Vector5D
11186  get_random_vector_on(UnitSimplex6D a) -> Vector6D
11187  get_random_vector_on(UnitSimplexKD a) -> VectorKD
11188  get_random_vector_on(BoundingBox1D a) -> Vector1D
11189  get_random_vector_on(BoundingBox2D a) -> Vector2D
11190  get_random_vector_on(BoundingBox3D a) -> Vector3D
11191  get_random_vector_on(BoundingBox4D a) -> Vector4D
11192  get_random_vector_on(BoundingBox5D a) -> Vector5D
11193  get_random_vector_on(BoundingBox6D a) -> Vector6D
11194  get_random_vector_on(BoundingBoxKD a) -> VectorKD
11195  """
11196  return _IMP_algebra.get_random_vector_on(*args)
11197 
11198 def get_random_vector_in(*args):
11199  r"""
11200  get_random_vector_in(Cylinder3D c) -> Vector3D
11201  get_random_vector_in(Sphere1D a) -> Vector1D
11202  get_random_vector_in(Sphere2D a) -> Vector2D
11203  get_random_vector_in(Sphere3D a) -> Vector3D
11204  get_random_vector_in(Sphere4D a) -> Vector4D
11205  get_random_vector_in(Sphere5D a) -> Vector5D
11206  get_random_vector_in(Sphere6D a) -> Vector6D
11207  get_random_vector_in(SphereKD a) -> VectorKD
11208  get_random_vector_in(BoundingBox1D a) -> Vector1D
11209  get_random_vector_in(BoundingBox2D a) -> Vector2D
11210  get_random_vector_in(BoundingBox3D a) -> Vector3D
11211  get_random_vector_in(BoundingBox4D a) -> Vector4D
11212  get_random_vector_in(BoundingBox5D a) -> Vector5D
11213  get_random_vector_in(BoundingBox6D a) -> Vector6D
11214  get_random_vector_in(BoundingBoxKD a) -> VectorKD
11215  """
11216  return _IMP_algebra.get_random_vector_in(*args)
11217 
11218 def get_intersection(*args):
11219  r"""
11220  get_intersection(BoundingBox1D a, BoundingBox1D b) -> BoundingBox1D
11221  get_intersection(BoundingBox2D a, BoundingBox2D b) -> BoundingBox2D
11222  get_intersection(BoundingBox3D a, BoundingBox3D b) -> BoundingBox3D
11223  get_intersection(BoundingBox4D a, BoundingBox4D b) -> BoundingBox4D
11224  get_intersection(BoundingBox5D a, BoundingBox5D b) -> BoundingBox5D
11225  get_intersection(BoundingBox6D a, BoundingBox6D b) -> BoundingBox6D
11226  get_intersection(BoundingBoxKD a, BoundingBoxKD b) -> BoundingBoxKD
11227  """
11228  return _IMP_algebra.get_intersection(*args)
11229 
11230 def get_union(*args):
11231  r"""
11232  get_union(BoundingBox1D a, BoundingBox1D b) -> BoundingBox1D
11233  get_union(BoundingBox2D a, BoundingBox2D b) -> BoundingBox2D
11234  get_union(BoundingBox3D a, BoundingBox3D b) -> BoundingBox3D
11235  get_union(BoundingBox4D a, BoundingBox4D b) -> BoundingBox4D
11236  get_union(BoundingBox5D a, BoundingBox5D b) -> BoundingBox5D
11237  get_union(BoundingBox6D a, BoundingBox6D b) -> BoundingBox6D
11238  get_union(BoundingBoxKD a, BoundingBoxKD b) -> BoundingBoxKD
11239  """
11240  return _IMP_algebra.get_union(*args)
11241 
11242 def get_bounding_box(*args):
11243  r"""
11244  get_bounding_box(Line3D g) -> BoundingBox3D
11245  get_bounding_box(Segment3D g) -> BoundingBox3D
11246  get_bounding_box(Plane3D g) -> BoundingBox3D
11247  get_bounding_box(Cylinder3D g) -> BoundingBox3D
11248  get_bounding_box(Ellipsoid3D g) -> BoundingBox3D
11249  get_bounding_box(SpherePatch3D g) -> BoundingBox3D
11250  get_bounding_box(Cone3D g) -> BoundingBox3D
11251  get_bounding_box(Sphere1D a) -> BoundingBox1D
11252  get_bounding_box(Sphere2D a) -> BoundingBox2D
11253  get_bounding_box(Sphere3D a) -> BoundingBox3D
11254  get_bounding_box(Sphere4D a) -> BoundingBox4D
11255  get_bounding_box(Sphere5D a) -> BoundingBox5D
11256  get_bounding_box(Sphere6D a) -> BoundingBox6D
11257  get_bounding_box(SphereKD a) -> BoundingBoxKD
11258  """
11259  return _IMP_algebra.get_bounding_box(*args)
11260 
11261 def get_uniform_surface_cover(*args):
11262  r"""
11263  get_uniform_surface_cover(Cylinder3D cyl, int number_of_points) -> IMP::algebra::Vector3Ds
11264  get_uniform_surface_cover(SpherePatch3D sph, unsigned int number_of_points) -> IMP::algebra::Vector3Ds
11265  get_uniform_surface_cover(Cone3D cone, unsigned int number_of_points) -> IMP::algebra::Vector3Ds
11266  get_uniform_surface_cover(IMP::algebra::Sphere3Ds const & _in, double points_per_square_angstrom) -> IMP::algebra::Vector3Ds
11267  get_uniform_surface_cover(Sphere1D a, unsigned int const & b) -> IMP::algebra::Vector1Ds
11268  get_uniform_surface_cover(Sphere2D a, unsigned int const & b) -> IMP::algebra::Vector2Ds
11269  get_uniform_surface_cover(Sphere3D a, unsigned int const & b) -> IMP::algebra::Vector3Ds
11270  get_uniform_surface_cover(Sphere4D a, unsigned int const & b) -> IMP::algebra::Vector4Ds
11271  get_uniform_surface_cover(Sphere5D a, unsigned int const & b) -> IMP::algebra::Vector5Ds
11272  get_uniform_surface_cover(Sphere6D a, unsigned int const & b) -> IMP::algebra::Vector6Ds
11273  get_uniform_surface_cover(SphereKD a, unsigned int const & b) -> IMP::algebra::VectorKDs
11274  """
11275  return _IMP_algebra.get_uniform_surface_cover(*args)
11276 
11278  r"""
11279  get_grid_interior_cover_by_spacing(BoundingBox1D a, double const & b) -> IMP::algebra::Vector1Ds
11280  get_grid_interior_cover_by_spacing(BoundingBox2D a, double const & b) -> IMP::algebra::Vector2Ds
11281  get_grid_interior_cover_by_spacing(BoundingBox3D a, double const & b) -> IMP::algebra::Vector3Ds
11282  get_grid_interior_cover_by_spacing(BoundingBox4D a, double const & b) -> IMP::algebra::Vector4Ds
11283  get_grid_interior_cover_by_spacing(BoundingBox5D a, double const & b) -> IMP::algebra::Vector5Ds
11284  get_grid_interior_cover_by_spacing(BoundingBox6D a, double const & b) -> IMP::algebra::Vector6Ds
11285  get_grid_interior_cover_by_spacing(BoundingBoxKD a, double const & b) -> IMP::algebra::VectorKDs
11286  """
11287  return _IMP_algebra.get_grid_interior_cover_by_spacing(*args)
11288 
11289 def get_projected(*args):
11290  r"""
11291  get_projected(Line3D l, Vector3D p) -> Vector3D
11292  get_projected(Line3D l, Segment3D s) -> Segment3D
11293  get_projected(UnitSimplex1D a, Vector1D b) -> Vector1D
11294  get_projected(UnitSimplex2D a, Vector2D b) -> Vector2D
11295  get_projected(UnitSimplex3D a, Vector3D b) -> Vector3D
11296  get_projected(UnitSimplex4D a, Vector4D b) -> Vector4D
11297  get_projected(UnitSimplex5D a, Vector5D b) -> Vector5D
11298  get_projected(UnitSimplex6D a, Vector6D b) -> Vector6D
11299  get_projected(UnitSimplexKD a, VectorKD b) -> VectorKD
11300  """
11301  return _IMP_algebra.get_projected(*args)
11302 
11303 def get_vertices(*args):
11304  r"""
11305  get_vertices(BoundingBox1D a) -> IMP::Vector< IMP::Vector1D,std::allocator< IMP::Vector1D > >
11306  get_vertices(BoundingBox2D a) -> IMP::Vector< IMP::Vector2D,std::allocator< IMP::Vector2D > >
11307  get_vertices(BoundingBox3D a) -> IMP::Vector< IMP::Vector3D,std::allocator< IMP::Vector3D > >
11308  get_vertices(BoundingBox4D a) -> IMP::Vector< IMP::Vector4D,std::allocator< IMP::Vector4D > >
11309  get_vertices(BoundingBox5D a) -> IMP::Vector< IMP::Vector5D,std::allocator< IMP::Vector5D > >
11310  get_vertices(BoundingBox6D a) -> IMP::Vector< IMP::Vector6D,std::allocator< IMP::Vector6D > >
11311  get_vertices(BoundingBoxKD a) -> IMP::Vector< IMP::VectorKD,std::allocator< IMP::VectorKD > >
11312  get_vertices(UnitSimplex1D a) -> IMP::Vector< IMP::Vector1D,std::allocator< IMP::Vector1D > >
11313  get_vertices(UnitSimplex2D a) -> IMP::Vector< IMP::Vector2D,std::allocator< IMP::Vector2D > >
11314  get_vertices(UnitSimplex3D a) -> IMP::Vector< IMP::Vector3D,std::allocator< IMP::Vector3D > >
11315  get_vertices(UnitSimplex4D a) -> IMP::Vector< IMP::Vector4D,std::allocator< IMP::Vector4D > >
11316  get_vertices(UnitSimplex5D a) -> IMP::Vector< IMP::Vector5D,std::allocator< IMP::Vector5D > >
11317  get_vertices(UnitSimplex6D a) -> IMP::Vector< IMP::Vector6D,std::allocator< IMP::Vector6D > >
11318  get_vertices(UnitSimplexKD a) -> IMP::Vector< IMP::VectorKD,std::allocator< IMP::VectorKD > >
11319  """
11320  return _IMP_algebra.get_vertices(*args)
11321 
11322 def get_increasing_from_embedded(*args):
11323  r"""
11324  get_increasing_from_embedded(UnitSimplex1D a, Vector1D b) -> Vector1D
11325  get_increasing_from_embedded(UnitSimplex2D a, Vector2D b) -> Vector2D
11326  get_increasing_from_embedded(UnitSimplex3D a, Vector3D b) -> Vector3D
11327  get_increasing_from_embedded(UnitSimplex4D a, Vector4D b) -> Vector4D
11328  get_increasing_from_embedded(UnitSimplex5D a, Vector5D b) -> Vector5D
11329  get_increasing_from_embedded(UnitSimplex6D a, Vector6D b) -> Vector6D
11330  get_increasing_from_embedded(UnitSimplexKD a, VectorKD b) -> VectorKD
11331  """
11332  return _IMP_algebra.get_increasing_from_embedded(*args)
11333 
11334 def get_embedded_from_increasing(*args):
11335  r"""
11336  get_embedded_from_increasing(UnitSimplex1D a, Vector1D b) -> Vector1D
11337  get_embedded_from_increasing(UnitSimplex2D a, Vector2D b) -> Vector2D
11338  get_embedded_from_increasing(UnitSimplex3D a, Vector3D b) -> Vector3D
11339  get_embedded_from_increasing(UnitSimplex4D a, Vector4D b) -> Vector4D
11340  get_embedded_from_increasing(UnitSimplex5D a, Vector5D b) -> Vector5D
11341  get_embedded_from_increasing(UnitSimplex6D a, Vector6D b) -> Vector6D
11342  get_embedded_from_increasing(UnitSimplexKD a, VectorKD b) -> VectorKD
11343  """
11344  return _IMP_algebra.get_embedded_from_increasing(*args)
11345 class _AxisAnglePair(object):
11346  r"""Proxy of C++ std::pair< IMP::VectorD< 3 >,double > class."""
11347 
11348  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11349  __repr__ = _swig_repr
11350 
11351  def __init__(self, *args):
11352  r"""
11353  __init__(_AxisAnglePair self) -> _AxisAnglePair
11354  __init__(_AxisAnglePair self, Vector3D first, double second) -> _AxisAnglePair
11355  __init__(_AxisAnglePair self, _AxisAnglePair other) -> _AxisAnglePair
11356  """
11357  _IMP_algebra._AxisAnglePair_swiginit(self, _IMP_algebra.new__AxisAnglePair(*args))
11358  first = property(_IMP_algebra._AxisAnglePair_first_get, _IMP_algebra._AxisAnglePair_first_set, doc=r"""first : IMP::VectorD<(3)>""")
11359  second = property(_IMP_algebra._AxisAnglePair_second_get, _IMP_algebra._AxisAnglePair_second_set, doc=r"""second : double""")
11360  def __len__(self):
11361  return 2
11362  def __repr__(self):
11363  return str((self.first, self.second))
11364  def __getitem__(self, index):
11365  if not (index % 2):
11366  return self.first
11367  else:
11368  return self.second
11369  def __setitem__(self, index, val):
11370  if not (index % 2):
11371  self.first = val
11372  else:
11373  self.second = val
11374  __swig_destroy__ = _IMP_algebra.delete__AxisAnglePair
11375 
11376 # Register _AxisAnglePair in _IMP_algebra:
11377 _IMP_algebra._AxisAnglePair_swigregister(_AxisAnglePair)
11378 
11380  r"""get_transformation_aligning_first_to_second(IMP::Vector< IMP::VectorD< 3 >,std::allocator< IMP::VectorD< 3 > > > const & source, IMP::Vector< IMP::VectorD< 3 >,std::allocator< IMP::VectorD< 3 > > > const & target) -> Transformation3D"""
11381  return _IMP_algebra.get_transformation_aligning_first_to_second(source, target)
11382 class _RotatedVector3DAdjoint(object):
11383  r"""Proxy of C++ std::pair< IMP::VectorD< 3 >,IMP::VectorD< 4 > > class."""
11384 
11385  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11386  __repr__ = _swig_repr
11387 
11388  def __init__(self, *args):
11389  r"""
11390  __init__(_RotatedVector3DAdjoint self) -> _RotatedVector3DAdjoint
11391  __init__(_RotatedVector3DAdjoint self, Vector3D first, Vector4D second) -> _RotatedVector3DAdjoint
11392  __init__(_RotatedVector3DAdjoint self, _RotatedVector3DAdjoint other) -> _RotatedVector3DAdjoint
11393  """
11394  _IMP_algebra._RotatedVector3DAdjoint_swiginit(self, _IMP_algebra.new__RotatedVector3DAdjoint(*args))
11395  first = property(_IMP_algebra._RotatedVector3DAdjoint_first_get, _IMP_algebra._RotatedVector3DAdjoint_first_set, doc=r"""first : IMP::VectorD<(3)>""")
11396  second = property(_IMP_algebra._RotatedVector3DAdjoint_second_get, _IMP_algebra._RotatedVector3DAdjoint_second_set, doc=r"""second : IMP::VectorD<(4)>""")
11397  def __len__(self):
11398  return 2
11399  def __repr__(self):
11400  return str((self.first, self.second))
11401  def __getitem__(self, index):
11402  if not (index % 2):
11403  return self.first
11404  else:
11405  return self.second
11406  def __setitem__(self, index, val):
11407  if not (index % 2):
11408  self.first = val
11409  else:
11410  self.second = val
11411  __swig_destroy__ = _IMP_algebra.delete__RotatedVector3DAdjoint
11412 
11413 # Register _RotatedVector3DAdjoint in _IMP_algebra:
11414 _IMP_algebra._RotatedVector3DAdjoint_swigregister(_RotatedVector3DAdjoint)
11415 class _ComposeRotation3DAdjoint(object):
11416  r"""Proxy of C++ std::pair< IMP::VectorD< 4 >,IMP::VectorD< 4 > > class."""
11417 
11418  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11419  __repr__ = _swig_repr
11420 
11421  def __init__(self, *args):
11422  r"""
11423  __init__(_ComposeRotation3DAdjoint self) -> _ComposeRotation3DAdjoint
11424  __init__(_ComposeRotation3DAdjoint self, Vector4D first, Vector4D second) -> _ComposeRotation3DAdjoint
11425  __init__(_ComposeRotation3DAdjoint self, _ComposeRotation3DAdjoint other) -> _ComposeRotation3DAdjoint
11426  """
11427  _IMP_algebra._ComposeRotation3DAdjoint_swiginit(self, _IMP_algebra.new__ComposeRotation3DAdjoint(*args))
11428  first = property(_IMP_algebra._ComposeRotation3DAdjoint_first_get, _IMP_algebra._ComposeRotation3DAdjoint_first_set, doc=r"""first : IMP::VectorD<(4)>""")
11429  second = property(_IMP_algebra._ComposeRotation3DAdjoint_second_get, _IMP_algebra._ComposeRotation3DAdjoint_second_set, doc=r"""second : IMP::VectorD<(4)>""")
11430  def __len__(self):
11431  return 2
11432  def __repr__(self):
11433  return str((self.first, self.second))
11434  def __getitem__(self, index):
11435  if not (index % 2):
11436  return self.first
11437  else:
11438  return self.second
11439  def __setitem__(self, index, val):
11440  if not (index % 2):
11441  self.first = val
11442  else:
11443  self.second = val
11444  __swig_destroy__ = _IMP_algebra.delete__ComposeRotation3DAdjoint
11445 
11446 # Register _ComposeRotation3DAdjoint in _IMP_algebra:
11447 _IMP_algebra._ComposeRotation3DAdjoint_swigregister(_ComposeRotation3DAdjoint)
11448 class _Transformation3DAdjoint(object):
11449  r"""Proxy of C++ std::pair< IMP::VectorD< 4 >,IMP::VectorD< 3 > > class."""
11450 
11451  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11452  __repr__ = _swig_repr
11453 
11454  def __init__(self, *args):
11455  r"""
11456  __init__(_Transformation3DAdjoint self) -> _Transformation3DAdjoint
11457  __init__(_Transformation3DAdjoint self, Vector4D first, Vector3D second) -> _Transformation3DAdjoint
11458  __init__(_Transformation3DAdjoint self, _Transformation3DAdjoint other) -> _Transformation3DAdjoint
11459  """
11460  _IMP_algebra._Transformation3DAdjoint_swiginit(self, _IMP_algebra.new__Transformation3DAdjoint(*args))
11461  first = property(_IMP_algebra._Transformation3DAdjoint_first_get, _IMP_algebra._Transformation3DAdjoint_first_set, doc=r"""first : IMP::VectorD<(4)>""")
11462  second = property(_IMP_algebra._Transformation3DAdjoint_second_get, _IMP_algebra._Transformation3DAdjoint_second_set, doc=r"""second : IMP::VectorD<(3)>""")
11463  def __len__(self):
11464  return 2
11465  def __repr__(self):
11466  return str((self.first, self.second))
11467  def __getitem__(self, index):
11468  if not (index % 2):
11469  return self.first
11470  else:
11471  return self.second
11472  def __setitem__(self, index, val):
11473  if not (index % 2):
11474  self.first = val
11475  else:
11476  self.second = val
11477  __swig_destroy__ = _IMP_algebra.delete__Transformation3DAdjoint
11478 
11479 # Register _Transformation3DAdjoint in _IMP_algebra:
11480 _IMP_algebra._Transformation3DAdjoint_swigregister(_Transformation3DAdjoint)
11481 class _TransformedVector3DAdjoint(object):
11482  r"""Proxy of C++ std::pair< IMP::VectorD< 3 >,std::pair< IMP::VectorD< 4 >,IMP::VectorD< 3 > > > class."""
11483 
11484  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11485  __repr__ = _swig_repr
11486 
11487  def __init__(self, *args):
11488  r"""
11489  __init__(_TransformedVector3DAdjoint self) -> _TransformedVector3DAdjoint
11490  __init__(_TransformedVector3DAdjoint self, Vector3D first, _Transformation3DAdjoint second) -> _TransformedVector3DAdjoint
11491  __init__(_TransformedVector3DAdjoint self, _TransformedVector3DAdjoint other) -> _TransformedVector3DAdjoint
11492  """
11493  _IMP_algebra._TransformedVector3DAdjoint_swiginit(self, _IMP_algebra.new__TransformedVector3DAdjoint(*args))
11494  first = property(_IMP_algebra._TransformedVector3DAdjoint_first_get, _IMP_algebra._TransformedVector3DAdjoint_first_set, doc=r"""first : IMP::VectorD<(3)>""")
11495  second = property(_IMP_algebra._TransformedVector3DAdjoint_second_get, _IMP_algebra._TransformedVector3DAdjoint_second_set, doc=r"""second : std::pair<(IMP::VectorD<(4)>,IMP::VectorD<(3)>)>""")
11496  def __len__(self):
11497  return 2
11498  def __repr__(self):
11499  return str((self.first, self.second))
11500  def __getitem__(self, index):
11501  if not (index % 2):
11502  return self.first
11503  else:
11504  return self.second
11505  def __setitem__(self, index, val):
11506  if not (index % 2):
11507  self.first = val
11508  else:
11509  self.second = val
11510  __swig_destroy__ = _IMP_algebra.delete__TransformedVector3DAdjoint
11511 
11512 # Register _TransformedVector3DAdjoint in _IMP_algebra:
11513 _IMP_algebra._TransformedVector3DAdjoint_swigregister(_TransformedVector3DAdjoint)
11514 class _ComposeTransformation3DAdjoint(object):
11515  r"""Proxy of C++ std::pair< std::pair< IMP::VectorD< 4 >,IMP::VectorD< 3 > >,std::pair< IMP::VectorD< 4 >,IMP::VectorD< 3 > > > class."""
11516 
11517  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11518  __repr__ = _swig_repr
11519 
11520  def __init__(self, *args):
11521  r"""
11522  __init__(_ComposeTransformation3DAdjoint self) -> _ComposeTransformation3DAdjoint
11523  __init__(_ComposeTransformation3DAdjoint self, _Transformation3DAdjoint first, _Transformation3DAdjoint second) -> _ComposeTransformation3DAdjoint
11524  __init__(_ComposeTransformation3DAdjoint self, _ComposeTransformation3DAdjoint other) -> _ComposeTransformation3DAdjoint
11525  """
11526  _IMP_algebra._ComposeTransformation3DAdjoint_swiginit(self, _IMP_algebra.new__ComposeTransformation3DAdjoint(*args))
11527  first = property(_IMP_algebra._ComposeTransformation3DAdjoint_first_get, _IMP_algebra._ComposeTransformation3DAdjoint_first_set, doc=r"""first : std::pair<(IMP::VectorD<(4)>,IMP::VectorD<(3)>)>""")
11528  second = property(_IMP_algebra._ComposeTransformation3DAdjoint_second_get, _IMP_algebra._ComposeTransformation3DAdjoint_second_set, doc=r"""second : std::pair<(IMP::VectorD<(4)>,IMP::VectorD<(3)>)>""")
11529  def __len__(self):
11530  return 2
11531  def __repr__(self):
11532  return str((self.first, self.second))
11533  def __getitem__(self, index):
11534  if not (index % 2):
11535  return self.first
11536  else:
11537  return self.second
11538  def __setitem__(self, index, val):
11539  if not (index % 2):
11540  self.first = val
11541  else:
11542  self.second = val
11543  __swig_destroy__ = _IMP_algebra.delete__ComposeTransformation3DAdjoint
11544 
11545 # Register _ComposeTransformation3DAdjoint in _IMP_algebra:
11546 _IMP_algebra._ComposeTransformation3DAdjoint_swigregister(_ComposeTransformation3DAdjoint)
11547 
11548 def get_rmsd_transforming_first(tr, v0, v1):
11549  r"""get_rmsd_transforming_first(Transformation3D tr, IMP::algebra::Vector3Ds const & v0, IMP::algebra::Vector3Ds const & v1) -> double"""
11550  return _IMP_algebra.get_rmsd_transforming_first(tr, v0, v1)
11551 
11552 def get_rmsd(v0, v1):
11553  r"""get_rmsd(IMP::algebra::Vector3Ds const & v0, IMP::algebra::Vector3Ds const & v1) -> double"""
11554  return _IMP_algebra.get_rmsd(v0, v1)
11555 
11556 def get_weighted_rmsd_transforming_first(tr, v0, v1, weights):
11557  r"""get_weighted_rmsd_transforming_first(Transformation3D tr, IMP::algebra::Vector3Ds const & v0, IMP::algebra::Vector3Ds const & v1, IMP::Floats const & weights) -> double"""
11558  return _IMP_algebra.get_weighted_rmsd_transforming_first(tr, v0, v1, weights)
11559 
11560 def get_weighted_rmsd(v0, v1, weights):
11561  r"""get_weighted_rmsd(IMP::algebra::Vector3Ds const & v0, IMP::algebra::Vector3Ds const & v1, IMP::Floats const & weights) -> double"""
11562  return _IMP_algebra.get_weighted_rmsd(v0, v1, weights)
11563 
11564 LinearFit=LinearFit2D
11565 ParabolicFit=ParabolicFit2D
11566 
11567 
11568 def __setup_vector_d_aliases():
11569  for n in "123456K":
11570  for func in ('get_basis_vector', 'get_zero_vector',
11571  'get_ones_vector'):
11572  funcname = func + "_" + n.lower() + 'd'
11573  globals()[funcname] = getattr(IMP, funcname)
11574  for cls in ('Vector' + n + 'D', 'Vector' + n + 'Ds'):
11575  globals()[cls] = getattr(IMP, cls)
11576 
11577 __setup_vector_d_aliases()
11578 
11579 get_vector_product = IMP.get_vector_product
11580 get_orthogonal_vector = IMP.get_orthogonal_vector
11581 get_centroid = IMP.get_centroid
11582 get_radius_of_gyration = IMP.get_radius_of_gyration
11583 
11584 
11585 def get_module_name():
11586  r"""get_module_name() -> std::string const"""
11587  return _IMP_algebra.get_module_name()
11588 
11589 def get_module_version():
11590  r"""get_module_version() -> std::string const"""
11591  return _IMP_algebra.get_module_version()
11592 
11593 def get_example_path(fname):
11594  r"""get_example_path(std::string fname) -> std::string"""
11595  return _IMP_algebra.get_example_path(fname)
11596 
11597 def get_data_path(fname):
11598  r"""get_data_path(std::string fname) -> std::string"""
11599  return _IMP_algebra.get_data_path(fname)
11600 
11601 from . import _version_check
11602 _version_check.check_version(get_module_version())
11603 __version__ = get_module_version()
11604 
11605 
bool get_is_big_endian()
Returns 1 if machine is big endian else 0.
BoundingBoxD<-1 > BoundingBoxKD
Typedef for Python.
Definition: BoundingBoxD.h:201
Rotation3D get_rotation_about_normalized_axis(const Vector3D &axis_norm, double angle)
Definition: Rotation3D.h:391
double get_height(const Surface &s, const XYZR &d)
Get height of sphere above surface.
Definition: Surface.h:129
Transformation2D get_transformation_aligning_pair(const Vector2Ds &set_from, const Vector2Ds &set_to)
Grid3D< float, DenseGridStorage3D< float > > DenseFloatGrid3D
SphereD< 4 > Sphere4D
Typedef for Python.
Definition: SphereD.h:103
SphereD< 3 > Sphere3D
Typedef for Python.
Definition: SphereD.h:103
VectorD< D > get_random_vector_on(const BoundingBoxD< D > &bb)
Generate a random vector on a box with uniform density.
void write_pts(const Vector3Ds &vs, TextOutput out)
Write a set of 3D vectors to a file.
Grid3D< int, SparseGridStorage3D< int, UnboundedGridStorage3D > > SparseUnboundedIntGrid3D
Rotation3D get_rotation_from_x_y_axes(const Vector3D &x, const Vector3D &y)
BoundingBoxD< 3 > BoundingBox3D
Typedef for Python.
Definition: BoundingBoxD.h:201
Rotation3D get_rotation_from_fixed_xyz(double xr, double yr, double zr)
Initialize a rotation in x-y-z order from three angles.
void compose_adjoint(const Rotation3D &A, const Rotation3D &B, Vector4D DC, Rotation3DAdjoint *DA, Rotation3DAdjoint *DB)
Get adjoint of inputs to compose from adjoint of output.
VectorD< 3 > get_random_vector_on_unit_sphere()
DenseGrid3D< double > get_rasterized(const Gaussian3Ds &gmm, const Floats &weights, double cell_width, const BoundingBox3D &bb)
Rasterize the Gaussians to a grid.
Vector3Ds get_random_chain(unsigned int n, double r, const Vector3D &start=Vector3D(0, 0, 0), const Sphere3Ds &obstacles=Sphere3Ds())
Generate a random chain with no collisions.
Rotation2D compose(const Rotation2D &a, const Rotation2D &b)
Compose two rotations a and b.
Definition: Rotation2D.h:121
Sphere3D get_enclosing_sphere(const Sphere3Ds &ss)
Return a sphere containing the listed spheres.
Vector< VectorD< D > > get_uniform_surface_cover(const SphereD< D > &s, unsigned int n)
Generate a set of vectors which covers a sphere uniformly.
algebra::Rotation3Ds get_uniformly_sampled_rotations(double delta)
Generates a nondegenerate set of Euler angles with a delta resolution.
Vector< VectorD< D > > get_vertices(const BoundingBoxD< D > &bb)
Return a list of the 2^D bounding points for the bounding box.
Definition: BoundingBoxD.h:301
bool get_is_little_endian()
Returns 1 if machine is little endian else 0.
Triangle3D get_largest_triangle(const Vector3Ds &points)
Return the largest triangle defined by 3 points from the input.
An exception for an invalid usage of IMP.
Definition: exception.h:122
Make CGAL functionality available to IMP.
Gaussian3D get_gaussian_from_covariance(const Eigen::Matrix3d &covariance, const Vector3D &center)
Return a Gaussian centered at the origin from a covariance matrix.
IntPairs get_edges(const BoundingBoxD< 3 > &)
Return the edges of the box as indices into the vertices list.
Definition: BoundingBoxD.h:334
PrincipalComponentAnalysisD< D > get_principal_components(const Vector< VectorD< D >> &ps)
Perform principal components analysis on a set of vectors.
double get_area(const Geometry &)
Compute the area of any surface object.
BoundingBoxD< 5 > BoundingBox5D
Typedef for Python.
Definition: BoundingBoxD.h:201
SphereD< 2 > Sphere2D
Typedef for Python.
Definition: SphereD.h:103
BoundingBoxD< D > get_union(BoundingBoxD< D > a, const BoundingBoxD< D > &b)
Return the union bounding box.
Definition: BoundingBoxD.h:281
Transformation3D get_transformation_from_first_triangle_to_second(Triangle3D first_tri, Triangle3D second_tri)
Return a transformation between two triangles.
double get_ball_radius_from_volume_3d(double volume)
Return the radius of a sphere with a given volume.
Definition: Sphere3D.h:35
double get_weighted_rmsd(const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2, const Floats &weights)
Vector3D get_reflected(const Plane3D &pln, const Vector3D &p)
Return the point reflected about the plane.
Definition: Plane3D.h:76
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files.
Grid3D< double, DenseGridStorage3D< double > > DenseDoubleGrid3D
Atom get_atom(Residue rd, AtomType at)
Return a particle atom from the residue.
Vector3D get_centroid(const Vector3Ds &ps)
Return the centroid of a set of vectors.
Definition: Vector3D.h:67
Eigen::MatrixXd get_jacobian_of_composed_wrt_first(const Rotation3D &q, const Rotation3D &p, bool wrt_unnorm=false)
Get gradient of quaternion product with respect to first quaternion.
double get_angle(const Line3D &a, const Line3D &b)
Get angle in radians between two lines around their closest points.
BoundingBoxD< 2 > BoundingBox2D
Typedef for Python.
Definition: BoundingBoxD.h:201
Rotation3D get_rotation_about_axis(const Vector3D &axis, double angle)
Generate a Rotation3D object from a rotation around an axis.
Definition: Rotation3D.h:417
Segment3D get_shortest_segment(const Segment3D &s, const Vector3D &p)
Vector3Ds read_pts(TextInput input)
Read a set of 3D vectors from a file.
BoundingBoxD< D > get_intersection(const BoundingBoxD< D > &a, const BoundingBoxD< D > &b)
Return the intersecting bounding box.
Definition: BoundingBoxD.h:252
IMP::algebra::Transformation3D get_transformation_aligning_first_to_second(const Vector3DsOrXYZs0 &source, const Vector3DsOrXYZs1 &target)
Compute the rigid transform bringing the first point set to the second.
Transformation2D get_rotation_about_point(const Vector2D &point, const Rotation2D &rotation)
Generate a Transformation2D object from a rotation around a point.
double get_volume(const BoundingBoxD< D > &bb)
See BoundingBoxD.
Definition: BoundingBoxD.h:188
Rotation3D get_random_rotation_3d()
Pick a rotation at random from all possible rotations.
bool get_interiors_intersect(const BoundingBoxD< D > &a, const BoundingBoxD< D > &b)
Return true if they intersect.
Definition: BoundingBoxD.h:234
VectorD< D > get_increasing_from_embedded(const UnitSimplexD< D > &s, const VectorD< D > &p)
Convert point on simplex from embedded to increasing coordinates.
Definition: UnitSimplexD.h:148
Ints get_index(const ParticlesTemp &particles, const Subset &subset, const Subsets &excluded)
Common base class for heavy weight IMP objects.
Definition: Object.h:111
VectorD< D > get_embedded_from_increasing(const UnitSimplexD< D > &s, const VectorD< D > &p)
Convert point on simplex from increasing to embedded coordinates.
Definition: UnitSimplexD.h:162
FixedXYZ get_fixed_xyz_from_rotation(const Rotation3D &r)
The inverse of rotation_from_fixed_xyz()
bool get_are_colinear(const Vector3D &p1, const Vector3D &p2, const Vector3D &p3)
Return true if the three points are co-linear.
BoundingBoxD< 4 > BoundingBox4D
Typedef for Python.
Definition: BoundingBoxD.h:201
Rotation2D get_identity_rotation_2d()
Build an identity rotation in 2D.
Definition: Rotation2D.h:103
Sphere3Ds read_spheres(TextInput input)
Read a set of 3D spheres from a file.
Vector3D get_projected(const Line3D &l, const Vector3D &p)
Project a point onto the line.
Rotation3D get_rotation_from_fixed_zyz(double Rot, double Tilt, double Psi)
Generate a rotation object from Euler Angles.
SphereD< 6 > Sphere6D
Typedef for Python.
Definition: SphereD.h:103
double get_rmsd(const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2)
VectorD< D > get_random_vector_in(const BoundingBoxD< D > &bb)
Generate a random vector in a box with uniform density.
double get_squared_distance(const VectorD< D > &v1, const VectorD< D > &v2)
Compute the squared distance between two vectors.
Definition: VectorD.h:187
SphereD< 5 > Sphere5D
Typedef for Python.
Definition: SphereD.h:103
double get_distance(const VectorD< D > &v1, const VectorD< D > &v2)
Compute the distance between two vectors.
Definition: VectorD.h:195
BoundingBoxD<-1 > get_unit_bounding_box_kd(unsigned int d)
Box with radius one.
Definition: BoundingBoxD.h:212
std::pair< Vector3D, double > get_axis_and_angle(const Rotation3D &rot)
Decompose a Rotation3D object into a rotation around an axis.
FloatPair get_surface_area_and_volume(const algebra::Sphere3Ds &ss)
Get surface area & volume of the union of the balls bounded by the spheres.
Transformation3Ds get_alignments_from_first_to_second(const PrincipalComponentAnalysisD< 3 > &pca1, const PrincipalComponentAnalysisD< 3 > &pca2)
Get all alignments of the first principal component system to the second one.
SphereD< 1 > Sphere1D
Typedef for Python.
Definition: SphereD.h:103
Rotation3D get_interpolated(const Rotation3D &a, const Rotation3D &b, double f)
Interpolate between two rotations.
Definition: Rotation3D.h:611
Rotation3D get_rotation_from_vector4d(const VectorD< 4 > &v)
Compute a rotation from an unnormalized quaternion.
Definition: Rotation3D.h:484
BoundingBoxD<-1 > get_cube_kd(unsigned int d, double radius)
Cube with radius of length side.
Definition: BoundingBoxD.h:226
Rotation3D get_rotation_taking_first_to_second(const Vector3D &v1, const Vector3D &v2)
Create a rotation from the first vector to the second one.
Rotation3Ds get_uniform_cover_rotations_3d(unsigned int num_points)
Cover the space of rotations evenly.
Rotation2D get_rotation_to_x_axis(const Vector2D &v)
Definition: Rotation2D.h:113
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
Transformation3D get_identity_transformation_3d()
Return a transformation that does not do anything.
Eigen::MatrixXd get_jacobian_of_composed_wrt_second(const Rotation3D &q, const Rotation3D &p, bool wrt_unnorm=false)
Get Jacobian of quaternion product with respect to second quaternion.
void reversed_read(void *dest, size_t size, size_t nitems, std::ifstream &f, bool reverse)
Reads from file in normal or reverse order.
Rotation3D get_rotation_from_matrix(double m00, double m01, double m02, double m10, double m11, double m12, double m20, double m21, double m22)
Generate a Rotation3D object from a rotation matrix.
Transformation3D get_transformation_3d(const Transformation2D &t2d)
Build a 3D transformation from a 2D one.
double get_relative_projection_on_segment(const Segment3D &s, const algebra::Vector3D &p)
Return the 'relative' projection of a point p onto the line that contains s.
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files.
Eigen::Matrix3d get_covariance(const Gaussian3D &g)
Rotation3D get_identity_rotation_3d()
Return a rotation that does not do anything.
Definition: Rotation3D.h:352
void write_spheres(const Sphere3Ds &vs, TextOutput out)
Write a set of 3D spheres to a file.
Sphere3Ds get_simplified_from_volume(Sphere3Ds in, double maximum_allowed_error_angstroms)
Get a set of balls that approximates the surface of the passed set.
void reversed_write(const void *src, size_t size, size_t nitems, std::ofstream &f, bool reverse=false)
Writes to a file in normal or reversed order.
algebra::Segment3D get_segment_connecting_first_to_second(const Line3D &a, const Line3D &b)
Get shortest possible segment from the first line to the second.
Vector< VectorD< D > > get_grid_interior_cover_by_spacing(const BoundingBoxD< D > &bb, double s)
DenseGrid3D< double > get_rasterized_fast(const Gaussian3Ds &gmm, const Floats &weights, double cell_width, const BoundingBox3D &bb, double factor=2.5)
Rasterize the Gaussians to a grid.
double get_surface_area(const Geometry &)
Compute the surface area of any volumetric object.
double get_rmsd_transforming_first(const Transformation3D &tr, const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2)
Calculate the root mean square deviation between two sets of 3D points.
BoundingBoxD< 6 > BoundingBox6D
Typedef for Python.
Definition: BoundingBoxD.h:201
SphereD<-1 > SphereKD
Typedef for Python.
Definition: SphereD.h:103
ParticleIndexes get_indexes(const ParticlesTemp &ps)
Get the indexes from a list of particles.
DensityMap * get_segment(DensityMap *map_to_segment, int nx_start, int nx_end, int ny_start, int ny_end, int nz_start, int nz_end)
Get a segment of the map according to xyz indexes.
Vector3Ds get_grid_surface_cover(const Cylinder3D &cyl, int number_of_cycles, int number_of_points_on_cycle)
Generate a grid of 3d points on a cylinder surface.
Rotation3D get_rotation_from_fixed_zxz(double phi, double theta, double psi)
Initialize a rotation from Euler angles.
BoundingBoxD< 1 > BoundingBox1D
Typedef for Python.
Definition: BoundingBoxD.h:201
Transformation3D get_random_local_transformation(Vector3D origin, double max_translation=5., double max_angle_in_rad=0.26)
Get a local transformation.
Transformation2D get_identity_transformation_2d()
Return a transformation that does not do anything.
std::string get_module_version()
Return the version of this module, as a string.
ConnollySurfacePoints get_connolly_surface(const algebra::Sphere3Ds &spheres, double density, double probe_radius)
Rotation2D get_random_rotation_2d()
Build an identity rotation in 2D.
Definition: Rotation2D.h:106