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(self, i) def getNumPoints(self) -> "int": return _sicpybullet.btConvexHullShape_getNumPoints(self) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexHullShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexHullShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btConvexHullShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def project(self, trans: "btTransform", dir: "btVector3", minProj: "btScalar &", maxProj: "btScalar &", witnesPtMin: "btVector3", witnesPtMax: "btVector3") -> "void": return _sicpybullet.btConvexHullShape_project(self, trans, dir, minProj, maxProj, witnesPtMin, witnesPtMax) def getName(self) -> "char const *": return _sicpybullet.btConvexHullShape_getName(self) def getNumVertices(self) -> "int": return _sicpybullet.btConvexHullShape_getNumVertices(self) def getNumEdges(self) -> "int": return _sicpybullet.btConvexHullShape_getNumEdges(self) def getEdge(self, i: "int", pa: "btVector3", pb: "btVector3") -> "void": return _sicpybullet.btConvexHullShape_getEdge(self, i, pa, pb) def getVertex(self, i: "int", vtx: "btVector3") -> "void": return _sicpybullet.btConvexHullShape_getVertex(self, i, vtx) def getNumPlanes(self) -> "int": return _sicpybullet.btConvexHullShape_getNumPlanes(self) def getPlane(self, planeNormal: "btVector3", planeSupport: "btVector3", i: "int") -> "void": return _sicpybullet.btConvexHullShape_getPlane(self, planeNormal, planeSupport, i) def isInside(self, pt: "btVector3", tolerance: "btScalar") -> "bool": return _sicpybullet.btConvexHullShape_isInside(self, pt, tolerance)
[docs] def setLocalScaling(self, scaling: "btVector3") -> "void": r"""in case we receive negative scaling""" return _sicpybullet.btConvexHullShape_setLocalScaling(self, scaling)
def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btConvexHullShape_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.btConvexHullShape_serialize(self, dataBuffer, serializer)
__swig_destroy__ = _sicpybullet.delete_btConvexHullShape
# Register btConvexHullShape in _sicpybullet: _sicpybullet.btConvexHullShape_swigregister(btConvexHullShape)
[docs] class btConvexHullShapeData(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_convexInternalShapeData = property(_sicpybullet.btConvexHullShapeData_m_convexInternalShapeData_get, _sicpybullet.btConvexHullShapeData_m_convexInternalShapeData_set) m_unscaledPointsFloatPtr = property(_sicpybullet.btConvexHullShapeData_m_unscaledPointsFloatPtr_get, _sicpybullet.btConvexHullShapeData_m_unscaledPointsFloatPtr_set) m_unscaledPointsDoublePtr = property(_sicpybullet.btConvexHullShapeData_m_unscaledPointsDoublePtr_get, _sicpybullet.btConvexHullShapeData_m_unscaledPointsDoublePtr_set) m_numUnscaledPoints = property(_sicpybullet.btConvexHullShapeData_m_numUnscaledPoints_get, _sicpybullet.btConvexHullShapeData_m_numUnscaledPoints_set) m_padding3 = property(_sicpybullet.btConvexHullShapeData_m_padding3_get, _sicpybullet.btConvexHullShapeData_m_padding3_set) def __init__(self): _sicpybullet.btConvexHullShapeData_swiginit(self, _sicpybullet.new_btConvexHullShapeData()) __swig_destroy__ = _sicpybullet.delete_btConvexHullShapeData
# Register btConvexHullShapeData in _sicpybullet: _sicpybullet.btConvexHullShapeData_swigregister(btConvexHullShapeData)
[docs] class btConvexPointCloudShape(btPolyhedralConvexAabbCachingShape): r"""The btConvexPointCloudShape implements an implicit convex hull of an array of vertices.""" 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.btConvexPointCloudShape_swiginit(self, _sicpybullet.new_btConvexPointCloudShape(*args)) def setPoints(self, *args) -> "void": return _sicpybullet.btConvexPointCloudShape_setPoints(self, *args) def getUnscaledPoints(self, *args) -> "btVector3 const *": return _sicpybullet.btConvexPointCloudShape_getUnscaledPoints(self, *args) def getNumPoints(self) -> "int": return _sicpybullet.btConvexPointCloudShape_getNumPoints(self) def getScaledPoint(self, index: "int") -> "btVector3": return _sicpybullet.btConvexPointCloudShape_getScaledPoint(self, index) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexPointCloudShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexPointCloudShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btConvexPointCloudShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def getName(self) -> "char const *": return _sicpybullet.btConvexPointCloudShape_getName(self) def getNumVertices(self) -> "int": return _sicpybullet.btConvexPointCloudShape_getNumVertices(self) def getNumEdges(self) -> "int": return _sicpybullet.btConvexPointCloudShape_getNumEdges(self) def getEdge(self, i: "int", pa: "btVector3", pb: "btVector3") -> "void": return _sicpybullet.btConvexPointCloudShape_getEdge(self, i, pa, pb) def getVertex(self, i: "int", vtx: "btVector3") -> "void": return _sicpybullet.btConvexPointCloudShape_getVertex(self, i, vtx) def getNumPlanes(self) -> "int": return _sicpybullet.btConvexPointCloudShape_getNumPlanes(self) def getPlane(self, planeNormal: "btVector3", planeSupport: "btVector3", i: "int") -> "void": return _sicpybullet.btConvexPointCloudShape_getPlane(self, planeNormal, planeSupport, i) def isInside(self, pt: "btVector3", tolerance: "btScalar") -> "bool": return _sicpybullet.btConvexPointCloudShape_isInside(self, pt, tolerance)
[docs] def setLocalScaling(self, scaling: "btVector3") -> "void": r"""in case we receive negative scaling""" return _sicpybullet.btConvexPointCloudShape_setLocalScaling(self, scaling)
__swig_destroy__ = _sicpybullet.delete_btConvexPointCloudShape
# Register btConvexPointCloudShape in _sicpybullet: _sicpybullet.btConvexPointCloudShape_swigregister(btConvexPointCloudShape) TEST_INTERNAL_OBJECTS = _sicpybullet.TEST_INTERNAL_OBJECTS r"""This file was written by Erwin Coumans""" class btFace(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_indices = property(_sicpybullet.btFace_m_indices_get, _sicpybullet.btFace_m_indices_set) def __init__(self): _sicpybullet.btFace_swiginit(self, _sicpybullet.new_btFace()) __swig_destroy__ = _sicpybullet.delete_btFace # Register btFace in _sicpybullet: _sicpybullet.btFace_swigregister(btFace) class btConvexPolyhedron(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): _sicpybullet.btConvexPolyhedron_swiginit(self, _sicpybullet.new_btConvexPolyhedron()) __swig_destroy__ = _sicpybullet.delete_btConvexPolyhedron m_vertices = property(_sicpybullet.btConvexPolyhedron_m_vertices_get, _sicpybullet.btConvexPolyhedron_m_vertices_set) m_faces = property(_sicpybullet.btConvexPolyhedron_m_faces_get, _sicpybullet.btConvexPolyhedron_m_faces_set) m_uniqueEdges = property(_sicpybullet.btConvexPolyhedron_m_uniqueEdges_get, _sicpybullet.btConvexPolyhedron_m_uniqueEdges_set) m_localCenter = property(_sicpybullet.btConvexPolyhedron_m_localCenter_get, _sicpybullet.btConvexPolyhedron_m_localCenter_set) m_extents = property(_sicpybullet.btConvexPolyhedron_m_extents_get, _sicpybullet.btConvexPolyhedron_m_extents_set) m_radius = property(_sicpybullet.btConvexPolyhedron_m_radius_get, _sicpybullet.btConvexPolyhedron_m_radius_set) mC = property(_sicpybullet.btConvexPolyhedron_mC_get, _sicpybullet.btConvexPolyhedron_mC_set) mE = property(_sicpybullet.btConvexPolyhedron_mE_get, _sicpybullet.btConvexPolyhedron_mE_set) def initialize(self) -> "void": return _sicpybullet.btConvexPolyhedron_initialize(self) def initialize2(self) -> "void": return _sicpybullet.btConvexPolyhedron_initialize2(self) def testContainment(self) -> "bool": return _sicpybullet.btConvexPolyhedron_testContainment(self) def project(self, trans: "btTransform", dir: "btVector3", minProj: "btScalar &", maxProj: "btScalar &", witnesPtMin: "btVector3", witnesPtMax: "btVector3") -> "void": return _sicpybullet.btConvexPolyhedron_project(self, trans, dir, minProj, maxProj, witnesPtMin, witnesPtMax) # Register btConvexPolyhedron in _sicpybullet: _sicpybullet.btConvexPolyhedron_swigregister(btConvexPolyhedron)
[docs] class btConvexTriangleMeshShape(btPolyhedralConvexAabbCachingShape): r""" The btConvexTriangleMeshShape is a convex hull of a triangle mesh, but the performance is not as good as btConvexHullShape. A small benefit of this class is that it uses the btStridingMeshInterface, so you can avoid the duplication of the triangle mesh data. Nevertheless, most users should use the much better performing btConvexHullShape instead. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, meshInterface: "btStridingMeshInterface", calcAabb: "bool"=True): _sicpybullet.btConvexTriangleMeshShape_swiginit(self, _sicpybullet.new_btConvexTriangleMeshShape(meshInterface, calcAabb)) def getMeshInterface(self, *args) -> "btStridingMeshInterface const *": return _sicpybullet.btConvexTriangleMeshShape_getMeshInterface(self, *args) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexTriangleMeshShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConvexTriangleMeshShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btConvexTriangleMeshShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def getName(self) -> "char const *": return _sicpybullet.btConvexTriangleMeshShape_getName(self) def getNumVertices(self) -> "int": return _sicpybullet.btConvexTriangleMeshShape_getNumVertices(self) def getNumEdges(self) -> "int": return _sicpybullet.btConvexTriangleMeshShape_getNumEdges(self) def getEdge(self, i: "int", pa: "btVector3", pb: "btVector3") -> "void": return _sicpybullet.btConvexTriangleMeshShape_getEdge(self, i, pa, pb) def getVertex(self, i: "int", vtx: "btVector3") -> "void": return _sicpybullet.btConvexTriangleMeshShape_getVertex(self, i, vtx) def getNumPlanes(self) -> "int": return _sicpybullet.btConvexTriangleMeshShape_getNumPlanes(self) def getPlane(self, planeNormal: "btVector3", planeSupport: "btVector3", i: "int") -> "void": return _sicpybullet.btConvexTriangleMeshShape_getPlane(self, planeNormal, planeSupport, i) def isInside(self, pt: "btVector3", tolerance: "btScalar") -> "bool": return _sicpybullet.btConvexTriangleMeshShape_isInside(self, pt, tolerance) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btConvexTriangleMeshShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btConvexTriangleMeshShape_getLocalScaling(self)
[docs] def calculatePrincipalAxisTransform(self, principal: "btTransform", inertia: "btVector3", volume: "btScalar &") -> "void": r""" computes the exact moment of inertia and the transform from the coordinate system defined by the principal axes of the moment of inertia and the center of mass to the current coordinate system. A mass of 1 is assumed, for other masses just multiply the computed "inertia" by the mass. The resulting transform "principal" has to be applied inversely to the mesh in order for the local coordinate system of the shape to be centered at the center of mass and to coincide with the principal axes. This also necessitates a correction of the world transform of the collision object by the principal transform. This method also computes the volume of the convex mesh. """ return _sicpybullet.btConvexTriangleMeshShape_calculatePrincipalAxisTransform(self, principal, inertia, volume)
__swig_destroy__ = _sicpybullet.delete_btConvexTriangleMeshShape
# Register btConvexTriangleMeshShape in _sicpybullet: _sicpybullet.btConvexTriangleMeshShape_swigregister(btConvexTriangleMeshShape) PHY_FLOAT = _sicpybullet.PHY_FLOAT PHY_DOUBLE = _sicpybullet.PHY_DOUBLE PHY_INTEGER = _sicpybullet.PHY_INTEGER PHY_SHORT = _sicpybullet.PHY_SHORT PHY_FIXEDPOINT88 = _sicpybullet.PHY_FIXEDPOINT88 PHY_UCHAR = _sicpybullet.PHY_UCHAR
[docs] class btConcaveShape(btCollisionShape): r""" The btConcaveShape class provides an interface for non-moving (static) concave shapes. It has been implemented by the btStaticPlaneShape, btBvhTriangleMeshShape and btHeightfieldTerrainShape. """ 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_btConcaveShape def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btConcaveShape_processAllTriangles(self, callback, aabbMin, aabbMax) def getMargin(self) -> "btScalar": return _sicpybullet.btConcaveShape_getMargin(self) def setMargin(self, collisionMargin: "btScalar") -> "void": return _sicpybullet.btConcaveShape_setMargin(self, collisionMargin)
# Register btConcaveShape in _sicpybullet: _sicpybullet.btConcaveShape_swigregister(btConcaveShape)
[docs] class btEmptyShape(btConcaveShape): r""" The btEmptyShape is a collision shape without actual collision detection shape, so most users should ignore this class. It can be replaced by another shape during runtime, but the inertia tensor should be recomputed. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): _sicpybullet.btEmptyShape_swiginit(self, _sicpybullet.new_btEmptyShape()) __swig_destroy__ = _sicpybullet.delete_btEmptyShape
[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.btEmptyShape_getAabb(self, t, aabbMin, aabbMax)
def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btEmptyShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btEmptyShape_getLocalScaling(self) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btEmptyShape_calculateLocalInertia(self, mass, inertia) def getName(self) -> "char const *": return _sicpybullet.btEmptyShape_getName(self) def processAllTriangles(self, arg2: "btTriangleCallback", arg3: "btVector3", arg4: "btVector3") -> "void": return _sicpybullet.btEmptyShape_processAllTriangles(self, arg2, arg3, arg4)
# Register btEmptyShape in _sicpybullet: _sicpybullet.btEmptyShape_swigregister(btEmptyShape) class btCompoundShapeChild(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_transform = property(_sicpybullet.btCompoundShapeChild_m_transform_get, _sicpybullet.btCompoundShapeChild_m_transform_set) m_childShape = property(_sicpybullet.btCompoundShapeChild_m_childShape_get, _sicpybullet.btCompoundShapeChild_m_childShape_set) m_childShapeType = property(_sicpybullet.btCompoundShapeChild_m_childShapeType_get, _sicpybullet.btCompoundShapeChild_m_childShapeType_set) m_childMargin = property(_sicpybullet.btCompoundShapeChild_m_childMargin_get, _sicpybullet.btCompoundShapeChild_m_childMargin_set) m_node = property(_sicpybullet.btCompoundShapeChild_m_node_get, _sicpybullet.btCompoundShapeChild_m_node_set) def __init__(self): _sicpybullet.btCompoundShapeChild_swiginit(self, _sicpybullet.new_btCompoundShapeChild()) __swig_destroy__ = _sicpybullet.delete_btCompoundShapeChild # Register btCompoundShapeChild in _sicpybullet: _sicpybullet.btCompoundShapeChild_swigregister(btCompoundShapeChild) def __eq__(*args) -> "bool": return _sicpybullet.__eq__(*args)
[docs] class btCompoundShape(btCollisionShape): r""" The btCompoundShape allows to store multiple other btCollisionShapes This allows for moving concave collision objects. This is more general then the static concave btBvhTriangleMeshShape. It has an (optional) dynamic aabb tree to accelerate early rejection tests. TODO: : This aabb tree can also be use to speed up ray tests on btCompoundShape, see http://code.google.com/p/bullet/issues/detail?id=25 Currently, removal of child shapes is only supported when disabling the aabb tree (pass 'false' in the constructor of btCompoundShape) """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, enableDynamicAabbTree: "bool"=True, initialChildCapacity: "int const"=0): _sicpybullet.btCompoundShape_swiginit(self, _sicpybullet.new_btCompoundShape(enableDynamicAabbTree, initialChildCapacity)) __swig_destroy__ = _sicpybullet.delete_btCompoundShape def addChildShape(self, localTransform: "btTransform", shape: "btCollisionShape") -> "void": return _sicpybullet.btCompoundShape_addChildShape(self, localTransform, shape)
[docs] def removeChildShape(self, shape: "btCollisionShape") -> "void": r""" Remove all children shapes that contain the specified shape""" return _sicpybullet.btCompoundShape_removeChildShape(self, shape)
def removeChildShapeByIndex(self, childShapeindex: "int") -> "void": return _sicpybullet.btCompoundShape_removeChildShapeByIndex(self, childShapeindex) def getNumChildShapes(self) -> "int": return _sicpybullet.btCompoundShape_getNumChildShapes(self) def getChildShape(self, *args) -> "btCollisionShape const *": return _sicpybullet.btCompoundShape_getChildShape(self, *args) def getChildTransform(self, *args) -> "btTransform const &": return _sicpybullet.btCompoundShape_getChildTransform(self, *args)
[docs] def updateChildTransform(self, childIndex: "int", newChildTransform: "btTransform", shouldRecalculateLocalAabb: "bool"=True) -> "void": r"""set a new transform for a child, and update internal data structures (local aabb and dynamic tree)""" return _sicpybullet.btCompoundShape_updateChildTransform(self, childIndex, newChildTransform, shouldRecalculateLocalAabb)
def getChildList(self) -> "btCompoundShapeChild *": return _sicpybullet.btCompoundShape_getChildList(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.btCompoundShape_getAabb(self, t, aabbMin, aabbMax)
[docs] def recalculateLocalAabb(self) -> "void": r""" Re-calculate the local Aabb. Is called at the end of removeChildShapes. Use this yourself if you modify the children or their transforms. """ return _sicpybullet.btCompoundShape_recalculateLocalAabb(self)
def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btCompoundShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btCompoundShape_getLocalScaling(self) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btCompoundShape_calculateLocalInertia(self, mass, inertia) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btCompoundShape_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btCompoundShape_getMargin(self) def getName(self) -> "char const *": return _sicpybullet.btCompoundShape_getName(self) def getDynamicAabbTree(self, *args) -> "btDbvt *": return _sicpybullet.btCompoundShape_getDynamicAabbTree(self, *args) def createAabbTreeFromChildren(self) -> "void": return _sicpybullet.btCompoundShape_createAabbTreeFromChildren(self)
[docs] def calculatePrincipalAxisTransform(self, masses: "btScalar const *", principal: "btTransform", inertia: "btVector3") -> "void": r""" computes the exact moment of inertia and the transform from the coordinate system defined by the principal axes of the moment of inertia and the center of mass to the current coordinate system. "masses" points to an array of masses of the children. The resulting transform "principal" has to be applied inversely to all children transforms in order for the local coordinate system of the compound shape to be centered at the center of mass and to coincide with the principal axes. This also necessitates a correction of the world transform of the collision object by the principal transform. """ return _sicpybullet.btCompoundShape_calculatePrincipalAxisTransform(self, masses, principal, inertia)
def getUpdateRevision(self) -> "int": return _sicpybullet.btCompoundShape_getUpdateRevision(self) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btCompoundShape_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.btCompoundShape_serialize(self, dataBuffer, serializer)
# Register btCompoundShape in _sicpybullet: _sicpybullet.btCompoundShape_swigregister(btCompoundShape)
[docs] class btCompoundShapeChildData(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_transform = property(_sicpybullet.btCompoundShapeChildData_m_transform_get, _sicpybullet.btCompoundShapeChildData_m_transform_set) m_childShape = property(_sicpybullet.btCompoundShapeChildData_m_childShape_get, _sicpybullet.btCompoundShapeChildData_m_childShape_set) m_childShapeType = property(_sicpybullet.btCompoundShapeChildData_m_childShapeType_get, _sicpybullet.btCompoundShapeChildData_m_childShapeType_set) m_childMargin = property(_sicpybullet.btCompoundShapeChildData_m_childMargin_get, _sicpybullet.btCompoundShapeChildData_m_childMargin_set) def __init__(self): _sicpybullet.btCompoundShapeChildData_swiginit(self, _sicpybullet.new_btCompoundShapeChildData()) __swig_destroy__ = _sicpybullet.delete_btCompoundShapeChildData
# Register btCompoundShapeChildData in _sicpybullet: _sicpybullet.btCompoundShapeChildData_swigregister(btCompoundShapeChildData)
[docs] class btCompoundShapeData(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.btCompoundShapeData_m_collisionShapeData_get, _sicpybullet.btCompoundShapeData_m_collisionShapeData_set) m_childShapePtr = property(_sicpybullet.btCompoundShapeData_m_childShapePtr_get, _sicpybullet.btCompoundShapeData_m_childShapePtr_set) m_numChildShapes = property(_sicpybullet.btCompoundShapeData_m_numChildShapes_get, _sicpybullet.btCompoundShapeData_m_numChildShapes_set) m_collisionMargin = property(_sicpybullet.btCompoundShapeData_m_collisionMargin_get, _sicpybullet.btCompoundShapeData_m_collisionMargin_set) def __init__(self): _sicpybullet.btCompoundShapeData_swiginit(self, _sicpybullet.new_btCompoundShapeData()) __swig_destroy__ = _sicpybullet.delete_btCompoundShapeData
# Register btCompoundShapeData in _sicpybullet: _sicpybullet.btCompoundShapeData_swigregister(btCompoundShapeData)
[docs] class btTriangleShape(btPolyhedralConvexShape): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def getNumVertices(self) -> "int": return _sicpybullet.btTriangleShape_getNumVertices(self) def getVertexPtr(self, *args) -> "btVector3 const &": return _sicpybullet.btTriangleShape_getVertexPtr(self, *args) def getVertex(self, index: "int", vert: "btVector3") -> "void": return _sicpybullet.btTriangleShape_getVertex(self, index, vert) def getNumEdges(self) -> "int": return _sicpybullet.btTriangleShape_getNumEdges(self) def getEdge(self, i: "int", pa: "btVector3", pb: "btVector3") -> "void": return _sicpybullet.btTriangleShape_getEdge(self, i, pa, pb)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btTriangleShape_getAabb(self, t, aabbMin, aabbMax)
def localGetSupportingVertexWithoutMargin(self, dir: "btVector3") -> "btVector3": return _sicpybullet.btTriangleShape_localGetSupportingVertexWithoutMargin(self, dir) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btTriangleShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def __init__(self, *args): _sicpybullet.btTriangleShape_swiginit(self, _sicpybullet.new_btTriangleShape(*args)) def getPlane(self, planeNormal: "btVector3", planeSupport: "btVector3", i: "int") -> "void": return _sicpybullet.btTriangleShape_getPlane(self, planeNormal, planeSupport, i) def getNumPlanes(self) -> "int": return _sicpybullet.btTriangleShape_getNumPlanes(self) def calcNormal(self, normal: "btVector3") -> "void": return _sicpybullet.btTriangleShape_calcNormal(self, normal) def getPlaneEquation(self, i: "int", planeNormal: "btVector3", planeSupport: "btVector3") -> "void": return _sicpybullet.btTriangleShape_getPlaneEquation(self, i, planeNormal, planeSupport) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btTriangleShape_calculateLocalInertia(self, mass, inertia) def isInside(self, pt: "btVector3", tolerance: "btScalar") -> "bool": return _sicpybullet.btTriangleShape_isInside(self, pt, tolerance) def getName(self) -> "char const *": return _sicpybullet.btTriangleShape_getName(self) def getNumPreferredPenetrationDirections(self) -> "int": return _sicpybullet.btTriangleShape_getNumPreferredPenetrationDirections(self) def getPreferredPenetrationDirection(self, index: "int", penetrationVector: "btVector3") -> "void": return _sicpybullet.btTriangleShape_getPreferredPenetrationDirection(self, index, penetrationVector) __swig_destroy__ = _sicpybullet.delete_btTriangleShape
# Register btTriangleShape in _sicpybullet: _sicpybullet.btTriangleShape_swigregister(btTriangleShape)
[docs] class btTriangleMesh(object): r""" The btTriangleMesh class is a convenience class derived from btTriangleIndexVertexArray, that provides storage for a concave triangle mesh. It can be used as data for the btBvhTriangleMeshShape. It allows either 32bit or 16bit indices, and 4 (x-y-z-w) or 3 (x-y-z) component vertices. If you want to share triangle/index data between graphics mesh and collision mesh (btBvhTriangleMeshShape), you can directly use btTriangleIndexVertexArray or derive your own class from btStridingMeshInterface. Performance of btTriangleMesh and btTriangleIndexVertexArray used in a btBvhTriangleMeshShape is the same. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_weldingThreshold = property(_sicpybullet.btTriangleMesh_m_weldingThreshold_get, _sicpybullet.btTriangleMesh_m_weldingThreshold_set) def __init__(self, use32bitIndices: "bool"=True, use4componentVertices: "bool"=True): _sicpybullet.btTriangleMesh_swiginit(self, _sicpybullet.new_btTriangleMesh(use32bitIndices, use4componentVertices)) def getUse32bitIndices(self) -> "bool": return _sicpybullet.btTriangleMesh_getUse32bitIndices(self) def getUse4componentVertices(self) -> "bool": return _sicpybullet.btTriangleMesh_getUse4componentVertices(self)
[docs] def addTriangle(self, vertex0: "btVector3", vertex1: "btVector3", vertex2: "btVector3", removeDuplicateVertices: "bool"=False) -> "void": r""" By default addTriangle won't search for duplicate vertices, because the search is very slow for large triangle meshes. In general it is better to directly use btTriangleIndexVertexArray instead. """ return _sicpybullet.btTriangleMesh_addTriangle(self, vertex0, vertex1, vertex2, removeDuplicateVertices)
[docs] def addTriangleIndices(self, index1: "int", index2: "int", index3: "int") -> "void": r"""Add a triangle using its indices. Make sure the indices are pointing within the vertices array, so add the vertices first (and to be sure, avoid removal of duplicate vertices)""" return _sicpybullet.btTriangleMesh_addTriangleIndices(self, index1, index2, index3)
def getNumTriangles(self) -> "int": return _sicpybullet.btTriangleMesh_getNumTriangles(self) def preallocateVertices(self, numverts: "int") -> "void": return _sicpybullet.btTriangleMesh_preallocateVertices(self, numverts) def preallocateIndices(self, numindices: "int") -> "void": return _sicpybullet.btTriangleMesh_preallocateIndices(self, numindices)
[docs] def findOrAddVertex(self, vertex: "btVector3", removeDuplicateVertices: "bool") -> "int": r"""findOrAddVertex is an internal method, use addTriangle instead""" return _sicpybullet.btTriangleMesh_findOrAddVertex(self, vertex, removeDuplicateVertices)
[docs] def addIndex(self, index: "int") -> "void": r"""addIndex is an internal method, use addTriangle instead""" return _sicpybullet.btTriangleMesh_addIndex(self, index)
__swig_destroy__ = _sicpybullet.delete_btTriangleMesh
# Register btTriangleMesh in _sicpybullet: _sicpybullet.btTriangleMesh_swigregister(btTriangleMesh)
[docs] class btTriangleMeshShape(btConcaveShape): r"""The btTriangleMeshShape is an internal concave triangle mesh interface. Don't use this class directly, use btBvhTriangleMeshShape instead.""" 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 __swig_destroy__ = _sicpybullet.delete_btTriangleMeshShape def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btTriangleMeshShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btTriangleMeshShape_localGetSupportingVertexWithoutMargin(self, vec) def recalcLocalAabb(self) -> "void": return _sicpybullet.btTriangleMeshShape_recalcLocalAabb(self)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btTriangleMeshShape_getAabb(self, t, aabbMin, aabbMax)
def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btTriangleMeshShape_processAllTriangles(self, callback, aabbMin, aabbMax) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btTriangleMeshShape_calculateLocalInertia(self, mass, inertia) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btTriangleMeshShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btTriangleMeshShape_getLocalScaling(self) def getMeshInterface(self, *args) -> "btStridingMeshInterface const *": return _sicpybullet.btTriangleMeshShape_getMeshInterface(self, *args) def getLocalAabbMin(self) -> "btVector3 const &": return _sicpybullet.btTriangleMeshShape_getLocalAabbMin(self) def getLocalAabbMax(self) -> "btVector3 const &": return _sicpybullet.btTriangleMeshShape_getLocalAabbMax(self) def getName(self) -> "char const *": return _sicpybullet.btTriangleMeshShape_getName(self)
# Register btTriangleMeshShape in _sicpybullet: _sicpybullet.btTriangleMeshShape_swigregister(btTriangleMeshShape)
[docs] class btBox2dShape(btPolyhedralConvexShape): r"""The btBox2dShape is a box primitive around the origin, its sides axis aligned with length specified by half extents, in local shape coordinates. When used as part of a btCollisionObject or btRigidBody it will be an oriented box in world space.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def getHalfExtentsWithMargin(self) -> "btVector3": return _sicpybullet.btBox2dShape_getHalfExtentsWithMargin(self) def getHalfExtentsWithoutMargin(self) -> "btVector3 const &": return _sicpybullet.btBox2dShape_getHalfExtentsWithoutMargin(self) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btBox2dShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btBox2dShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btBox2dShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def __init__(self, boxHalfExtents: "btVector3"): r"""a btBox2dShape is a flat 2D box in the X-Y plane (Z extents are zero)""" _sicpybullet.btBox2dShape_swiginit(self, _sicpybullet.new_btBox2dShape(boxHalfExtents)) def setMargin(self, collisionMargin: "btScalar") -> "void": return _sicpybullet.btBox2dShape_setMargin(self, collisionMargin) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btBox2dShape_setLocalScaling(self, scaling)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btBox2dShape_getAabb(self, t, aabbMin, aabbMax)
def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btBox2dShape_calculateLocalInertia(self, mass, inertia) def getVertexCount(self) -> "int": return _sicpybullet.btBox2dShape_getVertexCount(self) def getNumVertices(self) -> "int": return _sicpybullet.btBox2dShape_getNumVertices(self) def getVertices(self) -> "btVector3 const *": return _sicpybullet.btBox2dShape_getVertices(self) def getNormals(self) -> "btVector3 const *": return _sicpybullet.btBox2dShape_getNormals(self) def getPlane(self, planeNormal: "btVector3", planeSupport: "btVector3", i: "int") -> "void": return _sicpybullet.btBox2dShape_getPlane(self, planeNormal, planeSupport, i) def getCentroid(self) -> "btVector3 const &": return _sicpybullet.btBox2dShape_getCentroid(self) def getNumPlanes(self) -> "int": return _sicpybullet.btBox2dShape_getNumPlanes(self) def getNumEdges(self) -> "int": return _sicpybullet.btBox2dShape_getNumEdges(self) def getVertex(self, i: "int", vtx: "btVector3") -> "void": return _sicpybullet.btBox2dShape_getVertex(self, i, vtx) def getPlaneEquation(self, plane: "btVector4 &", i: "int") -> "void": return _sicpybullet.btBox2dShape_getPlaneEquation(self, plane, i) def getEdge(self, i: "int", pa: "btVector3", pb: "btVector3") -> "void": return _sicpybullet.btBox2dShape_getEdge(self, i, pa, pb) def isInside(self, pt: "btVector3", tolerance: "btScalar") -> "bool": return _sicpybullet.btBox2dShape_isInside(self, pt, tolerance) def getName(self) -> "char const *": return _sicpybullet.btBox2dShape_getName(self) def getNumPreferredPenetrationDirections(self) -> "int": return _sicpybullet.btBox2dShape_getNumPreferredPenetrationDirections(self) def getPreferredPenetrationDirection(self, index: "int", penetrationVector: "btVector3") -> "void": return _sicpybullet.btBox2dShape_getPreferredPenetrationDirection(self, index, penetrationVector) __swig_destroy__ = _sicpybullet.delete_btBox2dShape
# Register btBox2dShape in _sicpybullet: _sicpybullet.btBox2dShape_swigregister(btBox2dShape)
[docs] class btBoxShape(btPolyhedralConvexShape): r"""The btBoxShape is a box primitive around the origin, its sides axis aligned with length specified by half extents, in local shape coordinates. When used as part of a btCollisionObject or btRigidBody it will be an oriented box in world space.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def getHalfExtentsWithMargin(self) -> "btVector3": return _sicpybullet.btBoxShape_getHalfExtentsWithMargin(self) def getHalfExtentsWithoutMargin(self) -> "btVector3 const &": return _sicpybullet.btBoxShape_getHalfExtentsWithoutMargin(self) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btBoxShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btBoxShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btBoxShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def __init__(self, boxHalfExtents: "btVector3"): _sicpybullet.btBoxShape_swiginit(self, _sicpybullet.new_btBoxShape(boxHalfExtents)) def setMargin(self, collisionMargin: "btScalar") -> "void": return _sicpybullet.btBoxShape_setMargin(self, collisionMargin) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btBoxShape_setLocalScaling(self, scaling)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btBoxShape_getAabb(self, t, aabbMin, aabbMax)
def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btBoxShape_calculateLocalInertia(self, mass, inertia) def getPlane(self, planeNormal: "btVector3", planeSupport: "btVector3", i: "int") -> "void": return _sicpybullet.btBoxShape_getPlane(self, planeNormal, planeSupport, i) def getNumPlanes(self) -> "int": return _sicpybullet.btBoxShape_getNumPlanes(self) def getNumVertices(self) -> "int": return _sicpybullet.btBoxShape_getNumVertices(self) def getNumEdges(self) -> "int": return _sicpybullet.btBoxShape_getNumEdges(self) def getVertex(self, i: "int", vtx: "btVector3") -> "void": return _sicpybullet.btBoxShape_getVertex(self, i, vtx) def getPlaneEquation(self, plane: "btVector4 &", i: "int") -> "void": return _sicpybullet.btBoxShape_getPlaneEquation(self, plane, i) def getEdge(self, i: "int", pa: "btVector3", pb: "btVector3") -> "void": return _sicpybullet.btBoxShape_getEdge(self, i, pa, pb) def isInside(self, pt: "btVector3", tolerance: "btScalar") -> "bool": return _sicpybullet.btBoxShape_isInside(self, pt, tolerance) def getName(self) -> "char const *": return _sicpybullet.btBoxShape_getName(self) def getNumPreferredPenetrationDirections(self) -> "int": return _sicpybullet.btBoxShape_getNumPreferredPenetrationDirections(self) def getPreferredPenetrationDirection(self, index: "int", penetrationVector: "btVector3") -> "void": return _sicpybullet.btBoxShape_getPreferredPenetrationDirection(self, index, penetrationVector) __swig_destroy__ = _sicpybullet.delete_btBoxShape
# Register btBoxShape in _sicpybullet: _sicpybullet.btBoxShape_swigregister(btBoxShape)
[docs] class btCapsuleShape(btConvexInternalShape): r""" The btCapsuleShape represents a capsule around the Y axis, there is also the btCapsuleShapeX aligned around the X axis and btCapsuleShapeZ around the Z axis. The total height is height+2*radius, so the height is just the height between the center of each 'sphere' of the capsule caps. The btCapsuleShape is a convex hull of two spheres. The btMultiSphereShape is a more general collision shape that takes the convex hull of multiple sphere, so it can also represent a capsule when just using two spheres. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, radius: "btScalar", height: "btScalar"): _sicpybullet.btCapsuleShape_swiginit(self, _sicpybullet.new_btCapsuleShape(radius, height))
[docs] def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": r"""CollisionShape Interface""" return _sicpybullet.btCapsuleShape_calculateLocalInertia(self, mass, inertia)
[docs] def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": r""" btConvexShape Interface""" return _sicpybullet.btCapsuleShape_localGetSupportingVertexWithoutMargin(self, vec)
def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btCapsuleShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def setMargin(self, collisionMargin: "btScalar") -> "void": return _sicpybullet.btCapsuleShape_setMargin(self, collisionMargin)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btCapsuleShape_getAabb(self, t, aabbMin, aabbMax)
def getName(self) -> "char const *": return _sicpybullet.btCapsuleShape_getName(self) def getUpAxis(self) -> "int": return _sicpybullet.btCapsuleShape_getUpAxis(self) def getRadius(self) -> "btScalar": return _sicpybullet.btCapsuleShape_getRadius(self) def getHalfHeight(self) -> "btScalar": return _sicpybullet.btCapsuleShape_getHalfHeight(self) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btCapsuleShape_setLocalScaling(self, scaling)
[docs] def getAnisotropicRollingFrictionDirection(self) -> "btVector3": return _sicpybullet.btCapsuleShape_getAnisotropicRollingFrictionDirection(self)
def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btCapsuleShape_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.btCapsuleShape_serialize(self, dataBuffer, serializer)
def deSerializeFloat(self, dataBuffer: "btCapsuleShapeData") -> "void": return _sicpybullet.btCapsuleShape_deSerializeFloat(self, dataBuffer) __swig_destroy__ = _sicpybullet.delete_btCapsuleShape
# Register btCapsuleShape in _sicpybullet: _sicpybullet.btCapsuleShape_swigregister(btCapsuleShape)
[docs] class btCapsuleShapeX(btCapsuleShape): r""" btCapsuleShapeX represents a capsule around the Z axis the total height is height+2*radius, so the height is just the height between the center of each 'sphere' of the capsule caps. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, radius: "btScalar", height: "btScalar"): _sicpybullet.btCapsuleShapeX_swiginit(self, _sicpybullet.new_btCapsuleShapeX(radius, height)) def getName(self) -> "char const *": return _sicpybullet.btCapsuleShapeX_getName(self) __swig_destroy__ = _sicpybullet.delete_btCapsuleShapeX
# Register btCapsuleShapeX in _sicpybullet: _sicpybullet.btCapsuleShapeX_swigregister(btCapsuleShapeX)
[docs] class btCapsuleShapeData(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_convexInternalShapeData = property(_sicpybullet.btCapsuleShapeData_m_convexInternalShapeData_get, _sicpybullet.btCapsuleShapeData_m_convexInternalShapeData_set) m_upAxis = property(_sicpybullet.btCapsuleShapeData_m_upAxis_get, _sicpybullet.btCapsuleShapeData_m_upAxis_set) m_padding = property(_sicpybullet.btCapsuleShapeData_m_padding_get, _sicpybullet.btCapsuleShapeData_m_padding_set) def __init__(self): _sicpybullet.btCapsuleShapeData_swiginit(self, _sicpybullet.new_btCapsuleShapeData()) __swig_destroy__ = _sicpybullet.delete_btCapsuleShapeData
# Register btCapsuleShapeData in _sicpybullet: _sicpybullet.btCapsuleShapeData_swigregister(btCapsuleShapeData)
[docs] class btConeShape(btConvexInternalShape): r"""The btConeShape implements a cone shape primitive, centered around the origin and aligned with the Y axis. The btConeShapeX is aligned around the X axis and btConeShapeZ around the Z axis.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, radius: "btScalar", height: "btScalar"): _sicpybullet.btConeShape_swiginit(self, _sicpybullet.new_btConeShape(radius, height)) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConeShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btConeShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btConeShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def getRadius(self) -> "btScalar": return _sicpybullet.btConeShape_getRadius(self) def getHeight(self) -> "btScalar": return _sicpybullet.btConeShape_getHeight(self) def setRadius(self, radius: "btScalar const") -> "void": return _sicpybullet.btConeShape_setRadius(self, radius) def setHeight(self, height: "btScalar const") -> "void": return _sicpybullet.btConeShape_setHeight(self, height) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btConeShape_calculateLocalInertia(self, mass, inertia) def getName(self) -> "char const *": return _sicpybullet.btConeShape_getName(self)
[docs] def setConeUpIndex(self, upIndex: "int") -> "void": r"""choose upAxis index""" return _sicpybullet.btConeShape_setConeUpIndex(self, upIndex)
def getConeUpIndex(self) -> "int": return _sicpybullet.btConeShape_getConeUpIndex(self)
[docs] def getAnisotropicRollingFrictionDirection(self) -> "btVector3": return _sicpybullet.btConeShape_getAnisotropicRollingFrictionDirection(self)
def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btConeShape_setLocalScaling(self, scaling) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btConeShape_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.btConeShape_serialize(self, dataBuffer, serializer)
__swig_destroy__ = _sicpybullet.delete_btConeShape
# Register btConeShape in _sicpybullet: _sicpybullet.btConeShape_swigregister(btConeShape)
[docs] class btConeShapeData(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_convexInternalShapeData = property(_sicpybullet.btConeShapeData_m_convexInternalShapeData_get, _sicpybullet.btConeShapeData_m_convexInternalShapeData_set) m_upIndex = property(_sicpybullet.btConeShapeData_m_upIndex_get, _sicpybullet.btConeShapeData_m_upIndex_set) m_padding = property(_sicpybullet.btConeShapeData_m_padding_get, _sicpybullet.btConeShapeData_m_padding_set) def __init__(self): _sicpybullet.btConeShapeData_swiginit(self, _sicpybullet.new_btConeShapeData()) __swig_destroy__ = _sicpybullet.delete_btConeShapeData
# Register btConeShapeData in _sicpybullet: _sicpybullet.btConeShapeData_swigregister(btConeShapeData)
[docs] class btCylinderShape(btConvexInternalShape): r""" The btCylinderShape class implements a cylinder shape primitive, centered around the origin. Its central axis aligned with the Y axis. btCylinderShapeX is aligned with the X axis and btCylinderShapeZ around the Z axis.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def getHalfExtentsWithMargin(self) -> "btVector3": return _sicpybullet.btCylinderShape_getHalfExtentsWithMargin(self) def getHalfExtentsWithoutMargin(self) -> "btVector3 const &": return _sicpybullet.btCylinderShape_getHalfExtentsWithoutMargin(self) def __init__(self, halfExtents: "btVector3"): _sicpybullet.btCylinderShape_swiginit(self, _sicpybullet.new_btCylinderShape(halfExtents))
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btCylinderShape_getAabb(self, t, aabbMin, aabbMax)
def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btCylinderShape_calculateLocalInertia(self, mass, inertia) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btCylinderShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btCylinderShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def setMargin(self, collisionMargin: "btScalar") -> "void": return _sicpybullet.btCylinderShape_setMargin(self, collisionMargin) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btCylinderShape_localGetSupportingVertex(self, vec) def getUpAxis(self) -> "int": return _sicpybullet.btCylinderShape_getUpAxis(self)
[docs] def getAnisotropicRollingFrictionDirection(self) -> "btVector3": return _sicpybullet.btCylinderShape_getAnisotropicRollingFrictionDirection(self)
def getRadius(self) -> "btScalar": return _sicpybullet.btCylinderShape_getRadius(self) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btCylinderShape_setLocalScaling(self, scaling) def getName(self) -> "char const *": return _sicpybullet.btCylinderShape_getName(self) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btCylinderShape_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.btCylinderShape_serialize(self, dataBuffer, serializer)
__swig_destroy__ = _sicpybullet.delete_btCylinderShape
# Register btCylinderShape in _sicpybullet: _sicpybullet.btCylinderShape_swigregister(btCylinderShape)
[docs] class btCylinderShapeX(btCylinderShape): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, halfExtents: "btVector3"): _sicpybullet.btCylinderShapeX_swiginit(self, _sicpybullet.new_btCylinderShapeX(halfExtents)) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btCylinderShapeX_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btCylinderShapeX_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def getName(self) -> "char const *": return _sicpybullet.btCylinderShapeX_getName(self) def getRadius(self) -> "btScalar": return _sicpybullet.btCylinderShapeX_getRadius(self) __swig_destroy__ = _sicpybullet.delete_btCylinderShapeX
# Register btCylinderShapeX in _sicpybullet: _sicpybullet.btCylinderShapeX_swigregister(btCylinderShapeX)
[docs] class btCylinderShapeZ(btCylinderShape): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, halfExtents: "btVector3"): _sicpybullet.btCylinderShapeZ_swiginit(self, _sicpybullet.new_btCylinderShapeZ(halfExtents)) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btCylinderShapeZ_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btCylinderShapeZ_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def getName(self) -> "char const *": return _sicpybullet.btCylinderShapeZ_getName(self) def getRadius(self) -> "btScalar": return _sicpybullet.btCylinderShapeZ_getRadius(self) __swig_destroy__ = _sicpybullet.delete_btCylinderShapeZ
# Register btCylinderShapeZ in _sicpybullet: _sicpybullet.btCylinderShapeZ_swigregister(btCylinderShapeZ)
[docs] class btCylinderShapeData(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_convexInternalShapeData = property(_sicpybullet.btCylinderShapeData_m_convexInternalShapeData_get, _sicpybullet.btCylinderShapeData_m_convexInternalShapeData_set) m_upAxis = property(_sicpybullet.btCylinderShapeData_m_upAxis_get, _sicpybullet.btCylinderShapeData_m_upAxis_set) m_padding = property(_sicpybullet.btCylinderShapeData_m_padding_get, _sicpybullet.btCylinderShapeData_m_padding_set) def __init__(self): _sicpybullet.btCylinderShapeData_swiginit(self, _sicpybullet.new_btCylinderShapeData()) __swig_destroy__ = _sicpybullet.delete_btCylinderShapeData
# Register btCylinderShapeData in _sicpybullet: _sicpybullet.btCylinderShapeData_swigregister(btCylinderShapeData)
[docs] class btHeightfieldTerrainShape(btConcaveShape): r""" btHeightfieldTerrainShape simulates a 2D heightfield terrain The caller is responsible for maintaining the heightfield array; this class does not make a copy. The heightfield can be dynamic so long as the min/max height values capture the extremes (heights must always be in that range). The local origin of the heightfield is assumed to be the exact center (as determined by width and length and height, with each axis multiplied by the localScaling). **NOTE**: be careful with coordinates. If you have a heightfield with a local min height of -100m, and a max height of +500m, you may be tempted to place it at the origin (0,0) and expect the heights in world coordinates to be -100 to +500 meters. Actually, the heights will be -300 to +300m, because bullet will re-center the heightfield based on its AABB (which is determined by the min/max heights). So keep in mind that once you create a btHeightfieldTerrainShape object, the heights will be adjusted relative to the center of the AABB. This is different to the behavior of many rendering engines, but is useful for physics engines. Most (but not all) rendering and heightfield libraries assume upAxis = 1 (that is, the y-axis is "up"). This class allows any of the 3 coordinates to be "up". Make sure your choice of axis is consistent with your rendering system. The heightfield heights are determined from the data type used for the heightfieldData array. - PHY_UCHAR: height at a point is the uchar value at the grid point, multipled by heightScale. uchar isn't recommended because of its inability to deal with negative values, and low resolution (8-bit). - PHY_SHORT: height at a point is the short int value at that grid point, multipled by heightScale. - PHY_FLOAT: height at a point is the float value at that grid point. heightScale is ignored when using the float heightfield data type. Whatever the caller specifies as minHeight and maxHeight will be honored. The class will not inspect the heightfield to discover the actual minimum or maximum heights. These values are used to determine the heightfield's axis-aligned bounding box, multiplied by localScaling. For usage and testing see the TerrainDemo. """ 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:* preferred constructor This constructor supports a range of heightfield data types, and allows for a non-zero minimum height value. heightScale is needed for any integer-based heightfield data types. | *Overload 2:* legacy constructor The legacy constructor assumes the heightfield has a minimum height of zero. Only unsigned char or floats are supported. For legacy compatibility reasons, heightScale is calculated as maxHeight / 65535 (and is only used when useFloatData = false). """ _sicpybullet.btHeightfieldTerrainShape_swiginit(self, _sicpybullet.new_btHeightfieldTerrainShape(*args)) __swig_destroy__ = _sicpybullet.delete_btHeightfieldTerrainShape def setUseDiamondSubdivision(self, useDiamondSubdivision: "bool"=True) -> "void": return _sicpybullet.btHeightfieldTerrainShape_setUseDiamondSubdivision(self, useDiamondSubdivision)
[docs] def setUseZigzagSubdivision(self, useZigzagSubdivision: "bool"=True) -> "void": r"""could help compatibility with Ogre heightfields. See https://code.google.com/p/bullet/issues/detail?id=625""" return _sicpybullet.btHeightfieldTerrainShape_setUseZigzagSubdivision(self, useZigzagSubdivision)
def setFlipTriangleWinding(self, flipTriangleWinding: "bool") -> "void": return _sicpybullet.btHeightfieldTerrainShape_setFlipTriangleWinding(self, flipTriangleWinding)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btHeightfieldTerrainShape_getAabb(self, t, aabbMin, aabbMax)
def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btHeightfieldTerrainShape_processAllTriangles(self, callback, aabbMin, aabbMax) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btHeightfieldTerrainShape_calculateLocalInertia(self, mass, inertia) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btHeightfieldTerrainShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btHeightfieldTerrainShape_getLocalScaling(self) def getVertex(self, x: "int", y: "int", vertex: "btVector3") -> "void": return _sicpybullet.btHeightfieldTerrainShape_getVertex(self, x, y, vertex) def performRaycast(self, callback: "btTriangleCallback", raySource: "btVector3", rayTarget: "btVector3") -> "void": return _sicpybullet.btHeightfieldTerrainShape_performRaycast(self, callback, raySource, rayTarget) def buildAccelerator(self, chunkSize: "int"=16) -> "void": return _sicpybullet.btHeightfieldTerrainShape_buildAccelerator(self, chunkSize) def clearAccelerator(self) -> "void": return _sicpybullet.btHeightfieldTerrainShape_clearAccelerator(self) def getUpAxis(self) -> "int": return _sicpybullet.btHeightfieldTerrainShape_getUpAxis(self) def getName(self) -> "char const *": return _sicpybullet.btHeightfieldTerrainShape_getName(self) def setUserValue3(self, value: "btScalar") -> "void": return _sicpybullet.btHeightfieldTerrainShape_setUserValue3(self, value) def getUserValue3(self) -> "btScalar": return _sicpybullet.btHeightfieldTerrainShape_getUserValue3(self) def getTriangleInfoMap(self, *args) -> "btTriangleInfoMap *": return _sicpybullet.btHeightfieldTerrainShape_getTriangleInfoMap(self, *args) def setTriangleInfoMap(self, map: "btTriangleInfoMap") -> "void": return _sicpybullet.btHeightfieldTerrainShape_setTriangleInfoMap(self, map) def getHeightfieldRawData(self) -> "unsigned char const *": return _sicpybullet.btHeightfieldTerrainShape_getHeightfieldRawData(self)
# Register btHeightfieldTerrainShape in _sicpybullet: _sicpybullet.btHeightfieldTerrainShape_swigregister(btHeightfieldTerrainShape)
[docs] class btMaterial(object): r""" This file was created by Alex Silverman""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_friction = property(_sicpybullet.btMaterial_m_friction_get, _sicpybullet.btMaterial_m_friction_set) m_restitution = property(_sicpybullet.btMaterial_m_restitution_get, _sicpybullet.btMaterial_m_restitution_set) pad = property(_sicpybullet.btMaterial_pad_get, _sicpybullet.btMaterial_pad_set) def __init__(self, *args): _sicpybullet.btMaterial_swiginit(self, _sicpybullet.new_btMaterial(*args)) __swig_destroy__ = _sicpybullet.delete_btMaterial
# Register btMaterial in _sicpybullet: _sicpybullet.btMaterial_swigregister(btMaterial)
[docs] class btMinkowskiSumShape(btConvexInternalShape): r""" The btMinkowskiSumShape is only for advanced users. This shape represents implicit based minkowski sum of two convex implicit shapes.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, shapeA: "btConvexShape", shapeB: "btConvexShape"): _sicpybullet.btMinkowskiSumShape_swiginit(self, _sicpybullet.new_btMinkowskiSumShape(shapeA, shapeB)) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btMinkowskiSumShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btMinkowskiSumShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btMinkowskiSumShape_calculateLocalInertia(self, mass, inertia) def setTransformA(self, transA: "btTransform") -> "void": return _sicpybullet.btMinkowskiSumShape_setTransformA(self, transA) def setTransformB(self, transB: "btTransform") -> "void": return _sicpybullet.btMinkowskiSumShape_setTransformB(self, transB) def getTransformA(self) -> "btTransform const &": return _sicpybullet.btMinkowskiSumShape_getTransformA(self) def GetTransformB(self) -> "btTransform const &": return _sicpybullet.btMinkowskiSumShape_GetTransformB(self) def getMargin(self) -> "btScalar": return _sicpybullet.btMinkowskiSumShape_getMargin(self) def getShapeA(self) -> "btConvexShape const *": return _sicpybullet.btMinkowskiSumShape_getShapeA(self) def getShapeB(self) -> "btConvexShape const *": return _sicpybullet.btMinkowskiSumShape_getShapeB(self) def getName(self) -> "char const *": return _sicpybullet.btMinkowskiSumShape_getName(self) __swig_destroy__ = _sicpybullet.delete_btMinkowskiSumShape
# Register btMinkowskiSumShape in _sicpybullet: _sicpybullet.btMinkowskiSumShape_swigregister(btMinkowskiSumShape)
[docs] class btSphereShape(btConvexInternalShape): r"""The btSphereShape implements an implicit sphere, centered around a local origin with radius.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, radius: "btScalar"): _sicpybullet.btSphereShape_swiginit(self, _sicpybullet.new_btSphereShape(radius)) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btSphereShape_localGetSupportingVertex(self, vec) def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btSphereShape_localGetSupportingVertexWithoutMargin(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btSphereShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btSphereShape_calculateLocalInertia(self, mass, inertia)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btSphereShape_getAabb(self, t, aabbMin, aabbMax)
def getRadius(self) -> "btScalar": return _sicpybullet.btSphereShape_getRadius(self) def setUnscaledRadius(self, radius: "btScalar") -> "void": return _sicpybullet.btSphereShape_setUnscaledRadius(self, radius) def getName(self) -> "char const *": return _sicpybullet.btSphereShape_getName(self) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btSphereShape_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btSphereShape_getMargin(self) __swig_destroy__ = _sicpybullet.delete_btSphereShape
# Register btSphereShape in _sicpybullet: _sicpybullet.btSphereShape_swigregister(btSphereShape)
[docs] class btMultiSphereShape(btConvexInternalAabbCachingShape): r""" The btMultiSphereShape represents the convex hull of a collection of spheres. You can create special capsules or other smooth volumes. It is possible to animate the spheres for deformation, but call 'recalcLocalAabb' after changing any sphere position/radius """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, positions: "btVector3", radi: "btScalar const *", numSpheres: "int"): _sicpybullet.btMultiSphereShape_swiginit(self, _sicpybullet.new_btMultiSphereShape(positions, radi, numSpheres))
[docs] def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": r"""CollisionShape Interface""" return _sicpybullet.btMultiSphereShape_calculateLocalInertia(self, mass, inertia)
[docs] def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": r""" btConvexShape Interface""" return _sicpybullet.btMultiSphereShape_localGetSupportingVertexWithoutMargin(self, vec)
def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btMultiSphereShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def getSphereCount(self) -> "int": return _sicpybullet.btMultiSphereShape_getSphereCount(self) def getSpherePosition(self, index: "int") -> "btVector3 const &": return _sicpybullet.btMultiSphereShape_getSpherePosition(self, index) def getSphereRadius(self, index: "int") -> "btScalar": return _sicpybullet.btMultiSphereShape_getSphereRadius(self, index) def getName(self) -> "char const *": return _sicpybullet.btMultiSphereShape_getName(self) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btMultiSphereShape_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.btMultiSphereShape_serialize(self, dataBuffer, serializer)
__swig_destroy__ = _sicpybullet.delete_btMultiSphereShape
# Register btMultiSphereShape in _sicpybullet: _sicpybullet.btMultiSphereShape_swigregister(btMultiSphereShape) class btPositionAndRadius(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_pos = property(_sicpybullet.btPositionAndRadius_m_pos_get, _sicpybullet.btPositionAndRadius_m_pos_set) m_radius = property(_sicpybullet.btPositionAndRadius_m_radius_get, _sicpybullet.btPositionAndRadius_m_radius_set) def __init__(self): _sicpybullet.btPositionAndRadius_swiginit(self, _sicpybullet.new_btPositionAndRadius()) __swig_destroy__ = _sicpybullet.delete_btPositionAndRadius # Register btPositionAndRadius in _sicpybullet: _sicpybullet.btPositionAndRadius_swigregister(btPositionAndRadius) class btMultiSphereShapeData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_convexInternalShapeData = property(_sicpybullet.btMultiSphereShapeData_m_convexInternalShapeData_get, _sicpybullet.btMultiSphereShapeData_m_convexInternalShapeData_set) m_localPositionArrayPtr = property(_sicpybullet.btMultiSphereShapeData_m_localPositionArrayPtr_get, _sicpybullet.btMultiSphereShapeData_m_localPositionArrayPtr_set) m_localPositionArraySize = property(_sicpybullet.btMultiSphereShapeData_m_localPositionArraySize_get, _sicpybullet.btMultiSphereShapeData_m_localPositionArraySize_set) m_padding = property(_sicpybullet.btMultiSphereShapeData_m_padding_get, _sicpybullet.btMultiSphereShapeData_m_padding_set) def __init__(self): _sicpybullet.btMultiSphereShapeData_swiginit(self, _sicpybullet.new_btMultiSphereShapeData()) __swig_destroy__ = _sicpybullet.delete_btMultiSphereShapeData # Register btMultiSphereShapeData in _sicpybullet: _sicpybullet.btMultiSphereShapeData_swigregister(btMultiSphereShapeData)
[docs] class btMultimaterialTriangleMeshShape(object): r""" This file was created by Alex Silverman The BvhTriangleMaterialMeshShape extends the btBvhTriangleMeshShape. Its main contribution is the interface into a material array, which allows per-triangle friction and restitution. """ 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:* optionally pass in a larger bvh aabb, used for quantization. This allows for deformations within this aabb | *Overload 2:* optionally pass in a larger bvh aabb, used for quantization. This allows for deformations within this aabb """ _sicpybullet.btMultimaterialTriangleMeshShape_swiginit(self, _sicpybullet.new_btMultimaterialTriangleMeshShape(*args)) __swig_destroy__ = _sicpybullet.delete_btMultimaterialTriangleMeshShape def getName(self) -> "char const *": return _sicpybullet.btMultimaterialTriangleMeshShape_getName(self)
[docs] def getMaterialProperties(self, partID: "int", triIndex: "int") -> "btMaterial const *": r"""Obtains the material for a specific triangle""" return _sicpybullet.btMultimaterialTriangleMeshShape_getMaterialProperties(self, partID, triIndex)
# Register btMultimaterialTriangleMeshShape in _sicpybullet: _sicpybullet.btMultimaterialTriangleMeshShape_swigregister(btMultimaterialTriangleMeshShape)
[docs] class btOptimizedBvh(object): r"""The btOptimizedBvh extends the btQuantizedBvh to create AABB tree for triangle meshes, through the btStridingMeshInterface.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): _sicpybullet.btOptimizedBvh_swiginit(self, _sicpybullet.new_btOptimizedBvh()) __swig_destroy__ = _sicpybullet.delete_btOptimizedBvh def build(self, triangles: "btStridingMeshInterface", useQuantizedAabbCompression: "bool", bvhAabbMin: "btVector3", bvhAabbMax: "btVector3") -> "void": return _sicpybullet.btOptimizedBvh_build(self, triangles, useQuantizedAabbCompression, bvhAabbMin, bvhAabbMax) def refit(self, triangles: "btStridingMeshInterface", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btOptimizedBvh_refit(self, triangles, aabbMin, aabbMax) def refitPartial(self, triangles: "btStridingMeshInterface", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btOptimizedBvh_refitPartial(self, triangles, aabbMin, aabbMax) def updateBvhNodes(self, meshInterface: "btStridingMeshInterface", firstNode: "int", endNode: "int", index: "int") -> "void": return _sicpybullet.btOptimizedBvh_updateBvhNodes(self, meshInterface, firstNode, endNode, index)
[docs] def serializeInPlace(self, o_alignedDataBuffer: "void *", i_dataBufferSize: "unsigned int", i_swapEndian: "bool") -> "bool": r""" Data buffer MUST be 16 byte aligned""" return _sicpybullet.btOptimizedBvh_serializeInPlace(self, o_alignedDataBuffer, i_dataBufferSize, i_swapEndian)
[docs] @staticmethod def deSerializeInPlace(i_alignedDataBuffer: "void *", i_dataBufferSize: "unsigned int", i_swapEndian: "bool") -> "btOptimizedBvh *": r"""deSerializeInPlace loads and initializes a BVH from a buffer in memory 'in place'""" return _sicpybullet.btOptimizedBvh_deSerializeInPlace(i_alignedDataBuffer, i_dataBufferSize, i_swapEndian)
# Register btOptimizedBvh in _sicpybullet: _sicpybullet.btOptimizedBvh_swigregister(btOptimizedBvh)
[docs] def btOptimizedBvh_deSerializeInPlace(i_alignedDataBuffer: "void *", i_dataBufferSize: "unsigned int", i_swapEndian: "bool") -> "btOptimizedBvh *": r"""deSerializeInPlace loads and initializes a BVH from a buffer in memory 'in place'""" return _sicpybullet.btOptimizedBvh_deSerializeInPlace(i_alignedDataBuffer, i_dataBufferSize, i_swapEndian)
[docs] class btScaledBvhTriangleMeshShape(btConcaveShape): r""" The btScaledBvhTriangleMeshShape allows to instance a scaled version of an existing btBvhTriangleMeshShape. Note that each btBvhTriangleMeshShape still can have its own local scaling, independent from this btScaledBvhTriangleMeshShape 'localScaling' """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, childShape: "btBvhTriangleMeshShape *", localScaling: "btVector3"): _sicpybullet.btScaledBvhTriangleMeshShape_swiginit(self, _sicpybullet.new_btScaledBvhTriangleMeshShape(childShape, localScaling)) __swig_destroy__ = _sicpybullet.delete_btScaledBvhTriangleMeshShape
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btScaledBvhTriangleMeshShape_getAabb(self, t, aabbMin, aabbMax)
def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btScaledBvhTriangleMeshShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btScaledBvhTriangleMeshShape_getLocalScaling(self) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btScaledBvhTriangleMeshShape_calculateLocalInertia(self, mass, inertia) def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btScaledBvhTriangleMeshShape_processAllTriangles(self, callback, aabbMin, aabbMax) def getChildShape(self, *args) -> "btBvhTriangleMeshShape const *": return _sicpybullet.btScaledBvhTriangleMeshShape_getChildShape(self, *args) def getName(self) -> "char const *": return _sicpybullet.btScaledBvhTriangleMeshShape_getName(self) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btScaledBvhTriangleMeshShape_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.btScaledBvhTriangleMeshShape_serialize(self, dataBuffer, serializer)
# Register btScaledBvhTriangleMeshShape in _sicpybullet: _sicpybullet.btScaledBvhTriangleMeshShape_swigregister(btScaledBvhTriangleMeshShape)
[docs] class btScaledTriangleMeshShapeData(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_trimeshShapeData = property(_sicpybullet.btScaledTriangleMeshShapeData_m_trimeshShapeData_get, _sicpybullet.btScaledTriangleMeshShapeData_m_trimeshShapeData_set) m_localScaling = property(_sicpybullet.btScaledTriangleMeshShapeData_m_localScaling_get, _sicpybullet.btScaledTriangleMeshShapeData_m_localScaling_set) def __init__(self): _sicpybullet.btScaledTriangleMeshShapeData_swiginit(self, _sicpybullet.new_btScaledTriangleMeshShapeData()) __swig_destroy__ = _sicpybullet.delete_btScaledTriangleMeshShapeData
# Register btScaledTriangleMeshShapeData in _sicpybullet: _sicpybullet.btScaledTriangleMeshShapeData_swigregister(btScaledTriangleMeshShapeData)
[docs] class btShapeHull(object): r""" btShapeHull implemented by John McCutchan. The btShapeHull class takes a btConvexShape, builds a simplified convex hull using btConvexHull and provides triangle indices and vertices. It can be useful for to simplify a complex convex object and for visualization of a non-polyhedral convex object. It approximates the convex hull using the supporting vertex of 42 directions. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, shape: "btConvexShape"): _sicpybullet.btShapeHull_swiginit(self, _sicpybullet.new_btShapeHull(shape)) __swig_destroy__ = _sicpybullet.delete_btShapeHull def buildHull(self, margin: "btScalar", highres: "int"=0) -> "bool": return _sicpybullet.btShapeHull_buildHull(self, margin, highres) def numTriangles(self) -> "int": return _sicpybullet.btShapeHull_numTriangles(self) def numVertices(self) -> "int": return _sicpybullet.btShapeHull_numVertices(self) def numIndices(self) -> "int": return _sicpybullet.btShapeHull_numIndices(self) def getVertexPointer(self) -> "btVector3 const *": return _sicpybullet.btShapeHull_getVertexPointer(self) def getIndexPointer(self) -> "unsigned int const *": return _sicpybullet.btShapeHull_getIndexPointer(self)
# Register btShapeHull in _sicpybullet: _sicpybullet.btShapeHull_swigregister(btShapeHull)
[docs] class btStaticPlaneShape(btConcaveShape): r"""The btStaticPlaneShape simulates an infinite non-moving (static) collision plane.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, planeNormal: "btVector3", planeConstant: "btScalar"): _sicpybullet.btStaticPlaneShape_swiginit(self, _sicpybullet.new_btStaticPlaneShape(planeNormal, planeConstant)) __swig_destroy__ = _sicpybullet.delete_btStaticPlaneShape
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btStaticPlaneShape_getAabb(self, t, aabbMin, aabbMax)
def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btStaticPlaneShape_processAllTriangles(self, callback, aabbMin, aabbMax) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btStaticPlaneShape_calculateLocalInertia(self, mass, inertia) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btStaticPlaneShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btStaticPlaneShape_getLocalScaling(self) def getPlaneNormal(self) -> "btVector3 const &": return _sicpybullet.btStaticPlaneShape_getPlaneNormal(self) def getPlaneConstant(self) -> "btScalar const &": return _sicpybullet.btStaticPlaneShape_getPlaneConstant(self) def getName(self) -> "char const *": return _sicpybullet.btStaticPlaneShape_getName(self) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btStaticPlaneShape_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.btStaticPlaneShape_serialize(self, dataBuffer, serializer)
# Register btStaticPlaneShape in _sicpybullet: _sicpybullet.btStaticPlaneShape_swigregister(btStaticPlaneShape)
[docs] class btStaticPlaneShapeData(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.btStaticPlaneShapeData_m_collisionShapeData_get, _sicpybullet.btStaticPlaneShapeData_m_collisionShapeData_set) m_localScaling = property(_sicpybullet.btStaticPlaneShapeData_m_localScaling_get, _sicpybullet.btStaticPlaneShapeData_m_localScaling_set) m_planeNormal = property(_sicpybullet.btStaticPlaneShapeData_m_planeNormal_get, _sicpybullet.btStaticPlaneShapeData_m_planeNormal_set) m_planeConstant = property(_sicpybullet.btStaticPlaneShapeData_m_planeConstant_get, _sicpybullet.btStaticPlaneShapeData_m_planeConstant_set) m_pad = property(_sicpybullet.btStaticPlaneShapeData_m_pad_get, _sicpybullet.btStaticPlaneShapeData_m_pad_set) def __init__(self): _sicpybullet.btStaticPlaneShapeData_swiginit(self, _sicpybullet.new_btStaticPlaneShapeData()) __swig_destroy__ = _sicpybullet.delete_btStaticPlaneShapeData
# Register btStaticPlaneShapeData in _sicpybullet: _sicpybullet.btStaticPlaneShapeData_swigregister(btStaticPlaneShapeData)
[docs] class btStridingMeshInterface(object): r""" The btStridingMeshInterface is the interface class for high performance generic access to triangle meshes, used in combination with btBvhTriangleMeshShape and some other collision shapes. Using index striding of 3*sizeof(integer) it can use triangle arrays, using index striding of 1*sizeof(integer) it can handle triangle strips. It allows for sharing graphics and collision meshes. Also it provides locking/unlocking of graphics meshes that are in gpu memory. """ 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_btStridingMeshInterface def InternalProcessAllTriangles(self, callback: "btInternalTriangleIndexCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btStridingMeshInterface_InternalProcessAllTriangles(self, callback, aabbMin, aabbMax)
[docs] def calculateAabbBruteForce(self, aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r"""brute force method to calculate aabb""" return _sicpybullet.btStridingMeshInterface_calculateAabbBruteForce(self, aabbMin, aabbMax)
[docs] def getLockedVertexIndexBase(self, vertexbase: "unsigned char **", numverts: "int &", type: "PHY_ScalarType &", stride: "int &", indexbase: "unsigned char **", indexstride: "int &", numfaces: "int &", indicestype: "PHY_ScalarType &", subpart: "int"=0) -> "void": r""" get read and write access to a subpart of a triangle mesh this subpart has a continuous array of vertices and indices in this way the mesh can be handled as chunks of memory with striding very similar to OpenGL vertexarray support make a call to unLockVertexBase when the read and write access is finished """ return _sicpybullet.btStridingMeshInterface_getLockedVertexIndexBase(self, vertexbase, numverts, type, stride, indexbase, indexstride, numfaces, indicestype, subpart)
def getLockedReadOnlyVertexIndexBase(self, vertexbase: "unsigned char const **", numverts: "int &", type: "PHY_ScalarType &", stride: "int &", indexbase: "unsigned char const **", indexstride: "int &", numfaces: "int &", indicestype: "PHY_ScalarType &", subpart: "int"=0) -> "void": return _sicpybullet.btStridingMeshInterface_getLockedReadOnlyVertexIndexBase(self, vertexbase, numverts, type, stride, indexbase, indexstride, numfaces, indicestype, subpart)
[docs] def unLockVertexBase(self, subpart: "int") -> "void": r""" unLockVertexBase finishes the access to a subpart of the triangle mesh make a call to unLockVertexBase when the read and write access (using getLockedVertexIndexBase) is finished """ return _sicpybullet.btStridingMeshInterface_unLockVertexBase(self, subpart)
def unLockReadOnlyVertexBase(self, subpart: "int") -> "void": return _sicpybullet.btStridingMeshInterface_unLockReadOnlyVertexBase(self, subpart)
[docs] def getNumSubParts(self) -> "int": r""" getNumSubParts returns the number of separate subparts each subpart has a continuous array of vertices and indices """ return _sicpybullet.btStridingMeshInterface_getNumSubParts(self)
def preallocateVertices(self, numverts: "int") -> "void": return _sicpybullet.btStridingMeshInterface_preallocateVertices(self, numverts) def preallocateIndices(self, numindices: "int") -> "void": return _sicpybullet.btStridingMeshInterface_preallocateIndices(self, numindices) def hasPremadeAabb(self) -> "bool": return _sicpybullet.btStridingMeshInterface_hasPremadeAabb(self) def setPremadeAabb(self, aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btStridingMeshInterface_setPremadeAabb(self, aabbMin, aabbMax) def getPremadeAabb(self, aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btStridingMeshInterface_getPremadeAabb(self, aabbMin, aabbMax) def getScaling(self) -> "btVector3 const &": return _sicpybullet.btStridingMeshInterface_getScaling(self) def setScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btStridingMeshInterface_setScaling(self, scaling) def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btStridingMeshInterface_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.btStridingMeshInterface_serialize(self, dataBuffer, serializer)
# Register btStridingMeshInterface in _sicpybullet: _sicpybullet.btStridingMeshInterface_swigregister(btStridingMeshInterface) class btIntIndexData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_value = property(_sicpybullet.btIntIndexData_m_value_get, _sicpybullet.btIntIndexData_m_value_set) def __init__(self): _sicpybullet.btIntIndexData_swiginit(self, _sicpybullet.new_btIntIndexData()) __swig_destroy__ = _sicpybullet.delete_btIntIndexData # Register btIntIndexData in _sicpybullet: _sicpybullet.btIntIndexData_swigregister(btIntIndexData) class btShortIntIndexData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_value = property(_sicpybullet.btShortIntIndexData_m_value_get, _sicpybullet.btShortIntIndexData_m_value_set) m_pad = property(_sicpybullet.btShortIntIndexData_m_pad_get, _sicpybullet.btShortIntIndexData_m_pad_set) def __init__(self): _sicpybullet.btShortIntIndexData_swiginit(self, _sicpybullet.new_btShortIntIndexData()) __swig_destroy__ = _sicpybullet.delete_btShortIntIndexData # Register btShortIntIndexData in _sicpybullet: _sicpybullet.btShortIntIndexData_swigregister(btShortIntIndexData) class btShortIntIndexTripletData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_values = property(_sicpybullet.btShortIntIndexTripletData_m_values_get, _sicpybullet.btShortIntIndexTripletData_m_values_set) m_pad = property(_sicpybullet.btShortIntIndexTripletData_m_pad_get, _sicpybullet.btShortIntIndexTripletData_m_pad_set) def __init__(self): _sicpybullet.btShortIntIndexTripletData_swiginit(self, _sicpybullet.new_btShortIntIndexTripletData()) __swig_destroy__ = _sicpybullet.delete_btShortIntIndexTripletData # Register btShortIntIndexTripletData in _sicpybullet: _sicpybullet.btShortIntIndexTripletData_swigregister(btShortIntIndexTripletData) class btCharIndexTripletData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_values = property(_sicpybullet.btCharIndexTripletData_m_values_get, _sicpybullet.btCharIndexTripletData_m_values_set) m_pad = property(_sicpybullet.btCharIndexTripletData_m_pad_get, _sicpybullet.btCharIndexTripletData_m_pad_set) def __init__(self): _sicpybullet.btCharIndexTripletData_swiginit(self, _sicpybullet.new_btCharIndexTripletData()) __swig_destroy__ = _sicpybullet.delete_btCharIndexTripletData # Register btCharIndexTripletData in _sicpybullet: _sicpybullet.btCharIndexTripletData_swigregister(btCharIndexTripletData)
[docs] class btMeshPartData(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_vertices3f = property(_sicpybullet.btMeshPartData_m_vertices3f_get, _sicpybullet.btMeshPartData_m_vertices3f_set) m_vertices3d = property(_sicpybullet.btMeshPartData_m_vertices3d_get, _sicpybullet.btMeshPartData_m_vertices3d_set) m_indices32 = property(_sicpybullet.btMeshPartData_m_indices32_get, _sicpybullet.btMeshPartData_m_indices32_set) m_3indices16 = property(_sicpybullet.btMeshPartData_m_3indices16_get, _sicpybullet.btMeshPartData_m_3indices16_set) m_3indices8 = property(_sicpybullet.btMeshPartData_m_3indices8_get, _sicpybullet.btMeshPartData_m_3indices8_set) m_indices16 = property(_sicpybullet.btMeshPartData_m_indices16_get, _sicpybullet.btMeshPartData_m_indices16_set) m_numTriangles = property(_sicpybullet.btMeshPartData_m_numTriangles_get, _sicpybullet.btMeshPartData_m_numTriangles_set) m_numVertices = property(_sicpybullet.btMeshPartData_m_numVertices_get, _sicpybullet.btMeshPartData_m_numVertices_set) def __init__(self): _sicpybullet.btMeshPartData_swiginit(self, _sicpybullet.new_btMeshPartData()) __swig_destroy__ = _sicpybullet.delete_btMeshPartData
# Register btMeshPartData in _sicpybullet: _sicpybullet.btMeshPartData_swigregister(btMeshPartData)
[docs] class btStridingMeshInterfaceData(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_meshPartsPtr = property(_sicpybullet.btStridingMeshInterfaceData_m_meshPartsPtr_get, _sicpybullet.btStridingMeshInterfaceData_m_meshPartsPtr_set) m_scaling = property(_sicpybullet.btStridingMeshInterfaceData_m_scaling_get, _sicpybullet.btStridingMeshInterfaceData_m_scaling_set) m_numMeshParts = property(_sicpybullet.btStridingMeshInterfaceData_m_numMeshParts_get, _sicpybullet.btStridingMeshInterfaceData_m_numMeshParts_set) m_padding = property(_sicpybullet.btStridingMeshInterfaceData_m_padding_get, _sicpybullet.btStridingMeshInterfaceData_m_padding_set) def __init__(self): _sicpybullet.btStridingMeshInterfaceData_swiginit(self, _sicpybullet.new_btStridingMeshInterfaceData()) __swig_destroy__ = _sicpybullet.delete_btStridingMeshInterfaceData
# Register btStridingMeshInterfaceData in _sicpybullet: _sicpybullet.btStridingMeshInterfaceData_swigregister(btStridingMeshInterfaceData) class btTriangle(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_vertex0 = property(_sicpybullet.btTriangle_m_vertex0_get, _sicpybullet.btTriangle_m_vertex0_set) m_vertex1 = property(_sicpybullet.btTriangle_m_vertex1_get, _sicpybullet.btTriangle_m_vertex1_set) m_vertex2 = property(_sicpybullet.btTriangle_m_vertex2_get, _sicpybullet.btTriangle_m_vertex2_set) m_partId = property(_sicpybullet.btTriangle_m_partId_get, _sicpybullet.btTriangle_m_partId_set) m_triangleIndex = property(_sicpybullet.btTriangle_m_triangleIndex_get, _sicpybullet.btTriangle_m_triangleIndex_set) def __init__(self): _sicpybullet.btTriangle_swiginit(self, _sicpybullet.new_btTriangle()) __swig_destroy__ = _sicpybullet.delete_btTriangle # Register btTriangle in _sicpybullet: _sicpybullet.btTriangle_swigregister(btTriangle)
[docs] class btTriangleBuffer(object): r""" The btTriangleBuffer callback can be useful to collect and store overlapping triangles between AABB and concave objects that support 'processAllTriangles' Example usage of this class: btTriangleBuffer triBuf; concaveShape->processAllTriangles(&triBuf,aabbMin, aabbMax); for (int i=0;i<triBuf.getNumTriangles();i++) { const btTriangle& tri = triBuf.getTriangle(i); do something useful here with the triangle } """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def processTriangle(self, triangle: "btVector3", partId: "int", triangleIndex: "int") -> "void": return _sicpybullet.btTriangleBuffer_processTriangle(self, triangle, partId, triangleIndex) def getNumTriangles(self) -> "int": return _sicpybullet.btTriangleBuffer_getNumTriangles(self) def getTriangle(self, index: "int") -> "btTriangle const &": return _sicpybullet.btTriangleBuffer_getTriangle(self, index) def clearBuffer(self) -> "void": return _sicpybullet.btTriangleBuffer_clearBuffer(self) def __init__(self): _sicpybullet.btTriangleBuffer_swiginit(self, _sicpybullet.new_btTriangleBuffer()) __swig_destroy__ = _sicpybullet.delete_btTriangleBuffer
# Register btTriangleBuffer in _sicpybullet: _sicpybullet.btTriangleBuffer_swigregister(btTriangleBuffer)
[docs] class btTriangleCallback(object): r""" The btTriangleCallback provides a callback for each overlapping triangle when calling processAllTriangles. This callback is called by processAllTriangles for all btConcaveShape derived class, such as btBvhTriangleMeshShape, btStaticPlaneShape and btHeightfieldTerrainShape. """ 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_btTriangleCallback def processTriangle(self, triangle: "btVector3", partId: "int", triangleIndex: "int") -> "void": return _sicpybullet.btTriangleCallback_processTriangle(self, triangle, partId, triangleIndex)
# Register btTriangleCallback in _sicpybullet: _sicpybullet.btTriangleCallback_swigregister(btTriangleCallback) class btInternalTriangleIndexCallback(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_btInternalTriangleIndexCallback def internalProcessTriangleIndex(self, triangle: "btVector3", partId: "int", triangleIndex: "int") -> "void": return _sicpybullet.btInternalTriangleIndexCallback_internalProcessTriangleIndex(self, triangle, partId, triangleIndex) # Register btInternalTriangleIndexCallback in _sicpybullet: _sicpybullet.btInternalTriangleIndexCallback_swigregister(btInternalTriangleIndexCallback)
[docs] class btIndexedMesh(object): r""" The btIndexedMesh indexes a single vertex and index array. Multiple btIndexedMesh objects can be passed into a btTriangleIndexVertexArray using addIndexedMesh. Instead of the number of indices, we pass the number of triangles. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_numTriangles = property(_sicpybullet.btIndexedMesh_m_numTriangles_get, _sicpybullet.btIndexedMesh_m_numTriangles_set) m_triangleIndexBase = property(_sicpybullet.btIndexedMesh_m_triangleIndexBase_get, _sicpybullet.btIndexedMesh_m_triangleIndexBase_set) m_triangleIndexStride = property(_sicpybullet.btIndexedMesh_m_triangleIndexStride_get, _sicpybullet.btIndexedMesh_m_triangleIndexStride_set) m_numVertices = property(_sicpybullet.btIndexedMesh_m_numVertices_get, _sicpybullet.btIndexedMesh_m_numVertices_set) m_vertexBase = property(_sicpybullet.btIndexedMesh_m_vertexBase_get, _sicpybullet.btIndexedMesh_m_vertexBase_set) m_vertexStride = property(_sicpybullet.btIndexedMesh_m_vertexStride_get, _sicpybullet.btIndexedMesh_m_vertexStride_set) m_indexType = property(_sicpybullet.btIndexedMesh_m_indexType_get, _sicpybullet.btIndexedMesh_m_indexType_set) m_vertexType = property(_sicpybullet.btIndexedMesh_m_vertexType_get, _sicpybullet.btIndexedMesh_m_vertexType_set) def __init__(self): _sicpybullet.btIndexedMesh_swiginit(self, _sicpybullet.new_btIndexedMesh()) __swig_destroy__ = _sicpybullet.delete_btIndexedMesh
# Register btIndexedMesh in _sicpybullet: _sicpybullet.btIndexedMesh_swigregister(btIndexedMesh)
[docs] class btTriangleIndexVertexArray(btStridingMeshInterface): r""" The btTriangleIndexVertexArray allows to access multiple triangle meshes, by indexing into existing triangle/index arrays. Additional meshes can be added using addIndexedMesh No duplicate is made of the vertex/index data, it only indexes into external vertex/index arrays. So keep those arrays around during the lifetime of this btTriangleIndexVertexArray. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr __swig_destroy__ = _sicpybullet.delete_btTriangleIndexVertexArray def addIndexedMesh(self, mesh: "btIndexedMesh", indexType: "PHY_ScalarType"=PHY_INTEGER) -> "void": return _sicpybullet.btTriangleIndexVertexArray_addIndexedMesh(self, mesh, indexType)
[docs] def getLockedVertexIndexBase(self, vertexbase: "unsigned char **", numverts: "int &", type: "PHY_ScalarType &", vertexStride: "int &", indexbase: "unsigned char **", indexstride: "int &", numfaces: "int &", indicestype: "PHY_ScalarType &", subpart: "int"=0) -> "void": return _sicpybullet.btTriangleIndexVertexArray_getLockedVertexIndexBase(self, vertexbase, numverts, type, vertexStride, indexbase, indexstride, numfaces, indicestype, subpart)
def getLockedReadOnlyVertexIndexBase(self, vertexbase: "unsigned char const **", numverts: "int &", type: "PHY_ScalarType &", vertexStride: "int &", indexbase: "unsigned char const **", indexstride: "int &", numfaces: "int &", indicestype: "PHY_ScalarType &", subpart: "int"=0) -> "void": return _sicpybullet.btTriangleIndexVertexArray_getLockedReadOnlyVertexIndexBase(self, vertexbase, numverts, type, vertexStride, indexbase, indexstride, numfaces, indicestype, subpart)
[docs] def unLockVertexBase(self, subpart: "int") -> "void": r""" unLockVertexBase finishes the access to a subpart of the triangle mesh make a call to unLockVertexBase when the read and write access (using getLockedVertexIndexBase) is finished """ return _sicpybullet.btTriangleIndexVertexArray_unLockVertexBase(self, subpart)
def unLockReadOnlyVertexBase(self, subpart: "int") -> "void": return _sicpybullet.btTriangleIndexVertexArray_unLockReadOnlyVertexBase(self, subpart)
[docs] def getNumSubParts(self) -> "int": r""" getNumSubParts returns the number of separate subparts each subpart has a continuous array of vertices and indices """ return _sicpybullet.btTriangleIndexVertexArray_getNumSubParts(self)
def getIndexedMeshArray(self, *args) -> "IndexedMeshArray const &": return _sicpybullet.btTriangleIndexVertexArray_getIndexedMeshArray(self, *args) def preallocateVertices(self, numverts: "int") -> "void": return _sicpybullet.btTriangleIndexVertexArray_preallocateVertices(self, numverts) def preallocateIndices(self, numindices: "int") -> "void": return _sicpybullet.btTriangleIndexVertexArray_preallocateIndices(self, numindices) def hasPremadeAabb(self) -> "bool": return _sicpybullet.btTriangleIndexVertexArray_hasPremadeAabb(self) def setPremadeAabb(self, aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btTriangleIndexVertexArray_setPremadeAabb(self, aabbMin, aabbMax) def getPremadeAabb(self, aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btTriangleIndexVertexArray_getPremadeAabb(self, aabbMin, aabbMax) def __init__(self, *args): _sicpybullet.btTriangleIndexVertexArray_swiginit(self, _sicpybullet.new_btTriangleIndexVertexArray(*args))
# Register btTriangleIndexVertexArray in _sicpybullet: _sicpybullet.btTriangleIndexVertexArray_swigregister(btTriangleIndexVertexArray)
[docs] class btMaterialProperties(object): r"""This file was created by Alex Silverman""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_numMaterials = property(_sicpybullet.btMaterialProperties_m_numMaterials_get, _sicpybullet.btMaterialProperties_m_numMaterials_set, doc=r"""m_materialBase ==========> 2 btScalar values make up one material, friction then restitution""") m_materialBase = property(_sicpybullet.btMaterialProperties_m_materialBase_get, _sicpybullet.btMaterialProperties_m_materialBase_set) m_materialStride = property(_sicpybullet.btMaterialProperties_m_materialStride_get, _sicpybullet.btMaterialProperties_m_materialStride_set) m_materialType = property(_sicpybullet.btMaterialProperties_m_materialType_get, _sicpybullet.btMaterialProperties_m_materialType_set) m_numTriangles = property(_sicpybullet.btMaterialProperties_m_numTriangles_get, _sicpybullet.btMaterialProperties_m_numTriangles_set, doc=r""" m_numTriangles <=========== This exists in the btIndexedMesh object for the same subpart, but since we're padding the structure, it can be reproduced at no real cost m_triangleMaterials =====> 1 integer value makes up one entry eg: m_triangleMaterials[1] = 5; // This will set triangle 2 to use material 5 """) m_triangleMaterialsBase = property(_sicpybullet.btMaterialProperties_m_triangleMaterialsBase_get, _sicpybullet.btMaterialProperties_m_triangleMaterialsBase_set) m_triangleMaterialStride = property(_sicpybullet.btMaterialProperties_m_triangleMaterialStride_get, _sicpybullet.btMaterialProperties_m_triangleMaterialStride_set) m_triangleType = property(_sicpybullet.btMaterialProperties_m_triangleType_get, _sicpybullet.btMaterialProperties_m_triangleType_set, doc=r"""m_triangleType <========== Automatically set in addMaterialProperties""") def __init__(self): _sicpybullet.btMaterialProperties_swiginit(self, _sicpybullet.new_btMaterialProperties()) __swig_destroy__ = _sicpybullet.delete_btMaterialProperties
# Register btMaterialProperties in _sicpybullet: _sicpybullet.btMaterialProperties_swigregister(btMaterialProperties)
[docs] class btTriangleIndexVertexMaterialArray(btTriangleIndexVertexArray): r""" Teh btTriangleIndexVertexMaterialArray is built on TriangleIndexVertexArray The addition of a material array allows for the utilization of the partID and triangleIndex that are returned in the ContactAddedCallback. As with TriangleIndexVertexArray, no duplicate is made of the material data, so it is the users responsibility to maintain the array during the lifetime of the TriangleIndexVertexMaterialArray. """ 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.btTriangleIndexVertexMaterialArray_swiginit(self, _sicpybullet.new_btTriangleIndexVertexMaterialArray(*args)) __swig_destroy__ = _sicpybullet.delete_btTriangleIndexVertexMaterialArray def addMaterialProperties(self, mat: "btMaterialProperties", triangleType: "PHY_ScalarType"=PHY_INTEGER) -> "void": return _sicpybullet.btTriangleIndexVertexMaterialArray_addMaterialProperties(self, mat, triangleType) def getLockedMaterialBase(self, materialBase: "unsigned char **", numMaterials: "int &", materialType: "PHY_ScalarType &", materialStride: "int &", triangleMaterialBase: "unsigned char **", numTriangles: "int &", triangleMaterialStride: "int &", triangleType: "PHY_ScalarType &", subpart: "int"=0) -> "void": return _sicpybullet.btTriangleIndexVertexMaterialArray_getLockedMaterialBase(self, materialBase, numMaterials, materialType, materialStride, triangleMaterialBase, numTriangles, triangleMaterialStride, triangleType, subpart) def getLockedReadOnlyMaterialBase(self, materialBase: "unsigned char const **", numMaterials: "int &", materialType: "PHY_ScalarType &", materialStride: "int &", triangleMaterialBase: "unsigned char const **", numTriangles: "int &", triangleMaterialStride: "int &", triangleType: "PHY_ScalarType &", subpart: "int"=0) -> "void": return _sicpybullet.btTriangleIndexVertexMaterialArray_getLockedReadOnlyMaterialBase(self, materialBase, numMaterials, materialType, materialStride, triangleMaterialBase, numTriangles, triangleMaterialStride, triangleType, subpart)
# Register btTriangleIndexVertexMaterialArray in _sicpybullet: _sicpybullet.btTriangleIndexVertexMaterialArray_swigregister(btTriangleIndexVertexMaterialArray) TRI_INFO_V0V1_CONVEX = _sicpybullet.TRI_INFO_V0V1_CONVEX r"""for btTriangleInfo m_flags""" TRI_INFO_V1V2_CONVEX = _sicpybullet.TRI_INFO_V1V2_CONVEX TRI_INFO_V2V0_CONVEX = _sicpybullet.TRI_INFO_V2V0_CONVEX TRI_INFO_V0V1_SWAP_NORMALB = _sicpybullet.TRI_INFO_V0V1_SWAP_NORMALB TRI_INFO_V1V2_SWAP_NORMALB = _sicpybullet.TRI_INFO_V1V2_SWAP_NORMALB TRI_INFO_V2V0_SWAP_NORMALB = _sicpybullet.TRI_INFO_V2V0_SWAP_NORMALB
[docs] class btTriangleInfo(object): r""" The btTriangleInfo structure stores information to adjust collision normals to avoid collisions against internal edges it can be generated using """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): _sicpybullet.btTriangleInfo_swiginit(self, _sicpybullet.new_btTriangleInfo()) m_flags = property(_sicpybullet.btTriangleInfo_m_flags_get, _sicpybullet.btTriangleInfo_m_flags_set) m_edgeV0V1Angle = property(_sicpybullet.btTriangleInfo_m_edgeV0V1Angle_get, _sicpybullet.btTriangleInfo_m_edgeV0V1Angle_set) m_edgeV1V2Angle = property(_sicpybullet.btTriangleInfo_m_edgeV1V2Angle_get, _sicpybullet.btTriangleInfo_m_edgeV1V2Angle_set) m_edgeV2V0Angle = property(_sicpybullet.btTriangleInfo_m_edgeV2V0Angle_get, _sicpybullet.btTriangleInfo_m_edgeV2V0Angle_set) __swig_destroy__ = _sicpybullet.delete_btTriangleInfo
# Register btTriangleInfo in _sicpybullet: _sicpybullet.btTriangleInfo_swigregister(btTriangleInfo)
[docs] class btTriangleInfoMap(object): r"""The btTriangleInfoMap stores edge angle information for some triangles. You can compute this information yourself or using btGenerateInternalEdgeInfo.""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_convexEpsilon = property(_sicpybullet.btTriangleInfoMap_m_convexEpsilon_get, _sicpybullet.btTriangleInfoMap_m_convexEpsilon_set) m_planarEpsilon = property(_sicpybullet.btTriangleInfoMap_m_planarEpsilon_get, _sicpybullet.btTriangleInfoMap_m_planarEpsilon_set, doc=r"""used to determine if an edge or contact normal is convex, using the dot product""") m_equalVertexThreshold = property(_sicpybullet.btTriangleInfoMap_m_equalVertexThreshold_get, _sicpybullet.btTriangleInfoMap_m_equalVertexThreshold_set, doc=r"""used to determine if a triangle edge is planar with zero angle""") m_edgeDistanceThreshold = property(_sicpybullet.btTriangleInfoMap_m_edgeDistanceThreshold_get, _sicpybullet.btTriangleInfoMap_m_edgeDistanceThreshold_set, doc=r"""used to compute connectivity: if the distance between two vertices is smaller than m_equalVertexThreshold, they are considered to be 'shared'""") m_maxEdgeAngleThreshold = property(_sicpybullet.btTriangleInfoMap_m_maxEdgeAngleThreshold_get, _sicpybullet.btTriangleInfoMap_m_maxEdgeAngleThreshold_set, doc=r'''used to determine edge contacts: if the closest distance between a contact point and an edge is smaller than this distance threshold it is considered to "hit the edge"''') m_zeroAreaThreshold = property(_sicpybullet.btTriangleInfoMap_m_zeroAreaThreshold_get, _sicpybullet.btTriangleInfoMap_m_zeroAreaThreshold_set) def __init__(self): r"""used to determine if a triangle is degenerate (length squared of cross product of 2 triangle edges < threshold)""" _sicpybullet.btTriangleInfoMap_swiginit(self, _sicpybullet.new_btTriangleInfoMap()) __swig_destroy__ = _sicpybullet.delete_btTriangleInfoMap def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btTriangleInfoMap_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.btTriangleInfoMap_serialize(self, dataBuffer, serializer)
def deSerialize(self, data: "btTriangleInfoMapData") -> "void": return _sicpybullet.btTriangleInfoMap_deSerialize(self, data)
# Register btTriangleInfoMap in _sicpybullet: _sicpybullet.btTriangleInfoMap_swigregister(btTriangleInfoMap)
[docs] class btTriangleInfoData(object): r"""those fields have to be float and not btScalar for the serialization to work properly""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_flags = property(_sicpybullet.btTriangleInfoData_m_flags_get, _sicpybullet.btTriangleInfoData_m_flags_set) m_edgeV0V1Angle = property(_sicpybullet.btTriangleInfoData_m_edgeV0V1Angle_get, _sicpybullet.btTriangleInfoData_m_edgeV0V1Angle_set) m_edgeV1V2Angle = property(_sicpybullet.btTriangleInfoData_m_edgeV1V2Angle_get, _sicpybullet.btTriangleInfoData_m_edgeV1V2Angle_set) m_edgeV2V0Angle = property(_sicpybullet.btTriangleInfoData_m_edgeV2V0Angle_get, _sicpybullet.btTriangleInfoData_m_edgeV2V0Angle_set) def __init__(self): _sicpybullet.btTriangleInfoData_swiginit(self, _sicpybullet.new_btTriangleInfoData()) __swig_destroy__ = _sicpybullet.delete_btTriangleInfoData
# Register btTriangleInfoData in _sicpybullet: _sicpybullet.btTriangleInfoData_swigregister(btTriangleInfoData) class btTriangleInfoMapData(object): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr m_hashTablePtr = property(_sicpybullet.btTriangleInfoMapData_m_hashTablePtr_get, _sicpybullet.btTriangleInfoMapData_m_hashTablePtr_set) m_nextPtr = property(_sicpybullet.btTriangleInfoMapData_m_nextPtr_get, _sicpybullet.btTriangleInfoMapData_m_nextPtr_set) m_valueArrayPtr = property(_sicpybullet.btTriangleInfoMapData_m_valueArrayPtr_get, _sicpybullet.btTriangleInfoMapData_m_valueArrayPtr_set) m_keyArrayPtr = property(_sicpybullet.btTriangleInfoMapData_m_keyArrayPtr_get, _sicpybullet.btTriangleInfoMapData_m_keyArrayPtr_set) m_convexEpsilon = property(_sicpybullet.btTriangleInfoMapData_m_convexEpsilon_get, _sicpybullet.btTriangleInfoMapData_m_convexEpsilon_set) m_planarEpsilon = property(_sicpybullet.btTriangleInfoMapData_m_planarEpsilon_get, _sicpybullet.btTriangleInfoMapData_m_planarEpsilon_set) m_equalVertexThreshold = property(_sicpybullet.btTriangleInfoMapData_m_equalVertexThreshold_get, _sicpybullet.btTriangleInfoMapData_m_equalVertexThreshold_set) m_edgeDistanceThreshold = property(_sicpybullet.btTriangleInfoMapData_m_edgeDistanceThreshold_get, _sicpybullet.btTriangleInfoMapData_m_edgeDistanceThreshold_set) m_zeroAreaThreshold = property(_sicpybullet.btTriangleInfoMapData_m_zeroAreaThreshold_get, _sicpybullet.btTriangleInfoMapData_m_zeroAreaThreshold_set) m_nextSize = property(_sicpybullet.btTriangleInfoMapData_m_nextSize_get, _sicpybullet.btTriangleInfoMapData_m_nextSize_set) m_hashTableSize = property(_sicpybullet.btTriangleInfoMapData_m_hashTableSize_get, _sicpybullet.btTriangleInfoMapData_m_hashTableSize_set) m_numValues = property(_sicpybullet.btTriangleInfoMapData_m_numValues_get, _sicpybullet.btTriangleInfoMapData_m_numValues_set) m_numKeys = property(_sicpybullet.btTriangleInfoMapData_m_numKeys_get, _sicpybullet.btTriangleInfoMapData_m_numKeys_set) m_padding = property(_sicpybullet.btTriangleInfoMapData_m_padding_get, _sicpybullet.btTriangleInfoMapData_m_padding_set) def __init__(self): _sicpybullet.btTriangleInfoMapData_swiginit(self, _sicpybullet.new_btTriangleInfoMapData()) __swig_destroy__ = _sicpybullet.delete_btTriangleInfoMapData # Register btTriangleInfoMapData in _sicpybullet: _sicpybullet.btTriangleInfoMapData_swigregister(btTriangleInfoMapData)
[docs] class btUniformScalingShape(btConvexShape): r""" The btUniformScalingShape allows to re-use uniform scaled instances of btConvexShape in a memory efficient way. Istead of using btUniformScalingShape, it is better to use the non-uniform setLocalScaling method on convex shapes that implement it. """ 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", uniformScalingFactor: "btScalar"): _sicpybullet.btUniformScalingShape_swiginit(self, _sicpybullet.new_btUniformScalingShape(convexChildShape, uniformScalingFactor)) __swig_destroy__ = _sicpybullet.delete_btUniformScalingShape def localGetSupportingVertexWithoutMargin(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btUniformScalingShape_localGetSupportingVertexWithoutMargin(self, vec) def localGetSupportingVertex(self, vec: "btVector3") -> "btVector3": return _sicpybullet.btUniformScalingShape_localGetSupportingVertex(self, vec) def batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors: "btVector3", supportVerticesOut: "btVector3", numVectors: "int") -> "void": return _sicpybullet.btUniformScalingShape_batchedUnitVectorGetSupportingVertexWithoutMargin(self, vectors, supportVerticesOut, numVectors) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btUniformScalingShape_calculateLocalInertia(self, mass, inertia) def getUniformScalingFactor(self) -> "btScalar": return _sicpybullet.btUniformScalingShape_getUniformScalingFactor(self) def getChildShape(self, *args) -> "btConvexShape const *": return _sicpybullet.btUniformScalingShape_getChildShape(self, *args) def getName(self) -> "char const *": return _sicpybullet.btUniformScalingShape_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.btUniformScalingShape_getAabb(self, t, aabbMin, aabbMax)
def getAabbSlow(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btUniformScalingShape_getAabbSlow(self, t, aabbMin, aabbMax) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btUniformScalingShape_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btUniformScalingShape_getLocalScaling(self) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btUniformScalingShape_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btUniformScalingShape_getMargin(self) def getNumPreferredPenetrationDirections(self) -> "int": return _sicpybullet.btUniformScalingShape_getNumPreferredPenetrationDirections(self) def getPreferredPenetrationDirection(self, index: "int", penetrationVector: "btVector3") -> "void": return _sicpybullet.btUniformScalingShape_getPreferredPenetrationDirection(self, index, penetrationVector)
# Register btUniformScalingShape in _sicpybullet: _sicpybullet.btUniformScalingShape_swigregister(btUniformScalingShape) CONST_GIMPACT_COMPOUND_SHAPE = _sicpybullet.CONST_GIMPACT_COMPOUND_SHAPE CONST_GIMPACT_TRIMESH_SHAPE_PART = _sicpybullet.CONST_GIMPACT_TRIMESH_SHAPE_PART CONST_GIMPACT_TRIMESH_SHAPE = _sicpybullet.CONST_GIMPACT_TRIMESH_SHAPE
[docs] class btTetrahedronShapeEx(object): r""" Helper class for tetrahedrons""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self): _sicpybullet.btTetrahedronShapeEx_swiginit(self, _sicpybullet.new_btTetrahedronShapeEx()) def setVertices(self, v0: "btVector3", v1: "btVector3", v2: "btVector3", v3: "btVector3") -> "void": return _sicpybullet.btTetrahedronShapeEx_setVertices(self, v0, v1, v2, v3) __swig_destroy__ = _sicpybullet.delete_btTetrahedronShapeEx
# Register btTetrahedronShapeEx in _sicpybullet: _sicpybullet.btTetrahedronShapeEx_swigregister(btTetrahedronShapeEx)
[docs] class btGImpactShapeInterface(btConcaveShape): r""" Base class for gimpact 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
[docs] def updateBound(self) -> "void": r""" performs refit operation Updates the entire Box set of this shape. """ return _sicpybullet.btGImpactShapeInterface_updateBound(self)
[docs] def getAabb(self, t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r""" If the Bounding box is not updated, then this class attemps to calculate it. """ return _sicpybullet.btGImpactShapeInterface_getAabb(self, t, aabbMin, aabbMax)
[docs] def postUpdate(self) -> "void": r""" Tells to this object that is needed to refit the box set""" return _sicpybullet.btGImpactShapeInterface_postUpdate(self)
[docs] def getLocalBox(self) -> "btAABB const &": r""" Obtains the local box, which is the global calculated box of the total of subshapes""" return _sicpybullet.btGImpactShapeInterface_getLocalBox(self)
def getShapeType(self) -> "int": return _sicpybullet.btGImpactShapeInterface_getShapeType(self) def setLocalScaling(self, scaling: "btVector3") -> "void": r""" """ return _sicpybullet.btGImpactShapeInterface_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btGImpactShapeInterface_getLocalScaling(self) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btGImpactShapeInterface_setMargin(self, margin)
[docs] def getGImpactShapeType(self) -> "eGIMPACT_SHAPE_TYPE": r""" Subshape member functionsBase method for determinig which kind of GIMPACT shape we get""" return _sicpybullet.btGImpactShapeInterface_getGImpactShapeType(self)
[docs] def getBoxSet(self) -> "btGImpactBoxSet const *": r""" gets boxset""" return _sicpybullet.btGImpactShapeInterface_getBoxSet(self)
[docs] def hasBoxSet(self) -> "bool": r""" Determines if this class has a hierarchy structure for sorting its primitives""" return _sicpybullet.btGImpactShapeInterface_hasBoxSet(self)
[docs] def getPrimitiveManager(self) -> "btPrimitiveManagerBase const *": r""" Obtains the primitive manager""" return _sicpybullet.btGImpactShapeInterface_getPrimitiveManager(self)
[docs] def getNumChildShapes(self) -> "int": r""" Gets the number of children""" return _sicpybullet.btGImpactShapeInterface_getNumChildShapes(self)
[docs] def childrenHasTransform(self) -> "bool": r""" if true, then its children must get transforms.""" return _sicpybullet.btGImpactShapeInterface_childrenHasTransform(self)
[docs] def needsRetrieveTriangles(self) -> "bool": r""" Determines if this shape has triangles""" return _sicpybullet.btGImpactShapeInterface_needsRetrieveTriangles(self)
[docs] def needsRetrieveTetrahedrons(self) -> "bool": r""" Determines if this shape has tetrahedrons""" return _sicpybullet.btGImpactShapeInterface_needsRetrieveTetrahedrons(self)
def getBulletTriangle(self, prim_index: "int", triangle: "btTriangleShapeEx &") -> "void": return _sicpybullet.btGImpactShapeInterface_getBulletTriangle(self, prim_index, triangle) def getBulletTetrahedron(self, prim_index: "int", tetrahedron: "btTetrahedronShapeEx") -> "void": return _sicpybullet.btGImpactShapeInterface_getBulletTetrahedron(self, prim_index, tetrahedron)
[docs] def lockChildShapes(self) -> "void": r""" call when reading child shapes""" return _sicpybullet.btGImpactShapeInterface_lockChildShapes(self)
def unlockChildShapes(self) -> "void": return _sicpybullet.btGImpactShapeInterface_unlockChildShapes(self)
[docs] def getPrimitiveTriangle(self, index: "int", triangle: "btPrimitiveTriangle &") -> "void": r""" if this trimesh""" return _sicpybullet.btGImpactShapeInterface_getPrimitiveTriangle(self, index, triangle)
[docs] def getChildAabb(self, child_index: "int", t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r""" Retrieves the bound from a child""" return _sicpybullet.btGImpactShapeInterface_getChildAabb(self, child_index, t, aabbMin, aabbMax)
[docs] def getChildShape(self, *args) -> "btCollisionShape const *": r""" *Overload 1:* Gets the children | *Overload 2:* Gets the child """ return _sicpybullet.btGImpactShapeInterface_getChildShape(self, *args)
[docs] def getChildTransform(self, index: "int") -> "btTransform": r""" Gets the children transform""" return _sicpybullet.btGImpactShapeInterface_getChildTransform(self, index)
[docs] def setChildTransform(self, index: "int", transform: "btTransform") -> "void": r""" Sets the children transform """ return _sicpybullet.btGImpactShapeInterface_setChildTransform(self, index, transform)
[docs] def rayTest(self, rayFrom: "btVector3", rayTo: "btVector3", resultCallback: "btCollisionWorld::RayResultCallback &") -> "void": r"""virtual method for ray collision""" return _sicpybullet.btGImpactShapeInterface_rayTest(self, rayFrom, rayTo, resultCallback)
[docs] def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r""" Function for retrieve triangles. It gives the triangles in local space """ return _sicpybullet.btGImpactShapeInterface_processAllTriangles(self, callback, aabbMin, aabbMax)
[docs] def processAllTrianglesRay(self, arg2: "btTriangleCallback", arg3: "btVector3", arg4: "btVector3") -> "void": r""" Function for retrieve triangles. It gives the triangles in local space """ return _sicpybullet.btGImpactShapeInterface_processAllTrianglesRay(self, arg2, arg3, arg4)
__swig_destroy__ = _sicpybullet.delete_btGImpactShapeInterface
# Register btGImpactShapeInterface in _sicpybullet: _sicpybullet.btGImpactShapeInterface_swigregister(btGImpactShapeInterface)
[docs] class btGImpactCompoundShape(btGImpactShapeInterface): r""" btGImpactCompoundShape allows to handle multiple btCollisionShape objects at once This class only can manage Convex subshapes """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, children_has_transform: "bool"=True): _sicpybullet.btGImpactCompoundShape_swiginit(self, _sicpybullet.new_btGImpactCompoundShape(children_has_transform)) __swig_destroy__ = _sicpybullet.delete_btGImpactCompoundShape
[docs] def childrenHasTransform(self) -> "bool": r""" if true, then its children must get transforms.""" return _sicpybullet.btGImpactCompoundShape_childrenHasTransform(self)
[docs] def getPrimitiveManager(self) -> "btPrimitiveManagerBase const *": r""" Obtains the primitive manager""" return _sicpybullet.btGImpactCompoundShape_getPrimitiveManager(self)
[docs] def getCompoundPrimitiveManager(self) -> "btGImpactCompoundShape::CompoundPrimitiveManager *": r""" Obtains the compopund primitive manager""" return _sicpybullet.btGImpactCompoundShape_getCompoundPrimitiveManager(self)
[docs] def getNumChildShapes(self) -> "int": r""" Gets the number of children""" return _sicpybullet.btGImpactCompoundShape_getNumChildShapes(self)
[docs] def addChildShape(self, *args) -> "void": r""" *Overload 1:* Use this method for adding children. Only Convex shapes are allowed. | *Overload 2:* Use this method for adding children. Only Convex shapes are allowed. """ return _sicpybullet.btGImpactCompoundShape_addChildShape(self, *args)
[docs] def getChildShape(self, *args) -> "btCollisionShape const *": r""" *Overload 1:* Gets the children | *Overload 2:* Gets the children """ return _sicpybullet.btGImpactCompoundShape_getChildShape(self, *args)
[docs] def getChildAabb(self, child_index: "int", t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r""" Retrieves the bound from a child""" return _sicpybullet.btGImpactCompoundShape_getChildAabb(self, child_index, t, aabbMin, aabbMax)
[docs] def getChildTransform(self, index: "int") -> "btTransform": r""" Gets the children transform""" return _sicpybullet.btGImpactCompoundShape_getChildTransform(self, index)
[docs] def setChildTransform(self, index: "int", transform: "btTransform") -> "void": r""" Sets the children transform """ return _sicpybullet.btGImpactCompoundShape_setChildTransform(self, index, transform)
[docs] def needsRetrieveTriangles(self) -> "bool": r""" Determines if this shape has triangles""" return _sicpybullet.btGImpactCompoundShape_needsRetrieveTriangles(self)
[docs] def needsRetrieveTetrahedrons(self) -> "bool": r""" Determines if this shape has tetrahedrons""" return _sicpybullet.btGImpactCompoundShape_needsRetrieveTetrahedrons(self)
def getBulletTriangle(self, prim_index: "int", triangle: "btTriangleShapeEx &") -> "void": return _sicpybullet.btGImpactCompoundShape_getBulletTriangle(self, prim_index, triangle) def getBulletTetrahedron(self, prim_index: "int", tetrahedron: "btTetrahedronShapeEx") -> "void": return _sicpybullet.btGImpactCompoundShape_getBulletTetrahedron(self, prim_index, tetrahedron)
[docs] def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": r""" Calculates the exact inertia tensor for this shape""" return _sicpybullet.btGImpactCompoundShape_calculateLocalInertia(self, mass, inertia)
def getName(self) -> "char const *": return _sicpybullet.btGImpactCompoundShape_getName(self)
[docs] def getGImpactShapeType(self) -> "eGIMPACT_SHAPE_TYPE": return _sicpybullet.btGImpactCompoundShape_getGImpactShapeType(self)
# Register btGImpactCompoundShape in _sicpybullet: _sicpybullet.btGImpactCompoundShape_swigregister(btGImpactCompoundShape)
[docs] class btGImpactMeshShapePart(btGImpactShapeInterface): r""" This class manages a sub part of a mesh supplied by the btStridingMeshInterface interface. - Simply create this shape by passing the btStridingMeshInterface to the constructor btGImpactMeshShapePart, then you must call updateBound() after creating the mesh - When making operations with this shape, you must call **lock** before accessing to the trimesh primitives, and then call **unlock** - You can handle deformable meshes with this shape, by calling postUpdate() every time when changing the mesh vertices. """ 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.btGImpactMeshShapePart_swiginit(self, _sicpybullet.new_btGImpactMeshShapePart(*args)) __swig_destroy__ = _sicpybullet.delete_btGImpactMeshShapePart
[docs] def childrenHasTransform(self) -> "bool": r""" if true, then its children must get transforms.""" return _sicpybullet.btGImpactMeshShapePart_childrenHasTransform(self)
[docs] def lockChildShapes(self) -> "void": r""" call when reading child shapes""" return _sicpybullet.btGImpactMeshShapePart_lockChildShapes(self)
def unlockChildShapes(self) -> "void": return _sicpybullet.btGImpactMeshShapePart_unlockChildShapes(self)
[docs] def getNumChildShapes(self) -> "int": r""" Gets the number of children""" return _sicpybullet.btGImpactMeshShapePart_getNumChildShapes(self)
[docs] def getChildShape(self, *args) -> "btCollisionShape const *": r""" *Overload 1:* Gets the children | *Overload 2:* Gets the child """ return _sicpybullet.btGImpactMeshShapePart_getChildShape(self, *args)
[docs] def getChildTransform(self, index: "int") -> "btTransform": r""" Gets the children transform""" return _sicpybullet.btGImpactMeshShapePart_getChildTransform(self, index)
[docs] def setChildTransform(self, index: "int", transform: "btTransform") -> "void": r""" Sets the children transform """ return _sicpybullet.btGImpactMeshShapePart_setChildTransform(self, index, transform)
[docs] def getPrimitiveManager(self) -> "btPrimitiveManagerBase const *": r""" Obtains the primitive manager""" return _sicpybullet.btGImpactMeshShapePart_getPrimitiveManager(self)
def getTrimeshPrimitiveManager(self) -> "btGImpactMeshShapePart::TrimeshPrimitiveManager *": return _sicpybullet.btGImpactMeshShapePart_getTrimeshPrimitiveManager(self) def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShapePart_calculateLocalInertia(self, mass, inertia) def getName(self) -> "char const *": return _sicpybullet.btGImpactMeshShapePart_getName(self)
[docs] def getGImpactShapeType(self) -> "eGIMPACT_SHAPE_TYPE": return _sicpybullet.btGImpactMeshShapePart_getGImpactShapeType(self)
[docs] def needsRetrieveTriangles(self) -> "bool": r""" Determines if this shape has triangles""" return _sicpybullet.btGImpactMeshShapePart_needsRetrieveTriangles(self)
[docs] def needsRetrieveTetrahedrons(self) -> "bool": r""" Determines if this shape has tetrahedrons""" return _sicpybullet.btGImpactMeshShapePart_needsRetrieveTetrahedrons(self)
def getBulletTriangle(self, prim_index: "int", triangle: "btTriangleShapeEx &") -> "void": return _sicpybullet.btGImpactMeshShapePart_getBulletTriangle(self, prim_index, triangle) def getBulletTetrahedron(self, prim_index: "int", tetrahedron: "btTetrahedronShapeEx") -> "void": return _sicpybullet.btGImpactMeshShapePart_getBulletTetrahedron(self, prim_index, tetrahedron) def getVertexCount(self) -> "int": return _sicpybullet.btGImpactMeshShapePart_getVertexCount(self) def getVertex(self, vertex_index: "int", vertex: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShapePart_getVertex(self, vertex_index, vertex) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btGImpactMeshShapePart_setMargin(self, margin) def getMargin(self) -> "btScalar": return _sicpybullet.btGImpactMeshShapePart_getMargin(self) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShapePart_setLocalScaling(self, scaling) def getLocalScaling(self) -> "btVector3 const &": return _sicpybullet.btGImpactMeshShapePart_getLocalScaling(self) def getPart(self) -> "int": return _sicpybullet.btGImpactMeshShapePart_getPart(self)
[docs] def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShapePart_processAllTriangles(self, callback, aabbMin, aabbMax)
[docs] def processAllTrianglesRay(self, callback: "btTriangleCallback", rayFrom: "btVector3", rayTo: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShapePart_processAllTrianglesRay(self, callback, rayFrom, rayTo)
# Register btGImpactMeshShapePart in _sicpybullet: _sicpybullet.btGImpactMeshShapePart_swigregister(btGImpactMeshShapePart)
[docs] class btGImpactMeshShape(btGImpactShapeInterface): r""" This class manages a mesh supplied by the btStridingMeshInterface interface. Set of btGImpactMeshShapePart parts - Simply create this shape by passing the btStridingMeshInterface to the constructor btGImpactMeshShape, then you must call updateBound() after creating the mesh - You can handle deformable meshes with this shape, by calling postUpdate() every time when changing the mesh vertices. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, meshInterface: "btStridingMeshInterface"): _sicpybullet.btGImpactMeshShape_swiginit(self, _sicpybullet.new_btGImpactMeshShape(meshInterface)) __swig_destroy__ = _sicpybullet.delete_btGImpactMeshShape def getMeshInterface(self, *args) -> "btStridingMeshInterface const *": return _sicpybullet.btGImpactMeshShape_getMeshInterface(self, *args) def getMeshPartCount(self) -> "int": return _sicpybullet.btGImpactMeshShape_getMeshPartCount(self) def getMeshPart(self, *args) -> "btGImpactMeshShapePart const *": return _sicpybullet.btGImpactMeshShape_getMeshPart(self, *args) def setLocalScaling(self, scaling: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShape_setLocalScaling(self, scaling) def setMargin(self, margin: "btScalar") -> "void": return _sicpybullet.btGImpactMeshShape_setMargin(self, margin)
[docs] def postUpdate(self) -> "void": r""" Tells to this object that is needed to refit all the meshes""" return _sicpybullet.btGImpactMeshShape_postUpdate(self)
def calculateLocalInertia(self, mass: "btScalar", inertia: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShape_calculateLocalInertia(self, mass, inertia)
[docs] def getPrimitiveManager(self) -> "btPrimitiveManagerBase const *": r""" Obtains the primitive manager""" return _sicpybullet.btGImpactMeshShape_getPrimitiveManager(self)
[docs] def getNumChildShapes(self) -> "int": r""" Gets the number of children""" return _sicpybullet.btGImpactMeshShape_getNumChildShapes(self)
[docs] def childrenHasTransform(self) -> "bool": r""" if true, then its children must get transforms.""" return _sicpybullet.btGImpactMeshShape_childrenHasTransform(self)
[docs] def needsRetrieveTriangles(self) -> "bool": r""" Determines if this shape has triangles""" return _sicpybullet.btGImpactMeshShape_needsRetrieveTriangles(self)
[docs] def needsRetrieveTetrahedrons(self) -> "bool": r""" Determines if this shape has tetrahedrons""" return _sicpybullet.btGImpactMeshShape_needsRetrieveTetrahedrons(self)
def getBulletTriangle(self, prim_index: "int", triangle: "btTriangleShapeEx &") -> "void": return _sicpybullet.btGImpactMeshShape_getBulletTriangle(self, prim_index, triangle) def getBulletTetrahedron(self, prim_index: "int", tetrahedron: "btTetrahedronShapeEx") -> "void": return _sicpybullet.btGImpactMeshShape_getBulletTetrahedron(self, prim_index, tetrahedron)
[docs] def lockChildShapes(self) -> "void": r""" call when reading child shapes""" return _sicpybullet.btGImpactMeshShape_lockChildShapes(self)
def unlockChildShapes(self) -> "void": return _sicpybullet.btGImpactMeshShape_unlockChildShapes(self)
[docs] def getChildAabb(self, child_index: "int", t: "btTransform", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r""" Retrieves the bound from a child""" return _sicpybullet.btGImpactMeshShape_getChildAabb(self, child_index, t, aabbMin, aabbMax)
[docs] def getChildShape(self, *args) -> "btCollisionShape const *": r""" *Overload 1:* Gets the children | *Overload 2:* Gets the child """ return _sicpybullet.btGImpactMeshShape_getChildShape(self, *args)
[docs] def getChildTransform(self, index: "int") -> "btTransform": r""" Gets the children transform""" return _sicpybullet.btGImpactMeshShape_getChildTransform(self, index)
[docs] def setChildTransform(self, index: "int", transform: "btTransform") -> "void": r""" Sets the children transform """ return _sicpybullet.btGImpactMeshShape_setChildTransform(self, index, transform)
[docs] def getGImpactShapeType(self) -> "eGIMPACT_SHAPE_TYPE": return _sicpybullet.btGImpactMeshShape_getGImpactShapeType(self)
def getName(self) -> "char const *": return _sicpybullet.btGImpactMeshShape_getName(self)
[docs] def rayTest(self, rayFrom: "btVector3", rayTo: "btVector3", resultCallback: "btCollisionWorld::RayResultCallback &") -> "void": return _sicpybullet.btGImpactMeshShape_rayTest(self, rayFrom, rayTo, resultCallback)
[docs] def processAllTriangles(self, callback: "btTriangleCallback", aabbMin: "btVector3", aabbMax: "btVector3") -> "void": r""" Function for retrieve triangles. It gives the triangles in local space """ return _sicpybullet.btGImpactMeshShape_processAllTriangles(self, callback, aabbMin, aabbMax)
[docs] def processAllTrianglesRay(self, callback: "btTriangleCallback", rayFrom: "btVector3", rayTo: "btVector3") -> "void": return _sicpybullet.btGImpactMeshShape_processAllTrianglesRay(self, callback, rayFrom, rayTo)
def calculateSerializeBufferSize(self) -> "int": return _sicpybullet.btGImpactMeshShape_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.btGImpactMeshShape_serialize(self, dataBuffer, serializer)
# Register btGImpactMeshShape in _sicpybullet: _sicpybullet.btGImpactMeshShape_swigregister(btGImpactMeshShape)
[docs] class btGImpactMeshShapeData(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.btGImpactMeshShapeData_m_collisionShapeData_get, _sicpybullet.btGImpactMeshShapeData_m_collisionShapeData_set) m_meshInterface = property(_sicpybullet.btGImpactMeshShapeData_m_meshInterface_get, _sicpybullet.btGImpactMeshShapeData_m_meshInterface_set) m_localScaling = property(_sicpybullet.btGImpactMeshShapeData_m_localScaling_get, _sicpybullet.btGImpactMeshShapeData_m_localScaling_set) m_collisionMargin = property(_sicpybullet.btGImpactMeshShapeData_m_collisionMargin_get, _sicpybullet.btGImpactMeshShapeData_m_collisionMargin_set) m_gimpactSubType = property(_sicpybullet.btGImpactMeshShapeData_m_gimpactSubType_get, _sicpybullet.btGImpactMeshShapeData_m_gimpactSubType_set) def __init__(self): _sicpybullet.btGImpactMeshShapeData_swiginit(self, _sicpybullet.new_btGImpactMeshShapeData()) __swig_destroy__ = _sicpybullet.delete_btGImpactMeshShapeData
# Register btGImpactMeshShapeData in _sicpybullet: _sicpybullet.btGImpactMeshShapeData_swigregister(btGImpactMeshShapeData)
[docs] class BulletR(ContactR): 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__ == BulletR: _self = None else: _self = self _sicpybullet.BulletR_swiginit(self, _sicpybullet.new_BulletR(_self, )) __swig_destroy__ = _sicpybullet.delete_BulletR btObject = property(_sicpybullet.BulletR_btObject_get, _sicpybullet.BulletR_btObject_set) btShape = property(_sicpybullet.BulletR_btShape_get, _sicpybullet.BulletR_btShape_set) def updateContactPointsFromManifoldPoint(self, manifold: "btPersistentManifold", point: "btManifoldPoint", flip: "bool", scaling: "double", ds1: "SP::NewtonEulerDS", ds2: "SP::NewtonEulerDS") -> "void": return _sicpybullet.BulletR_updateContactPointsFromManifoldPoint(self, manifold, point, flip, scaling, ds1, ds2)
[docs] def display(self) -> "void": return _sicpybullet.BulletR_display(self)
def __disown__(self): self.this.disown() _sicpybullet.disown_BulletR(self) return weakref.proxy(self) def _zeroPlugin(self) -> "void": r""" To initialize all the plugin functions with nullptr.""" return _sicpybullet.BulletR__zeroPlugin(self)
# Register BulletR in _sicpybullet: _sicpybullet.BulletR_swigregister(BulletR)
[docs] class Bullet1DR(siconos.kernel.NewtonEuler1DR): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr def __init__(self, arg2: "SP::btManifoldPoint"): if self.__class__ == Bullet1DR: _self = None else: _self = self _sicpybullet.Bullet1DR_swiginit(self, _sicpybullet.new_Bullet1DR(_self, arg2)) def contactPoint(self) -> "SP::btManifoldPoint": return _sicpybullet.Bullet1DR_contactPoint(self)
[docs] def computeh(self, time: "double", q: "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 :type q: :py:class:`BlockVector` :param q: coordinates of the dynamical systems involved in the relation :type y: :py:class:`SiconosVector` :param y: the resulting vector """ return _sicpybullet.Bullet1DR_computeh(self, time, q, y)
__swig_destroy__ = _sicpybullet.delete_Bullet1DR def __disown__(self): self.this.disown() _sicpybullet.disown_Bullet1DR(self) return weakref.proxy(self) def _zeroPlugin(self) -> "void": r""" To initialize all the plugin functions with nullptr.""" return _sicpybullet.Bullet1DR__zeroPlugin(self)
# Register Bullet1DR in _sicpybullet: _sicpybullet.Bullet1DR_swigregister(Bullet1DR) class Bullet2dR(Contact2dR): 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__ == Bullet2dR: _self = None else: _self = self _sicpybullet.Bullet2dR_swiginit(self, _sicpybullet.new_Bullet2dR(_self, )) __swig_destroy__ = _sicpybullet.delete_Bullet2dR btObject = property(_sicpybullet.Bullet2dR_btObject_get, _sicpybullet.Bullet2dR_btObject_set) btShape = property(_sicpybullet.Bullet2dR_btShape_get, _sicpybullet.Bullet2dR_btShape_set) def updateContactPointsFromManifoldPoint(self, manifold: "btPersistentManifold", point: "btManifoldPoint", flip: "bool", scaling: "double", ds1: "SP::RigidBody2dDS", ds2: "SP::RigidBody2dDS") -> "void": return _sicpybullet.Bullet2dR_updateContactPointsFromManifoldPoint(self, manifold, point, flip, scaling, ds1, ds2) def __disown__(self): self.this.disown() _sicpybullet.disown_Bullet2dR(self) return weakref.proxy(self) # Register Bullet2dR in _sicpybullet: _sicpybullet.Bullet2dR_swigregister(Bullet2dR) class Bullet2d3DR(Contact2d3DR): 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__ == Bullet2d3DR: _self = None else: _self = self _sicpybullet.Bullet2d3DR_swiginit(self, _sicpybullet.new_Bullet2d3DR(_self, )) __swig_destroy__ = _sicpybullet.delete_Bullet2d3DR btObject = property(_sicpybullet.Bullet2d3DR_btObject_get, _sicpybullet.Bullet2d3DR_btObject_set) btShape = property(_sicpybullet.Bullet2d3DR_btShape_get, _sicpybullet.Bullet2d3DR_btShape_set) def updateContactPointsFromManifoldPoint(self, manifold: "btPersistentManifold", point: "btManifoldPoint", flip: "bool", scaling: "double", ds1: "SP::RigidBody2dDS", ds2: "SP::RigidBody2dDS") -> "void": return _sicpybullet.Bullet2d3DR_updateContactPointsFromManifoldPoint(self, manifold, point, flip, scaling, ds1, ds2) def __disown__(self): self.this.disown() _sicpybullet.disown_Bullet2d3DR(self) return weakref.proxy(self) # Register Bullet2d3DR in _sicpybullet: _sicpybullet.Bullet2d3DR_swigregister(Bullet2d3DR)
[docs] class Bullet5DR(Contact5DR): 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__ == Bullet5DR: _self = None else: _self = self _sicpybullet.Bullet5DR_swiginit(self, _sicpybullet.new_Bullet5DR(_self, )) __swig_destroy__ = _sicpybullet.delete_Bullet5DR btObject = property(_sicpybullet.Bullet5DR_btObject_get, _sicpybullet.Bullet5DR_btObject_set) btShape = property(_sicpybullet.Bullet5DR_btShape_get, _sicpybullet.Bullet5DR_btShape_set) def updateContactPointsFromManifoldPoint(self, manifold: "btPersistentManifold", point: "btManifoldPoint", flip: "bool", scaling: "double", ds1: "SP::NewtonEulerDS", ds2: "SP::NewtonEulerDS") -> "void": return _sicpybullet.Bullet5DR_updateContactPointsFromManifoldPoint(self, manifold, point, flip, scaling, ds1, ds2) def __disown__(self): self.this.disown() _sicpybullet.disown_Bullet5DR(self) return weakref.proxy(self) def _zeroPlugin(self) -> "void": r""" To initialize all the plugin functions with nullptr.""" return _sicpybullet.Bullet5DR__zeroPlugin(self)
# Register Bullet5DR in _sicpybullet: _sicpybullet.Bullet5DR_swigregister(Bullet5DR) def cast_BulletR(rel: "SP::Relation") -> "SP::BulletR": return _sicpybullet.cast_BulletR(rel) def set_gContactBreakingThreshold(x: "double") -> "void": return _sicpybullet.set_gContactBreakingThreshold(x) def get_gContactBreakingThreshold() -> "btScalar": return _sicpybullet.get_gContactBreakingThreshold() SICONOS_BULLET_3D = _sicpybullet.SICONOS_BULLET_3D SICONOS_BULLET_2D = _sicpybullet.SICONOS_BULLET_2D class SiconosBulletOptions(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): _sicpybullet.SiconosBulletOptions_swiginit(self, _sicpybullet.new_SiconosBulletOptions()) dimension = property(_sicpybullet.SiconosBulletOptions_dimension_get, _sicpybullet.SiconosBulletOptions_dimension_set) contactBreakingThreshold = property(_sicpybullet.SiconosBulletOptions_contactBreakingThreshold_get, _sicpybullet.SiconosBulletOptions_contactBreakingThreshold_set) contactProcessingThreshold = property(_sicpybullet.SiconosBulletOptions_contactProcessingThreshold_get, _sicpybullet.SiconosBulletOptions_contactProcessingThreshold_set) worldScale = property(_sicpybullet.SiconosBulletOptions_worldScale_get, _sicpybullet.SiconosBulletOptions_worldScale_set) useAxisSweep3 = property(_sicpybullet.SiconosBulletOptions_useAxisSweep3_get, _sicpybullet.SiconosBulletOptions_useAxisSweep3_set) clearOverlappingPairCache = property(_sicpybullet.SiconosBulletOptions_clearOverlappingPairCache_get, _sicpybullet.SiconosBulletOptions_clearOverlappingPairCache_set) perturbationIterations = property(_sicpybullet.SiconosBulletOptions_perturbationIterations_get, _sicpybullet.SiconosBulletOptions_perturbationIterations_set) minimumPointsPerturbationThreshold = property(_sicpybullet.SiconosBulletOptions_minimumPointsPerturbationThreshold_get, _sicpybullet.SiconosBulletOptions_minimumPointsPerturbationThreshold_set) enableSatConvex = property(_sicpybullet.SiconosBulletOptions_enableSatConvex_get, _sicpybullet.SiconosBulletOptions_enableSatConvex_set) enablePolyhedralContactClipping = property(_sicpybullet.SiconosBulletOptions_enablePolyhedralContactClipping_get, _sicpybullet.SiconosBulletOptions_enablePolyhedralContactClipping_set) Depth2D = property(_sicpybullet.SiconosBulletOptions_Depth2D_get, _sicpybullet.SiconosBulletOptions_Depth2D_set) __swig_destroy__ = _sicpybullet.delete_SiconosBulletOptions # Register SiconosBulletOptions in _sicpybullet: _sicpybullet.SiconosBulletOptions_swigregister(SiconosBulletOptions) class SiconosBulletStatistics(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): _sicpybullet.SiconosBulletStatistics_swiginit(self, _sicpybullet.new_SiconosBulletStatistics()) new_interactions_created = property(_sicpybullet.SiconosBulletStatistics_new_interactions_created_get, _sicpybullet.SiconosBulletStatistics_new_interactions_created_set) existing_interactions_processed = property(_sicpybullet.SiconosBulletStatistics_existing_interactions_processed_get, _sicpybullet.SiconosBulletStatistics_existing_interactions_processed_set) interaction_warnings = property(_sicpybullet.SiconosBulletStatistics_interaction_warnings_get, _sicpybullet.SiconosBulletStatistics_interaction_warnings_set) interaction_destroyed = property(_sicpybullet.SiconosBulletStatistics_interaction_destroyed_get, _sicpybullet.SiconosBulletStatistics_interaction_destroyed_set) __swig_destroy__ = _sicpybullet.delete_SiconosBulletStatistics # Register SiconosBulletStatistics in _sicpybullet: _sicpybullet.SiconosBulletStatistics_swigregister(SiconosBulletStatistics) class SiconosBulletCollisionManager(SiconosCollisionManager): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr _impl = property(_sicpybullet.SiconosBulletCollisionManager__impl_get, _sicpybullet.SiconosBulletCollisionManager__impl_set) def initialize_impl(self) -> "void": return _sicpybullet.SiconosBulletCollisionManager_initialize_impl(self) @staticmethod def bulletContactClear(userPersistentData: "void *") -> "bool": return _sicpybullet.SiconosBulletCollisionManager_bulletContactClear(userPersistentData) @staticmethod def bulletContactAddedCallback(cp: "btManifoldPoint", colObj0Wrap: "btCollisionObjectWrapper const *", partId0: "int", index0: "int", colObj1Wrap: "btCollisionObjectWrapper const *", partId1: "int", index1: "int") -> "bool": return _sicpybullet.SiconosBulletCollisionManager_bulletContactAddedCallback(cp, colObj0Wrap, partId0, index0, colObj1Wrap, partId1, index1) gSimulation = property(_sicpybullet.SiconosBulletCollisionManager_gSimulation_get, _sicpybullet.SiconosBulletCollisionManager_gSimulation_set) def __init__(self, *args): if self.__class__ == SiconosBulletCollisionManager: _self = None else: _self = self _sicpybullet.SiconosBulletCollisionManager_swiginit(self, _sicpybullet.new_SiconosBulletCollisionManager(_self, *args)) __swig_destroy__ = _sicpybullet.delete_SiconosBulletCollisionManager _with_equality_constraints = property(_sicpybullet.SiconosBulletCollisionManager__with_equality_constraints_get, _sicpybullet.SiconosBulletCollisionManager__with_equality_constraints_set) _options = property(_sicpybullet.SiconosBulletCollisionManager__options_get, _sicpybullet.SiconosBulletCollisionManager__options_set) _stats = property(_sicpybullet.SiconosBulletCollisionManager__stats_get, _sicpybullet.SiconosBulletCollisionManager__stats_set) def makeBulletR(self, ds1: "SP::RigidBodyDS", shape1: "SP::SiconosShape", ds2: "SP::RigidBodyDS", shape2: "SP::SiconosShape", arg0: "btManifoldPoint") -> "SP::BulletR": r""" Provided so that creation of collision points can be overridden. See modify_normals.py in examples/Mechanics/Hacks """ return _sicpybullet.SiconosBulletCollisionManager_makeBulletR(self, ds1, shape1, ds2, shape2, arg0) def makeBullet5DR(self, ds1: "SP::RigidBodyDS", shape1: "SP::SiconosShape", ds2: "SP::RigidBodyDS", shape2: "SP::SiconosShape", arg0: "btManifoldPoint") -> "SP::Bullet5DR": r""" Provided so that creation of collision points can be overridden. See modify_normals.py in examples/Mechanics/Hacks """ return _sicpybullet.SiconosBulletCollisionManager_makeBullet5DR(self, ds1, shape1, ds2, shape2, arg0) def makeBullet2dR(self, ds1: "SP::RigidBody2dDS", shape1: "SP::SiconosShape", ds2: "SP::RigidBody2dDS", shape2: "SP::SiconosShape", arg0: "btManifoldPoint") -> "SP::Bullet2dR": r""" Provided so that creation of collision points can be overridden. See modify_normals.py in examples/Mechanics/Hacks """ return _sicpybullet.SiconosBulletCollisionManager_makeBullet2dR(self, ds1, shape1, ds2, shape2, arg0) def makeBullet2d3DR(self, ds1: "SP::RigidBody2dDS", shape1: "SP::SiconosShape", ds2: "SP::RigidBody2dDS", shape2: "SP::SiconosShape", arg0: "btManifoldPoint") -> "SP::Bullet2d3DR": r""" Provided so that creation of collision points can be overridden. See modify_normals.py in examples/Mechanics/Hacks """ return _sicpybullet.SiconosBulletCollisionManager_makeBullet2d3DR(self, ds1, shape1, ds2, shape2, arg0) def addStaticBody(self, *args) -> "SP::StaticBody": r""" Add a static body in the collision detector.""" return _sicpybullet.SiconosBulletCollisionManager_addStaticBody(self, *args) def removeStaticBody(self, body: "SP::StaticBody const &") -> "void": r""" Remove a body from the collision detector.""" return _sicpybullet.SiconosBulletCollisionManager_removeStaticBody(self, body) 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.SiconosBulletCollisionManager_removeBody(self, body) def updateInteractions(self, simulation: "SP::Simulation") -> "void": return _sicpybullet.SiconosBulletCollisionManager_updateInteractions(self, simulation) def lineIntersectionQuery(self, start: "SiconosVector", end: "SiconosVector", closestOnly: "bool"=False, sorted: "bool"=True) -> "std::vector< SP::SiconosCollisionQueryResult,std::allocator< SP::SiconosCollisionQueryResult > >": return _sicpybullet.SiconosBulletCollisionManager_lineIntersectionQuery(self, start, end, closestOnly, sorted) def clearOverlappingPairCache(self) -> "void": return _sicpybullet.SiconosBulletCollisionManager_clearOverlappingPairCache(self) def options(self) -> "SiconosBulletOptions const &": return _sicpybullet.SiconosBulletCollisionManager_options(self) def statistics(self) -> "SiconosBulletStatistics const &": return _sicpybullet.SiconosBulletCollisionManager_statistics(self) def resetStatistics(self) -> "void": return _sicpybullet.SiconosBulletCollisionManager_resetStatistics(self) def useEqualityConstraints(self, choice: "bool"=True) -> "void": r""" Set the usage of equality constraints. When the number of objects is huge as in granular material, the usage of equality constraint breaks scalability. This have to be fixed. :type choice: boolean, optional :param choice: a boolean, default is True. """ return _sicpybullet.SiconosBulletCollisionManager_useEqualityConstraints(self, choice) def __disown__(self): self.this.disown() _sicpybullet.disown_SiconosBulletCollisionManager(self) return weakref.proxy(self) # Register SiconosBulletCollisionManager in _sicpybullet: _sicpybullet.SiconosBulletCollisionManager_swigregister(SiconosBulletCollisionManager) def SiconosBulletCollisionManager_bulletContactClear(userPersistentData: "void *") -> "bool": return _sicpybullet.SiconosBulletCollisionManager_bulletContactClear(userPersistentData) def SiconosBulletCollisionManager_bulletContactAddedCallback(cp: "btManifoldPoint", colObj0Wrap: "btCollisionObjectWrapper const *", partId0: "int", index0: "int", colObj1Wrap: "btCollisionObjectWrapper const *", partId1: "int", index1: "int") -> "bool": return _sicpybullet.SiconosBulletCollisionManager_bulletContactAddedCallback(cp, colObj0Wrap, partId0, index0, colObj1Wrap, partId1, index1)