~ubuntu-branches/ubuntu/trusty/blender/trusty-proposed

« back to all changes in this revision

Viewing changes to extern/bullet2/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp

  • Committer: Package Import Robot
  • Author(s): Matteo F. Vescovi
  • Date: 2013-08-14 10:43:49 UTC
  • mfrom: (14.2.19 sid)
  • Revision ID: package-import@ubuntu.com-20130814104349-t1d5mtwkphp12dyj
Tags: 2.68a-3
* Upload to unstable
* debian/: python3.3 Depends simplified
  - debian/control: python3.3 Depends dropped
    for blender-data package
  - 0001-blender_thumbnailer.patch refreshed
* debian/control: libavcodec b-dep versioning dropped

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
21
21
#include "btSoftBody.h"
22
22
#include "BulletSoftBody/btSoftBodySolvers.h"
 
23
#include "BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h"
23
24
 
24
25
///TODO: include all the shapes that the softbody can collide with
25
26
///alternatively, implement special case collision algorithms (just like for rigid collision shapes)
26
27
 
27
28
//#include <stdio.h>
28
29
 
29
 
btSoftRigidCollisionAlgorithm::btSoftRigidCollisionAlgorithm(btPersistentManifold* /*mf*/,const btCollisionAlgorithmConstructionInfo& ci,btCollisionObject* /*col0*/,btCollisionObject* /*col1*/, bool isSwapped)
 
30
btSoftRigidCollisionAlgorithm::btSoftRigidCollisionAlgorithm(btPersistentManifold* /*mf*/,const btCollisionAlgorithmConstructionInfo& ci,const btCollisionObjectWrapper* ,const btCollisionObjectWrapper* , bool isSwapped)
30
31
: btCollisionAlgorithm(ci),
31
32
//m_ownManifold(false),
32
33
//m_manifoldPtr(mf),
52
53
 
53
54
#include <stdio.h>
54
55
 
55
 
void btSoftRigidCollisionAlgorithm::processCollision (btCollisionObject* body0,btCollisionObject* body1,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut)
 
56
void btSoftRigidCollisionAlgorithm::processCollision (const btCollisionObjectWrapper* body0Wrap,const btCollisionObjectWrapper* body1Wrap,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut)
56
57
{
57
58
        (void)dispatchInfo;
58
59
        (void)resultOut;
59
60
        //printf("btSoftRigidCollisionAlgorithm\n");
60
 
 
61
 
        btSoftBody* softBody =  m_isSwapped? (btSoftBody*)body1 : (btSoftBody*)body0;
62
 
        btCollisionObject* rigidCollisionObject = m_isSwapped? body0 : body1;
 
61
//      const btCollisionObjectWrapper* softWrap = m_isSwapped?body1Wrap:body0Wrap;
 
62
//      const btCollisionObjectWrapper* rigidWrap = m_isSwapped?body0Wrap:body1Wrap;
 
63
        btSoftBody* softBody =  m_isSwapped? (btSoftBody*)body1Wrap->getCollisionObject() : (btSoftBody*)body0Wrap->getCollisionObject();
 
64
        const btCollisionObjectWrapper* rigidCollisionObjectWrap = m_isSwapped? body0Wrap : body1Wrap;
63
65
        
64
 
        if (softBody->m_collisionDisabledObjects.findLinearSearch(rigidCollisionObject)==softBody->m_collisionDisabledObjects.size())
 
66
        if (softBody->m_collisionDisabledObjects.findLinearSearch(rigidCollisionObjectWrap->getCollisionObject())==softBody->m_collisionDisabledObjects.size())
65
67
        {
66
 
                softBody->getSoftBodySolver()->processCollision(softBody, rigidCollisionObject);
 
68
                softBody->getSoftBodySolver()->processCollision(softBody, rigidCollisionObjectWrap);
67
69
        }
68
70
 
69
71