Source code for siconos.mechanics.collision.bullet

# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.2
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _sicpybullet
else:
    import _sicpybullet

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


import weakref

class SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _sicpybullet.delete_SwigPyIterator

    def value(self) -> "PyObject *":
        return _sicpybullet.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _sicpybullet.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _sicpybullet.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _sicpybullet.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _sicpybullet.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _sicpybullet.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _sicpybullet.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _sicpybullet.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _sicpybullet.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _sicpybullet.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _sicpybullet.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _sicpybullet.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _sicpybullet.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _sicpybullet.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _sicpybullet.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _sicpybullet.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _sicpybullet:
_sicpybullet.SwigPyIterator_swigregister(SwigPyIterator)

SHARED_PTR_DISOWN = _sicpybullet.SHARED_PTR_DISOWN
[docs] class nullDeleter(object): r""" Using a shared_ptr to hold a pointer to a statically allocated object use create<type>SPtr(<type> &x) cf http://www.boost.org/doc/ """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined") __repr__ = _swig_repr def __call__(self, arg2: "void const *") -> "void": return _sicpybullet.nullDeleter___call__(self, arg2) __swig_destroy__ = _sicpybullet.delete_nullDeleter
# Register nullDeleter in _sicpybullet: _sicpybullet.nullDeleter_swigregister(nullDeleter) class VectorOfVectors(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.VectorOfVectors_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.VectorOfVectors___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.VectorOfVectors___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SiconosVector > >::size_type": return _sicpybullet.VectorOfVectors___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SiconosVector > >::difference_type", j: "std::vector< std::shared_ptr< SiconosVector > >::difference_type") -> "std::vector< std::shared_ptr< SiconosVector >,std::allocator< std::shared_ptr< SiconosVector > > > *": return _sicpybullet.VectorOfVectors___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.VectorOfVectors___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SiconosVector > >::difference_type", j: "std::vector< std::shared_ptr< SiconosVector > >::difference_type") -> "void": return _sicpybullet.VectorOfVectors___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.VectorOfVectors___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type const &": return _sicpybullet.VectorOfVectors___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.VectorOfVectors___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type": return _sicpybullet.VectorOfVectors_pop(self) def append(self, x: "std::vector< std::shared_ptr< SiconosVector > >::value_type const &") -> "void": return _sicpybullet.VectorOfVectors_append(self, x) def empty(self) -> "bool": return _sicpybullet.VectorOfVectors_empty(self) def size(self) -> "std::vector< std::shared_ptr< SiconosVector > >::size_type": return _sicpybullet.VectorOfVectors_size(self) def swap(self, v: "VectorOfVectors") -> "void": return _sicpybullet.VectorOfVectors_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< SiconosVector > >::iterator": return _sicpybullet.VectorOfVectors_begin(self) def end(self) -> "std::vector< std::shared_ptr< SiconosVector > >::iterator": return _sicpybullet.VectorOfVectors_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SiconosVector > >::reverse_iterator": return _sicpybullet.VectorOfVectors_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SiconosVector > >::reverse_iterator": return _sicpybullet.VectorOfVectors_rend(self) def clear(self) -> "void": return _sicpybullet.VectorOfVectors_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SiconosVector > >::allocator_type": return _sicpybullet.VectorOfVectors_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.VectorOfVectors_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SiconosVector > >::iterator": return _sicpybullet.VectorOfVectors_erase(self, *args) def __init__(self, *args): _sicpybullet.VectorOfVectors_swiginit(self, _sicpybullet.new_VectorOfVectors(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SiconosVector > >::value_type const &") -> "void": return _sicpybullet.VectorOfVectors_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type const &": return _sicpybullet.VectorOfVectors_front(self) def back(self) -> "std::vector< std::shared_ptr< SiconosVector > >::value_type const &": return _sicpybullet.VectorOfVectors_back(self) def assign(self, n: "std::vector< std::shared_ptr< SiconosVector > >::size_type", x: "std::vector< std::shared_ptr< SiconosVector > >::value_type const &") -> "void": return _sicpybullet.VectorOfVectors_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.VectorOfVectors_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.VectorOfVectors_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SiconosVector > >::size_type") -> "void": return _sicpybullet.VectorOfVectors_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SiconosVector > >::size_type": return _sicpybullet.VectorOfVectors_capacity(self) __swig_destroy__ = _sicpybullet.delete_VectorOfVectors # Register VectorOfVectors in _sicpybullet: _sicpybullet.VectorOfVectors_swigregister(VectorOfVectors) class VectorOfBlockVectors(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.VectorOfBlockVectors_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.VectorOfBlockVectors___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.VectorOfBlockVectors___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< BlockVector > >::size_type": return _sicpybullet.VectorOfBlockVectors___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< BlockVector > >::difference_type", j: "std::vector< std::shared_ptr< BlockVector > >::difference_type") -> "std::vector< std::shared_ptr< BlockVector >,std::allocator< std::shared_ptr< BlockVector > > > *": return _sicpybullet.VectorOfBlockVectors___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.VectorOfBlockVectors___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< BlockVector > >::difference_type", j: "std::vector< std::shared_ptr< BlockVector > >::difference_type") -> "void": return _sicpybullet.VectorOfBlockVectors___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.VectorOfBlockVectors___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< BlockVector > >::value_type const &": return _sicpybullet.VectorOfBlockVectors___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.VectorOfBlockVectors___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< BlockVector > >::value_type": return _sicpybullet.VectorOfBlockVectors_pop(self) def append(self, x: "std::vector< std::shared_ptr< BlockVector > >::value_type const &") -> "void": return _sicpybullet.VectorOfBlockVectors_append(self, x) def empty(self) -> "bool": return _sicpybullet.VectorOfBlockVectors_empty(self) def size(self) -> "std::vector< std::shared_ptr< BlockVector > >::size_type": return _sicpybullet.VectorOfBlockVectors_size(self) def swap(self, v: "VectorOfBlockVectors") -> "void": return _sicpybullet.VectorOfBlockVectors_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< BlockVector > >::iterator": return _sicpybullet.VectorOfBlockVectors_begin(self) def end(self) -> "std::vector< std::shared_ptr< BlockVector > >::iterator": return _sicpybullet.VectorOfBlockVectors_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< BlockVector > >::reverse_iterator": return _sicpybullet.VectorOfBlockVectors_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< BlockVector > >::reverse_iterator": return _sicpybullet.VectorOfBlockVectors_rend(self) def clear(self) -> "void": return _sicpybullet.VectorOfBlockVectors_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< BlockVector > >::allocator_type": return _sicpybullet.VectorOfBlockVectors_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.VectorOfBlockVectors_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< BlockVector > >::iterator": return _sicpybullet.VectorOfBlockVectors_erase(self, *args) def __init__(self, *args): _sicpybullet.VectorOfBlockVectors_swiginit(self, _sicpybullet.new_VectorOfBlockVectors(*args)) def push_back(self, x: "std::vector< std::shared_ptr< BlockVector > >::value_type const &") -> "void": return _sicpybullet.VectorOfBlockVectors_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< BlockVector > >::value_type const &": return _sicpybullet.VectorOfBlockVectors_front(self) def back(self) -> "std::vector< std::shared_ptr< BlockVector > >::value_type const &": return _sicpybullet.VectorOfBlockVectors_back(self) def assign(self, n: "std::vector< std::shared_ptr< BlockVector > >::size_type", x: "std::vector< std::shared_ptr< BlockVector > >::value_type const &") -> "void": return _sicpybullet.VectorOfBlockVectors_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.VectorOfBlockVectors_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.VectorOfBlockVectors_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< BlockVector > >::size_type") -> "void": return _sicpybullet.VectorOfBlockVectors_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< BlockVector > >::size_type": return _sicpybullet.VectorOfBlockVectors_capacity(self) __swig_destroy__ = _sicpybullet.delete_VectorOfBlockVectors # Register VectorOfBlockVectors in _sicpybullet: _sicpybullet.VectorOfBlockVectors_swigregister(VectorOfBlockVectors) class VectorOfMatrices(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.VectorOfMatrices_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.VectorOfMatrices___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.VectorOfMatrices___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::size_type": return _sicpybullet.VectorOfMatrices___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type") -> "std::vector< std::shared_ptr< SiconosMatrix >,std::allocator< std::shared_ptr< SiconosMatrix > > > *": return _sicpybullet.VectorOfMatrices___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.VectorOfMatrices___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SiconosMatrix > >::difference_type") -> "void": return _sicpybullet.VectorOfMatrices___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.VectorOfMatrices___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &": return _sicpybullet.VectorOfMatrices___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.VectorOfMatrices___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type": return _sicpybullet.VectorOfMatrices_pop(self) def append(self, x: "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &") -> "void": return _sicpybullet.VectorOfMatrices_append(self, x) def empty(self) -> "bool": return _sicpybullet.VectorOfMatrices_empty(self) def size(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::size_type": return _sicpybullet.VectorOfMatrices_size(self) def swap(self, v: "VectorOfMatrices") -> "void": return _sicpybullet.VectorOfMatrices_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::iterator": return _sicpybullet.VectorOfMatrices_begin(self) def end(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::iterator": return _sicpybullet.VectorOfMatrices_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::reverse_iterator": return _sicpybullet.VectorOfMatrices_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::reverse_iterator": return _sicpybullet.VectorOfMatrices_rend(self) def clear(self) -> "void": return _sicpybullet.VectorOfMatrices_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::allocator_type": return _sicpybullet.VectorOfMatrices_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.VectorOfMatrices_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SiconosMatrix > >::iterator": return _sicpybullet.VectorOfMatrices_erase(self, *args) def __init__(self, *args): _sicpybullet.VectorOfMatrices_swiginit(self, _sicpybullet.new_VectorOfMatrices(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &") -> "void": return _sicpybullet.VectorOfMatrices_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &": return _sicpybullet.VectorOfMatrices_front(self) def back(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &": return _sicpybullet.VectorOfMatrices_back(self) def assign(self, n: "std::vector< std::shared_ptr< SiconosMatrix > >::size_type", x: "std::vector< std::shared_ptr< SiconosMatrix > >::value_type const &") -> "void": return _sicpybullet.VectorOfMatrices_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.VectorOfMatrices_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.VectorOfMatrices_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SiconosMatrix > >::size_type") -> "void": return _sicpybullet.VectorOfMatrices_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SiconosMatrix > >::size_type": return _sicpybullet.VectorOfMatrices_capacity(self) __swig_destroy__ = _sicpybullet.delete_VectorOfMatrices # Register VectorOfMatrices in _sicpybullet: _sicpybullet.VectorOfMatrices_swigregister(VectorOfMatrices) class VectorOfSMatrices(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.VectorOfSMatrices_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.VectorOfSMatrices___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.VectorOfSMatrices___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::size_type": return _sicpybullet.VectorOfSMatrices___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type") -> "std::vector< std::shared_ptr< SimpleMatrix >,std::allocator< std::shared_ptr< SimpleMatrix > > > *": return _sicpybullet.VectorOfSMatrices___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.VectorOfSMatrices___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type", j: "std::vector< std::shared_ptr< SimpleMatrix > >::difference_type") -> "void": return _sicpybullet.VectorOfSMatrices___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.VectorOfSMatrices___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &": return _sicpybullet.VectorOfSMatrices___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.VectorOfSMatrices___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type": return _sicpybullet.VectorOfSMatrices_pop(self) def append(self, x: "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &") -> "void": return _sicpybullet.VectorOfSMatrices_append(self, x) def empty(self) -> "bool": return _sicpybullet.VectorOfSMatrices_empty(self) def size(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::size_type": return _sicpybullet.VectorOfSMatrices_size(self) def swap(self, v: "VectorOfSMatrices") -> "void": return _sicpybullet.VectorOfSMatrices_swap(self, v) def begin(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::iterator": return _sicpybullet.VectorOfSMatrices_begin(self) def end(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::iterator": return _sicpybullet.VectorOfSMatrices_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::reverse_iterator": return _sicpybullet.VectorOfSMatrices_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::reverse_iterator": return _sicpybullet.VectorOfSMatrices_rend(self) def clear(self) -> "void": return _sicpybullet.VectorOfSMatrices_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::allocator_type": return _sicpybullet.VectorOfSMatrices_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.VectorOfSMatrices_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SimpleMatrix > >::iterator": return _sicpybullet.VectorOfSMatrices_erase(self, *args) def __init__(self, *args): _sicpybullet.VectorOfSMatrices_swiginit(self, _sicpybullet.new_VectorOfSMatrices(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &") -> "void": return _sicpybullet.VectorOfSMatrices_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &": return _sicpybullet.VectorOfSMatrices_front(self) def back(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &": return _sicpybullet.VectorOfSMatrices_back(self) def assign(self, n: "std::vector< std::shared_ptr< SimpleMatrix > >::size_type", x: "std::vector< std::shared_ptr< SimpleMatrix > >::value_type const &") -> "void": return _sicpybullet.VectorOfSMatrices_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.VectorOfSMatrices_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.VectorOfSMatrices_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SimpleMatrix > >::size_type") -> "void": return _sicpybullet.VectorOfSMatrices_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SimpleMatrix > >::size_type": return _sicpybullet.VectorOfSMatrices_capacity(self) __swig_destroy__ = _sicpybullet.delete_VectorOfSMatrices # Register VectorOfSMatrices in _sicpybullet: _sicpybullet.VectorOfSMatrices_swigregister(VectorOfSMatrices) class VectorOfMemories(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.VectorOfMemories_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.VectorOfMemories___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.VectorOfMemories___bool__(self) def __len__(self) -> "std::vector< SiconosMemory >::size_type": return _sicpybullet.VectorOfMemories___len__(self) def __getslice__(self, i: "std::vector< SiconosMemory >::difference_type", j: "std::vector< SiconosMemory >::difference_type") -> "std::vector< SiconosMemory,std::allocator< SiconosMemory > > *": return _sicpybullet.VectorOfMemories___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.VectorOfMemories___setslice__(self, *args) def __delslice__(self, i: "std::vector< SiconosMemory >::difference_type", j: "std::vector< SiconosMemory >::difference_type") -> "void": return _sicpybullet.VectorOfMemories___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.VectorOfMemories___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< SiconosMemory >::value_type const &": return _sicpybullet.VectorOfMemories___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.VectorOfMemories___setitem__(self, *args) def pop(self) -> "std::vector< SiconosMemory >::value_type": return _sicpybullet.VectorOfMemories_pop(self) def append(self, x: "SiconosMemory") -> "void": return _sicpybullet.VectorOfMemories_append(self, x) def empty(self) -> "bool": return _sicpybullet.VectorOfMemories_empty(self) def size(self) -> "std::vector< SiconosMemory >::size_type": return _sicpybullet.VectorOfMemories_size(self) def swap(self, v: "VectorOfMemories") -> "void": return _sicpybullet.VectorOfMemories_swap(self, v) def begin(self) -> "std::vector< SiconosMemory >::iterator": return _sicpybullet.VectorOfMemories_begin(self) def end(self) -> "std::vector< SiconosMemory >::iterator": return _sicpybullet.VectorOfMemories_end(self) def rbegin(self) -> "std::vector< SiconosMemory >::reverse_iterator": return _sicpybullet.VectorOfMemories_rbegin(self) def rend(self) -> "std::vector< SiconosMemory >::reverse_iterator": return _sicpybullet.VectorOfMemories_rend(self) def clear(self) -> "void": return _sicpybullet.VectorOfMemories_clear(self) def get_allocator(self) -> "std::vector< SiconosMemory >::allocator_type": return _sicpybullet.VectorOfMemories_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.VectorOfMemories_pop_back(self) def erase(self, *args) -> "std::vector< SiconosMemory >::iterator": return _sicpybullet.VectorOfMemories_erase(self, *args) def __init__(self, *args): _sicpybullet.VectorOfMemories_swiginit(self, _sicpybullet.new_VectorOfMemories(*args)) def push_back(self, x: "SiconosMemory") -> "void": return _sicpybullet.VectorOfMemories_push_back(self, x) def front(self) -> "std::vector< SiconosMemory >::value_type const &": return _sicpybullet.VectorOfMemories_front(self) def back(self) -> "std::vector< SiconosMemory >::value_type const &": return _sicpybullet.VectorOfMemories_back(self) def assign(self, n: "std::vector< SiconosMemory >::size_type", x: "SiconosMemory") -> "void": return _sicpybullet.VectorOfMemories_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.VectorOfMemories_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.VectorOfMemories_insert(self, *args) def reserve(self, n: "std::vector< SiconosMemory >::size_type") -> "void": return _sicpybullet.VectorOfMemories_reserve(self, n) def capacity(self) -> "std::vector< SiconosMemory >::size_type": return _sicpybullet.VectorOfMemories_capacity(self) __swig_destroy__ = _sicpybullet.delete_VectorOfMemories # Register VectorOfMemories in _sicpybullet: _sicpybullet.VectorOfMemories_swigregister(VectorOfMemories) class UnsignedIntVector(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.UnsignedIntVector_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.UnsignedIntVector___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.UnsignedIntVector___bool__(self) def __len__(self) -> "std::vector< unsigned int >::size_type": return _sicpybullet.UnsignedIntVector___len__(self) def __getslice__(self, i: "std::vector< unsigned int >::difference_type", j: "std::vector< unsigned int >::difference_type") -> "std::vector< unsigned int,std::allocator< unsigned int > > *": return _sicpybullet.UnsignedIntVector___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.UnsignedIntVector___setslice__(self, *args) def __delslice__(self, i: "std::vector< unsigned int >::difference_type", j: "std::vector< unsigned int >::difference_type") -> "void": return _sicpybullet.UnsignedIntVector___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.UnsignedIntVector___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< unsigned int >::value_type const &": return _sicpybullet.UnsignedIntVector___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.UnsignedIntVector___setitem__(self, *args) def pop(self) -> "std::vector< unsigned int >::value_type": return _sicpybullet.UnsignedIntVector_pop(self) def append(self, x: "std::vector< unsigned int >::value_type const &") -> "void": return _sicpybullet.UnsignedIntVector_append(self, x) def empty(self) -> "bool": return _sicpybullet.UnsignedIntVector_empty(self) def size(self) -> "std::vector< unsigned int >::size_type": return _sicpybullet.UnsignedIntVector_size(self) def swap(self, v: "UnsignedIntVector") -> "void": return _sicpybullet.UnsignedIntVector_swap(self, v) def begin(self) -> "std::vector< unsigned int >::iterator": return _sicpybullet.UnsignedIntVector_begin(self) def end(self) -> "std::vector< unsigned int >::iterator": return _sicpybullet.UnsignedIntVector_end(self) def rbegin(self) -> "std::vector< unsigned int >::reverse_iterator": return _sicpybullet.UnsignedIntVector_rbegin(self) def rend(self) -> "std::vector< unsigned int >::reverse_iterator": return _sicpybullet.UnsignedIntVector_rend(self) def clear(self) -> "void": return _sicpybullet.UnsignedIntVector_clear(self) def get_allocator(self) -> "std::vector< unsigned int >::allocator_type": return _sicpybullet.UnsignedIntVector_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.UnsignedIntVector_pop_back(self) def erase(self, *args) -> "std::vector< unsigned int >::iterator": return _sicpybullet.UnsignedIntVector_erase(self, *args) def __init__(self, *args): _sicpybullet.UnsignedIntVector_swiginit(self, _sicpybullet.new_UnsignedIntVector(*args)) def push_back(self, x: "std::vector< unsigned int >::value_type const &") -> "void": return _sicpybullet.UnsignedIntVector_push_back(self, x) def front(self) -> "std::vector< unsigned int >::value_type const &": return _sicpybullet.UnsignedIntVector_front(self) def back(self) -> "std::vector< unsigned int >::value_type const &": return _sicpybullet.UnsignedIntVector_back(self) def assign(self, n: "std::vector< unsigned int >::size_type", x: "std::vector< unsigned int >::value_type const &") -> "void": return _sicpybullet.UnsignedIntVector_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.UnsignedIntVector_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.UnsignedIntVector_insert(self, *args) def reserve(self, n: "std::vector< unsigned int >::size_type") -> "void": return _sicpybullet.UnsignedIntVector_reserve(self, n) def capacity(self) -> "std::vector< unsigned int >::size_type": return _sicpybullet.UnsignedIntVector_capacity(self) __swig_destroy__ = _sicpybullet.delete_UnsignedIntVector # Register UnsignedIntVector in _sicpybullet: _sicpybullet.UnsignedIntVector_swigregister(UnsignedIntVector) import siconos.kernel class SpaceFilter(siconos.kernel.InteractionManager, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _bboxfactor = property(_sicpybullet.SpaceFilter__bboxfactor_get, _sicpybullet.SpaceFilter__bboxfactor_set, doc=r""" the bounding box factor is multiplicated by the largest object dimension """) _cellsize = property(_sicpybullet.SpaceFilter__cellsize_get, _sicpybullet.SpaceFilter__cellsize_set, doc=r""" the cell size""") _plans = property(_sicpybullet.SpaceFilter__plans_get, _sicpybullet.SpaceFilter__plans_set, doc=r""" plans""") _moving_plans = property(_sicpybullet.SpaceFilter__moving_plans_get, _sicpybullet.SpaceFilter__moving_plans_set, doc=r""" moving plans""") _hash_table = property(_sicpybullet.SpaceFilter__hash_table_get, _sicpybullet.SpaceFilter__hash_table_set) diskdisk_relations = property(_sicpybullet.SpaceFilter_diskdisk_relations_get, _sicpybullet.SpaceFilter_diskdisk_relations_set) diskplan_relations = property(_sicpybullet.SpaceFilter_diskplan_relations_get, _sicpybullet.SpaceFilter_diskplan_relations_set) circlecircle_relations = property(_sicpybullet.SpaceFilter_circlecircle_relations_get, _sicpybullet.SpaceFilter_circlecircle_relations_set) def _PlanCircularFilter(self, arg2: "SP::Simulation", A: "double", B: "double", C: "double", xCenter: "double", yCenter: "double", width: "double", ds: "SP::CircularDS") -> "void": return _sicpybullet.SpaceFilter__PlanCircularFilter(self, arg2, A, B, C, xCenter, yCenter, width, ds) def _MovingPlanCircularFilter(self, arg2: "SP::Simulation", i: "unsigned int", ds: "SP::CircularDS", time: "double") -> "void": return _sicpybullet.SpaceFilter__MovingPlanCircularFilter(self, arg2, i, ds, time) def _PlanSphereLDSFilter(self, arg2: "SP::Simulation", A: "double", B: "double", C: "double", D: "double", ds: "SP::SphereLDS") -> "void": return _sicpybullet.SpaceFilter__PlanSphereLDSFilter(self, arg2, A, B, C, D, ds) def _PlanSphereNEDSFilter(self, arg2: "SP::Simulation", A: "double", B: "double", C: "double", D: "double", ds: "SP::SphereNEDS") -> "void": return _sicpybullet.SpaceFilter__PlanSphereNEDSFilter(self, arg2, A, B, C, D, ds) def __init__(self, *args): if self.__class__ == SpaceFilter: _self = None else: _self = self _sicpybullet.SpaceFilter_swiginit(self, _sicpybullet.new_SpaceFilter(_self, *args)) def insert(self, *args) -> "void": r""" *Overload 1:* 2D/3D objects insertion | *Overload 2:* general hashed object """ return _sicpybullet.SpaceFilter_insert(self, *args) def bboxfactor(self) -> "unsigned int": r""" get parameters""" return _sicpybullet.SpaceFilter_bboxfactor(self) def cellsize(self) -> "unsigned int": return _sicpybullet.SpaceFilter_cellsize(self) def setBBoxfactor(self, value: "unsigned int") -> "void": return _sicpybullet.SpaceFilter_setBBoxfactor(self, value) def setCellsize(self, value: "unsigned int") -> "void": return _sicpybullet.SpaceFilter_setCellsize(self, value) def haveNeighbours(self, h: "SP::Hashed") -> "bool": r""" get the neighbours Just test the presence of neighbours. :type h: SP::Hashed :param h: hashed component of a body. """ return _sicpybullet.SpaceFilter_haveNeighbours(self, h) def minDistance(self, h: "SP::Hashed") -> "double": r""" Give the minimal distance. :type h: SP::Hashed :param h: hashed component of a body. """ return _sicpybullet.SpaceFilter_minDistance(self, h) def updateInteractions(self, simulation: "SP::Simulation") -> "void": r""" Broadphase contact detection: add interactions in indexSet 0. :type simulation: :py:class:`Simulation` :param simulation: the current simulation setup """ return _sicpybullet.SpaceFilter_updateInteractions(self, simulation) def insertLine(self, a: "double", b: "double", c: "double") -> "void": return _sicpybullet.SpaceFilter_insertLine(self, a, b, c) __swig_destroy__ = _sicpybullet.delete_SpaceFilter def __disown__(self): self.this.disown() _sicpybullet.disown_SpaceFilter(self) return weakref.proxy(self) # Register SpaceFilter in _sicpybullet: _sicpybullet.SpaceFilter_swigregister(SpaceFilter)
[docs] class SiconosBodies(object): r""" SiconosBodies : a Siconos Model, some plans and space filtering capabilities""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _moving_plans = property(_sicpybullet.SiconosBodies__moving_plans_get, _sicpybullet.SiconosBodies__moving_plans_set) _plans = property(_sicpybullet.SiconosBodies__plans_get, _sicpybullet.SiconosBodies__plans_set) _sim = property(_sicpybullet.SiconosBodies__sim_get, _sicpybullet.SiconosBodies__sim_set) _playground = property(_sicpybullet.SiconosBodies__playground_get, _sicpybullet.SiconosBodies__playground_set) def init(self) -> "void": return _sicpybullet.SiconosBodies_init(self) def compute(self) -> "void": return _sicpybullet.SiconosBodies_compute(self) def simulation(self) -> "SP::Simulation": return _sicpybullet.SiconosBodies_simulation(self) def movingPlans(self) -> "SP::FMatrix": return _sicpybullet.SiconosBodies_movingPlans(self) def plans(self) -> "SP::SiconosMatrix": return _sicpybullet.SiconosBodies_plans(self) def spaceFilter(self) -> "SP::SpaceFilter": return _sicpybullet.SiconosBodies_spaceFilter(self) __swig_destroy__ = _sicpybullet.delete_SiconosBodies def __init__(self): if self.__class__ == SiconosBodies: _self = None else: _self = self _sicpybullet.SiconosBodies_swiginit(self, _sicpybullet.new_SiconosBodies(_self, )) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosBodies(self) return weakref.proxy(self)
# Register SiconosBodies in _sicpybullet: _sicpybullet.SiconosBodies_swigregister(SiconosBodies) class VectorOfSPSiconosContactor(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.VectorOfSPSiconosContactor_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.VectorOfSPSiconosContactor___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.VectorOfSPSiconosContactor___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::size_type": return _sicpybullet.VectorOfSPSiconosContactor___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SiconosContactor > >::difference_type", j: "std::vector< std::shared_ptr< SiconosContactor > >::difference_type") -> "std::vector< std::shared_ptr< SiconosContactor >,std::allocator< std::shared_ptr< SiconosContactor > > > *": return _sicpybullet.VectorOfSPSiconosContactor___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosContactor___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SiconosContactor > >::difference_type", j: "std::vector< std::shared_ptr< SiconosContactor > >::difference_type") -> "void": return _sicpybullet.VectorOfSPSiconosContactor___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosContactor___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SiconosContactor > >::value_type const &": return _sicpybullet.VectorOfSPSiconosContactor___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosContactor___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::value_type": return _sicpybullet.VectorOfSPSiconosContactor_pop(self) def append(self, x: "std::vector< std::shared_ptr< SiconosContactor > >::value_type const &") -> "void": return _sicpybullet.VectorOfSPSiconosContactor_append(self, x) def empty(self) -> "bool": return _sicpybullet.VectorOfSPSiconosContactor_empty(self) def size(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::size_type": return _sicpybullet.VectorOfSPSiconosContactor_size(self) def begin(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::iterator": return _sicpybullet.VectorOfSPSiconosContactor_begin(self) def end(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::iterator": return _sicpybullet.VectorOfSPSiconosContactor_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::reverse_iterator": return _sicpybullet.VectorOfSPSiconosContactor_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::reverse_iterator": return _sicpybullet.VectorOfSPSiconosContactor_rend(self) def clear(self) -> "void": return _sicpybullet.VectorOfSPSiconosContactor_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::allocator_type": return _sicpybullet.VectorOfSPSiconosContactor_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.VectorOfSPSiconosContactor_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SiconosContactor > >::iterator": return _sicpybullet.VectorOfSPSiconosContactor_erase(self, *args) def __init__(self, *args): _sicpybullet.VectorOfSPSiconosContactor_swiginit(self, _sicpybullet.new_VectorOfSPSiconosContactor(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SiconosContactor > >::value_type const &") -> "void": return _sicpybullet.VectorOfSPSiconosContactor_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::value_type const &": return _sicpybullet.VectorOfSPSiconosContactor_front(self) def back(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::value_type const &": return _sicpybullet.VectorOfSPSiconosContactor_back(self) def assign(self, n: "std::vector< std::shared_ptr< SiconosContactor > >::size_type", x: "std::vector< std::shared_ptr< SiconosContactor > >::value_type const &") -> "void": return _sicpybullet.VectorOfSPSiconosContactor_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosContactor_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosContactor_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SiconosContactor > >::size_type") -> "void": return _sicpybullet.VectorOfSPSiconosContactor_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SiconosContactor > >::size_type": return _sicpybullet.VectorOfSPSiconosContactor_capacity(self) __swig_destroy__ = _sicpybullet.delete_VectorOfSPSiconosContactor # Register VectorOfSPSiconosContactor in _sicpybullet: _sicpybullet.VectorOfSPSiconosContactor_swigregister(VectorOfSPSiconosContactor) class VectorOfSPSiconosCollisionQueryResult(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::size_type": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::difference_type", j: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::difference_type") -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult >,std::allocator< std::shared_ptr< SiconosCollisionQueryResult > > > *": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::difference_type", j: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::difference_type") -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::value_type const &": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::value_type": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_pop(self) def append(self, x: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::value_type const &") -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_append(self, x) def empty(self) -> "bool": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_empty(self) def size(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::size_type": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_size(self) def begin(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::iterator": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_begin(self) def end(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::iterator": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::reverse_iterator": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::reverse_iterator": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_rend(self) def clear(self) -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::allocator_type": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::iterator": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_erase(self, *args) def __init__(self, *args): _sicpybullet.VectorOfSPSiconosCollisionQueryResult_swiginit(self, _sicpybullet.new_VectorOfSPSiconosCollisionQueryResult(*args)) def push_back(self, x: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::value_type const &") -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::value_type const &": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_front(self) def back(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::value_type const &": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_back(self) def assign(self, n: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::size_type", x: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::value_type const &") -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::size_type") -> "void": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< SiconosCollisionQueryResult > >::size_type": return _sicpybullet.VectorOfSPSiconosCollisionQueryResult_capacity(self) __swig_destroy__ = _sicpybullet.delete_VectorOfSPSiconosCollisionQueryResult # Register VectorOfSPSiconosCollisionQueryResult in _sicpybullet: _sicpybullet.VectorOfSPSiconosCollisionQueryResult_swigregister(VectorOfSPSiconosCollisionQueryResult) class SiconosShape(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _inside_margin = property(_sicpybullet.SiconosShape__inside_margin_get, _sicpybullet.SiconosShape__inside_margin_set) _outside_margin = property(_sicpybullet.SiconosShape__outside_margin_get, _sicpybullet.SiconosShape__outside_margin_set) _version = property(_sicpybullet.SiconosShape__version_get, _sicpybullet.SiconosShape__version_set) def __init__(self): if self.__class__ == SiconosShape: _self = None else: _self = self _sicpybullet.SiconosShape_swiginit(self, _sicpybullet.new_SiconosShape(_self, )) __swig_destroy__ = _sicpybullet.delete_SiconosShape def setInsideMargin(self, margin: "double") -> "void": r""" Set the inside margin of the shape. This is a distance that the contour should be shrunk to improve contact detection robustness. It will have an effect on the roundness of corners. """ return _sicpybullet.SiconosShape_setInsideMargin(self, margin) def setOutsideMargin(self, margin: "double") -> "void": r""" Set the outside margin of the shape. This is the distance from the contact shell to an external shell used to detect contacts in advance. The implementation will detect contact points on the external shell and project them back to the contact shell. Note: Currently not working in Bullet implementation! Better to leave at zero. """ return _sicpybullet.SiconosShape_setOutsideMargin(self, margin) def insideMargin(self) -> "double": return _sicpybullet.SiconosShape_insideMargin(self) def outsideMargin(self) -> "double": return _sicpybullet.SiconosShape_outsideMargin(self) def version(self) -> "unsigned int": return _sicpybullet.SiconosShape_version(self) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosShape(self) return weakref.proxy(self) # Register SiconosShape in _sicpybullet: _sicpybullet.SiconosShape_swigregister(SiconosShape) class SiconosPlane(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): if self.__class__ == SiconosPlane: _self = None else: _self = self _sicpybullet.SiconosPlane_swiginit(self, _sicpybullet.new_SiconosPlane(_self, )) __swig_destroy__ = _sicpybullet.delete_SiconosPlane def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosPlane(self) return weakref.proxy(self) # Register SiconosPlane in _sicpybullet: _sicpybullet.SiconosPlane_swigregister(SiconosPlane) class SiconosSphere(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _radius = property(_sicpybullet.SiconosSphere__radius_get, _sicpybullet.SiconosSphere__radius_set) def __init__(self, radius: "float"): if self.__class__ == SiconosSphere: _self = None else: _self = self _sicpybullet.SiconosSphere_swiginit(self, _sicpybullet.new_SiconosSphere(_self, radius)) __swig_destroy__ = _sicpybullet.delete_SiconosSphere def radius(self) -> "float": return _sicpybullet.SiconosSphere_radius(self) def setRadius(self, r: "float") -> "void": return _sicpybullet.SiconosSphere_setRadius(self, r) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosSphere(self) return weakref.proxy(self) # Register SiconosSphere in _sicpybullet: _sicpybullet.SiconosSphere_swigregister(SiconosSphere) class SiconosBox(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _dimensions = property(_sicpybullet.SiconosBox__dimensions_get, _sicpybullet.SiconosBox__dimensions_set) def __init__(self, *args): if self.__class__ == SiconosBox: _self = None else: _self = self _sicpybullet.SiconosBox_swiginit(self, _sicpybullet.new_SiconosBox(_self, *args)) __swig_destroy__ = _sicpybullet.delete_SiconosBox def dimensions(self) -> "SP::SiconosVector": return _sicpybullet.SiconosBox_dimensions(self) def setDimensions(self, *args) -> "void": return _sicpybullet.SiconosBox_setDimensions(self, *args) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosBox(self) return weakref.proxy(self) # Register SiconosBox in _sicpybullet: _sicpybullet.SiconosBox_swigregister(SiconosBox) class SiconosCylinder(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _radius = property(_sicpybullet.SiconosCylinder__radius_get, _sicpybullet.SiconosCylinder__radius_set) _length = property(_sicpybullet.SiconosCylinder__length_get, _sicpybullet.SiconosCylinder__length_set) def __init__(self, radius: "float", length: "float"): if self.__class__ == SiconosCylinder: _self = None else: _self = self _sicpybullet.SiconosCylinder_swiginit(self, _sicpybullet.new_SiconosCylinder(_self, radius, length)) __swig_destroy__ = _sicpybullet.delete_SiconosCylinder def setRadius(self, radius: "double") -> "void": return _sicpybullet.SiconosCylinder_setRadius(self, radius) def radius(self) -> "double": return _sicpybullet.SiconosCylinder_radius(self) def setLength(self, length: "double") -> "void": return _sicpybullet.SiconosCylinder_setLength(self, length) def length(self) -> "double": return _sicpybullet.SiconosCylinder_length(self) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosCylinder(self) return weakref.proxy(self) # Register SiconosCylinder in _sicpybullet: _sicpybullet.SiconosCylinder_swigregister(SiconosCylinder) class SiconosCone(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _radius = property(_sicpybullet.SiconosCone__radius_get, _sicpybullet.SiconosCone__radius_set) _length = property(_sicpybullet.SiconosCone__length_get, _sicpybullet.SiconosCone__length_set) def __init__(self, radius: "float", length: "float"): if self.__class__ == SiconosCone: _self = None else: _self = self _sicpybullet.SiconosCone_swiginit(self, _sicpybullet.new_SiconosCone(_self, radius, length)) __swig_destroy__ = _sicpybullet.delete_SiconosCone def setRadius(self, radius: "double") -> "void": return _sicpybullet.SiconosCone_setRadius(self, radius) def radius(self) -> "double": return _sicpybullet.SiconosCone_radius(self) def setLength(self, length: "double") -> "void": return _sicpybullet.SiconosCone_setLength(self, length) def length(self) -> "double": return _sicpybullet.SiconosCone_length(self) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosCone(self) return weakref.proxy(self) # Register SiconosCone in _sicpybullet: _sicpybullet.SiconosCone_swigregister(SiconosCone) class SiconosCapsule(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _radius = property(_sicpybullet.SiconosCapsule__radius_get, _sicpybullet.SiconosCapsule__radius_set) _length = property(_sicpybullet.SiconosCapsule__length_get, _sicpybullet.SiconosCapsule__length_set) def __init__(self, radius: "float", length: "float"): if self.__class__ == SiconosCapsule: _self = None else: _self = self _sicpybullet.SiconosCapsule_swiginit(self, _sicpybullet.new_SiconosCapsule(_self, radius, length)) __swig_destroy__ = _sicpybullet.delete_SiconosCapsule def setRadius(self, radius: "double") -> "void": return _sicpybullet.SiconosCapsule_setRadius(self, radius) def radius(self) -> "double": return _sicpybullet.SiconosCapsule_radius(self) def setLength(self, length: "double") -> "void": return _sicpybullet.SiconosCapsule_setLength(self, length) def length(self) -> "double": return _sicpybullet.SiconosCapsule_length(self) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosCapsule(self) return weakref.proxy(self) # Register SiconosCapsule in _sicpybullet: _sicpybullet.SiconosCapsule_swigregister(SiconosCapsule) class SiconosConvexHull(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _vertices = property(_sicpybullet.SiconosConvexHull__vertices_get, _sicpybullet.SiconosConvexHull__vertices_set) def __init__(self, vertices: "SP::SiconosMatrix"): if self.__class__ == SiconosConvexHull: _self = None else: _self = self _sicpybullet.SiconosConvexHull_swiginit(self, _sicpybullet.new_SiconosConvexHull(_self, vertices)) __swig_destroy__ = _sicpybullet.delete_SiconosConvexHull def vertices(self) -> "SP::SiconosMatrix": return _sicpybullet.SiconosConvexHull_vertices(self) def setVertices(self, vertices: "SP::SiconosMatrix") -> "void": return _sicpybullet.SiconosConvexHull_setVertices(self, vertices) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosConvexHull(self) return weakref.proxy(self) # Register SiconosConvexHull in _sicpybullet: _sicpybullet.SiconosConvexHull_swigregister(SiconosConvexHull) class SiconosMesh(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _indexes = property(_sicpybullet.SiconosMesh__indexes_get, _sicpybullet.SiconosMesh__indexes_set) _vertices = property(_sicpybullet.SiconosMesh__vertices_get, _sicpybullet.SiconosMesh__vertices_set) def __init__(self, indexes: "unsignedintv", vertices: "SP::SiconosMatrix"): if self.__class__ == SiconosMesh: _self = None else: _self = self _sicpybullet.SiconosMesh_swiginit(self, _sicpybullet.new_SiconosMesh(_self, indexes, vertices)) def indexes(self) -> "SP::VUInt": return _sicpybullet.SiconosMesh_indexes(self) def vertices(self) -> "SP::SiconosMatrix": return _sicpybullet.SiconosMesh_vertices(self) __swig_destroy__ = _sicpybullet.delete_SiconosMesh def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosMesh(self) return weakref.proxy(self) # Register SiconosMesh in _sicpybullet: _sicpybullet.SiconosMesh_swigregister(SiconosMesh) class SiconosHeightMap(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _height_data = property(_sicpybullet.SiconosHeightMap__height_data_get, _sicpybullet.SiconosHeightMap__height_data_set) _length_x = property(_sicpybullet.SiconosHeightMap__length_x_get, _sicpybullet.SiconosHeightMap__length_x_set) _length_y = property(_sicpybullet.SiconosHeightMap__length_y_get, _sicpybullet.SiconosHeightMap__length_y_set) def __init__(self, height_data: "SP::SiconosMatrix", length_x: "double", length_y: "double"): if self.__class__ == SiconosHeightMap: _self = None else: _self = self _sicpybullet.SiconosHeightMap_swiginit(self, _sicpybullet.new_SiconosHeightMap(_self, height_data, length_x, length_y)) def height_data(self) -> "SP::SiconosMatrix": return _sicpybullet.SiconosHeightMap_height_data(self) def length_x(self) -> "double": return _sicpybullet.SiconosHeightMap_length_x(self) def length_y(self) -> "double": return _sicpybullet.SiconosHeightMap_length_y(self) __swig_destroy__ = _sicpybullet.delete_SiconosHeightMap def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosHeightMap(self) return weakref.proxy(self) # Register SiconosHeightMap in _sicpybullet: _sicpybullet.SiconosHeightMap_swigregister(SiconosHeightMap) class SiconosDisk(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _radius = property(_sicpybullet.SiconosDisk__radius_get, _sicpybullet.SiconosDisk__radius_set) def __init__(self, radius: "float"): if self.__class__ == SiconosDisk: _self = None else: _self = self _sicpybullet.SiconosDisk_swiginit(self, _sicpybullet.new_SiconosDisk(_self, radius)) __swig_destroy__ = _sicpybullet.delete_SiconosDisk def radius(self) -> "float": return _sicpybullet.SiconosDisk_radius(self) def setRadius(self, r: "float") -> "void": return _sicpybullet.SiconosDisk_setRadius(self, r) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosDisk(self) return weakref.proxy(self) # Register SiconosDisk in _sicpybullet: _sicpybullet.SiconosDisk_swigregister(SiconosDisk) class SiconosBox2d(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _dimensions = property(_sicpybullet.SiconosBox2d__dimensions_get, _sicpybullet.SiconosBox2d__dimensions_set) def __init__(self, *args): if self.__class__ == SiconosBox2d: _self = None else: _self = self _sicpybullet.SiconosBox2d_swiginit(self, _sicpybullet.new_SiconosBox2d(_self, *args)) __swig_destroy__ = _sicpybullet.delete_SiconosBox2d def dimensions(self) -> "SP::SiconosVector": return _sicpybullet.SiconosBox2d_dimensions(self) def setDimensions(self, *args) -> "void": return _sicpybullet.SiconosBox2d_setDimensions(self, *args) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosBox2d(self) return weakref.proxy(self) # Register SiconosBox2d in _sicpybullet: _sicpybullet.SiconosBox2d_swigregister(SiconosBox2d) class SiconosConvexHull2d(SiconosShape, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _vertices = property(_sicpybullet.SiconosConvexHull2d__vertices_get, _sicpybullet.SiconosConvexHull2d__vertices_set) _avoidInternalEdgeContact = property(_sicpybullet.SiconosConvexHull2d__avoidInternalEdgeContact_get, _sicpybullet.SiconosConvexHull2d__avoidInternalEdgeContact_set) _normal_edge_pointA = property(_sicpybullet.SiconosConvexHull2d__normal_edge_pointA_get, _sicpybullet.SiconosConvexHull2d__normal_edge_pointA_set) _normal_edge_pointB = property(_sicpybullet.SiconosConvexHull2d__normal_edge_pointB_get, _sicpybullet.SiconosConvexHull2d__normal_edge_pointB_set) def __init__(self, vertices: "SP::SiconosMatrix"): if self.__class__ == SiconosConvexHull2d: _self = None else: _self = self _sicpybullet.SiconosConvexHull2d_swiginit(self, _sicpybullet.new_SiconosConvexHull2d(_self, vertices)) __swig_destroy__ = _sicpybullet.delete_SiconosConvexHull2d def vertices(self) -> "SP::SiconosMatrix": return _sicpybullet.SiconosConvexHull2d_vertices(self) def setVertices(self, vertices: "SP::SiconosMatrix") -> "void": return _sicpybullet.SiconosConvexHull2d_setVertices(self, vertices) def avoidInternalEdgeContact(self) -> "bool": return _sicpybullet.SiconosConvexHull2d_avoidInternalEdgeContact(self) def setAvoidInternalEdgeContact(self, value: "bool") -> "void": return _sicpybullet.SiconosConvexHull2d_setAvoidInternalEdgeContact(self, value) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosConvexHull2d(self) return weakref.proxy(self) # Register SiconosConvexHull2d in _sicpybullet: _sicpybullet.SiconosConvexHull2d_swigregister(SiconosConvexHull2d)
[docs] class SiconosContactor(object): r""" Class to hold the shape assigned to a body, and to associate each shape with an offset and collision group. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): _sicpybullet.SiconosContactor_swiginit(self, _sicpybullet.new_SiconosContactor(*args)) shape = property(_sicpybullet.SiconosContactor_shape_get, _sicpybullet.SiconosContactor_shape_set) offset = property(_sicpybullet.SiconosContactor_offset_get, _sicpybullet.SiconosContactor_offset_set) collision_group = property(_sicpybullet.SiconosContactor_collision_group_get, _sicpybullet.SiconosContactor_collision_group_set) __swig_destroy__ = _sicpybullet.delete_SiconosContactor
# Register SiconosContactor in _sicpybullet: _sicpybullet.SiconosContactor_swigregister(SiconosContactor) class SiconosContactorSet(VectorOfSPSiconosContactor): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def append(self, *args) -> "void": return _sicpybullet.SiconosContactorSet_append(self, *args) def __init__(self): _sicpybullet.SiconosContactorSet_swiginit(self, _sicpybullet.new_SiconosContactorSet()) __swig_destroy__ = _sicpybullet.delete_SiconosContactorSet # Register SiconosContactorSet in _sicpybullet: _sicpybullet.SiconosContactorSet_swigregister(SiconosContactorSet)
[docs] class ContactR(siconos.kernel.NewtonEuler3DR): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): if self.__class__ == ContactR: _self = None else: _self = self _sicpybullet.ContactR_swiginit(self, _sicpybullet.new_ContactR(_self, )) bodyShapeRecordA = property(_sicpybullet.ContactR_bodyShapeRecordA_get, _sicpybullet.ContactR_bodyShapeRecordA_set) bodyShapeRecordB = property(_sicpybullet.ContactR_bodyShapeRecordB_get, _sicpybullet.ContactR_bodyShapeRecordB_set)
[docs] def computeh(self, time: "double", q0: "BlockVector", y: "SiconosVector") -> "void": r""" to compute the output y = h(t,q,z) of the Relation :type time: float :param time: current time value :param q: coordinates of the dynamical systems involved in the relation :type y: :py:class:`SiconosVector` :param y: the resulting vector """ return _sicpybullet.ContactR_computeh(self, time, q0, y)
[docs] def updateContactPoints(self, pos1: "SiconosVector", pos2: "SiconosVector", normal: "SiconosVector") -> "void": r""" Update this contact point information. :type pos1: :py:class:`SiconosVector` :param pos1: Position on ds1 in ds1 frame. :type pos2: :py:class:`SiconosVector` :param pos2: Position on ds2 in ds2 frame (or world frame if ds2=null). :type normal: :py:class:`SiconosVector` :param normal: Normal in ds2 frame (or world frame if ds2=null). """ return _sicpybullet.ContactR_updateContactPoints(self, pos1, pos2, normal)
def preDelete(self) -> "void": return _sicpybullet.ContactR_preDelete(self)
[docs] def display(self) -> "void": return _sicpybullet.ContactR_display(self)
__swig_destroy__ = _sicpybullet.delete_ContactR def __disown__(self): self.this.disown() _sicpybullet.disown_ContactR(self) return weakref.proxy(self) def _zeroPlugin(self) -> "void": r""" To initialize all the plugin functions with nullptr.""" return _sicpybullet.ContactR__zeroPlugin(self)
# Register ContactR in _sicpybullet: _sicpybullet.ContactR_swigregister(ContactR)
[docs] class RigidBodyDS(siconos.kernel.NewtonEulerDS, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _contactors = property(_sicpybullet.RigidBodyDS__contactors_get, _sicpybullet.RigidBodyDS__contactors_set) _useContactorInertia = property(_sicpybullet.RigidBodyDS__useContactorInertia_get, _sicpybullet.RigidBodyDS__useContactorInertia_set) _allowSelfCollide = property(_sicpybullet.RigidBodyDS__allowSelfCollide_get, _sicpybullet.RigidBodyDS__allowSelfCollide_set, doc=r""" If false, bodies connected to this body by a joint will not collide. See also NewtonEulerJointR::_allowSelfCollide """) def __init__(self, *args): if self.__class__ == RigidBodyDS: _self = None else: _self = self _sicpybullet.RigidBodyDS_swiginit(self, _sicpybullet.new_RigidBodyDS(_self, *args)) __swig_destroy__ = _sicpybullet.delete_RigidBodyDS def setUseContactorInertia(self, use: "bool") -> "void": return _sicpybullet.RigidBodyDS_setUseContactorInertia(self, use) def useContactorInertia(self) -> "bool": return _sicpybullet.RigidBodyDS_useContactorInertia(self)
[docs] def allowSelfCollide(self) -> "bool": r""" Return the value of the _allowSelfCollide flag.""" return _sicpybullet.RigidBodyDS_allowSelfCollide(self)
[docs] def setAllowSelfCollide(self, x: "bool") -> "void": r""" Set the value of the _allowSelfCollide flag.""" return _sicpybullet.RigidBodyDS_setAllowSelfCollide(self, x)
[docs] def contactors(self) -> "SP::SiconosContactorSet": r""" Access the contactor set associated with this body. :rtype: :py:class:`SiconosContactorSet` :return: A SP::SiconosContactorSet """ return _sicpybullet.RigidBodyDS_contactors(self)
[docs] def setContactors(self, c: "SP::SiconosContactorSet") -> "void": r""" Provide a set of contactors to the body. :type c: :py:class:`SiconosContactorSet` :param c: A SP::SiconosContactorSet """ return _sicpybullet.RigidBodyDS_setContactors(self, c)
[docs] def base_position(self) -> "SP::SiconosVector": r""" Make the base position of the contactors equal to the DS q vector. :rtype: :py:class:`SiconosVector` :return: a SP::SiconosVector """ return _sicpybullet.RigidBodyDS_base_position(self)
def acceptSPBase(self, tourist: "SP::SiconosVisitor") -> "void": return _sicpybullet.RigidBodyDS_acceptSPBase(self, tourist) def acceptBase(self, tourist: "SiconosVisitor &") -> "void": return _sicpybullet.RigidBodyDS_acceptBase(self, tourist) def acceptSerializerBase(self, serializer: "SiconosVisitor &") -> "void": return _sicpybullet.RigidBodyDS_acceptSerializerBase(self, serializer) def __disown__(self): self.this.disown() _sicpybullet.disown_RigidBodyDS(self) return weakref.proxy(self) def _zeroPlugin(self) -> "void": r""" build all _plugin... PluggedObject""" return _sicpybullet.RigidBodyDS__zeroPlugin(self)
# Register RigidBodyDS in _sicpybullet: _sicpybullet.RigidBodyDS_swigregister(RigidBodyDS) class Contact2dR(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): if self.__class__ == Contact2dR: _self = None else: _self = self _sicpybullet.Contact2dR_swiginit(self, _sicpybullet.new_Contact2dR(_self, )) __swig_destroy__ = _sicpybullet.delete_Contact2dR bodyShapeRecordA = property(_sicpybullet.Contact2dR_bodyShapeRecordA_get, _sicpybullet.Contact2dR_bodyShapeRecordA_set) bodyShapeRecordB = property(_sicpybullet.Contact2dR_bodyShapeRecordB_get, _sicpybullet.Contact2dR_bodyShapeRecordB_set) def updateContactPointsInAbsoluteFrame(self, pos1: "SiconosVector", pos2: "SiconosVector", normal: "SiconosVector") -> "void": r""" Update this contact point information. :type pos1: :py:class:`SiconosVector` :param pos1: Position on ds1 in ds1 frame. :type pos2: :py:class:`SiconosVector` :param pos2: Position on ds2 in ds2 frame (or world frame if ds2=null). :type normal: :py:class:`SiconosVector` :param normal: Normal in ds2 frame (or world frame if ds2=null). """ return _sicpybullet.Contact2dR_updateContactPointsInAbsoluteFrame(self, pos1, pos2, normal) def preDelete(self) -> "void": return _sicpybullet.Contact2dR_preDelete(self) def __disown__(self): self.this.disown() _sicpybullet.disown_Contact2dR(self) return weakref.proxy(self) # Register Contact2dR in _sicpybullet: _sicpybullet.Contact2dR_swigregister(Contact2dR) class Contact2d3DR(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): if self.__class__ == Contact2d3DR: _self = None else: _self = self _sicpybullet.Contact2d3DR_swiginit(self, _sicpybullet.new_Contact2d3DR(_self, )) __swig_destroy__ = _sicpybullet.delete_Contact2d3DR bodyShapeRecordA = property(_sicpybullet.Contact2d3DR_bodyShapeRecordA_get, _sicpybullet.Contact2d3DR_bodyShapeRecordA_set) bodyShapeRecordB = property(_sicpybullet.Contact2d3DR_bodyShapeRecordB_get, _sicpybullet.Contact2d3DR_bodyShapeRecordB_set) def updateContactPointsInAbsoluteFrame(self, pos1: "SiconosVector", pos2: "SiconosVector", normal: "SiconosVector") -> "void": r""" Update this contact point information. :type pos1: :py:class:`SiconosVector` :param pos1: Position on ds1 in ds1 frame. :type pos2: :py:class:`SiconosVector` :param pos2: Position on ds2 in ds2 frame (or world frame if ds2=null). :type normal: :py:class:`SiconosVector` :param normal: Normal in ds2 frame (or world frame if ds2=null). """ return _sicpybullet.Contact2d3DR_updateContactPointsInAbsoluteFrame(self, pos1, pos2, normal) def preDelete(self) -> "void": return _sicpybullet.Contact2d3DR_preDelete(self) def __disown__(self): self.this.disown() _sicpybullet.disown_Contact2d3DR(self) return weakref.proxy(self) # Register Contact2d3DR in _sicpybullet: _sicpybullet.Contact2d3DR_swigregister(Contact2d3DR)
[docs] class Contact5DR(siconos.kernel.NewtonEuler5DR): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): if self.__class__ == Contact5DR: _self = None else: _self = self _sicpybullet.Contact5DR_swiginit(self, _sicpybullet.new_Contact5DR(_self, )) bodyShapeRecordA = property(_sicpybullet.Contact5DR_bodyShapeRecordA_get, _sicpybullet.Contact5DR_bodyShapeRecordA_set) bodyShapeRecordB = property(_sicpybullet.Contact5DR_bodyShapeRecordB_get, _sicpybullet.Contact5DR_bodyShapeRecordB_set)
[docs] def computeh(self, time: "double", q0: "BlockVector", y: "SiconosVector") -> "void": r""" to compute the output y = h(t,q) of the Relation :type time: float :param time: current time value :param q: coordinates of the dynamical systems involved in the relation :type y: :py:class:`SiconosVector` :param y: the resulting vector """ return _sicpybullet.Contact5DR_computeh(self, time, q0, y)
[docs] def updateContactPoints(self, pos1: "SiconosVector", pos2: "SiconosVector", normal: "SiconosVector") -> "void": r""" Update this contact point information. :type pos1: :py:class:`SiconosVector` :param pos1: Position on ds1 in ds1 frame. :type pos2: :py:class:`SiconosVector` :param pos2: Position on ds2 in ds2 frame (or world frame if ds2=null). :type normal: :py:class:`SiconosVector` :param normal: Normal in ds2 frame (or world frame if ds2=null). """ return _sicpybullet.Contact5DR_updateContactPoints(self, pos1, pos2, normal)
def preDelete(self) -> "void": return _sicpybullet.Contact5DR_preDelete(self) __swig_destroy__ = _sicpybullet.delete_Contact5DR def __disown__(self): self.this.disown() _sicpybullet.disown_Contact5DR(self) return weakref.proxy(self) def _zeroPlugin(self) -> "void": r""" To initialize all the plugin functions with nullptr.""" return _sicpybullet.Contact5DR__zeroPlugin(self)
# Register Contact5DR in _sicpybullet: _sicpybullet.Contact5DR_swigregister(Contact5DR)
[docs] class RigidBody2dDS(siconos.kernel.LagrangianLinearTIDS, ): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _scalarMass = property(_sicpybullet.RigidBody2dDS__scalarMass_get, _sicpybullet.RigidBody2dDS__scalarMass_set, doc=r""" a scalar mass in the case of RigidBody2dDS""") _contactors = property(_sicpybullet.RigidBody2dDS__contactors_get, _sicpybullet.RigidBody2dDS__contactors_set) _useContactorInertia = property(_sicpybullet.RigidBody2dDS__useContactorInertia_get, _sicpybullet.RigidBody2dDS__useContactorInertia_set) _allowSelfCollide = property(_sicpybullet.RigidBody2dDS__allowSelfCollide_get, _sicpybullet.RigidBody2dDS__allowSelfCollide_set, doc=r""" If false, bodies connected to this body by a joint will not collide. See also NewtonEulerJointR::_allowSelfCollide """) def __init__(self, *args): if self.__class__ == RigidBody2dDS: _self = None else: _self = self _sicpybullet.RigidBody2dDS_swiginit(self, _sicpybullet.new_RigidBody2dDS(_self, *args)) __swig_destroy__ = _sicpybullet.delete_RigidBody2dDS def scalarMass(self) -> "double": return _sicpybullet.RigidBody2dDS_scalarMass(self) def setUseContactorInertia(self, use: "bool") -> "void": return _sicpybullet.RigidBody2dDS_setUseContactorInertia(self, use) def useContactorInertia(self) -> "bool": return _sicpybullet.RigidBody2dDS_useContactorInertia(self)
[docs] def allowSelfCollide(self) -> "bool": r""" Return the value of the _allowSelfCollide flag.""" return _sicpybullet.RigidBody2dDS_allowSelfCollide(self)
[docs] def setAllowSelfCollide(self, x: "bool") -> "void": r""" Set the value of the _allowSelfCollide flag.""" return _sicpybullet.RigidBody2dDS_setAllowSelfCollide(self, x)
[docs] def contactors(self) -> "SP::SiconosContactorSet": r""" :rtype: :py:class:`SiconosContactorSet` :return: the contactor set associated with this body """ return _sicpybullet.RigidBody2dDS_contactors(self)
[docs] def setContactors(self, c: "SP::SiconosContactorSet") -> "void": r""" Provide a set of contactors to the body. :type c: :py:class:`SiconosContactorSet` :param c: A SP::SiconosContactorSet """ return _sicpybullet.RigidBody2dDS_setContactors(self, c)
[docs] def base_position(self) -> "SP::SiconosVector": r""" Make the base position of the contactors equal to the DS q vector. :rtype: :py:class:`SiconosVector` :return: a SP::SiconosVector """ return _sicpybullet.RigidBody2dDS_base_position(self)
def acceptSPBase(self, tourist: "SP::SiconosVisitor") -> "void": return _sicpybullet.RigidBody2dDS_acceptSPBase(self, tourist) def acceptBase(self, tourist: "SiconosVisitor &") -> "void": return _sicpybullet.RigidBody2dDS_acceptBase(self, tourist) def acceptSerializerBase(self, serializer: "SiconosVisitor &") -> "void": return _sicpybullet.RigidBody2dDS_acceptSerializerBase(self, serializer) def __disown__(self): self.this.disown() _sicpybullet.disown_RigidBody2dDS(self) return weakref.proxy(self) def _zeroPlugin(self) -> "void": r""" build all _plugin... PluggedObject""" return _sicpybullet.RigidBody2dDS__zeroPlugin(self)
# Register RigidBody2dDS in _sicpybullet: _sicpybullet.RigidBody2dDS_swigregister(RigidBody2dDS)
[docs] class SiconosCollisionQueryResult(object): r""" Holds one result of a line segment intersection query against the graph of body contactors maintained by a SiconosCollisionManager """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr distance = property(_sicpybullet.SiconosCollisionQueryResult_distance_get, _sicpybullet.SiconosCollisionQueryResult_distance_set, doc=r""" Distance from reference point (start of line segment or query center)""") body = property(_sicpybullet.SiconosCollisionQueryResult_body_get, _sicpybullet.SiconosCollisionQueryResult_body_set, doc=r""" Body owning the contactor that was intersected, may be null for static contactors. """) shape = property(_sicpybullet.SiconosCollisionQueryResult_shape_get, _sicpybullet.SiconosCollisionQueryResult_shape_set, doc=r""" The shape that was intersected.""") contactor = property(_sicpybullet.SiconosCollisionQueryResult_contactor_get, _sicpybullet.SiconosCollisionQueryResult_contactor_set, doc=r""" The contactor that was intersected.""") point = property(_sicpybullet.SiconosCollisionQueryResult_point_get, _sicpybullet.SiconosCollisionQueryResult_point_set, doc=r""" Closest point on contactor in world coordinates.""") def __init__(self): _sicpybullet.SiconosCollisionQueryResult_swiginit(self, _sicpybullet.new_SiconosCollisionQueryResult()) __swig_destroy__ = _sicpybullet.delete_SiconosCollisionQueryResult
# Register SiconosCollisionQueryResult in _sicpybullet: _sicpybullet.SiconosCollisionQueryResult_swigregister(SiconosCollisionQueryResult) class SiconosCollisionManager(siconos.kernel.InteractionManager): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): if self.__class__ == SiconosCollisionManager: _self = None else: _self = self _sicpybullet.SiconosCollisionManager_swiginit(self, _sicpybullet.new_SiconosCollisionManager(_self, )) __swig_destroy__ = _sicpybullet.delete_SiconosCollisionManager def removeBody(self, body: "SP::SecondOrderDS const &") -> "void": r""" Remove a body from the collision detector. This must be done after removing a body from the NonSmoothDynamicalSystem otherwise contact will occur with a non-graph body which results in failure. """ return _sicpybullet.SiconosCollisionManager_removeBody(self, body) def addStaticBody(self, *args) -> "SP::StaticBody": r""" Add a static body in the collision detector.""" return _sicpybullet.SiconosCollisionManager_addStaticBody(self, *args) def removeStaticBody(self, body: "SP::StaticBody const &") -> "void": r""" Remove a body from the collision detector.""" return _sicpybullet.SiconosCollisionManager_removeStaticBody(self, body) def lineIntersectionQuery(self, start: "SiconosVector", end: "SiconosVector", closestOnly: "bool"=False, sorted: "bool"=True) -> "std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > >": r""" Perform an intersection test on all shapes in the contactors and return a vector of all results, ordered by distance from start. :type start: :py:class:`SiconosVector` :param start: The starting point of the line segment in inertial frame (world) coordinates. :type end: :py:class:`SiconosVector` :param end: The ending point of the line segment in inertial frame (world) coordinates. :type closestOnly: boolean, optional :param closestOnly: If true, indicates only interested in first result closest to half-space boundary, max size of returned vector = 1. :type sorted: boolean, optional :param sorted: If true, results are sorted by distance. :rtype: std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > > :return: A vector of SiconosCollisionQueryResult that contain information about the query results. """ return _sicpybullet.SiconosCollisionManager_lineIntersectionQuery(self, start, end, closestOnly, sorted) def inSphereQuery(self, center: "SiconosVector", radius: "double", closestOnly: "bool"=False, sorted: "bool"=True) -> "std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > >": r""" Find all shapes that are within a sphere defined by a point and a radius and return them in an ordered list based on distance to the center :type center: :py:class:`SiconosVector` :param center: The center of the sphere in inertial frame (world) coordinates. :type radius: float :param radius: The radius of the sphere. :type closestOnly: boolean, optional :param closestOnly: If true, indicates only interested in first result closest to half-space boundary, max size of returned vector = 1. :type sorted: boolean, optional :param sorted: If true, results are sorted by distance. :rtype: std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > > :return: A vector of SiconosCollisionQueryResult that contain information about the query results. """ return _sicpybullet.SiconosCollisionManager_inSphereQuery(self, center, radius, closestOnly, sorted) def inBoxQuery(self, center: "SiconosVector", dimensions: "SiconosVector", closestOnly: "bool"=False, sorted: "bool"=True) -> "std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > >": r""" Find all shapes that are within a box defined by a center point and a dimensions (3-vector), and return them in an ordered list based on distance to the center. :type center: :py:class:`SiconosVector` :param center: The center of the box in inertial frame (world) coordinates. :type dimensions: :py:class:`SiconosVector` :param dimensions: The dimensions of the box (3-vector). :type closestOnly: boolean, optional :param closestOnly: If true, indicates only interested in first result closest to half-space boundary, max size of returned vector = 1. :type sorted: boolean, optional :param sorted: If true, results are sorted by distance. :rtype: std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > > :return: A vector of SiconosCollisionQueryResult that contain information about the query results. """ return _sicpybullet.SiconosCollisionManager_inBoxQuery(self, center, dimensions, closestOnly, sorted) def inHalfSpaceQuery(self, point: "SiconosVector", normal: "SiconosVector", closestOnly: "bool"=False, sorted: "bool"=True) -> "std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > >": r""" Find all shapes that are inside a half-space, defined by a point and a normal direction. :type point: :py:class:`SiconosVector` :param point: The point defining the boundary of the half-space. :type normal: :py:class:`SiconosVector` :param normal: The normal pointing away from the surface of the half-space. :type closestOnly: boolean, optional :param closestOnly: If true, indicates only interested in first result closest to half-space boundary, max size of returned vector = 1. :type sorted: boolean, optional :param sorted: If true, results are sorted by distance. :rtype: std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > > :return: A vector of SiconosCollisionQueryResult that contain information about the query results. """ return _sicpybullet.SiconosCollisionManager_inHalfSpaceQuery(self, point, normal, closestOnly, sorted) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosCollisionManager(self) return weakref.proxy(self) # Register SiconosCollisionManager in _sicpybullet: _sicpybullet.SiconosCollisionManager_swigregister(SiconosCollisionManager) class StaticBody(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): if self.__class__ == StaticBody: _self = None else: _self = self _sicpybullet.StaticBody_swiginit(self, _sicpybullet.new_StaticBody(_self, )) contactorSet = property(_sicpybullet.StaticBody_contactorSet_get, _sicpybullet.StaticBody_contactorSet_set) base = property(_sicpybullet.StaticBody_base_get, _sicpybullet.StaticBody_base_set) number = property(_sicpybullet.StaticBody_number_get, _sicpybullet.StaticBody_number_set) __swig_destroy__ = _sicpybullet.delete_StaticBody def __disown__(self): self.this.disown() _sicpybullet.disown_StaticBody(self) return weakref.proxy(self) # Register StaticBody in _sicpybullet: _sicpybullet.StaticBody_swigregister(StaticBody) class BodyShapeRecord(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, b: "SP::SiconosVector", d: "SP::SecondOrderDS", sh: "SP::SiconosShape", con: "SP::SiconosContactor", staticCSR: "SP::StaticBody"): if self.__class__ == BodyShapeRecord: _self = None else: _self = self _sicpybullet.BodyShapeRecord_swiginit(self, _sicpybullet.new_BodyShapeRecord(_self, b, d, sh, con, staticCSR)) __swig_destroy__ = _sicpybullet.delete_BodyShapeRecord base = property(_sicpybullet.BodyShapeRecord_base_get, _sicpybullet.BodyShapeRecord_base_set) ds = property(_sicpybullet.BodyShapeRecord_ds_get, _sicpybullet.BodyShapeRecord_ds_set) sshape = property(_sicpybullet.BodyShapeRecord_sshape_get, _sicpybullet.BodyShapeRecord_sshape_set) contactor = property(_sicpybullet.BodyShapeRecord_contactor_get, _sicpybullet.BodyShapeRecord_contactor_set) shape_version = property(_sicpybullet.BodyShapeRecord_shape_version_get, _sicpybullet.BodyShapeRecord_shape_version_set) staticBody = property(_sicpybullet.BodyShapeRecord_staticBody_get, _sicpybullet.BodyShapeRecord_staticBody_set) def display(self) -> "void": return _sicpybullet.BodyShapeRecord_display(self) def __disown__(self): self.this.disown() _sicpybullet.disown_BodyShapeRecord(self) return weakref.proxy(self) # Register BodyShapeRecord in _sicpybullet: _sicpybullet.BodyShapeRecord_swigregister(BodyShapeRecord) def cast_ContactR(rel: "SP::Relation") -> "SP::ContactR": return _sicpybullet.cast_ContactR(rel) def cast_Contact2dR(rel: "SP::Relation") -> "SP::Contact2dR": return _sicpybullet.cast_Contact2dR(rel) def cast_Contact2d3DR(rel: "SP::Relation") -> "SP::Contact2d3DR": return _sicpybullet.cast_Contact2d3DR(rel) def cast_Contact5DR(rel: "SP::Relation") -> "SP::Contact5DR": return _sicpybullet.cast_Contact5DR(rel) btVector3DataName = _sicpybullet.btVector3DataName
[docs] class btVector3(object): r""" btVector3 can be used to represent 3D points and vectors. It has an un-used w component to suit 16-byte alignment when btVector3 is stored in containers. This extra component can be used by derived classes (Quaternion?) or by user Ideally, this class should be replaced by a platform optimized SIMD version that keeps the data in registers """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): r""" *Overload 1:* No initialization constructor | *Overload 2:* Constructor from scalars :param x: X value :param y: Y value :param z: Z value """ _sicpybullet.btVector3_swiginit(self, _sicpybullet.new_btVector3(*args)) def __iadd__(self, v: "btVector3") -> "btVector3 &": r""" Add a vector to this one :param The: vector to add to this one """ return _sicpybullet.btVector3___iadd__(self, v) def __isub__(self, v: "btVector3") -> "btVector3 &": r""" Subtract a vector from this one :param The: vector to subtract """ return _sicpybullet.btVector3___isub__(self, v) def __itruediv__(self, *args): return _sicpybullet.btVector3___itruediv__(self, *args) __idiv__ = __itruediv__
[docs] def dot(self, v: "btVector3") -> "btScalar": r""" Return the dot product :type v: :py:class:`btVector3` :param v: The other vector in the dot product """ return _sicpybullet.btVector3_dot(self, v)
[docs] def length2(self) -> "btScalar": r"""Return the length of the vector squared""" return _sicpybullet.btVector3_length2(self)
[docs] def length(self) -> "btScalar": r"""Return the length of the vector""" return _sicpybullet.btVector3_length(self)
[docs] def norm(self) -> "btScalar": r"""Return the norm (length) of the vector""" return _sicpybullet.btVector3_norm(self)
[docs] def safeNorm(self) -> "btScalar": r"""Return the norm (length) of the vector""" return _sicpybullet.btVector3_safeNorm(self)
[docs] def distance2(self, v: "btVector3") -> "btScalar": r""" Return the distance squared between the ends of this and another vector This is symantically treating the vector like a point """ return _sicpybullet.btVector3_distance2(self, v)
[docs] def distance(self, v: "btVector3") -> "btScalar": r""" Return the distance between the ends of this and another vector This is symantically treating the vector like a point """ return _sicpybullet.btVector3_distance(self, v)
def safeNormalize(self) -> "btVector3 &": return _sicpybullet.btVector3_safeNormalize(self)
[docs] def normalize(self) -> "btVector3 &": r""" Normalize this vector x^2 + y^2 + z^2 = 1 """ return _sicpybullet.btVector3_normalize(self)
[docs] def normalized(self) -> "btVector3": r"""Return a normalized version of this vector""" return _sicpybullet.btVector3_normalized(self)
[docs] def rotate(self, wAxis: "btVector3", angle: "btScalar const") -> "btVector3": r""" Return a rotated version of this vector :type wAxis: :py:class:`btVector3` :param wAxis: The axis to rotate about :type angle: float :param angle: The angle to rotate by """ return _sicpybullet.btVector3_rotate(self, wAxis, angle)
[docs] def angle(self, v: "btVector3") -> "btScalar": r""" Return the angle between this and another vector :type v: :py:class:`btVector3` :param v: The other vector """ return _sicpybullet.btVector3_angle(self, v)
[docs] def absolute(self) -> "btVector3": r"""Return a vector with the absolute values of each element""" return _sicpybullet.btVector3_absolute(self)
[docs] def cross(self, v: "btVector3") -> "btVector3": r""" Return the cross product between this and another vector :type v: :py:class:`btVector3` :param v: The other vector """ return _sicpybullet.btVector3_cross(self, v)
def triple(self, v1: "btVector3", v2: "btVector3") -> "btScalar": return _sicpybullet.btVector3_triple(self, v1, v2)
[docs] def minAxis(self) -> "int": r""" Return the axis with the smallest value Note return values are 0,1,2 for x, y, or z """ return _sicpybullet.btVector3_minAxis(self)
[docs] def maxAxis(self) -> "int": r""" Return the axis with the largest value Note return values are 0,1,2 for x, y, or z """ return _sicpybullet.btVector3_maxAxis(self)
def furthestAxis(self) -> "int": return _sicpybullet.btVector3_furthestAxis(self) def closestAxis(self) -> "int": return _sicpybullet.btVector3_closestAxis(self) def setInterpolate3(self, v0: "btVector3", v1: "btVector3", rt: "btScalar") -> "void": return _sicpybullet.btVector3_setInterpolate3(self, v0, v1, rt)
[docs] def lerp(self, v: "btVector3", t: "btScalar const &") -> "btVector3": r""" Return the linear interpolation between this and another vector :type v: :py:class:`btVector3` :param v: The other vector :type t: float :param t: The ration of this to v (t = 0 => return this, t=1 => return other) """ return _sicpybullet.btVector3_lerp(self, v, t)
def __imul__(self, *args) -> "btVector3 &": r""" *Overload 1:* Scale the vector :type s: float :param s: Scale factor | *Overload 2:* Elementwise multiply this vector by the other :type v: :py:class:`btVector3` :param v: The other vector """ return _sicpybullet.btVector3___imul__(self, *args)
[docs] def getX(self) -> "btScalar const &": r"""Return the x value""" return _sicpybullet.btVector3_getX(self)
[docs] def getY(self) -> "btScalar const &": r"""Return the y value""" return _sicpybullet.btVector3_getY(self)
[docs] def getZ(self) -> "btScalar const &": r"""Return the z value""" return _sicpybullet.btVector3_getZ(self)
[docs] def setX(self, _x: "btScalar") -> "void": r"""Set the x value""" return _sicpybullet.btVector3_setX(self, _x)
[docs] def setY(self, _y: "btScalar") -> "void": r"""Set the y value""" return _sicpybullet.btVector3_setY(self, _y)
[docs] def setZ(self, _z: "btScalar") -> "void": r"""Set the z value""" return _sicpybullet.btVector3_setZ(self, _z)
[docs] def setW(self, _w: "btScalar") -> "void": r"""Set the w value""" return _sicpybullet.btVector3_setW(self, _w)
[docs] def x(self) -> "btScalar const &": r"""Return the x value""" return _sicpybullet.btVector3_x(self)
[docs] def y(self) -> "btScalar const &": r"""Return the y value""" return _sicpybullet.btVector3_y(self)
[docs] def z(self) -> "btScalar const &": r"""Return the z value""" return _sicpybullet.btVector3_z(self)
[docs] def w(self) -> "btScalar const &": r"""Return the w value""" return _sicpybullet.btVector3_w(self)
def __eq__(self, other: "btVector3") -> "bool": return _sicpybullet.btVector3___eq__(self, other) def __ne__(self, other: "btVector3") -> "bool": return _sicpybullet.btVector3___ne__(self, other)
[docs] def setMax(self, other: "btVector3") -> "void": r""" Set each element to the max of the current values and the values of another btVector3 :type other: :py:class:`btVector3` :param other: The other btVector3 to compare with """ return _sicpybullet.btVector3_setMax(self, other)
[docs] def setMin(self, other: "btVector3") -> "void": r""" Set each element to the min of the current values and the values of another btVector3 :type other: :py:class:`btVector3` :param other: The other btVector3 to compare with """ return _sicpybullet.btVector3_setMin(self, other)
def setValue(self, _x: "btScalar const &", _y: "btScalar const &", _z: "btScalar const &") -> "void": return _sicpybullet.btVector3_setValue(self, _x, _y, _z) def getSkewSymmetricMatrix(self, v0: "btVector3", v1: "btVector3", v2: "btVector3") -> "void": return _sicpybullet.btVector3_getSkewSymmetricMatrix(self, v0, v1, v2) def setZero(self) -> "void": return _sicpybullet.btVector3_setZero(self) def isZero(self) -> "bool": return _sicpybullet.btVector3_isZero(self) def fuzzyZero(self) -> "bool": return _sicpybullet.btVector3_fuzzyZero(self) def serialize(self, dataOut: "btVector3FloatData") -> "void": return _sicpybullet.btVector3_serialize(self, dataOut) def deSerialize(self, *args) -> "void": return _sicpybullet.btVector3_deSerialize(self, *args) def serializeFloat(self, dataOut: "btVector3FloatData") -> "void": return _sicpybullet.btVector3_serializeFloat(self, dataOut) def deSerializeFloat(self, dataIn: "btVector3FloatData") -> "void": return _sicpybullet.btVector3_deSerializeFloat(self, dataIn) def serializeDouble(self, dataOut: "btVector3DoubleData") -> "void": return _sicpybullet.btVector3_serializeDouble(self, dataOut) def deSerializeDouble(self, dataIn: "btVector3DoubleData") -> "void": return _sicpybullet.btVector3_deSerializeDouble(self, dataIn)
[docs] def maxDot(self, array: "btVector3", array_count: "long", dotOut: "btScalar &") -> "long": r""" returns index of maximum dot product between this and vectors in array[] :type array: :py:class:`btVector3` :param array: The other vectors :type array_count: int :param array_count: The number of other vectors :type dotOut: float :param dotOut: The maximum dot product """ return _sicpybullet.btVector3_maxDot(self, array, array_count, dotOut)
[docs] def minDot(self, array: "btVector3", array_count: "long", dotOut: "btScalar &") -> "long": r""" returns index of minimum dot product between this and vectors in array[] :type array: :py:class:`btVector3` :param array: The other vectors :type array_count: int :param array_count: The number of other vectors :type dotOut: float :param dotOut: The minimum dot product """ return _sicpybullet.btVector3_minDot(self, array, array_count, dotOut)
def dot3(self, v0: "btVector3", v1: "btVector3", v2: "btVector3") -> "btVector3": return _sicpybullet.btVector3_dot3(self, v0, v1, v2) __swig_destroy__ = _sicpybullet.delete_btVector3
# Register btVector3 in _sicpybullet: _sicpybullet.btVector3_swigregister(btVector3) def __div__(*args) -> "btVector3": r""" *Overload 1:* Return the vector inversely scaled by s | *Overload 2:* Return the vector inversely scaled by s """ return _sicpybullet.__div__(*args)
[docs] def btDot(v1: "btVector3", v2: "btVector3") -> "btScalar": r"""Return the dot product between two vectors""" return _sicpybullet.btDot(v1, v2)
[docs] def btDistance2(v1: "btVector3", v2: "btVector3") -> "btScalar": r"""Return the distance squared between two vectors""" return _sicpybullet.btDistance2(v1, v2)
[docs] def btDistance(v1: "btVector3", v2: "btVector3") -> "btScalar": r"""Return the distance between two vectors""" return _sicpybullet.btDistance(v1, v2)
[docs] def btCross(v1: "btVector3", v2: "btVector3") -> "btVector3": r"""Return the cross product of two vectors""" return _sicpybullet.btCross(v1, v2)
def btTriple(v1: "btVector3", v2: "btVector3", v3: "btVector3") -> "btScalar": return _sicpybullet.btTriple(v1, v2, v3)
[docs] def lerp(v1: "btVector3", v2: "btVector3", t: "btScalar const &") -> "btVector3": r""" Return the linear interpolation between two vectors :type v1: :py:class:`btVector3` :param v1: One vector :type v2: :py:class:`btVector3` :param v2: The other vector :type t: float :param t: The ration of this to v (t = 0 => return v1, t=1 => return v2) """ return _sicpybullet.lerp(v1, v2, t)
[docs] def btSwapScalarEndian(sourceVal: "btScalar const &", destVal: "btScalar &") -> "void": r"""btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization""" return _sicpybullet.btSwapScalarEndian(sourceVal, destVal)
[docs] def btSwapVector3Endian(sourceVec: "btVector3", destVec: "btVector3") -> "void": r"""btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization""" return _sicpybullet.btSwapVector3Endian(sourceVec, destVec)
[docs] def btUnSwapVector3Endian(vector: "btVector3") -> "void": r"""btUnSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization""" return _sicpybullet.btUnSwapVector3Endian(vector)
class btVector3FloatData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_floats = property(_sicpybullet.btVector3FloatData_m_floats_get, _sicpybullet.btVector3FloatData_m_floats_set) def __init__(self): _sicpybullet.btVector3FloatData_swiginit(self, _sicpybullet.new_btVector3FloatData()) __swig_destroy__ = _sicpybullet.delete_btVector3FloatData # Register btVector3FloatData in _sicpybullet: _sicpybullet.btVector3FloatData_swigregister(btVector3FloatData) class btVector3DoubleData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_floats = property(_sicpybullet.btVector3DoubleData_m_floats_get, _sicpybullet.btVector3DoubleData_m_floats_set) def __init__(self): _sicpybullet.btVector3DoubleData_swiginit(self, _sicpybullet.new_btVector3DoubleData()) __swig_destroy__ = _sicpybullet.delete_btVector3DoubleData # Register btVector3DoubleData in _sicpybullet: _sicpybullet.btVector3DoubleData_swigregister(btVector3DoubleData)
[docs] class btQuadWord(object): r""" The btQuadWord class is base class for btVector3 and btQuaternion. Some issues under PS3 Linux with IBM 2.1 SDK, gcc compiler prevent from using aligned quadword. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr
[docs] def getX(self) -> "btScalar const &": r"""Return the x value""" return _sicpybullet.btQuadWord_getX(self)
[docs] def getY(self) -> "btScalar const &": r"""Return the y value""" return _sicpybullet.btQuadWord_getY(self)
[docs] def getZ(self) -> "btScalar const &": r"""Return the z value""" return _sicpybullet.btQuadWord_getZ(self)
[docs] def setX(self, _x: "btScalar") -> "void": r"""Set the x value""" return _sicpybullet.btQuadWord_setX(self, _x)
[docs] def setY(self, _y: "btScalar") -> "void": r"""Set the y value""" return _sicpybullet.btQuadWord_setY(self, _y)
[docs] def setZ(self, _z: "btScalar") -> "void": r"""Set the z value""" return _sicpybullet.btQuadWord_setZ(self, _z)
[docs] def setW(self, _w: "btScalar") -> "void": r"""Set the w value""" return _sicpybullet.btQuadWord_setW(self, _w)
[docs] def x(self) -> "btScalar const &": r"""Return the x value""" return _sicpybullet.btQuadWord_x(self)
[docs] def y(self) -> "btScalar const &": r"""Return the y value""" return _sicpybullet.btQuadWord_y(self)
[docs] def z(self) -> "btScalar const &": r"""Return the z value""" return _sicpybullet.btQuadWord_z(self)
[docs] def w(self) -> "btScalar const &": r"""Return the w value""" return _sicpybullet.btQuadWord_w(self)
def __eq__(self, other: "btQuadWord") -> "bool": return _sicpybullet.btQuadWord___eq__(self, other) def __ne__(self, other: "btQuadWord") -> "bool": return _sicpybullet.btQuadWord___ne__(self, other)
[docs] def setValue(self, *args) -> "void": r""" *Overload 1:* Set x,y,z and zero w :param x: Value of x :param y: Value of y :param z: Value of z | *Overload 2:* Set the values :param x: Value of x :param y: Value of y :param z: Value of z :param w: Value of w """ return _sicpybullet.btQuadWord_setValue(self, *args)
def __init__(self, *args): r""" *Overload 1:* No initialization constructor | *Overload 2:* Three argument constructor (zeros w) :param x: Value of x :param y: Value of y :param z: Value of z | *Overload 3:* Initializing constructor :param x: Value of x :param y: Value of y :param z: Value of z :param w: Value of w """ _sicpybullet.btQuadWord_swiginit(self, _sicpybullet.new_btQuadWord(*args))
[docs] def setMax(self, other: "btQuadWord") -> "void": r""" Set each element to the max of the current values and the values of another btQuadWord :type other: :py:class:`btQuadWord` :param other: The other btQuadWord to compare with """ return _sicpybullet.btQuadWord_setMax(self, other)
[docs] def setMin(self, other: "btQuadWord") -> "void": r""" Set each element to the min of the current values and the values of another btQuadWord :type other: :py:class:`btQuadWord` :param other: The other btQuadWord to compare with """ return _sicpybullet.btQuadWord_setMin(self, other)
__swig_destroy__ = _sicpybullet.delete_btQuadWord
# Register btQuadWord in _sicpybullet: _sicpybullet.btQuadWord_swigregister(btQuadWord) btQuaternionDataName = _sicpybullet.btQuaternionDataName
[docs] class btQuaternion(btQuadWord): r"""The btQuaternion implements quaternion to perform linear algebra rotations in combination with btMatrix3x3, btVector3 and btTransform.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): r""" *Overload 1:* No initialization constructor | *Overload 2:* Constructor from scalars | *Overload 3:* Axis angle Constructor :param axis: The axis which the rotation is around :param angle: The magnitude of the rotation around the angle (Radians) | *Overload 4:* Constructor from Euler angles :type yaw: float :param yaw: Angle around Y unless BT_EULER_DEFAULT_ZYX defined then Z :type pitch: float :param pitch: Angle around X unless BT_EULER_DEFAULT_ZYX defined then Y :type roll: float :param roll: Angle around Z unless BT_EULER_DEFAULT_ZYX defined then X """ _sicpybullet.btQuaternion_swiginit(self, _sicpybullet.new_btQuaternion(*args))
[docs] def setRotation(self, axis: "btVector3", _angle: "btScalar const &") -> "void": r""" Set the rotation using axis angle notation :type axis: :py:class:`btVector3` :param axis: The axis around which to rotate :param angle: The magnitude of the rotation in Radians """ return _sicpybullet.btQuaternion_setRotation(self, axis, _angle)
[docs] def setEuler(self, yaw: "btScalar const &", pitch: "btScalar const &", roll: "btScalar const &") -> "void": r""" Set the quaternion using Euler angles :type yaw: float :param yaw: Angle around Y :type pitch: float :param pitch: Angle around X :type roll: float :param roll: Angle around Z """ return _sicpybullet.btQuaternion_setEuler(self, yaw, pitch, roll)
[docs] def setEulerZYX(self, yawZ: "btScalar const &", pitchY: "btScalar const &", rollX: "btScalar const &") -> "void": r""" Set the quaternion using euler angles :param yaw: Angle around Z :param pitch: Angle around Y :param roll: Angle around X """ return _sicpybullet.btQuaternion_setEulerZYX(self, yawZ, pitchY, rollX)
[docs] def getEulerZYX(self, yawZ: "btScalar &", pitchY: "btScalar &", rollX: "btScalar &") -> "void": r""" Get the euler angles from this quaternion :param yaw: Angle around Z :param pitch: Angle around Y :param roll: Angle around X """ return _sicpybullet.btQuaternion_getEulerZYX(self, yawZ, pitchY, rollX)
def __iadd__(self, q: "btQuaternion") -> "btQuaternion &": r""" Add two quaternions :type q: :py:class:`btQuaternion` :param q: The quaternion to add to this one """ return _sicpybullet.btQuaternion___iadd__(self, q) def __isub__(self, q: "btQuaternion") -> "btQuaternion &": r""" Subtract out a quaternion :type q: :py:class:`btQuaternion` :param q: The quaternion to subtract from this one """ return _sicpybullet.btQuaternion___isub__(self, q) def __imul__(self, *args) -> "btQuaternion &": r""" *Overload 1:* Scale this quaternion :type s: float :param s: The scalar to scale by | *Overload 2:* Multiply this quaternion by q on the right :type q: :py:class:`btQuaternion` :param q: The other quaternion Equivilant to this = this * q """ return _sicpybullet.btQuaternion___imul__(self, *args)
[docs] def dot(self, q: "btQuaternion") -> "btScalar": r""" Return the dot product between this quaternion and another :type q: :py:class:`btQuaternion` :param q: The other quaternion """ return _sicpybullet.btQuaternion_dot(self, q)
[docs] def length2(self) -> "btScalar": r"""Return the length squared of the quaternion""" return _sicpybullet.btQuaternion_length2(self)
[docs] def length(self) -> "btScalar": r"""Return the length of the quaternion""" return _sicpybullet.btQuaternion_length(self)
def safeNormalize(self) -> "btQuaternion &": return _sicpybullet.btQuaternion_safeNormalize(self)
[docs] def normalize(self) -> "btQuaternion &": r""" Normalize the quaternion Such that x^2 + y^2 + z^2 +w^2 = 1 """ return _sicpybullet.btQuaternion_normalize(self)
def __mul__(self, s: "btScalar const &") -> "btQuaternion": r""" Return a scaled version of this quaternion :type s: float :param s: The scale factor """ return _sicpybullet.btQuaternion___mul__(self, s) def __truediv__(self, *args): return _sicpybullet.btQuaternion___truediv__(self, *args) __div__ = __truediv__ def __itruediv__(self, *args): return _sicpybullet.btQuaternion___itruediv__(self, *args) __idiv__ = __itruediv__
[docs] def normalized(self) -> "btQuaternion": r"""Return a normalized version of this quaternion""" return _sicpybullet.btQuaternion_normalized(self)
[docs] def angle(self, q: "btQuaternion") -> "btScalar": r""" Return the ***half*** angle between this quaternion and the other :type q: :py:class:`btQuaternion` :param q: The other quaternion """ return _sicpybullet.btQuaternion_angle(self, q)
[docs] def angleShortestPath(self, q: "btQuaternion") -> "btScalar": r""" Return the angle between this quaternion and the other along the shortest path :type q: :py:class:`btQuaternion` :param q: The other quaternion """ return _sicpybullet.btQuaternion_angleShortestPath(self, q)
[docs] def getAngle(self) -> "btScalar": r"""Return the angle [0, 2Pi] of rotation represented by this quaternion""" return _sicpybullet.btQuaternion_getAngle(self)
[docs] def getAngleShortestPath(self) -> "btScalar": r"""Return the angle [0, Pi] of rotation represented by this quaternion along the shortest path""" return _sicpybullet.btQuaternion_getAngleShortestPath(self)
[docs] def getAxis(self) -> "btVector3": r"""Return the axis of the rotation represented by this quaternion""" return _sicpybullet.btQuaternion_getAxis(self)
[docs] def inverse(self) -> "btQuaternion": r"""Return the inverse of this quaternion""" return _sicpybullet.btQuaternion_inverse(self)
def __add__(self, q2: "btQuaternion") -> "btQuaternion": r""" Return the sum of this quaternion and the other :type q2: :py:class:`btQuaternion` :param q2: The other quaternion """ return _sicpybullet.btQuaternion___add__(self, q2) def __sub__(self, q2: "btQuaternion") -> "btQuaternion": r""" Return the difference between this quaternion and the other :type q2: :py:class:`btQuaternion` :param q2: The other quaternion """ return _sicpybullet.btQuaternion___sub__(self, q2) def __neg__(self) -> "btQuaternion": r""" Return the negative of this quaternion This simply negates each element """ return _sicpybullet.btQuaternion___neg__(self)
[docs] def farthest(self, qd: "btQuaternion") -> "btQuaternion": r"""TODO: document this and it's use""" return _sicpybullet.btQuaternion_farthest(self, qd)
[docs] def nearest(self, qd: "btQuaternion") -> "btQuaternion": r"""TODO: document this and it's use""" return _sicpybullet.btQuaternion_nearest(self, qd)
[docs] def slerp(self, q: "btQuaternion", t: "btScalar const &") -> "btQuaternion": r""" Return the quaternion which is the result of Spherical Linear Interpolation between this and the other quaternion :type q: :py:class:`btQuaternion` :param q: The other quaternion to interpolate with :type t: float :param t: The ratio between this and q to interpolate. If t = 0 the result is this, if t=1 the result is q. Slerp interpolates assuming constant velocity. """ return _sicpybullet.btQuaternion_slerp(self, q, t)
@staticmethod def getIdentity() -> "btQuaternion const &": return _sicpybullet.btQuaternion_getIdentity() def getW(self) -> "btScalar const &": return _sicpybullet.btQuaternion_getW(self) def serialize(self, dataOut: "btQuaternionFloatData") -> "void": return _sicpybullet.btQuaternion_serialize(self, dataOut) def deSerialize(self, *args) -> "void": return _sicpybullet.btQuaternion_deSerialize(self, *args) def serializeFloat(self, dataOut: "btQuaternionFloatData") -> "void": return _sicpybullet.btQuaternion_serializeFloat(self, dataOut) def deSerializeFloat(self, dataIn: "btQuaternionFloatData") -> "void": return _sicpybullet.btQuaternion_deSerializeFloat(self, dataIn) def serializeDouble(self, dataOut: "btQuaternionDoubleData") -> "void": return _sicpybullet.btQuaternion_serializeDouble(self, dataOut) def deSerializeDouble(self, dataIn: "btQuaternionDoubleData") -> "void": return _sicpybullet.btQuaternion_deSerializeDouble(self, dataIn) __swig_destroy__ = _sicpybullet.delete_btQuaternion
# Register btQuaternion in _sicpybullet: _sicpybullet.btQuaternion_swigregister(btQuaternion) def btQuaternion_getIdentity() -> "btQuaternion const &": return _sicpybullet.btQuaternion_getIdentity()
[docs] def dot(q1: "btQuaternion", q2: "btQuaternion") -> "btScalar": r"""Calculate the dot product between two quaternions""" return _sicpybullet.dot(q1, q2)
[docs] def length(q: "btQuaternion") -> "btScalar": r"""Return the length of a quaternion""" return _sicpybullet.length(q)
[docs] def btAngle(*args) -> "btScalar": r""" *Overload 1:* Return the angle between two vectors | *Overload 2:* Return the angle between two quaternions """ return _sicpybullet.btAngle(*args)
[docs] def inverse(q: "btQuaternion") -> "btQuaternion": r"""Return the inverse of a quaternion""" return _sicpybullet.inverse(q)
[docs] def slerp(q1: "btQuaternion", q2: "btQuaternion", t: "btScalar const &") -> "btQuaternion": r""" Return the result of spherical linear interpolation betwen two quaternions :type q1: :py:class:`btQuaternion` :param q1: The first quaternion :type q2: :py:class:`btQuaternion` :param q2: The second quaternion :type t: float :param t: The ration between q1 and q2. t = 0 return q1, t=1 returns q2 Slerp assumes constant velocity between positions. """ return _sicpybullet.slerp(q1, q2, t)
def quatRotate(rotation: "btQuaternion", v: "btVector3") -> "btVector3": return _sicpybullet.quatRotate(rotation, v) def shortestArcQuat(v0: "btVector3", v1: "btVector3") -> "btQuaternion": return _sicpybullet.shortestArcQuat(v0, v1) def shortestArcQuatNormalize2(v0: "btVector3", v1: "btVector3") -> "btQuaternion": return _sicpybullet.shortestArcQuatNormalize2(v0, v1) class btQuaternionFloatData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_floats = property(_sicpybullet.btQuaternionFloatData_m_floats_get, _sicpybullet.btQuaternionFloatData_m_floats_set) def __init__(self): _sicpybullet.btQuaternionFloatData_swiginit(self, _sicpybullet.new_btQuaternionFloatData()) __swig_destroy__ = _sicpybullet.delete_btQuaternionFloatData # Register btQuaternionFloatData in _sicpybullet: _sicpybullet.btQuaternionFloatData_swigregister(btQuaternionFloatData) class btQuaternionDoubleData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_floats = property(_sicpybullet.btQuaternionDoubleData_m_floats_get, _sicpybullet.btQuaternionDoubleData_m_floats_set) def __init__(self): _sicpybullet.btQuaternionDoubleData_swiginit(self, _sicpybullet.new_btQuaternionDoubleData()) __swig_destroy__ = _sicpybullet.delete_btQuaternionDoubleData # Register btQuaternionDoubleData in _sicpybullet: _sicpybullet.btQuaternionDoubleData_swigregister(btQuaternionDoubleData)
[docs] class btMatrix3x3(object): r""" The btMatrix3x3 class implements a 3x3 rotation matrix, to perform linear algebra in combination with btQuaternion, btTransform and btVector3. Make sure to only include a pure orthogonal matrix without scaling. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): _sicpybullet.btMatrix3x3_swiginit(self, _sicpybullet.new_btMatrix3x3(*args))
[docs] def getColumn(self, i: "int") -> "btVector3": r""" Get a column of the matrix as a vector :type i: int :param i: Column number 0 indexed """ return _sicpybullet.btMatrix3x3_getColumn(self, i)
[docs] def getRow(self, i: "int") -> "btVector3 const &": r""" Get a row of the matrix as a vector :type i: int :param i: Row number 0 indexed """ return _sicpybullet.btMatrix3x3_getRow(self, i)
def __imul__(self, m: "btMatrix3x3") -> "btMatrix3x3 &": r""" Multiply by the target matrix on the right :type m: :py:class:`btMatrix3x3` :param m: Rotation matrix to be applied Equivilant to this = this * m """ return _sicpybullet.btMatrix3x3___imul__(self, m) def __iadd__(self, m: "btMatrix3x3") -> "btMatrix3x3 &": r""" Adds by the target matrix on the right :type m: :py:class:`btMatrix3x3` :param m: matrix to be applied Equivilant to this = this + m """ return _sicpybullet.btMatrix3x3___iadd__(self, m) def __isub__(self, m: "btMatrix3x3") -> "btMatrix3x3 &": r""" Substractss by the target matrix on the right :type m: :py:class:`btMatrix3x3` :param m: matrix to be applied Equivilant to this = this - m """ return _sicpybullet.btMatrix3x3___isub__(self, m)
[docs] def setFromOpenGLSubMatrix(self, m: "btScalar const *") -> "void": r""" Set from the rotational part of a 4x4 OpenGL matrix :type m: float :param m: A pointer to the beginning of the array of scalars """ return _sicpybullet.btMatrix3x3_setFromOpenGLSubMatrix(self, m)
[docs] def setValue(self, xx: "btScalar const &", xy: "btScalar const &", xz: "btScalar const &", yx: "btScalar const &", yy: "btScalar const &", yz: "btScalar const &", zx: "btScalar const &", zy: "btScalar const &", zz: "btScalar const &") -> "void": r""" Set the values of the matrix explicitly (row major) :type xx: float :param xx: Top left :type xy: float :param xy: Top Middle :type xz: float :param xz: Top Right :type yx: float :param yx: Middle Left :type yy: float :param yy: Middle Middle :type yz: float :param yz: Middle Right :type zx: float :param zx: Bottom Left :type zy: float :param zy: Bottom Middle :type zz: float :param zz: Bottom Right """ return _sicpybullet.btMatrix3x3_setValue(self, xx, xy, xz, yx, yy, yz, zx, zy, zz)
[docs] def setRotation(self, q: "btQuaternion") -> "void": r""" Set the matrix from a quaternion :type q: :py:class:`btQuaternion` :param q: The Quaternion to match """ return _sicpybullet.btMatrix3x3_setRotation(self, q)
[docs] def setEulerYPR(self, yaw: "btScalar const &", pitch: "btScalar const &", roll: "btScalar const &") -> "void": r""" Set the matrix from euler angles using YPR around YXZ respectively :type yaw: float :param yaw: Yaw about Y axis :type pitch: float :param pitch: Pitch about X axis :type roll: float :param roll: Roll about Z axis """ return _sicpybullet.btMatrix3x3_setEulerYPR(self, yaw, pitch, roll)
[docs] def setEulerZYX(self, eulerX: "btScalar", eulerY: "btScalar", eulerZ: "btScalar") -> "void": r""" Set the matrix from euler angles YPR around ZYX axes :type eulerX: float :param eulerX: Roll about X axis :type eulerY: float :param eulerY: Pitch around Y axis :type eulerZ: float :param eulerZ: Yaw about Z axis These angles are used to produce a rotation matrix. The euler angles are applied in ZYX order. I.e a vector is first rotated about X then Y and then Z """ return _sicpybullet.btMatrix3x3_setEulerZYX(self, eulerX, eulerY, eulerZ)
[docs] def setIdentity(self) -> "void": r"""Set the matrix to the identity""" return _sicpybullet.btMatrix3x3_setIdentity(self)
[docs] def setZero(self) -> "void": r"""Set the matrix to the identity""" return _sicpybullet.btMatrix3x3_setZero(self)
@staticmethod def getIdentity() -> "btMatrix3x3 const &": return _sicpybullet.btMatrix3x3_getIdentity()
[docs] def getOpenGLSubMatrix(self, m: "btScalar *") -> "void": r""" Fill the rotational part of an OpenGL matrix and clear the shear/perspective :type m: float :param m: The array to be filled """ return _sicpybullet.btMatrix3x3_getOpenGLSubMatrix(self, m)
[docs] def getRotation(self, q: "btQuaternion") -> "void": r""" Get the matrix represented as a quaternion :type q: :py:class:`btQuaternion` :param q: The quaternion which will be set """ return _sicpybullet.btMatrix3x3_getRotation(self, q)
[docs] def getEulerYPR(self, yaw: "btScalar &", pitch: "btScalar &", roll: "btScalar &") -> "void": r""" Get the matrix represented as euler angles around YXZ, roundtrip with setEulerYPR :type yaw: float :param yaw: Yaw around Y axis :type pitch: float :param pitch: Pitch around X axis :type roll: float :param roll: around Z axis """ return _sicpybullet.btMatrix3x3_getEulerYPR(self, yaw, pitch, roll)
[docs] def getEulerZYX(self, yaw: "btScalar &", pitch: "btScalar &", roll: "btScalar &", solution_number: "unsigned int"=1) -> "void": r""" Get the matrix represented as euler angles around ZYX :type yaw: float :param yaw: Yaw around Z axis :type pitch: float :param pitch: Pitch around Y axis :type roll: float :param roll: around X axis :type solution_number: int, optional :param solution_number: Which solution of two possible solutions ( 1 or 2) are possible values """ return _sicpybullet.btMatrix3x3_getEulerZYX(self, yaw, pitch, roll, solution_number)
[docs] def scaled(self, s: "btVector3") -> "btMatrix3x3": r""" Create a scaled copy of the matrix :type s: :py:class:`btVector3` :param s: Scaling vector The elements of the vector will scale each column """ return _sicpybullet.btMatrix3x3_scaled(self, s)
[docs] def determinant(self) -> "btScalar": r"""Return the determinant of the matrix""" return _sicpybullet.btMatrix3x3_determinant(self)
[docs] def adjoint(self) -> "btMatrix3x3": r"""Return the adjoint of the matrix""" return _sicpybullet.btMatrix3x3_adjoint(self)
[docs] def absolute(self) -> "btMatrix3x3": r"""Return the matrix with all values non negative""" return _sicpybullet.btMatrix3x3_absolute(self)
[docs] def transpose(self) -> "btMatrix3x3": r"""Return the transpose of the matrix""" return _sicpybullet.btMatrix3x3_transpose(self)
[docs] def inverse(self) -> "btMatrix3x3": r"""Return the inverse of the matrix""" return _sicpybullet.btMatrix3x3_inverse(self)
[docs] def solve33(self, b: "btVector3") -> "btVector3": r""" Solve A * x = b, where b is a column vector. This is more efficient than computing the inverse in one-shot cases. Solve33 is from Box2d, thanks to Erin Catto, """ return _sicpybullet.btMatrix3x3_solve33(self, b)
def transposeTimes(self, m: "btMatrix3x3") -> "btMatrix3x3": return _sicpybullet.btMatrix3x3_transposeTimes(self, m) def timesTranspose(self, m: "btMatrix3x3") -> "btMatrix3x3": return _sicpybullet.btMatrix3x3_timesTranspose(self, m) def tdotx(self, v: "btVector3") -> "btScalar": return _sicpybullet.btMatrix3x3_tdotx(self, v) def tdoty(self, v: "btVector3") -> "btScalar": return _sicpybullet.btMatrix3x3_tdoty(self, v) def tdotz(self, v: "btVector3") -> "btScalar": return _sicpybullet.btMatrix3x3_tdotz(self, v)
[docs] def extractRotation(self, q: "btQuaternion", tolerance: "btScalar"=1.0e-9, maxIter: "int"=100) -> "void": r""" extractRotation is from "A robust method to extract the rotational part of deformations" See http://dl.acm.org/citation.cfm?doid=2994258.2994269 decomposes a matrix A in a orthogonal matrix R and a symmetric matrix S: A = R*S. note that R can include both rotation and scaling. """ return _sicpybullet.btMatrix3x3_extractRotation(self, q, tolerance, maxIter)
[docs] def diagonalize(self, rot: "btMatrix3x3", threshold: "btScalar", maxSteps: "int") -> "void": r""" diagonalizes this matrix by the Jacobi method. :type rot: :py:class:`btMatrix3x3` :param rot: stores the rotation from the coordinate system in which the matrix is diagonal to the original coordinate system, i.e., old_this = rot * new_this * rot^T. :type threshold: float :param threshold: See iteration :param iteration: The iteration stops when all off-diagonal elements are less than the threshold multiplied by the sum of the absolute values of the diagonal, or when maxSteps have been executed. Note that this matrix is assumed to be symmetric. """ return _sicpybullet.btMatrix3x3_diagonalize(self, rot, threshold, maxSteps)
[docs] def cofac(self, r1: "int", c1: "int", r2: "int", c2: "int") -> "btScalar": r""" Calculate the matrix cofactor :type r1: int :param r1: The first row to use for calculating the cofactor :type c1: int :param c1: The first column to use for calculating the cofactor :type r1: int :param r1: The second row to use for calculating the cofactor :type c1: int :param c1: The second column to use for calculating the cofactor See http://en.wikipedia.org/wiki/Cofactor_(linear_algebra) for more details """ return _sicpybullet.btMatrix3x3_cofac(self, r1, c1, r2, c2)
def serialize(self, dataOut: "btMatrix3x3FloatData") -> "void": return _sicpybullet.btMatrix3x3_serialize(self, dataOut) def serializeFloat(self, dataOut: "btMatrix3x3FloatData") -> "void": return _sicpybullet.btMatrix3x3_serializeFloat(self, dataOut) def deSerialize(self, dataIn: "btMatrix3x3FloatData") -> "void": return _sicpybullet.btMatrix3x3_deSerialize(self, dataIn) def deSerializeFloat(self, dataIn: "btMatrix3x3FloatData") -> "void": return _sicpybullet.btMatrix3x3_deSerializeFloat(self, dataIn) def deSerializeDouble(self, dataIn: "btMatrix3x3DoubleData") -> "void": return _sicpybullet.btMatrix3x3_deSerializeDouble(self, dataIn) __swig_destroy__ = _sicpybullet.delete_btMatrix3x3
# Register btMatrix3x3 in _sicpybullet: _sicpybullet.btMatrix3x3_swigregister(btMatrix3x3) def btMatrix3x3_getIdentity() -> "btMatrix3x3 const &": return _sicpybullet.btMatrix3x3_getIdentity() def __add__(*args) -> "btMatrix3x3": return _sicpybullet.__add__(*args) def __less__(*args) -> "btMatrix3x3": return _sicpybullet.__less__(*args) def __mul__(*args) -> "btMatrix3x3": return _sicpybullet.__mul__(*args)
[docs] class btMatrix3x3FloatData(object): r"""for serialization""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_el = property(_sicpybullet.btMatrix3x3FloatData_m_el_get, _sicpybullet.btMatrix3x3FloatData_m_el_set) def __init__(self): _sicpybullet.btMatrix3x3FloatData_swiginit(self, _sicpybullet.new_btMatrix3x3FloatData()) __swig_destroy__ = _sicpybullet.delete_btMatrix3x3FloatData
# Register btMatrix3x3FloatData in _sicpybullet: _sicpybullet.btMatrix3x3FloatData_swigregister(btMatrix3x3FloatData)
[docs] class btMatrix3x3DoubleData(object): r"""for serialization""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_el = property(_sicpybullet.btMatrix3x3DoubleData_m_el_get, _sicpybullet.btMatrix3x3DoubleData_m_el_set) def __init__(self): _sicpybullet.btMatrix3x3DoubleData_swiginit(self, _sicpybullet.new_btMatrix3x3DoubleData()) __swig_destroy__ = _sicpybullet.delete_btMatrix3x3DoubleData
# Register btMatrix3x3DoubleData in _sicpybullet: _sicpybullet.btMatrix3x3DoubleData_swigregister(btMatrix3x3DoubleData)
[docs] class btTransform(object): r""" The btTransform class supports rigid transforms with only translation and rotation and no scaling/shear. It can be used in combination with btVector3, btQuaternion and btMatrix3x3 linear algebra classes. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): r""" *Overload 1:* No initialization constructor | *Overload 2:* Constructor from btQuaternion (optional btVector3 ) :type q: :py:class:`btQuaternion` :param q: Rotation from quaternion :type c: :py:class:`btVector3`, optional :param c: Translation from Vector (default 0,0,0) | *Overload 3:* Constructor from btQuaternion (optional btVector3 ) :type q: :py:class:`btQuaternion` :param q: Rotation from quaternion :param c: Translation from Vector (default 0,0,0) | *Overload 4:* Constructor from btMatrix3x3 (optional btVector3) :type b: :py:class:`btMatrix3x3` :param b: Rotation from Matrix :type c: :py:class:`btVector3`, optional :param c: Translation from Vector default (0,0,0) | *Overload 5:* Constructor from btMatrix3x3 (optional btVector3) :type b: :py:class:`btMatrix3x3` :param b: Rotation from Matrix :param c: Translation from Vector default (0,0,0) | *Overload 6:* Copy constructor """ _sicpybullet.btTransform_swiginit(self, _sicpybullet.new_btTransform(*args))
[docs] def mult(self, t1: "btTransform", t2: "btTransform") -> "void": r""" Set the current transform as the value of the product of two transforms :type t1: :py:class:`btTransform` :param t1: Transform 1 :type t2: :py:class:`btTransform` :param t2: Transform 2 This = Transform1 * Transform2 """ return _sicpybullet.btTransform_mult(self, t1, t2)
def __call__(self, x: "btVector3") -> "btVector3": r"""Return the transform of the vector""" return _sicpybullet.btTransform___call__(self, x)
[docs] def getBasis(self, *args) -> "btMatrix3x3 const &": r""" *Overload 1:* Return the basis matrix for the rotation | *Overload 2:* Return the basis matrix for the rotation """ return _sicpybullet.btTransform_getBasis(self, *args)
[docs] def getOrigin(self, *args) -> "btVector3 const &": r""" *Overload 1:* Return the origin vector translation | *Overload 2:* Return the origin vector translation """ return _sicpybullet.btTransform_getOrigin(self, *args)
[docs] def getRotation(self) -> "btQuaternion": r"""Return a quaternion representing the rotation""" return _sicpybullet.btTransform_getRotation(self)
[docs] def setFromOpenGLMatrix(self, m: "btScalar const *") -> "void": r""" Set from an array :type m: float :param m: A pointer to a 16 element array (12 rotation(row major padded on the right by 1), and 3 translation """ return _sicpybullet.btTransform_setFromOpenGLMatrix(self, m)
[docs] def getOpenGLMatrix(self, m: "btScalar *") -> "void": r""" Fill an array representation :type m: float :param m: A pointer to a 16 element array (12 rotation(row major padded on the right by 1), and 3 translation """ return _sicpybullet.btTransform_getOpenGLMatrix(self, m)
[docs] def setOrigin(self, origin: "btVector3") -> "void": r""" Set the translational element :type origin: :py:class:`btVector3` :param origin: The vector to set the translation to """ return _sicpybullet.btTransform_setOrigin(self, origin)
def invXform(self, inVec: "btVector3") -> "btVector3": return _sicpybullet.btTransform_invXform(self, inVec)
[docs] def setBasis(self, basis: "btMatrix3x3") -> "void": r"""Set the rotational element by btMatrix3x3""" return _sicpybullet.btTransform_setBasis(self, basis)
[docs] def setRotation(self, q: "btQuaternion") -> "void": r"""Set the rotational element by btQuaternion""" return _sicpybullet.btTransform_setRotation(self, q)
[docs] def setIdentity(self) -> "void": r"""Set this transformation to the identity""" return _sicpybullet.btTransform_setIdentity(self)
def __imul__(self, t: "btTransform") -> "btTransform &": r""" Multiply this Transform by another(this = this * another) :type t: :py:class:`btTransform` :param t: The other transform """ return _sicpybullet.btTransform___imul__(self, t)
[docs] def inverse(self) -> "btTransform": r"""Return the inverse of this transform""" return _sicpybullet.btTransform_inverse(self)
[docs] def inverseTimes(self, t: "btTransform") -> "btTransform": r""" Return the inverse of this transform times the other transform :type t: :py:class:`btTransform` :param t: The other transform return this.inverse() * the other """ return _sicpybullet.btTransform_inverseTimes(self, t)
def __mul__(self, *args) -> "btTransform": r""" *Overload 1:* Return the transform of the vector | *Overload 2:* Return the transform of the btQuaternion | *Overload 3:* Return the product of this transform and the other """ return _sicpybullet.btTransform___mul__(self, *args)
[docs] @staticmethod def getIdentity() -> "btTransform const &": r"""Return an identity transform""" return _sicpybullet.btTransform_getIdentity()
def serialize(self, dataOut: "btTransformFloatData") -> "void": return _sicpybullet.btTransform_serialize(self, dataOut) def serializeFloat(self, dataOut: "btTransformFloatData") -> "void": return _sicpybullet.btTransform_serializeFloat(self, dataOut) def deSerialize(self, dataIn: "btTransformFloatData") -> "void": return _sicpybullet.btTransform_deSerialize(self, dataIn) def deSerializeDouble(self, dataIn: "btTransformDoubleData") -> "void": return _sicpybullet.btTransform_deSerializeDouble(self, dataIn) def deSerializeFloat(self, dataIn: "btTransformFloatData") -> "void": return _sicpybullet.btTransform_deSerializeFloat(self, dataIn) __swig_destroy__ = _sicpybullet.delete_btTransform
# Register btTransform in _sicpybullet: _sicpybullet.btTransform_swigregister(btTransform)
[docs] def btTransform_getIdentity() -> "btTransform const &": r"""Return an identity transform""" return _sicpybullet.btTransform_getIdentity()
[docs] class btTransformFloatData(object): r"""for serialization""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_basis = property(_sicpybullet.btTransformFloatData_m_basis_get, _sicpybullet.btTransformFloatData_m_basis_set) m_origin = property(_sicpybullet.btTransformFloatData_m_origin_get, _sicpybullet.btTransformFloatData_m_origin_set) def __init__(self): _sicpybullet.btTransformFloatData_swiginit(self, _sicpybullet.new_btTransformFloatData()) __swig_destroy__ = _sicpybullet.delete_btTransformFloatData
# Register btTransformFloatData in _sicpybullet: _sicpybullet.btTransformFloatData_swigregister(btTransformFloatData) class btTransformDoubleData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_basis = property(_sicpybullet.btTransformDoubleData_m_basis_get, _sicpybullet.btTransformDoubleData_m_basis_set) m_origin = property(_sicpybullet.btTransformDoubleData_m_origin_get, _sicpybullet.btTransformDoubleData_m_origin_set) def __init__(self): _sicpybullet.btTransformDoubleData_swiginit(self, _sicpybullet.new_btTransformDoubleData()) __swig_destroy__ = _sicpybullet.delete_btTransformDoubleData # Register btTransformDoubleData in _sicpybullet: _sicpybullet.btTransformDoubleData_swigregister(btTransformDoubleData) class btDefaultCollisionConstructionInfo(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_persistentManifoldPool = property(_sicpybullet.btDefaultCollisionConstructionInfo_m_persistentManifoldPool_get, _sicpybullet.btDefaultCollisionConstructionInfo_m_persistentManifoldPool_set) m_collisionAlgorithmPool = property(_sicpybullet.btDefaultCollisionConstructionInfo_m_collisionAlgorithmPool_get, _sicpybullet.btDefaultCollisionConstructionInfo_m_collisionAlgorithmPool_set) m_defaultMaxPersistentManifoldPoolSize = property(_sicpybullet.btDefaultCollisionConstructionInfo_m_defaultMaxPersistentManifoldPoolSize_get, _sicpybullet.btDefaultCollisionConstructionInfo_m_defaultMaxPersistentManifoldPoolSize_set) m_defaultMaxCollisionAlgorithmPoolSize = property(_sicpybullet.btDefaultCollisionConstructionInfo_m_defaultMaxCollisionAlgorithmPoolSize_get, _sicpybullet.btDefaultCollisionConstructionInfo_m_defaultMaxCollisionAlgorithmPoolSize_set) m_customCollisionAlgorithmMaxElementSize = property(_sicpybullet.btDefaultCollisionConstructionInfo_m_customCollisionAlgorithmMaxElementSize_get, _sicpybullet.btDefaultCollisionConstructionInfo_m_customCollisionAlgorithmMaxElementSize_set) m_useEpaPenetrationAlgorithm = property(_sicpybullet.btDefaultCollisionConstructionInfo_m_useEpaPenetrationAlgorithm_get, _sicpybullet.btDefaultCollisionConstructionInfo_m_useEpaPenetrationAlgorithm_set) def __init__(self): _sicpybullet.btDefaultCollisionConstructionInfo_swiginit(self, _sicpybullet.new_btDefaultCollisionConstructionInfo()) __swig_destroy__ = _sicpybullet.delete_btDefaultCollisionConstructionInfo # Register btDefaultCollisionConstructionInfo in _sicpybullet: _sicpybullet.btDefaultCollisionConstructionInfo_swigregister(btDefaultCollisionConstructionInfo)
[docs] class btDefaultCollisionConfiguration(object): r""" btCollisionConfiguration allows to configure Bullet collision detection stack allocator, pool memory allocators TODO: : describe the meaning """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): _sicpybullet.btDefaultCollisionConfiguration_swiginit(self, _sicpybullet.new_btDefaultCollisionConfiguration(*args)) __swig_destroy__ = _sicpybullet.delete_btDefaultCollisionConfiguration
[docs] def getPersistentManifoldPool(self) -> "btPoolAllocator *": r"""memory pools""" return _sicpybullet.btDefaultCollisionConfiguration_getPersistentManifoldPool(self)
def getCollisionAlgorithmPool(self) -> "btPoolAllocator *": return _sicpybullet.btDefaultCollisionConfiguration_getCollisionAlgorithmPool(self) def getCollisionAlgorithmCreateFunc(self, proxyType0: "int", proxyType1: "int") -> "btCollisionAlgorithmCreateFunc *": return _sicpybullet.btDefaultCollisionConfiguration_getCollisionAlgorithmCreateFunc(self, proxyType0, proxyType1) def getClosestPointsAlgorithmCreateFunc(self, proxyType0: "int", proxyType1: "int") -> "btCollisionAlgorithmCreateFunc *": return _sicpybullet.btDefaultCollisionConfiguration_getClosestPointsAlgorithmCreateFunc(self, proxyType0, proxyType1)
[docs] def setConvexConvexMultipointIterations(self, numPerturbationIterations: "int"=3, minimumPointsPerturbationThreshold: "int"=3) -> "void": r""" Use this method to allow to generate multiple contact points between at once, between two objects using the generic convex-convex algorithm. By default, this feature is disabled for best performance. :type numPerturbationIterations: int, optional :param numPerturbationIterations: controls the number of collision queries. Set it to zero to disable the feature. :type minimumPointsPerturbationThreshold: int, optional :param minimumPointsPerturbationThreshold: is the minimum number of points in the contact cache, above which the feature is disabled 3 is a good value for both params, if you want to enable the feature. This is because the default contact cache contains a maximum of 4 points, and one collision query at the unperturbed orientation is performed first. See Bullet/Demos/CollisionDemo for an example how this feature gathers multiple points. TODO: we could add a per-object setting of those parameters, for level-of-detail collision detection. """ return _sicpybullet.btDefaultCollisionConfiguration_setConvexConvexMultipointIterations(self, numPerturbationIterations, minimumPointsPerturbationThreshold)
def setPlaneConvexMultipointIterations(self, numPerturbationIterations: "int"=3, minimumPointsPerturbationThreshold: "int"=3) -> "void": return _sicpybullet.btDefaultCollisionConfiguration_setPlaneConvexMultipointIterations(self, numPerturbationIterations, minimumPointsPerturbationThreshold)
# Register btDefaultCollisionConfiguration in _sicpybullet: _sicpybullet.btDefaultCollisionConfiguration_swigregister(btDefaultCollisionConfiguration) ACTIVE_TAG = _sicpybullet.ACTIVE_TAG ISLAND_SLEEPING = _sicpybullet.ISLAND_SLEEPING WANTS_DEACTIVATION = _sicpybullet.WANTS_DEACTIVATION DISABLE_DEACTIVATION = _sicpybullet.DISABLE_DEACTIVATION DISABLE_SIMULATION = _sicpybullet.DISABLE_SIMULATION btCollisionObjectDataName = _sicpybullet.btCollisionObjectDataName
[docs] class btCollisionObject(object): r""" btCollisionObject can be used to manage collision detection objects. btCollisionObject maintains all information that is needed for a collision detection: Shape, Transform and AABB proxy. They can be added to the btCollisionWorld. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr CF_STATIC_OBJECT = _sicpybullet.btCollisionObject_CF_STATIC_OBJECT CF_KINEMATIC_OBJECT = _sicpybullet.btCollisionObject_CF_KINEMATIC_OBJECT CF_NO_CONTACT_RESPONSE = _sicpybullet.btCollisionObject_CF_NO_CONTACT_RESPONSE CF_CUSTOM_MATERIAL_CALLBACK = _sicpybullet.btCollisionObject_CF_CUSTOM_MATERIAL_CALLBACK CF_CHARACTER_OBJECT = _sicpybullet.btCollisionObject_CF_CHARACTER_OBJECT CF_DISABLE_VISUALIZE_OBJECT = _sicpybullet.btCollisionObject_CF_DISABLE_VISUALIZE_OBJECT CF_DISABLE_SPU_COLLISION_PROCESSING = _sicpybullet.btCollisionObject_CF_DISABLE_SPU_COLLISION_PROCESSING CF_HAS_CONTACT_STIFFNESS_DAMPING = _sicpybullet.btCollisionObject_CF_HAS_CONTACT_STIFFNESS_DAMPING CF_HAS_CUSTOM_DEBUG_RENDERING_COLOR = _sicpybullet.btCollisionObject_CF_HAS_CUSTOM_DEBUG_RENDERING_COLOR CF_HAS_FRICTION_ANCHOR = _sicpybullet.btCollisionObject_CF_HAS_FRICTION_ANCHOR CF_HAS_COLLISION_SOUND_TRIGGER = _sicpybullet.btCollisionObject_CF_HAS_COLLISION_SOUND_TRIGGER CO_COLLISION_OBJECT = _sicpybullet.btCollisionObject_CO_COLLISION_OBJECT CO_RIGID_BODY = _sicpybullet.btCollisionObject_CO_RIGID_BODY CO_GHOST_OBJECT = _sicpybullet.btCollisionObject_CO_GHOST_OBJECT r""" CO_GHOST_OBJECT keeps track of all objects overlapping its AABB and that pass its collision filter It is useful for collision sensors, explosion objects, character controller etc. """ CO_SOFT_BODY = _sicpybullet.btCollisionObject_CO_SOFT_BODY CO_HF_FLUID = _sicpybullet.btCollisionObject_CO_HF_FLUID CO_USER_TYPE = _sicpybullet.btCollisionObject_CO_USER_TYPE CO_FEATHERSTONE_LINK = _sicpybullet.btCollisionObject_CO_FEATHERSTONE_LINK CF_ANISOTROPIC_FRICTION_DISABLED = _sicpybullet.btCollisionObject_CF_ANISOTROPIC_FRICTION_DISABLED CF_ANISOTROPIC_FRICTION = _sicpybullet.btCollisionObject_CF_ANISOTROPIC_FRICTION CF_ANISOTROPIC_ROLLING_FRICTION = _sicpybullet.btCollisionObject_CF_ANISOTROPIC_ROLLING_FRICTION def mergesSimulationIslands(self) -> "bool": return _sicpybullet.btCollisionObject_mergesSimulationIslands(self) def getAnisotropicFriction(self) -> "btVector3 const &": return _sicpybullet.btCollisionObject_getAnisotropicFriction(self) def setAnisotropicFriction(self, *args) -> "void": return _sicpybullet.btCollisionObject_setAnisotropicFriction(self, *args) def hasAnisotropicFriction(self, *args) -> "bool": return _sicpybullet.btCollisionObject_hasAnisotropicFriction(self, *args)
[docs] def setContactProcessingThreshold(self, contactProcessingThreshold: "btScalar") -> "void": r""" the constraint solver can discard solving contacts, if the distance is above this threshold. 0 by default. Note that using contacts with positive distance can improve stability. It increases, however, the chance of colliding with degerate contacts, such as 'interior' triangle edges """ return _sicpybullet.btCollisionObject_setContactProcessingThreshold(self, contactProcessingThreshold)
def getContactProcessingThreshold(self) -> "btScalar": return _sicpybullet.btCollisionObject_getContactProcessingThreshold(self) def isStaticObject(self) -> "bool": return _sicpybullet.btCollisionObject_isStaticObject(self) def isKinematicObject(self) -> "bool": return _sicpybullet.btCollisionObject_isKinematicObject(self) def isStaticOrKinematicObject(self) -> "bool": return _sicpybullet.btCollisionObject_isStaticOrKinematicObject(self) def hasContactResponse(self) -> "bool": return _sicpybullet.btCollisionObject_hasContactResponse(self) def __init__(self): _sicpybullet.btCollisionObject_swiginit(self, _sicpybullet.new_btCollisionObject()) __swig_destroy__ = _sicpybullet.delete_btCollisionObject def setCollisionShape(self, collisionShape: "btCollisionShape") -> "void": return _sicpybullet.btCollisionObject_setCollisionShape(self, collisionShape) def getCollisionShape(self, *args) -> "btCollisionShape *": return _sicpybullet.btCollisionObject_getCollisionShape(self, *args) def setIgnoreCollisionCheck(self, co: "btCollisionObject", ignoreCollisionCheck: "bool") -> "void": return _sicpybullet.btCollisionObject_setIgnoreCollisionCheck(self, co, ignoreCollisionCheck) def getNumObjectsWithoutCollision(self) -> "int": return _sicpybullet.btCollisionObject_getNumObjectsWithoutCollision(self) def getObjectWithoutCollision(self, index: "int") -> "btCollisionObject const *": return _sicpybullet.btCollisionObject_getObjectWithoutCollision(self, index) def checkCollideWithOverride(self, co: "btCollisionObject") -> "bool": return _sicpybullet.btCollisionObject_checkCollideWithOverride(self, co)
[docs] def internalGetExtensionPointer(self) -> "void *": r""" Avoid using this internal API call, the extension pointer is used by some Bullet extensions. If you need to store your own user pointer, use 'setUserPointer/getUserPointer' instead. """ return _sicpybullet.btCollisionObject_internalGetExtensionPointer(self)
[docs] def internalSetExtensionPointer(self, pointer: "void *") -> "void": r""" Avoid using this internal API call, the extension pointer is used by some Bullet extensions If you need to store your own user pointer, use 'setUserPointer/getUserPointer' instead. """ return _sicpybullet.btCollisionObject_internalSetExtensionPointer(self, pointer)
def getActivationState(self) -> "int": return _sicpybullet.btCollisionObject_getActivationState(self) def setActivationState(self, newState: "int") -> "void": return _sicpybullet.btCollisionObject_setActivationState(self, newState) def setDeactivationTime(self, time: "btScalar") -> "void": return _sicpybullet.btCollisionObject_setDeactivationTime(self, time) def getDeactivationTime(self) -> "btScalar": return _sicpybullet.btCollisionObject_getDeactivationTime(self) def forceActivationState(self, newState: "int") -> "void": return _sicpybullet.btCollisionObject_forceActivationState(self, newState) def activate(self, forceActivation: "bool"=False) -> "void": return _sicpybullet.btCollisionObject_activate(self, forceActivation) def isActive(self) -> "bool": return _sicpybullet.btCollisionObject_isActive(self) def setRestitution(self, rest: "btScalar") -> "void": return _sicpybullet.btCollisionObject_setRestitution(self, rest) def getRestitution(self) -> "btScalar": return _sicpybullet.btCollisionObject_getRestitution(self) def setFriction(self, frict: "btScalar") -> "void": return _sicpybullet.btCollisionObject_setFriction(self, frict) def getFriction(self) -> "btScalar": return _sicpybullet.btCollisionObject_getFriction(self) def setRollingFriction(self, frict: "btScalar") -> "void": return _sicpybullet.btCollisionObject_setRollingFriction(self, frict) def getRollingFriction(self) -> "btScalar": return _sicpybullet.btCollisionObject_getRollingFriction(self) def setSpinningFriction(self, frict: "btScalar") -> "void": return _sicpybullet.btCollisionObject_setSpinningFriction(self, frict) def getSpinningFriction(self) -> "btScalar": return _sicpybullet.btCollisionObject_getSpinningFriction(self) def setContactStiffnessAndDamping(self, stiffness: "btScalar", damping: "btScalar") -> "void": return _sicpybullet.btCollisionObject_setContactStiffnessAndDamping(self, stiffness, damping) def getContactStiffness(self) -> "btScalar": return _sicpybullet.btCollisionObject_getContactStiffness(self) def getContactDamping(self) -> "btScalar": return _sicpybullet.btCollisionObject_getContactDamping(self)
[docs] def getInternalType(self) -> "int": r"""reserved for Bullet internal usage""" return _sicpybullet.btCollisionObject_getInternalType(self)
def getWorldTransform(self, *args) -> "btTransform const &": return _sicpybullet.btCollisionObject_getWorldTransform(self, *args) def setWorldTransform(self, worldTrans: "btTransform") -> "void": return _sicpybullet.btCollisionObject_setWorldTransform(self, worldTrans) def getBroadphaseHandle(self, *args) -> "btBroadphaseProxy const *": return _sicpybullet.btCollisionObject_getBroadphaseHandle(self, *args) def setBroadphaseHandle(self, handle: "btBroadphaseProxy *") -> "void": return _sicpybullet.btCollisionObject_setBroadphaseHandle(self, handle) def getInterpolationWorldTransform(self, *args) -> "btTransform &": return _sicpybullet.btCollisionObject_getInterpolationWorldTransform(self, *args) def setInterpolationWorldTransform(self, trans: "btTransform") -> "void": return _sicpybullet.btCollisionObject_setInterpolationWorldTransform(self, trans) def setInterpolationLinearVelocity(self, linvel: "btVector3") -> "void": return _sicpybullet.btCollisionObject_setInterpolationLinearVelocity(self, linvel) def setInterpolationAngularVelocity(self, angvel: "btVector3") -> "void": return _sicpybullet.btCollisionObject_setInterpolationAngularVelocity(self, angvel) def getInterpolationLinearVelocity(self) -> "btVector3 const &": return _sicpybullet.btCollisionObject_getInterpolationLinearVelocity(self) def getInterpolationAngularVelocity(self) -> "btVector3 const &": return _sicpybullet.btCollisionObject_getInterpolationAngularVelocity(self) def getIslandTag(self) -> "int": return _sicpybullet.btCollisionObject_getIslandTag(self) def setIslandTag(self, tag: "int") -> "void": return _sicpybullet.btCollisionObject_setIslandTag(self, tag) def getCompanionId(self) -> "int": return _sicpybullet.btCollisionObject_getCompanionId(self) def setCompanionId(self, id: "int") -> "void": return _sicpybullet.btCollisionObject_setCompanionId(self, id) def getWorldArrayIndex(self) -> "int": return _sicpybullet.btCollisionObject_getWorldArrayIndex(self) def setWorldArrayIndex(self, ix: "int") -> "void": return _sicpybullet.btCollisionObject_setWorldArrayIndex(self, ix) def getHitFraction(self) -> "btScalar": return _sicpybullet.btCollisionObject_getHitFraction(self) def setHitFraction(self, hitFraction: "btScalar") -> "void": return _sicpybullet.btCollisionObject_setHitFraction(self, hitFraction) def getCollisionFlags(self) -> "int": return _sicpybullet.btCollisionObject_getCollisionFlags(self) def setCollisionFlags(self, flags: "int") -> "void": return _sicpybullet.btCollisionObject_setCollisionFlags(self, flags)
[docs] def getCcdSweptSphereRadius(self) -> "btScalar": r"""Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm::""" return _sicpybullet.btCollisionObject_getCcdSweptSphereRadius(self)
[docs] def setCcdSweptSphereRadius(self, radius: "btScalar") -> "void": r"""Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm::""" return _sicpybullet.btCollisionObject_setCcdSweptSphereRadius(self, radius)
def getCcdMotionThreshold(self) -> "btScalar": return _sicpybullet.btCollisionObject_getCcdMotionThreshold(self) def getCcdSquareMotionThreshold(self) -> "btScalar": return _sicpybullet.btCollisionObject_getCcdSquareMotionThreshold(self)
[docs] def setCcdMotionThreshold(self, ccdMotionThreshold: "btScalar") -> "void": r""" Don't do continuous collision detection if the motion (in one step) is less then m_ccdMotionThreshold""" return _sicpybullet.btCollisionObject_setCcdMotionThreshold(self, ccdMotionThreshold)
[docs] def getUserPointer(self) -> "void *": r"""users can point to their objects, userPointer is not used by Bullet""" return _sicpybullet.btCollisionObject_getUserPointer(self)
def getUserIndex(self) -> "int": return _sicpybullet.btCollisionObject_getUserIndex(self) def getUserIndex2(self) -> "int": return _sicpybullet.btCollisionObject_getUserIndex2(self) def getUserIndex3(self) -> "int": return _sicpybullet.btCollisionObject_getUserIndex3(self)
[docs] def setUserPointer(self, userPointer: "void *") -> "void": r"""users can point to their objects, userPointer is not used by Bullet""" return _sicpybullet.btCollisionObject_setUserPointer(self, userPointer)
[docs] def setUserIndex(self, index: "int") -> "void": r"""users can point to their objects, userPointer is not used by Bullet""" return _sicpybullet.btCollisionObject_setUserIndex(self, index)
def setUserIndex2(self, index: "int") -> "void": return _sicpybullet.btCollisionObject_setUserIndex2(self, index) def setUserIndex3(self, index: "int") -> "void": return _sicpybullet.btCollisionObject_setUserIndex3(self, index) def getUpdateRevisionInternal(self) -> "int": return _sicpybullet.btCollisionObject_getUpdateRevisionInternal(self) def setCustomDebugColor(self, colorRGB: "btVector3") -> "void": return _sicpybullet.btCollisionObject_setCustomDebugColor(self, colorRGB) def removeCustomDebugColor(self) -> "void": return _sicpybullet.btCollisionObject_removeCustomDebugColor(self) def getCustomDebugColor(self, colorRGB: "btVector3") -> "bool": return _sicpybullet.btCollisionObject_getCustomDebugColor(self, colorRGB) def checkCollideWith(self, co: "btCollisionObject") -> "bool": return _sicpybullet.btCollisionObject_checkCollideWith(self, co) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btCollisionObject_calculateSerializeBufferSize(self)
[docs] def serialize(self, dataBuffer: "void *", serializer: "btSerializer *") -> "char const *": r"""fills the dataBuffer and returns the struct name (and 0 on failure)""" return _sicpybullet.btCollisionObject_serialize(self, dataBuffer, serializer)
def serializeSingleObject(self, serializer: "btSerializer *") -> "void": return _sicpybullet.btCollisionObject_serializeSingleObject(self, serializer) def __hash__(self) -> "size_t": return _sicpybullet.btCollisionObject___hash__(self)
# Register btCollisionObject in _sicpybullet: _sicpybullet.btCollisionObject_swigregister(btCollisionObject)
[docs] class btCollisionObjectDoubleData(object): r"""do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_broadphaseHandle = property(_sicpybullet.btCollisionObjectDoubleData_m_broadphaseHandle_get, _sicpybullet.btCollisionObjectDoubleData_m_broadphaseHandle_set) m_collisionShape = property(_sicpybullet.btCollisionObjectDoubleData_m_collisionShape_get, _sicpybullet.btCollisionObjectDoubleData_m_collisionShape_set) m_rootCollisionShape = property(_sicpybullet.btCollisionObjectDoubleData_m_rootCollisionShape_get, _sicpybullet.btCollisionObjectDoubleData_m_rootCollisionShape_set) m_name = property(_sicpybullet.btCollisionObjectDoubleData_m_name_get, _sicpybullet.btCollisionObjectDoubleData_m_name_set) m_worldTransform = property(_sicpybullet.btCollisionObjectDoubleData_m_worldTransform_get, _sicpybullet.btCollisionObjectDoubleData_m_worldTransform_set) m_interpolationWorldTransform = property(_sicpybullet.btCollisionObjectDoubleData_m_interpolationWorldTransform_get, _sicpybullet.btCollisionObjectDoubleData_m_interpolationWorldTransform_set) m_interpolationLinearVelocity = property(_sicpybullet.btCollisionObjectDoubleData_m_interpolationLinearVelocity_get, _sicpybullet.btCollisionObjectDoubleData_m_interpolationLinearVelocity_set) m_interpolationAngularVelocity = property(_sicpybullet.btCollisionObjectDoubleData_m_interpolationAngularVelocity_get, _sicpybullet.btCollisionObjectDoubleData_m_interpolationAngularVelocity_set) m_anisotropicFriction = property(_sicpybullet.btCollisionObjectDoubleData_m_anisotropicFriction_get, _sicpybullet.btCollisionObjectDoubleData_m_anisotropicFriction_set) m_contactProcessingThreshold = property(_sicpybullet.btCollisionObjectDoubleData_m_contactProcessingThreshold_get, _sicpybullet.btCollisionObjectDoubleData_m_contactProcessingThreshold_set) m_deactivationTime = property(_sicpybullet.btCollisionObjectDoubleData_m_deactivationTime_get, _sicpybullet.btCollisionObjectDoubleData_m_deactivationTime_set) m_friction = property(_sicpybullet.btCollisionObjectDoubleData_m_friction_get, _sicpybullet.btCollisionObjectDoubleData_m_friction_set) m_rollingFriction = property(_sicpybullet.btCollisionObjectDoubleData_m_rollingFriction_get, _sicpybullet.btCollisionObjectDoubleData_m_rollingFriction_set) m_contactDamping = property(_sicpybullet.btCollisionObjectDoubleData_m_contactDamping_get, _sicpybullet.btCollisionObjectDoubleData_m_contactDamping_set) m_contactStiffness = property(_sicpybullet.btCollisionObjectDoubleData_m_contactStiffness_get, _sicpybullet.btCollisionObjectDoubleData_m_contactStiffness_set) m_restitution = property(_sicpybullet.btCollisionObjectDoubleData_m_restitution_get, _sicpybullet.btCollisionObjectDoubleData_m_restitution_set) m_hitFraction = property(_sicpybullet.btCollisionObjectDoubleData_m_hitFraction_get, _sicpybullet.btCollisionObjectDoubleData_m_hitFraction_set) m_ccdSweptSphereRadius = property(_sicpybullet.btCollisionObjectDoubleData_m_ccdSweptSphereRadius_get, _sicpybullet.btCollisionObjectDoubleData_m_ccdSweptSphereRadius_set) m_ccdMotionThreshold = property(_sicpybullet.btCollisionObjectDoubleData_m_ccdMotionThreshold_get, _sicpybullet.btCollisionObjectDoubleData_m_ccdMotionThreshold_set) m_hasAnisotropicFriction = property(_sicpybullet.btCollisionObjectDoubleData_m_hasAnisotropicFriction_get, _sicpybullet.btCollisionObjectDoubleData_m_hasAnisotropicFriction_set) m_collisionFlags = property(_sicpybullet.btCollisionObjectDoubleData_m_collisionFlags_get, _sicpybullet.btCollisionObjectDoubleData_m_collisionFlags_set) m_islandTag1 = property(_sicpybullet.btCollisionObjectDoubleData_m_islandTag1_get, _sicpybullet.btCollisionObjectDoubleData_m_islandTag1_set) m_companionId = property(_sicpybullet.btCollisionObjectDoubleData_m_companionId_get, _sicpybullet.btCollisionObjectDoubleData_m_companionId_set) m_activationState1 = property(_sicpybullet.btCollisionObjectDoubleData_m_activationState1_get, _sicpybullet.btCollisionObjectDoubleData_m_activationState1_set) m_internalType = property(_sicpybullet.btCollisionObjectDoubleData_m_internalType_get, _sicpybullet.btCollisionObjectDoubleData_m_internalType_set) m_checkCollideWith = property(_sicpybullet.btCollisionObjectDoubleData_m_checkCollideWith_get, _sicpybullet.btCollisionObjectDoubleData_m_checkCollideWith_set) m_collisionFilterGroup = property(_sicpybullet.btCollisionObjectDoubleData_m_collisionFilterGroup_get, _sicpybullet.btCollisionObjectDoubleData_m_collisionFilterGroup_set) m_collisionFilterMask = property(_sicpybullet.btCollisionObjectDoubleData_m_collisionFilterMask_get, _sicpybullet.btCollisionObjectDoubleData_m_collisionFilterMask_set) m_uniqueId = property(_sicpybullet.btCollisionObjectDoubleData_m_uniqueId_get, _sicpybullet.btCollisionObjectDoubleData_m_uniqueId_set) def __init__(self): _sicpybullet.btCollisionObjectDoubleData_swiginit(self, _sicpybullet.new_btCollisionObjectDoubleData()) __swig_destroy__ = _sicpybullet.delete_btCollisionObjectDoubleData
# Register btCollisionObjectDoubleData in _sicpybullet: _sicpybullet.btCollisionObjectDoubleData_swigregister(btCollisionObjectDoubleData)
[docs] class btCollisionObjectFloatData(object): r"""do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_broadphaseHandle = property(_sicpybullet.btCollisionObjectFloatData_m_broadphaseHandle_get, _sicpybullet.btCollisionObjectFloatData_m_broadphaseHandle_set) m_collisionShape = property(_sicpybullet.btCollisionObjectFloatData_m_collisionShape_get, _sicpybullet.btCollisionObjectFloatData_m_collisionShape_set) m_rootCollisionShape = property(_sicpybullet.btCollisionObjectFloatData_m_rootCollisionShape_get, _sicpybullet.btCollisionObjectFloatData_m_rootCollisionShape_set) m_name = property(_sicpybullet.btCollisionObjectFloatData_m_name_get, _sicpybullet.btCollisionObjectFloatData_m_name_set) m_worldTransform = property(_sicpybullet.btCollisionObjectFloatData_m_worldTransform_get, _sicpybullet.btCollisionObjectFloatData_m_worldTransform_set) m_interpolationWorldTransform = property(_sicpybullet.btCollisionObjectFloatData_m_interpolationWorldTransform_get, _sicpybullet.btCollisionObjectFloatData_m_interpolationWorldTransform_set) m_interpolationLinearVelocity = property(_sicpybullet.btCollisionObjectFloatData_m_interpolationLinearVelocity_get, _sicpybullet.btCollisionObjectFloatData_m_interpolationLinearVelocity_set) m_interpolationAngularVelocity = property(_sicpybullet.btCollisionObjectFloatData_m_interpolationAngularVelocity_get, _sicpybullet.btCollisionObjectFloatData_m_interpolationAngularVelocity_set) m_anisotropicFriction = property(_sicpybullet.btCollisionObjectFloatData_m_anisotropicFriction_get, _sicpybullet.btCollisionObjectFloatData_m_anisotropicFriction_set) m_contactProcessingThreshold = property(_sicpybullet.btCollisionObjectFloatData_m_contactProcessingThreshold_get, _sicpybullet.btCollisionObjectFloatData_m_contactProcessingThreshold_set) m_deactivationTime = property(_sicpybullet.btCollisionObjectFloatData_m_deactivationTime_get, _sicpybullet.btCollisionObjectFloatData_m_deactivationTime_set) m_friction = property(_sicpybullet.btCollisionObjectFloatData_m_friction_get, _sicpybullet.btCollisionObjectFloatData_m_friction_set) m_rollingFriction = property(_sicpybullet.btCollisionObjectFloatData_m_rollingFriction_get, _sicpybullet.btCollisionObjectFloatData_m_rollingFriction_set) m_contactDamping = property(_sicpybullet.btCollisionObjectFloatData_m_contactDamping_get, _sicpybullet.btCollisionObjectFloatData_m_contactDamping_set) m_contactStiffness = property(_sicpybullet.btCollisionObjectFloatData_m_contactStiffness_get, _sicpybullet.btCollisionObjectFloatData_m_contactStiffness_set) m_restitution = property(_sicpybullet.btCollisionObjectFloatData_m_restitution_get, _sicpybullet.btCollisionObjectFloatData_m_restitution_set) m_hitFraction = property(_sicpybullet.btCollisionObjectFloatData_m_hitFraction_get, _sicpybullet.btCollisionObjectFloatData_m_hitFraction_set) m_ccdSweptSphereRadius = property(_sicpybullet.btCollisionObjectFloatData_m_ccdSweptSphereRadius_get, _sicpybullet.btCollisionObjectFloatData_m_ccdSweptSphereRadius_set) m_ccdMotionThreshold = property(_sicpybullet.btCollisionObjectFloatData_m_ccdMotionThreshold_get, _sicpybullet.btCollisionObjectFloatData_m_ccdMotionThreshold_set) m_hasAnisotropicFriction = property(_sicpybullet.btCollisionObjectFloatData_m_hasAnisotropicFriction_get, _sicpybullet.btCollisionObjectFloatData_m_hasAnisotropicFriction_set) m_collisionFlags = property(_sicpybullet.btCollisionObjectFloatData_m_collisionFlags_get, _sicpybullet.btCollisionObjectFloatData_m_collisionFlags_set) m_islandTag1 = property(_sicpybullet.btCollisionObjectFloatData_m_islandTag1_get, _sicpybullet.btCollisionObjectFloatData_m_islandTag1_set) m_companionId = property(_sicpybullet.btCollisionObjectFloatData_m_companionId_get, _sicpybullet.btCollisionObjectFloatData_m_companionId_set) m_activationState1 = property(_sicpybullet.btCollisionObjectFloatData_m_activationState1_get, _sicpybullet.btCollisionObjectFloatData_m_activationState1_set) m_internalType = property(_sicpybullet.btCollisionObjectFloatData_m_internalType_get, _sicpybullet.btCollisionObjectFloatData_m_internalType_set) m_checkCollideWith = property(_sicpybullet.btCollisionObjectFloatData_m_checkCollideWith_get, _sicpybullet.btCollisionObjectFloatData_m_checkCollideWith_set) m_collisionFilterGroup = property(_sicpybullet.btCollisionObjectFloatData_m_collisionFilterGroup_get, _sicpybullet.btCollisionObjectFloatData_m_collisionFilterGroup_set) m_collisionFilterMask = property(_sicpybullet.btCollisionObjectFloatData_m_collisionFilterMask_get, _sicpybullet.btCollisionObjectFloatData_m_collisionFilterMask_set) m_uniqueId = property(_sicpybullet.btCollisionObjectFloatData_m_uniqueId_get, _sicpybullet.btCollisionObjectFloatData_m_uniqueId_set) def __init__(self): _sicpybullet.btCollisionObjectFloatData_swiginit(self, _sicpybullet.new_btCollisionObjectFloatData()) __swig_destroy__ = _sicpybullet.delete_btCollisionObjectFloatData
# Register btCollisionObjectFloatData in _sicpybullet: _sicpybullet.btCollisionObjectFloatData_swigregister(btCollisionObjectFloatData) class btDispatcherInfo(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr DISPATCH_DISCRETE = _sicpybullet.btDispatcherInfo_DISPATCH_DISCRETE DISPATCH_CONTINUOUS = _sicpybullet.btDispatcherInfo_DISPATCH_CONTINUOUS def __init__(self): _sicpybullet.btDispatcherInfo_swiginit(self, _sicpybullet.new_btDispatcherInfo()) m_timeStep = property(_sicpybullet.btDispatcherInfo_m_timeStep_get, _sicpybullet.btDispatcherInfo_m_timeStep_set) m_stepCount = property(_sicpybullet.btDispatcherInfo_m_stepCount_get, _sicpybullet.btDispatcherInfo_m_stepCount_set) m_dispatchFunc = property(_sicpybullet.btDispatcherInfo_m_dispatchFunc_get, _sicpybullet.btDispatcherInfo_m_dispatchFunc_set) m_timeOfImpact = property(_sicpybullet.btDispatcherInfo_m_timeOfImpact_get, _sicpybullet.btDispatcherInfo_m_timeOfImpact_set) m_useContinuous = property(_sicpybullet.btDispatcherInfo_m_useContinuous_get, _sicpybullet.btDispatcherInfo_m_useContinuous_set) m_debugDraw = property(_sicpybullet.btDispatcherInfo_m_debugDraw_get, _sicpybullet.btDispatcherInfo_m_debugDraw_set) m_enableSatConvex = property(_sicpybullet.btDispatcherInfo_m_enableSatConvex_get, _sicpybullet.btDispatcherInfo_m_enableSatConvex_set) m_enableSPU = property(_sicpybullet.btDispatcherInfo_m_enableSPU_get, _sicpybullet.btDispatcherInfo_m_enableSPU_set) m_useEpa = property(_sicpybullet.btDispatcherInfo_m_useEpa_get, _sicpybullet.btDispatcherInfo_m_useEpa_set) m_allowedCcdPenetration = property(_sicpybullet.btDispatcherInfo_m_allowedCcdPenetration_get, _sicpybullet.btDispatcherInfo_m_allowedCcdPenetration_set) m_useConvexConservativeDistanceUtil = property(_sicpybullet.btDispatcherInfo_m_useConvexConservativeDistanceUtil_get, _sicpybullet.btDispatcherInfo_m_useConvexConservativeDistanceUtil_set) m_convexConservativeDistanceThreshold = property(_sicpybullet.btDispatcherInfo_m_convexConservativeDistanceThreshold_get, _sicpybullet.btDispatcherInfo_m_convexConservativeDistanceThreshold_set) m_deterministicOverlappingPairs = property(_sicpybullet.btDispatcherInfo_m_deterministicOverlappingPairs_get, _sicpybullet.btDispatcherInfo_m_deterministicOverlappingPairs_set) __swig_destroy__ = _sicpybullet.delete_btDispatcherInfo # Register btDispatcherInfo in _sicpybullet: _sicpybullet.btDispatcherInfo_swigregister(btDispatcherInfo) BT_CONTACT_POINT_ALGORITHMS = _sicpybullet.BT_CONTACT_POINT_ALGORITHMS BT_CLOSEST_POINT_ALGORITHMS = _sicpybullet.BT_CLOSEST_POINT_ALGORITHMS
[docs] class btDispatcher(object): r""" The btDispatcher interface class can be used in combination with broadphase to dispatch calculations for overlapping pairs. For example for pairwise collision detection, calculating contact points stored in btPersistentManifold or user callbacks (game logic). """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btDispatcher def findAlgorithm(self, body0Wrap: "btCollisionObjectWrapper const *", body1Wrap: "btCollisionObjectWrapper const *", sharedManifold: "btPersistentManifold", queryType: "ebtDispatcherQueryType") -> "btCollisionAlgorithm *": return _sicpybullet.btDispatcher_findAlgorithm(self, body0Wrap, body1Wrap, sharedManifold, queryType) def getNewManifold(self, b0: "btCollisionObject", b1: "btCollisionObject") -> "btPersistentManifold *": return _sicpybullet.btDispatcher_getNewManifold(self, b0, b1) def releaseManifold(self, manifold: "btPersistentManifold") -> "void": return _sicpybullet.btDispatcher_releaseManifold(self, manifold) def clearManifold(self, manifold: "btPersistentManifold") -> "void": return _sicpybullet.btDispatcher_clearManifold(self, manifold) def needsCollision(self, body0: "btCollisionObject", body1: "btCollisionObject") -> "bool": return _sicpybullet.btDispatcher_needsCollision(self, body0, body1) def needsResponse(self, body0: "btCollisionObject", body1: "btCollisionObject") -> "bool": return _sicpybullet.btDispatcher_needsResponse(self, body0, body1) def dispatchAllCollisionPairs(self, pairCache: "btOverlappingPairCache *", dispatchInfo: "btDispatcherInfo", dispatcher: "btDispatcher") -> "void": return _sicpybullet.btDispatcher_dispatchAllCollisionPairs(self, pairCache, dispatchInfo, dispatcher) def getNumManifolds(self) -> "int": return _sicpybullet.btDispatcher_getNumManifolds(self) def getManifoldByIndexInternal(self, index: "int") -> "btPersistentManifold *": return _sicpybullet.btDispatcher_getManifoldByIndexInternal(self, index) def getInternalManifoldPointer(self) -> "btPersistentManifold **": return _sicpybullet.btDispatcher_getInternalManifoldPointer(self) def getInternalManifoldPool(self, *args) -> "btPoolAllocator const *": return _sicpybullet.btDispatcher_getInternalManifoldPool(self, *args) def allocateCollisionAlgorithm(self, size: "int") -> "void *": return _sicpybullet.btDispatcher_allocateCollisionAlgorithm(self, size) def freeCollisionAlgorithm(self, ptr: "void *") -> "void": return _sicpybullet.btDispatcher_freeCollisionAlgorithm(self, ptr)
# Register btDispatcher in _sicpybullet: _sicpybullet.btDispatcher_swigregister(btDispatcher) class btBroadphaseAabbCallback(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btBroadphaseAabbCallback def process(self, proxy: "btBroadphaseProxy const *") -> "bool": return _sicpybullet.btBroadphaseAabbCallback_process(self, proxy) # Register btBroadphaseAabbCallback in _sicpybullet: _sicpybullet.btBroadphaseAabbCallback_swigregister(btBroadphaseAabbCallback) class btBroadphaseRayCallback(btBroadphaseAabbCallback): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr m_rayDirectionInverse = property(_sicpybullet.btBroadphaseRayCallback_m_rayDirectionInverse_get, _sicpybullet.btBroadphaseRayCallback_m_rayDirectionInverse_set, doc=r"""added some cached data to accelerate ray-AABB tests""") m_signs = property(_sicpybullet.btBroadphaseRayCallback_m_signs_get, _sicpybullet.btBroadphaseRayCallback_m_signs_set) m_lambda_max = property(_sicpybullet.btBroadphaseRayCallback_m_lambda_max_get, _sicpybullet.btBroadphaseRayCallback_m_lambda_max_set) __swig_destroy__ = _sicpybullet.delete_btBroadphaseRayCallback # Register btBroadphaseRayCallback in _sicpybullet: _sicpybullet.btBroadphaseRayCallback_swigregister(btBroadphaseRayCallback)
[docs] class btBroadphaseInterface(object): r""" The btBroadphaseInterface class provides an interface to detect aabb-overlapping object pairs. Some implementations for this broadphase interface include btAxisSweep3, bt32BitAxisSweep3 and btDbvtBroadphase. The actual overlapping pair management, storage, adding and removing of pairs is dealt by the btOverlappingPairCache class. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btBroadphaseInterface def createProxy(self, aabbMin: "btVector3", aabbMax: "btVector3", shapeType: "int", userPtr: "void *", collisionFilterGroup: "int", collisionFilterMask: "int", dispatcher: "btDispatcher") -> "btBroadphaseProxy *": return _sicpybullet.btBroadphaseInterface_createProxy(self, aabbMin, aabbMax, shapeType, userPtr, collisionFilterGroup, collisionFilterMask, dispatcher) def destroyProxy(self, proxy: "btBroadphaseProxy *", dispatcher: "btDispatcher") -> "void": return _sicpybullet.btBroadphaseInterface_destroyProxy(self, proxy, dispatcher) def setAabb(self, proxy: "btBroadphaseProxy *", aabbMin: "btVector3", aabbMax: "btVector3", dispatcher: "btDispatcher") -> "void": return _sicpybullet.btBroadphaseInterface_setAabb(self, proxy, aabbMin, aabbMax, dispatcher) def getAabb(self, proxy: "btBroadphaseProxy *", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btBroadphaseInterface_getAabb(self, proxy, aabbMin, aabbMax) def rayTest(self, *args) -> "void": return _sicpybullet.btBroadphaseInterface_rayTest(self, *args) def aabbTest(self, aabbMin: "btVector3", aabbMax: "btVector3", callback: "btBroadphaseAabbCallback") -> "void": return _sicpybullet.btBroadphaseInterface_aabbTest(self, aabbMin, aabbMax, callback)
[docs] def calculateOverlappingPairs(self, dispatcher: "btDispatcher") -> "void": r"""calculateOverlappingPairs is optional: incremental algorithms (sweep and prune) might do it during the set aabb""" return _sicpybullet.btBroadphaseInterface_calculateOverlappingPairs(self, dispatcher)
def getOverlappingPairCache(self, *args) -> "btOverlappingPairCache const *": return _sicpybullet.btBroadphaseInterface_getOverlappingPairCache(self, *args)
[docs] def getBroadphaseAabb(self, aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r""" getAabb returns the axis aligned bounding box in the 'global' coordinate frame will add some transform later """ return _sicpybullet.btBroadphaseInterface_getBroadphaseAabb(self, aabbMin, aabbMax)
[docs] def resetPool(self, dispatcher: "btDispatcher") -> "void": r"""reset broadphase internal structures, to ensure determinism/reproducability""" return _sicpybullet.btBroadphaseInterface_resetPool(self, dispatcher)
def printStats(self) -> "void": return _sicpybullet.btBroadphaseInterface_printStats(self)
# Register btBroadphaseInterface in _sicpybullet: _sicpybullet.btBroadphaseInterface_swigregister(btBroadphaseInterface)
[docs] class btCollisionWorld(object): r"""CollisionWorld is interface and container for the collision detection""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, dispatcher: "btDispatcher", broadphasePairCache: "btBroadphaseInterface", collisionConfiguration: "btCollisionConfiguration *"): _sicpybullet.btCollisionWorld_swiginit(self, _sicpybullet.new_btCollisionWorld(dispatcher, broadphasePairCache, collisionConfiguration)) __swig_destroy__ = _sicpybullet.delete_btCollisionWorld def setBroadphase(self, pairCache: "btBroadphaseInterface") -> "void": return _sicpybullet.btCollisionWorld_setBroadphase(self, pairCache) def getBroadphase(self, *args) -> "btBroadphaseInterface *": return _sicpybullet.btCollisionWorld_getBroadphase(self, *args) def getPairCache(self) -> "btOverlappingPairCache *": return _sicpybullet.btCollisionWorld_getPairCache(self) def getDispatcher(self, *args) -> "btDispatcher const *": return _sicpybullet.btCollisionWorld_getDispatcher(self, *args) def updateSingleAabb(self, colObj: "btCollisionObject") -> "void": return _sicpybullet.btCollisionWorld_updateSingleAabb(self, colObj) def updateAabbs(self) -> "void": return _sicpybullet.btCollisionWorld_updateAabbs(self)
[docs] def computeOverlappingPairs(self) -> "void": r""" the computeOverlappingPairs is usually already called by performDiscreteCollisionDetection (or stepSimulation) it can be useful to use if you perform ray tests without collision detection/simulation """ return _sicpybullet.btCollisionWorld_computeOverlappingPairs(self)
def setDebugDrawer(self, debugDrawer: "btIDebugDraw *") -> "void": return _sicpybullet.btCollisionWorld_setDebugDrawer(self, debugDrawer) def getDebugDrawer(self) -> "btIDebugDraw *": return _sicpybullet.btCollisionWorld_getDebugDrawer(self) def debugDrawWorld(self) -> "void": return _sicpybullet.btCollisionWorld_debugDrawWorld(self) def debugDrawObject(self, worldTransform: "btTransform", shape: "btCollisionShape", color: "btVector3") -> "void": return _sicpybullet.btCollisionWorld_debugDrawObject(self, worldTransform, shape, color) def getNumCollisionObjects(self) -> "int": return _sicpybullet.btCollisionWorld_getNumCollisionObjects(self)
[docs] def rayTest(self, rayFromWorld: "btVector3", rayToWorld: "btVector3", resultCallback: "btCollisionWorld::RayResultCallback &") -> "void": r""" rayTest performs a raycast on all objects in the btCollisionWorld, and calls the resultCallback This allows for several queries: first hit, all hits, any hit, dependent on the value returned by the callback. """ return _sicpybullet.btCollisionWorld_rayTest(self, rayFromWorld, rayToWorld, resultCallback)
[docs] def convexSweepTest(self, *args) -> "void": r""" convexTest performs a swept convex cast on all objects in the btCollisionWorld, and calls the resultCallback This allows for several queries: first hit, all hits, any hit, dependent on the value return by the callback. """ return _sicpybullet.btCollisionWorld_convexSweepTest(self, *args)
[docs] def contactTest(self, colObj: "btCollisionObject", resultCallback: "btCollisionWorld::ContactResultCallback &") -> "void": r""" contactTest performs a discrete collision test between colObj against all objects in the btCollisionWorld, and calls the resultCallback. it reports one or more contact points for every overlapping object (including the one with deepest penetration) """ return _sicpybullet.btCollisionWorld_contactTest(self, colObj, resultCallback)
[docs] def contactPairTest(self, colObjA: "btCollisionObject", colObjB: "btCollisionObject", resultCallback: "btCollisionWorld::ContactResultCallback &") -> "void": r""" contactTest performs a discrete collision test between two collision objects and calls the resultCallback if overlap if detected. it reports one or more contact points (including the one with deepest penetration) """ return _sicpybullet.btCollisionWorld_contactPairTest(self, colObjA, colObjB, resultCallback)
[docs] @staticmethod def rayTestSingle(rayFromTrans: "btTransform", rayToTrans: "btTransform", collisionObject: "btCollisionObject", collisionShape: "btCollisionShape", colObjWorldTransform: "btTransform", resultCallback: "btCollisionWorld::RayResultCallback &") -> "void": r""" rayTestSingle performs a raycast call and calls the resultCallback. It is used internally by rayTest. In a future implementation, we consider moving the ray test as a virtual method in btCollisionShape. This allows more customization. """ return _sicpybullet.btCollisionWorld_rayTestSingle(rayFromTrans, rayToTrans, collisionObject, collisionShape, colObjWorldTransform, resultCallback)
@staticmethod def rayTestSingleInternal(rayFromTrans: "btTransform", rayToTrans: "btTransform", collisionObjectWrap: "btCollisionObjectWrapper const *", resultCallback: "btCollisionWorld::RayResultCallback &") -> "void": return _sicpybullet.btCollisionWorld_rayTestSingleInternal(rayFromTrans, rayToTrans, collisionObjectWrap, resultCallback)
[docs] @staticmethod def objectQuerySingle(castShape: "btConvexShape", rayFromTrans: "btTransform", rayToTrans: "btTransform", collisionObject: "btCollisionObject", collisionShape: "btCollisionShape", colObjWorldTransform: "btTransform", resultCallback: "btCollisionWorld::ConvexResultCallback &", allowedPenetration: "btScalar") -> "void": r""" objectQuerySingle performs a collision detection query and calls the resultCallback. It is used internally by rayTest.""" return _sicpybullet.btCollisionWorld_objectQuerySingle(castShape, rayFromTrans, rayToTrans, collisionObject, collisionShape, colObjWorldTransform, resultCallback, allowedPenetration)
@staticmethod def objectQuerySingleInternal(castShape: "btConvexShape", convexFromTrans: "btTransform", convexToTrans: "btTransform", colObjWrap: "btCollisionObjectWrapper const *", resultCallback: "btCollisionWorld::ConvexResultCallback &", allowedPenetration: "btScalar") -> "void": return _sicpybullet.btCollisionWorld_objectQuerySingleInternal(castShape, convexFromTrans, convexToTrans, colObjWrap, resultCallback, allowedPenetration) def addCollisionObject(self, *args) -> "void": return _sicpybullet.btCollisionWorld_addCollisionObject(self, *args) def refreshBroadphaseProxy(self, collisionObject: "btCollisionObject") -> "void": return _sicpybullet.btCollisionWorld_refreshBroadphaseProxy(self, collisionObject) def getCollisionObjectArray(self, *args) -> "btCollisionObjectArray const &": return _sicpybullet.btCollisionWorld_getCollisionObjectArray(self, *args) def removeCollisionObject(self, collisionObject: "btCollisionObject") -> "void": return _sicpybullet.btCollisionWorld_removeCollisionObject(self, collisionObject) def performDiscreteCollisionDetection(self) -> "void": return _sicpybullet.btCollisionWorld_performDiscreteCollisionDetection(self) def getDispatchInfo(self, *args) -> "btDispatcherInfo const &": return _sicpybullet.btCollisionWorld_getDispatchInfo(self, *args) def getForceUpdateAllAabbs(self) -> "bool": return _sicpybullet.btCollisionWorld_getForceUpdateAllAabbs(self) def setForceUpdateAllAabbs(self, forceUpdateAllAabbs: "bool") -> "void": return _sicpybullet.btCollisionWorld_setForceUpdateAllAabbs(self, forceUpdateAllAabbs)
[docs] def serialize(self, serializer: "btSerializer *") -> "void": r"""Preliminary serialization test for Bullet 2.76. Loading those files requires a separate parser (Bullet/Demos/SerializeDemo)""" return _sicpybullet.btCollisionWorld_serialize(self, serializer)
# Register btCollisionWorld in _sicpybullet: _sicpybullet.btCollisionWorld_swigregister(btCollisionWorld)
[docs] def btCollisionWorld_rayTestSingle(rayFromTrans: "btTransform", rayToTrans: "btTransform", collisionObject: "btCollisionObject", collisionShape: "btCollisionShape", colObjWorldTransform: "btTransform", resultCallback: "btCollisionWorld::RayResultCallback &") -> "void": r""" rayTestSingle performs a raycast call and calls the resultCallback. It is used internally by rayTest. In a future implementation, we consider moving the ray test as a virtual method in btCollisionShape. This allows more customization. """ return _sicpybullet.btCollisionWorld_rayTestSingle(rayFromTrans, rayToTrans, collisionObject, collisionShape, colObjWorldTransform, resultCallback)
def btCollisionWorld_rayTestSingleInternal(rayFromTrans: "btTransform", rayToTrans: "btTransform", collisionObjectWrap: "btCollisionObjectWrapper const *", resultCallback: "btCollisionWorld::RayResultCallback &") -> "void": return _sicpybullet.btCollisionWorld_rayTestSingleInternal(rayFromTrans, rayToTrans, collisionObjectWrap, resultCallback)
[docs] def btCollisionWorld_objectQuerySingle(castShape: "btConvexShape", rayFromTrans: "btTransform", rayToTrans: "btTransform", collisionObject: "btCollisionObject", collisionShape: "btCollisionShape", colObjWorldTransform: "btTransform", resultCallback: "btCollisionWorld::ConvexResultCallback &", allowedPenetration: "btScalar") -> "void": r""" objectQuerySingle performs a collision detection query and calls the resultCallback. It is used internally by rayTest.""" return _sicpybullet.btCollisionWorld_objectQuerySingle(castShape, rayFromTrans, rayToTrans, collisionObject, collisionShape, colObjWorldTransform, resultCallback, allowedPenetration)
def btCollisionWorld_objectQuerySingleInternal(castShape: "btConvexShape", convexFromTrans: "btTransform", convexToTrans: "btTransform", colObjWrap: "btCollisionObjectWrapper const *", resultCallback: "btCollisionWorld::ConvexResultCallback &", allowedPenetration: "btScalar") -> "void": return _sicpybullet.btCollisionWorld_objectQuerySingleInternal(castShape, convexFromTrans, convexToTrans, colObjWrap, resultCallback, allowedPenetration) class collisionObjects(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def iterator(self) -> "swig::SwigPyIterator *": return _sicpybullet.collisionObjects_iterator(self) def __iter__(self): return self.iterator() def __nonzero__(self) -> "bool": return _sicpybullet.collisionObjects___nonzero__(self) def __bool__(self) -> "bool": return _sicpybullet.collisionObjects___bool__(self) def __len__(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::size_type": return _sicpybullet.collisionObjects___len__(self) def __getslice__(self, i: "std::vector< std::shared_ptr< btCollisionObject > >::difference_type", j: "std::vector< std::shared_ptr< btCollisionObject > >::difference_type") -> "std::vector< std::shared_ptr< btCollisionObject >,std::allocator< std::shared_ptr< btCollisionObject > > > *": return _sicpybullet.collisionObjects___getslice__(self, i, j) def __setslice__(self, *args) -> "void": return _sicpybullet.collisionObjects___setslice__(self, *args) def __delslice__(self, i: "std::vector< std::shared_ptr< btCollisionObject > >::difference_type", j: "std::vector< std::shared_ptr< btCollisionObject > >::difference_type") -> "void": return _sicpybullet.collisionObjects___delslice__(self, i, j) def __delitem__(self, *args) -> "void": return _sicpybullet.collisionObjects___delitem__(self, *args) def __getitem__(self, *args) -> "std::vector< std::shared_ptr< btCollisionObject > >::value_type const &": return _sicpybullet.collisionObjects___getitem__(self, *args) def __setitem__(self, *args) -> "void": return _sicpybullet.collisionObjects___setitem__(self, *args) def pop(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::value_type": return _sicpybullet.collisionObjects_pop(self) def append(self, x: "std::vector< std::shared_ptr< btCollisionObject > >::value_type const &") -> "void": return _sicpybullet.collisionObjects_append(self, x) def empty(self) -> "bool": return _sicpybullet.collisionObjects_empty(self) def size(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::size_type": return _sicpybullet.collisionObjects_size(self) def begin(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::iterator": return _sicpybullet.collisionObjects_begin(self) def end(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::iterator": return _sicpybullet.collisionObjects_end(self) def rbegin(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::reverse_iterator": return _sicpybullet.collisionObjects_rbegin(self) def rend(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::reverse_iterator": return _sicpybullet.collisionObjects_rend(self) def clear(self) -> "void": return _sicpybullet.collisionObjects_clear(self) def get_allocator(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::allocator_type": return _sicpybullet.collisionObjects_get_allocator(self) def pop_back(self) -> "void": return _sicpybullet.collisionObjects_pop_back(self) def erase(self, *args) -> "std::vector< std::shared_ptr< btCollisionObject > >::iterator": return _sicpybullet.collisionObjects_erase(self, *args) def __init__(self, *args): _sicpybullet.collisionObjects_swiginit(self, _sicpybullet.new_collisionObjects(*args)) def push_back(self, x: "std::vector< std::shared_ptr< btCollisionObject > >::value_type const &") -> "void": return _sicpybullet.collisionObjects_push_back(self, x) def front(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::value_type const &": return _sicpybullet.collisionObjects_front(self) def back(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::value_type const &": return _sicpybullet.collisionObjects_back(self) def assign(self, n: "std::vector< std::shared_ptr< btCollisionObject > >::size_type", x: "std::vector< std::shared_ptr< btCollisionObject > >::value_type const &") -> "void": return _sicpybullet.collisionObjects_assign(self, n, x) def resize(self, *args) -> "void": return _sicpybullet.collisionObjects_resize(self, *args) def insert(self, *args) -> "void": return _sicpybullet.collisionObjects_insert(self, *args) def reserve(self, n: "std::vector< std::shared_ptr< btCollisionObject > >::size_type") -> "void": return _sicpybullet.collisionObjects_reserve(self, n) def capacity(self) -> "std::vector< std::shared_ptr< btCollisionObject > >::size_type": return _sicpybullet.collisionObjects_capacity(self) __swig_destroy__ = _sicpybullet.delete_collisionObjects # Register collisionObjects in _sicpybullet: _sicpybullet.collisionObjects_swigregister(collisionObjects) class btConstraintRow(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_normal = property(_sicpybullet.btConstraintRow_m_normal_get, _sicpybullet.btConstraintRow_m_normal_set) m_rhs = property(_sicpybullet.btConstraintRow_m_rhs_get, _sicpybullet.btConstraintRow_m_rhs_set) m_jacDiagInv = property(_sicpybullet.btConstraintRow_m_jacDiagInv_get, _sicpybullet.btConstraintRow_m_jacDiagInv_set) m_lowerLimit = property(_sicpybullet.btConstraintRow_m_lowerLimit_get, _sicpybullet.btConstraintRow_m_lowerLimit_set) m_upperLimit = property(_sicpybullet.btConstraintRow_m_upperLimit_get, _sicpybullet.btConstraintRow_m_upperLimit_set) m_accumImpulse = property(_sicpybullet.btConstraintRow_m_accumImpulse_get, _sicpybullet.btConstraintRow_m_accumImpulse_set) def __init__(self): _sicpybullet.btConstraintRow_swiginit(self, _sicpybullet.new_btConstraintRow()) __swig_destroy__ = _sicpybullet.delete_btConstraintRow # Register btConstraintRow in _sicpybullet: _sicpybullet.btConstraintRow_swigregister(btConstraintRow) BT_CONTACT_FLAG_LATERAL_FRICTION_INITIALIZED = _sicpybullet.BT_CONTACT_FLAG_LATERAL_FRICTION_INITIALIZED BT_CONTACT_FLAG_HAS_CONTACT_CFM = _sicpybullet.BT_CONTACT_FLAG_HAS_CONTACT_CFM BT_CONTACT_FLAG_HAS_CONTACT_ERP = _sicpybullet.BT_CONTACT_FLAG_HAS_CONTACT_ERP BT_CONTACT_FLAG_CONTACT_STIFFNESS_DAMPING = _sicpybullet.BT_CONTACT_FLAG_CONTACT_STIFFNESS_DAMPING BT_CONTACT_FLAG_FRICTION_ANCHOR = _sicpybullet.BT_CONTACT_FLAG_FRICTION_ANCHOR
[docs] class btManifoldPoint(object): r""" ManifoldContactPoint collects and maintains persistent contactpoints. used to improve stability and performance of rigidbody dynamics response. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): _sicpybullet.btManifoldPoint_swiginit(self, _sicpybullet.new_btManifoldPoint(*args)) m_localPointA = property(_sicpybullet.btManifoldPoint_m_localPointA_get, _sicpybullet.btManifoldPoint_m_localPointA_set) m_localPointB = property(_sicpybullet.btManifoldPoint_m_localPointB_get, _sicpybullet.btManifoldPoint_m_localPointB_set) m_positionWorldOnB = property(_sicpybullet.btManifoldPoint_m_positionWorldOnB_get, _sicpybullet.btManifoldPoint_m_positionWorldOnB_set) m_positionWorldOnA = property(_sicpybullet.btManifoldPoint_m_positionWorldOnA_get, _sicpybullet.btManifoldPoint_m_positionWorldOnA_set, doc=r"""m_positionWorldOnA is redundant information, see getPositionWorldOnA(), but for clarity""") m_normalWorldOnB = property(_sicpybullet.btManifoldPoint_m_normalWorldOnB_get, _sicpybullet.btManifoldPoint_m_normalWorldOnB_set) m_distance1 = property(_sicpybullet.btManifoldPoint_m_distance1_get, _sicpybullet.btManifoldPoint_m_distance1_set) m_combinedFriction = property(_sicpybullet.btManifoldPoint_m_combinedFriction_get, _sicpybullet.btManifoldPoint_m_combinedFriction_set) m_combinedRollingFriction = property(_sicpybullet.btManifoldPoint_m_combinedRollingFriction_get, _sicpybullet.btManifoldPoint_m_combinedRollingFriction_set) m_combinedSpinningFriction = property(_sicpybullet.btManifoldPoint_m_combinedSpinningFriction_get, _sicpybullet.btManifoldPoint_m_combinedSpinningFriction_set) m_combinedRestitution = property(_sicpybullet.btManifoldPoint_m_combinedRestitution_get, _sicpybullet.btManifoldPoint_m_combinedRestitution_set) m_partId0 = property(_sicpybullet.btManifoldPoint_m_partId0_get, _sicpybullet.btManifoldPoint_m_partId0_set) m_partId1 = property(_sicpybullet.btManifoldPoint_m_partId1_get, _sicpybullet.btManifoldPoint_m_partId1_set) m_index0 = property(_sicpybullet.btManifoldPoint_m_index0_get, _sicpybullet.btManifoldPoint_m_index0_set) m_index1 = property(_sicpybullet.btManifoldPoint_m_index1_get, _sicpybullet.btManifoldPoint_m_index1_set) m_userPersistentData = property(_sicpybullet.btManifoldPoint_m_userPersistentData_get, _sicpybullet.btManifoldPoint_m_userPersistentData_set) m_contactPointFlags = property(_sicpybullet.btManifoldPoint_m_contactPointFlags_get, _sicpybullet.btManifoldPoint_m_contactPointFlags_set) m_appliedImpulse = property(_sicpybullet.btManifoldPoint_m_appliedImpulse_get, _sicpybullet.btManifoldPoint_m_appliedImpulse_set) m_prevRHS = property(_sicpybullet.btManifoldPoint_m_prevRHS_get, _sicpybullet.btManifoldPoint_m_prevRHS_set) m_appliedImpulseLateral1 = property(_sicpybullet.btManifoldPoint_m_appliedImpulseLateral1_get, _sicpybullet.btManifoldPoint_m_appliedImpulseLateral1_set) m_appliedImpulseLateral2 = property(_sicpybullet.btManifoldPoint_m_appliedImpulseLateral2_get, _sicpybullet.btManifoldPoint_m_appliedImpulseLateral2_set) m_contactMotion1 = property(_sicpybullet.btManifoldPoint_m_contactMotion1_get, _sicpybullet.btManifoldPoint_m_contactMotion1_set) m_contactMotion2 = property(_sicpybullet.btManifoldPoint_m_contactMotion2_get, _sicpybullet.btManifoldPoint_m_contactMotion2_set) m_frictionCFM = property(_sicpybullet.btManifoldPoint_m_frictionCFM_get, _sicpybullet.btManifoldPoint_m_frictionCFM_set) m_lifeTime = property(_sicpybullet.btManifoldPoint_m_lifeTime_get, _sicpybullet.btManifoldPoint_m_lifeTime_set) m_lateralFrictionDir1 = property(_sicpybullet.btManifoldPoint_m_lateralFrictionDir1_get, _sicpybullet.btManifoldPoint_m_lateralFrictionDir1_set) m_lateralFrictionDir2 = property(_sicpybullet.btManifoldPoint_m_lateralFrictionDir2_get, _sicpybullet.btManifoldPoint_m_lateralFrictionDir2_set) def getDistance(self) -> "btScalar": return _sicpybullet.btManifoldPoint_getDistance(self) def getLifeTime(self) -> "int": return _sicpybullet.btManifoldPoint_getLifeTime(self) def getPositionWorldOnA(self) -> "btVector3 const &": return _sicpybullet.btManifoldPoint_getPositionWorldOnA(self) def getPositionWorldOnB(self) -> "btVector3 const &": return _sicpybullet.btManifoldPoint_getPositionWorldOnB(self) def setDistance(self, dist: "btScalar") -> "void": return _sicpybullet.btManifoldPoint_setDistance(self, dist)
[docs] def getAppliedImpulse(self) -> "btScalar": r"""this returns the most recent applied impulse, to satisfy contact constraints by the constraint solver""" return _sicpybullet.btManifoldPoint_getAppliedImpulse(self)
__swig_destroy__ = _sicpybullet.delete_btManifoldPoint
# Register btManifoldPoint in _sicpybullet: _sicpybullet.btManifoldPoint_swigregister(btManifoldPoint) MIN_CONTACT_MANIFOLD_TYPE = _sicpybullet.MIN_CONTACT_MANIFOLD_TYPE BT_PERSISTENT_MANIFOLD_TYPE = _sicpybullet.BT_PERSISTENT_MANIFOLD_TYPE MANIFOLD_CACHE_SIZE = _sicpybullet.MANIFOLD_CACHE_SIZE
[docs] class btPersistentManifold(object): r""" btPersistentManifold is a contact point cache, it stays persistent as long as objects are overlapping in the broadphase. Those contact points are created by the collision narrow phase. The cache can be empty, or hold 1,2,3 or 4 points. Some collision algorithms (GJK) might only add one point at a time. updates/refreshes old contact points, and throw them away if necessary (distance becomes too large) reduces the cache to 4 points, when more then 4 points are added, using following rules: the contact point with deepest penetration is always kept, and it tries to maximuze the area covered by the points note that some pairs of objects might have more then one contact manifold. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_companionIdA = property(_sicpybullet.btPersistentManifold_m_companionIdA_get, _sicpybullet.btPersistentManifold_m_companionIdA_set) m_companionIdB = property(_sicpybullet.btPersistentManifold_m_companionIdB_get, _sicpybullet.btPersistentManifold_m_companionIdB_set) m_index1a = property(_sicpybullet.btPersistentManifold_m_index1a_get, _sicpybullet.btPersistentManifold_m_index1a_set) def __init__(self, *args): _sicpybullet.btPersistentManifold_swiginit(self, _sicpybullet.new_btPersistentManifold(*args)) def getBody0(self) -> "btCollisionObject const *": return _sicpybullet.btPersistentManifold_getBody0(self) def getBody1(self) -> "btCollisionObject const *": return _sicpybullet.btPersistentManifold_getBody1(self) def setBodies(self, body0: "btCollisionObject", body1: "btCollisionObject") -> "void": return _sicpybullet.btPersistentManifold_setBodies(self, body0, body1) def clearUserCache(self, pt: "btManifoldPoint") -> "void": return _sicpybullet.btPersistentManifold_clearUserCache(self, pt) def getNumContacts(self) -> "int": return _sicpybullet.btPersistentManifold_getNumContacts(self)
[docs] def setNumContacts(self, cachedPoints: "int") -> "void": r""" the setNumContacts API is usually not used, except when you gather/fill all contacts manually""" return _sicpybullet.btPersistentManifold_setNumContacts(self, cachedPoints)
def getContactPoint(self, *args) -> "btManifoldPoint &": return _sicpybullet.btPersistentManifold_getContactPoint(self, *args)
[docs] def getContactBreakingThreshold(self) -> "btScalar": r"""TODO: : get this margin from the current physics / collision environment""" return _sicpybullet.btPersistentManifold_getContactBreakingThreshold(self)
def getContactProcessingThreshold(self) -> "btScalar": return _sicpybullet.btPersistentManifold_getContactProcessingThreshold(self) def setContactBreakingThreshold(self, contactBreakingThreshold: "btScalar") -> "void": return _sicpybullet.btPersistentManifold_setContactBreakingThreshold(self, contactBreakingThreshold) def setContactProcessingThreshold(self, contactProcessingThreshold: "btScalar") -> "void": return _sicpybullet.btPersistentManifold_setContactProcessingThreshold(self, contactProcessingThreshold) def getCacheEntry(self, newPoint: "btManifoldPoint") -> "int": return _sicpybullet.btPersistentManifold_getCacheEntry(self, newPoint) def addManifoldPoint(self, newPoint: "btManifoldPoint", isPredictive: "bool"=False) -> "int": return _sicpybullet.btPersistentManifold_addManifoldPoint(self, newPoint, isPredictive) def removeContactPoint(self, index: "int") -> "void": return _sicpybullet.btPersistentManifold_removeContactPoint(self, index) def replaceContactPoint(self, newPoint: "btManifoldPoint", insertIndex: "int") -> "void": return _sicpybullet.btPersistentManifold_replaceContactPoint(self, newPoint, insertIndex) def validContactDistance(self, pt: "btManifoldPoint") -> "bool": return _sicpybullet.btPersistentManifold_validContactDistance(self, pt)
[docs] def refreshContactPoints(self, trA: "btTransform", trB: "btTransform") -> "void": r""" calculated new worldspace coordinates and depth, and reject points that exceed the collision margin""" return _sicpybullet.btPersistentManifold_refreshContactPoints(self, trA, trB)
def clearManifold(self) -> "void": return _sicpybullet.btPersistentManifold_clearManifold(self) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btPersistentManifold_calculateSerializeBufferSize(self) def serialize(self, manifold: "btPersistentManifold", dataBuffer: "void *", serializer: "btSerializer *") -> "char const *": return _sicpybullet.btPersistentManifold_serialize(self, manifold, dataBuffer, serializer) def deSerialize(self, *args) -> "void": return _sicpybullet.btPersistentManifold_deSerialize(self, *args) __swig_destroy__ = _sicpybullet.delete_btPersistentManifold
# Register btPersistentManifold in _sicpybullet: _sicpybullet.btPersistentManifold_swigregister(btPersistentManifold) cvar = _sicpybullet.cvar class btPersistentManifoldDoubleData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_pointCacheLocalPointA = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLocalPointA_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLocalPointA_set) m_pointCacheLocalPointB = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLocalPointB_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLocalPointB_set) m_pointCachePositionWorldOnA = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCachePositionWorldOnA_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCachePositionWorldOnA_set) m_pointCachePositionWorldOnB = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCachePositionWorldOnB_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCachePositionWorldOnB_set) m_pointCacheNormalWorldOnB = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheNormalWorldOnB_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheNormalWorldOnB_set) m_pointCacheLateralFrictionDir1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLateralFrictionDir1_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLateralFrictionDir1_set) m_pointCacheLateralFrictionDir2 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLateralFrictionDir2_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLateralFrictionDir2_set) m_pointCacheDistance = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheDistance_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheDistance_set) m_pointCacheAppliedImpulse = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheAppliedImpulse_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheAppliedImpulse_set) m_pointCachePrevRHS = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCachePrevRHS_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCachePrevRHS_set) m_pointCacheCombinedFriction = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedFriction_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedFriction_set) m_pointCacheCombinedRollingFriction = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedRollingFriction_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedRollingFriction_set) m_pointCacheCombinedSpinningFriction = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedSpinningFriction_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedSpinningFriction_set) m_pointCacheCombinedRestitution = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedRestitution_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedRestitution_set) m_pointCachePartId0 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCachePartId0_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCachePartId0_set) m_pointCachePartId1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCachePartId1_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCachePartId1_set) m_pointCacheIndex0 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheIndex0_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheIndex0_set) m_pointCacheIndex1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheIndex1_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheIndex1_set) m_pointCacheContactPointFlags = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactPointFlags_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactPointFlags_set) m_pointCacheAppliedImpulseLateral1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheAppliedImpulseLateral1_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheAppliedImpulseLateral1_set) m_pointCacheAppliedImpulseLateral2 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheAppliedImpulseLateral2_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheAppliedImpulseLateral2_set) m_pointCacheContactMotion1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactMotion1_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactMotion1_set) m_pointCacheContactMotion2 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactMotion2_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactMotion2_set) m_pointCacheContactCFM = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactCFM_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactCFM_set) m_pointCacheCombinedContactStiffness1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedContactStiffness1_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedContactStiffness1_set) m_pointCacheContactERP = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactERP_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheContactERP_set) m_pointCacheCombinedContactDamping1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedContactDamping1_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheCombinedContactDamping1_set) m_pointCacheFrictionCFM = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheFrictionCFM_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheFrictionCFM_set) m_pointCacheLifeTime = property(_sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLifeTime_get, _sicpybullet.btPersistentManifoldDoubleData_m_pointCacheLifeTime_set) m_numCachedPoints = property(_sicpybullet.btPersistentManifoldDoubleData_m_numCachedPoints_get, _sicpybullet.btPersistentManifoldDoubleData_m_numCachedPoints_set) m_companionIdA = property(_sicpybullet.btPersistentManifoldDoubleData_m_companionIdA_get, _sicpybullet.btPersistentManifoldDoubleData_m_companionIdA_set) m_companionIdB = property(_sicpybullet.btPersistentManifoldDoubleData_m_companionIdB_get, _sicpybullet.btPersistentManifoldDoubleData_m_companionIdB_set) m_index1a = property(_sicpybullet.btPersistentManifoldDoubleData_m_index1a_get, _sicpybullet.btPersistentManifoldDoubleData_m_index1a_set) m_objectType = property(_sicpybullet.btPersistentManifoldDoubleData_m_objectType_get, _sicpybullet.btPersistentManifoldDoubleData_m_objectType_set) m_contactBreakingThreshold = property(_sicpybullet.btPersistentManifoldDoubleData_m_contactBreakingThreshold_get, _sicpybullet.btPersistentManifoldDoubleData_m_contactBreakingThreshold_set) m_contactProcessingThreshold = property(_sicpybullet.btPersistentManifoldDoubleData_m_contactProcessingThreshold_get, _sicpybullet.btPersistentManifoldDoubleData_m_contactProcessingThreshold_set) m_padding = property(_sicpybullet.btPersistentManifoldDoubleData_m_padding_get, _sicpybullet.btPersistentManifoldDoubleData_m_padding_set) m_body0 = property(_sicpybullet.btPersistentManifoldDoubleData_m_body0_get, _sicpybullet.btPersistentManifoldDoubleData_m_body0_set) m_body1 = property(_sicpybullet.btPersistentManifoldDoubleData_m_body1_get, _sicpybullet.btPersistentManifoldDoubleData_m_body1_set) def __init__(self): _sicpybullet.btPersistentManifoldDoubleData_swiginit(self, _sicpybullet.new_btPersistentManifoldDoubleData()) __swig_destroy__ = _sicpybullet.delete_btPersistentManifoldDoubleData # Register btPersistentManifoldDoubleData in _sicpybullet: _sicpybullet.btPersistentManifoldDoubleData_swigregister(btPersistentManifoldDoubleData) class btPersistentManifoldFloatData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_pointCacheLocalPointA = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheLocalPointA_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheLocalPointA_set) m_pointCacheLocalPointB = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheLocalPointB_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheLocalPointB_set) m_pointCachePositionWorldOnA = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCachePositionWorldOnA_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCachePositionWorldOnA_set) m_pointCachePositionWorldOnB = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCachePositionWorldOnB_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCachePositionWorldOnB_set) m_pointCacheNormalWorldOnB = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheNormalWorldOnB_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheNormalWorldOnB_set) m_pointCacheLateralFrictionDir1 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheLateralFrictionDir1_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheLateralFrictionDir1_set) m_pointCacheLateralFrictionDir2 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheLateralFrictionDir2_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheLateralFrictionDir2_set) m_pointCacheDistance = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheDistance_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheDistance_set) m_pointCacheAppliedImpulse = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheAppliedImpulse_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheAppliedImpulse_set) m_pointCachePrevRHS = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCachePrevRHS_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCachePrevRHS_set) m_pointCacheCombinedFriction = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedFriction_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedFriction_set) m_pointCacheCombinedRollingFriction = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedRollingFriction_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedRollingFriction_set) m_pointCacheCombinedSpinningFriction = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedSpinningFriction_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedSpinningFriction_set) m_pointCacheCombinedRestitution = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedRestitution_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedRestitution_set) m_pointCachePartId0 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCachePartId0_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCachePartId0_set) m_pointCachePartId1 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCachePartId1_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCachePartId1_set) m_pointCacheIndex0 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheIndex0_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheIndex0_set) m_pointCacheIndex1 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheIndex1_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheIndex1_set) m_pointCacheContactPointFlags = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactPointFlags_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactPointFlags_set) m_pointCacheAppliedImpulseLateral1 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheAppliedImpulseLateral1_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheAppliedImpulseLateral1_set) m_pointCacheAppliedImpulseLateral2 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheAppliedImpulseLateral2_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheAppliedImpulseLateral2_set) m_pointCacheContactMotion1 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactMotion1_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactMotion1_set) m_pointCacheContactMotion2 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactMotion2_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactMotion2_set) m_pointCacheContactCFM = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactCFM_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactCFM_set) m_pointCacheCombinedContactStiffness1 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedContactStiffness1_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedContactStiffness1_set) m_pointCacheContactERP = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactERP_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheContactERP_set) m_pointCacheCombinedContactDamping1 = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedContactDamping1_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheCombinedContactDamping1_set) m_pointCacheFrictionCFM = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheFrictionCFM_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheFrictionCFM_set) m_pointCacheLifeTime = property(_sicpybullet.btPersistentManifoldFloatData_m_pointCacheLifeTime_get, _sicpybullet.btPersistentManifoldFloatData_m_pointCacheLifeTime_set) m_numCachedPoints = property(_sicpybullet.btPersistentManifoldFloatData_m_numCachedPoints_get, _sicpybullet.btPersistentManifoldFloatData_m_numCachedPoints_set) m_companionIdA = property(_sicpybullet.btPersistentManifoldFloatData_m_companionIdA_get, _sicpybullet.btPersistentManifoldFloatData_m_companionIdA_set) m_companionIdB = property(_sicpybullet.btPersistentManifoldFloatData_m_companionIdB_get, _sicpybullet.btPersistentManifoldFloatData_m_companionIdB_set) m_index1a = property(_sicpybullet.btPersistentManifoldFloatData_m_index1a_get, _sicpybullet.btPersistentManifoldFloatData_m_index1a_set) m_objectType = property(_sicpybullet.btPersistentManifoldFloatData_m_objectType_get, _sicpybullet.btPersistentManifoldFloatData_m_objectType_set) m_contactBreakingThreshold = property(_sicpybullet.btPersistentManifoldFloatData_m_contactBreakingThreshold_get, _sicpybullet.btPersistentManifoldFloatData_m_contactBreakingThreshold_set) m_contactProcessingThreshold = property(_sicpybullet.btPersistentManifoldFloatData_m_contactProcessingThreshold_get, _sicpybullet.btPersistentManifoldFloatData_m_contactProcessingThreshold_set) m_padding = property(_sicpybullet.btPersistentManifoldFloatData_m_padding_get, _sicpybullet.btPersistentManifoldFloatData_m_padding_set) m_body0 = property(_sicpybullet.btPersistentManifoldFloatData_m_body0_get, _sicpybullet.btPersistentManifoldFloatData_m_body0_set) m_body1 = property(_sicpybullet.btPersistentManifoldFloatData_m_body1_get, _sicpybullet.btPersistentManifoldFloatData_m_body1_set) def __init__(self): _sicpybullet.btPersistentManifoldFloatData_swiginit(self, _sicpybullet.new_btPersistentManifoldFloatData()) __swig_destroy__ = _sicpybullet.delete_btPersistentManifoldFloatData # Register btPersistentManifoldFloatData in _sicpybullet: _sicpybullet.btPersistentManifoldFloatData_swigregister(btPersistentManifoldFloatData) btPersistentManifoldDataName = _sicpybullet.btPersistentManifoldDataName
[docs] class btCollisionShape(object): r"""The btCollisionShape class provides an interface for collision shapes that can be shared among btCollisionObjects.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btCollisionShape
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r"""getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t.""" return _sicpybullet.btCollisionShape_getAabb(self, t, aabbMin, aabbMax)
def getBoundingSphere(self, center: "btVector3", radius: "btScalar &") -> "void": return _sicpybullet.btCollisionShape_getBoundingSphere(self, center, radius)
[docs] def getAngularMotionDisc(self) -> "btScalar": r"""getAngularMotionDisc returns the maximum radius needed for Conservative Advancement to handle time-of-impact with rotations.""" return _sicpybullet.btCollisionShape_getAngularMotionDisc(self)
def getContactBreakingThreshold(self, defaultContactThresholdFactor: "btScalar") -> "btScalar": return _sicpybullet.btCollisionShape_getContactBreakingThreshold(self, defaultContactThresholdFactor)
[docs] def calculateTemporalAabb(self, curTrans: "btTransform", linvel: "btVector3", angvel: "btVector3", timeStep: "btScalar", temporalAabbMin: "btVector3", temporalAabbMax: "btVector3") -> "void": r""" calculateTemporalAabb calculates the enclosing aabb for the moving object over interval [0..timeStep) result is conservative """ return _sicpybullet.btCollisionShape_calculateTemporalAabb(self, curTrans, linvel, angvel, timeStep, temporalAabbMin, temporalAabbMax)
def isPolyhedral(self) -> "bool": return _sicpybullet.btCollisionShape_isPolyhedral(self) def isConvex2d(self) -> "bool": return _sicpybullet.btCollisionShape_isConvex2d(self) def isConvex(self) -> "bool": return _sicpybullet.btCollisionShape_isConvex(self) def isNonMoving(self) -> "bool": return _sicpybullet.btCollisionShape_isNonMoving(self) def isConcave(self) -> "bool": return _sicpybullet.btCollisionShape_isConcave(self) def isCompound(self) -> "bool": return _sicpybullet.btCollisionShape_isCompound(self) def isSoftBody(self) -> "bool": return _sicpybullet.btCollisionShape_isSoftBody(self)
[docs] def isInfinite(self) -> "bool": r"""isInfinite is used to catch simulation error (aabb check)""" return _sicpybullet.btCollisionShape_isInfinite(self)
def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btCollisionShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btCollisionShape_getLocalScaling(self) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btCollisionShape_calculateLocalInertia(self, mass, inertia) def getName(self) -> "char const *": return _sicpybullet.btCollisionShape_getName(self) def getShapeType(self) -> "int": return _sicpybullet.btCollisionShape_getShapeType(self)
[docs] def getAnisotropicRollingFrictionDirection(self) -> "btVector3": r""" the getAnisotropicRollingFrictionDirection can be used in combination with setAnisotropicFriction See Bullet/Demos/RollingFrictionDemo for an example """ return _sicpybullet.btCollisionShape_getAnisotropicRollingFrictionDirection(self)
def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btCollisionShape_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btCollisionShape_getMargin(self)
[docs] def setUserPointer(self, userPtr: "void *") -> "void": r"""optional user data pointer""" return _sicpybullet.btCollisionShape_setUserPointer(self, userPtr)
def getUserPointer(self) -> "void *": return _sicpybullet.btCollisionShape_getUserPointer(self) def setUserIndex(self, index: "int") -> "void": return _sicpybullet.btCollisionShape_setUserIndex(self, index) def getUserIndex(self) -> "int": return _sicpybullet.btCollisionShape_getUserIndex(self) def setUserIndex2(self, index: "int") -> "void": return _sicpybullet.btCollisionShape_setUserIndex2(self, index) def getUserIndex2(self) -> "int": return _sicpybullet.btCollisionShape_getUserIndex2(self) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btCollisionShape_calculateSerializeBufferSize(self)
[docs] def serialize(self, dataBuffer: "void *", serializer: "btSerializer *") -> "char const *": r"""fills the dataBuffer and returns the struct name (and 0 on failure)""" return _sicpybullet.btCollisionShape_serialize(self, dataBuffer, serializer)
def serializeSingleShape(self, serializer: "btSerializer *") -> "void": return _sicpybullet.btCollisionShape_serializeSingleShape(self, serializer)
# Register btCollisionShape in _sicpybullet: _sicpybullet.btCollisionShape_swigregister(btCollisionShape)
[docs] class btCollisionShapeData(object): r"""do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_name = property(_sicpybullet.btCollisionShapeData_m_name_get, _sicpybullet.btCollisionShapeData_m_name_set) m_shapeType = property(_sicpybullet.btCollisionShapeData_m_shapeType_get, _sicpybullet.btCollisionShapeData_m_shapeType_set) m_padding = property(_sicpybullet.btCollisionShapeData_m_padding_get, _sicpybullet.btCollisionShapeData_m_padding_set) def __init__(self): _sicpybullet.btCollisionShapeData_swiginit(self, _sicpybullet.new_btCollisionShapeData()) __swig_destroy__ = _sicpybullet.delete_btCollisionShapeData
# Register btCollisionShapeData in _sicpybullet: _sicpybullet.btCollisionShapeData_swigregister(btCollisionShapeData) MAX_PREFERRED_PENETRATION_DIRECTIONS = _sicpybullet.MAX_PREFERRED_PENETRATION_DIRECTIONS
[docs] class btConvexShape(btCollisionShape): r""" The btConvexShape is an abstract shape interface, implemented by all convex shapes such as btBoxShape, btConvexHullShape etc. It describes general convex shapes using the localGetSupportingVertex interface, used by collision detectors such as btGjkPairDetector. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btConvexShape def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexShape_localGetSupportingVertexWithoutMargin(self, vec) def localGetSupportVertexWithoutMarginNonVirtual(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexShape_localGetSupportVertexWithoutMarginNonVirtual(self, vec) def localGetSupportVertexNonVirtual(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexShape_localGetSupportVertexNonVirtual(self, vec) def getMarginNonVirtual(self) -> "btScalar": return _sicpybullet.btConvexShape_getMarginNonVirtual(self) def getAabbNonVirtual(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btConvexShape_getAabbNonVirtual(self, t, aabbMin, aabbMax) def project(self, trans: "btTransform", dir: "btVector3", minProj: "btScalar &", maxProj: "btScalar &", witnesPtMin: "btVector3", witnesPtMax: "btVector3") -> "void": return _sicpybullet.btConvexShape_project(self, trans, dir, minProj, maxProj, witnesPtMin, witnesPtMax) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btConvexShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r"""getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version""" return _sicpybullet.btConvexShape_getAabb(self, t, aabbMin, aabbMax)
def getAabbSlow(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btConvexShape_getAabbSlow(self, t, aabbMin, aabbMax) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btConvexShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btConvexShape_getLocalScaling(self) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btConvexShape_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btConvexShape_getMargin(self) def getNumPreferredPenetrationDirections(self) -> "int": return _sicpybullet.btConvexShape_getNumPreferredPenetrationDirections(self) def getPreferredPenetrationDirection(self, index: "int", penetrationVector: "btVector3") -> "void": return _sicpybullet.btConvexShape_getPreferredPenetrationDirection(self, index, penetrationVector)
# Register btConvexShape in _sicpybullet: _sicpybullet.btConvexShape_swigregister(btConvexShape)
[docs] class btConvexInternalShape(btConvexShape): r""" The btConvexInternalShape is an internal base class, shared by most convex shape implementations. The btConvexInternalShape uses a default collision margin set to CONVEX_DISTANCE_MARGIN. This collision margin used by Gjk and some other algorithms, see also btCollisionMargin.h Note that when creating small shapes (derived from btConvexInternalShape), you need to make sure to set a smaller collision margin, using the 'setMargin' API There is a automatic mechanism 'setSafeMargin' used by btBoxShape and btCylinderShape """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btConvexInternalShape def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexInternalShape_localGetSupportingVertex(self, vec) def getImplicitShapeDimensions(self) -> "btVector3 const &": return _sicpybullet.btConvexInternalShape_getImplicitShapeDimensions(self)
[docs] def setImplicitShapeDimensions(self, dimensions: "btVector3") -> "void": r""" warning: use setImplicitShapeDimensions with care changing a collision shape while the body is in the world is not recommended, it is best to remove the body from the world, then make the change, and re-add it alternatively flush the contact points, see documentation for 'cleanProxyFromPairs' """ return _sicpybullet.btConvexInternalShape_setImplicitShapeDimensions(self, dimensions)
def setSafeMargin(self, *args) -> "void": return _sicpybullet.btConvexInternalShape_setSafeMargin(self, *args)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r"""getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version""" return _sicpybullet.btConvexInternalShape_getAabb(self, t, aabbMin, aabbMax)
def getAabbSlow(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btConvexInternalShape_getAabbSlow(self, t, aabbMin, aabbMax) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btConvexInternalShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btConvexInternalShape_getLocalScaling(self) def getLocalScalingNV(self) -> "btVector3 const &": return _sicpybullet.btConvexInternalShape_getLocalScalingNV(self) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btConvexInternalShape_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btConvexInternalShape_getMargin(self) def getMarginNV(self) -> "btScalar": return _sicpybullet.btConvexInternalShape_getMarginNV(self) def getNumPreferredPenetrationDirections(self) -> "int": return _sicpybullet.btConvexInternalShape_getNumPreferredPenetrationDirections(self) def getPreferredPenetrationDirection(self, index: "int", penetrationVector: "btVector3") -> "void": return _sicpybullet.btConvexInternalShape_getPreferredPenetrationDirection(self, index, penetrationVector) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btConvexInternalShape_calculateSerializeBufferSize(self)
[docs] def serialize(self, dataBuffer: "void *", serializer: "btSerializer *") -> "char const *": r"""fills the dataBuffer and returns the struct name (and 0 on failure)""" return _sicpybullet.btConvexInternalShape_serialize(self, dataBuffer, serializer)
# Register btConvexInternalShape in _sicpybullet: _sicpybullet.btConvexInternalShape_swigregister(btConvexInternalShape)
[docs] class btConvexInternalShapeData(object): r"""do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_collisionShapeData = property(_sicpybullet.btConvexInternalShapeData_m_collisionShapeData_get, _sicpybullet.btConvexInternalShapeData_m_collisionShapeData_set) m_localScaling = property(_sicpybullet.btConvexInternalShapeData_m_localScaling_get, _sicpybullet.btConvexInternalShapeData_m_localScaling_set) m_implicitShapeDimensions = property(_sicpybullet.btConvexInternalShapeData_m_implicitShapeDimensions_get, _sicpybullet.btConvexInternalShapeData_m_implicitShapeDimensions_set) m_collisionMargin = property(_sicpybullet.btConvexInternalShapeData_m_collisionMargin_get, _sicpybullet.btConvexInternalShapeData_m_collisionMargin_set) m_padding = property(_sicpybullet.btConvexInternalShapeData_m_padding_get, _sicpybullet.btConvexInternalShapeData_m_padding_set) def __init__(self): _sicpybullet.btConvexInternalShapeData_swiginit(self, _sicpybullet.new_btConvexInternalShapeData()) __swig_destroy__ = _sicpybullet.delete_btConvexInternalShapeData
# Register btConvexInternalShapeData in _sicpybullet: _sicpybullet.btConvexInternalShapeData_swigregister(btConvexInternalShapeData)
[docs] class btConvexInternalAabbCachingShape(btConvexInternalShape): r"""btConvexInternalAabbCachingShape adds local aabb caching for convex shapes, to avoid expensive bounding box calculations""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btConvexInternalAabbCachingShape_setLocalScaling(self, scaling)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btConvexInternalAabbCachingShape_getAabb(self, t, aabbMin, aabbMax)
def recalcLocalAabb(self) -> "void": return _sicpybullet.btConvexInternalAabbCachingShape_recalcLocalAabb(self) __swig_destroy__ = _sicpybullet.delete_btConvexInternalAabbCachingShape
# Register btConvexInternalAabbCachingShape in _sicpybullet: _sicpybullet.btConvexInternalAabbCachingShape_swigregister(btConvexInternalAabbCachingShape)
[docs] class btConvex2dShape(btConvexShape): r""" The btConvex2dShape allows to use arbitrary convex shapes as 2d convex shapes, with the Z component assumed to be 0. For 2d boxes, the btBox2dShape is recommended. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, convexChildShape: "btConvexShape"): _sicpybullet.btConvex2dShape_swiginit(self, _sicpybullet.new_btConvex2dShape(convexChildShape)) __swig_destroy__ = _sicpybullet.delete_btConvex2dShape def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvex2dShape_localGetSupportingVertexWithoutMargin(self, vec) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvex2dShape_localGetSupportingVertex(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btConvex2dShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btConvex2dShape_calculateLocalInertia(self, mass, inertia) def getChildShape(self, *args) -> "btConvexShape const *": return _sicpybullet.btConvex2dShape_getChildShape(self, *args) def getName(self) -> "char const *": return _sicpybullet.btConvex2dShape_getName(self)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r"""getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version""" return _sicpybullet.btConvex2dShape_getAabb(self, t, aabbMin, aabbMax)
def getAabbSlow(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btConvex2dShape_getAabbSlow(self, t, aabbMin, aabbMax) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btConvex2dShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btConvex2dShape_getLocalScaling(self) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btConvex2dShape_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btConvex2dShape_getMargin(self) def getNumPreferredPenetrationDirections(self) -> "int": return _sicpybullet.btConvex2dShape_getNumPreferredPenetrationDirections(self) def getPreferredPenetrationDirection(self, index: "int", penetrationVector: "btVector3") -> "void": return _sicpybullet.btConvex2dShape_getPreferredPenetrationDirection(self, index, penetrationVector)
# Register btConvex2dShape in _sicpybullet: _sicpybullet.btConvex2dShape_swigregister(btConvex2dShape)
[docs] class btPolyhedralConvexShape(btConvexInternalShape): r"""The btPolyhedralConvexShape is an internal interface class for polyhedral convex shapes.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btPolyhedralConvexShape
[docs] def initializePolyhedralFeatures(self, shiftVerticesByMargin: "int"=0) -> "bool": r""" optional method mainly used to generate multiple contact points by clipping polyhedral features (faces/edges) experimental/work-in-progress """ return _sicpybullet.btPolyhedralConvexShape_initializePolyhedralFeatures(self, shiftVerticesByMargin)
def setPolyhedralFeatures(self, polyhedron: "btConvexPolyhedron") -> "void": return _sicpybullet.btPolyhedralConvexShape_setPolyhedralFeatures(self, polyhedron) def getConvexPolyhedron(self) -> "btConvexPolyhedron const *": return _sicpybullet.btPolyhedralConvexShape_getConvexPolyhedron(self) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btPolyhedralConvexShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btPolyhedralConvexShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btPolyhedralConvexShape_calculateLocalInertia(self, mass, inertia) def getNumVertices(self) -> "int": return _sicpybullet.btPolyhedralConvexShape_getNumVertices(self) def getNumEdges(self) -> "int": return _sicpybullet.btPolyhedralConvexShape_getNumEdges(self) def getEdge(self, i: "int", pa: "btVector3", pb: "btVector3") -> "void": return _sicpybullet.btPolyhedralConvexShape_getEdge(self, i, pa, pb) def getVertex(self, i: "int", vtx: "btVector3") -> "void": return _sicpybullet.btPolyhedralConvexShape_getVertex(self, i, vtx) def getNumPlanes(self) -> "int": return _sicpybullet.btPolyhedralConvexShape_getNumPlanes(self) def getPlane(self, planeNormal: "btVector3", planeSupport: "btVector3", i: "int") -> "void": return _sicpybullet.btPolyhedralConvexShape_getPlane(self, planeNormal, planeSupport, i) def isInside(self, pt: "btVector3", tolerance: "btScalar") -> "bool": return _sicpybullet.btPolyhedralConvexShape_isInside(self, pt, tolerance)
# Register btPolyhedralConvexShape in _sicpybullet: _sicpybullet.btPolyhedralConvexShape_swigregister(btPolyhedralConvexShape)
[docs] class btPolyhedralConvexAabbCachingShape(btPolyhedralConvexShape): r"""The btPolyhedralConvexAabbCachingShape adds aabb caching to the btPolyhedralConvexShape""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract") __repr__ = _swig_repr def getNonvirtualAabb(self, trans: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3", margin: "btScalar") -> "void": return _sicpybullet.btPolyhedralConvexAabbCachingShape_getNonvirtualAabb(self, trans, aabbMin, aabbMax, margin) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btPolyhedralConvexAabbCachingShape_setLocalScaling(self, scaling)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btPolyhedralConvexAabbCachingShape_getAabb(self, t, aabbMin, aabbMax)
def recalcLocalAabb(self) -> "void": return _sicpybullet.btPolyhedralConvexAabbCachingShape_recalcLocalAabb(self) __swig_destroy__ = _sicpybullet.delete_btPolyhedralConvexAabbCachingShape
# Register btPolyhedralConvexAabbCachingShape in _sicpybullet: _sicpybullet.btPolyhedralConvexAabbCachingShape_swigregister(btPolyhedralConvexAabbCachingShape)
[docs] class btConvexHullShape(btPolyhedralConvexAabbCachingShape): r""" The btConvexHullShape implements an implicit convex hull of an array of vertices. Bullet provides a general and fast collision detector for convex shapes based on GJK and EPA using localGetSupportingVertex. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, *args): r""" this constructor optionally takes in a pointer to points. Each point is assumed to be 3 consecutive btScalar (x,y,z), the striding defines the number of bytes between each point, in memory. It is easier to not pass any points in the constructor, and just add one point at a time, using addPoint. btConvexHullShape make an internal copy of the points. """ _sicpybullet.btConvexHullShape_swiginit(self, _sicpybullet.new_btConvexHullShape(*args)) def addPoint(self, point: "btVector3", recalculateLocalAabb: "bool"=True) -> "void": return _sicpybullet.btConvexHullShape_addPoint(self, point, recalculateLocalAabb) def getUnscaledPoints(self, *args) -> "btVector3 const *": return _sicpybullet.btConvexHullShape_getUnscaledPoints(self, *args)
[docs] def getPoints(self) -> "btVector3 const *": r"""getPoints is obsolete, please use getUnscaledPoints""" return _sicpybullet.btConvexHullShape_getPoints(self)
def optimizeConvexHull(self) -> "void": return _sicpybullet.btConvexHullShape_optimizeConvexHull(self) def getScaledPoint(self, i: "int") -> "btVector3": return _sicpybullet.btConvexHullShape_getScaledPoint