Bullet Collision Detection & Physics Library
Classes | Macros | Functions
btSoftBody.cpp File Reference
#include "btSoftBodyInternals.h"
#include "BulletSoftBody/btSoftBodySolvers.h"
#include "btSoftBodyData.h"
#include "LinearMath/btSerializer.h"
#include "LinearMath/btImplicitQRSVD.h"
#include "LinearMath/btAlignedAllocator.h"
#include "BulletDynamics/Featherstone/btMultiBodyLinkCollider.h"
#include "BulletDynamics/Featherstone/btMultiBodyConstraint.h"
#include "BulletCollision/NarrowPhaseCollision/btGjkEpa2.h"
#include "BulletCollision/CollisionShapes/btTriangleShape.h"
#include <iostream>
Include dependency graph for btSoftBody.cpp:

Go to the source code of this file.

Classes

struct  NodeLinks
 

Macros

#define IDX(_x_, _y_)   ((_y_)*n + (_x_))
 
#define NEXTRAND   (seed = (1664525L * seed + 1013904223L) & 0xffffffff)
 
#define PTR2IDX(_p_, _b_)   reinterpret_cast<btSoftBody::Node*>((_p_) - (_b_))
 
#define IDX2PTR(_p_, _b_)   map ? (&(_b_)[map[(((char*)_p_) - (char*)0)]]) : (&(_b_)[(((char*)_p_) - (char*)0)])
 

Functions

static btDbvtNodebuildTreeBottomUp (btAlignedObjectArray< btDbvtNode * > &leafNodes, btAlignedObjectArray< btAlignedObjectArray< int > > &adj)
 btSoftBody implementation by Nathanael Presson More...
 
static btDbvntNodecopyToDbvnt (const btDbvtNode *n)
 
static void calculateNormalCone (btDbvntNode *root)
 
static void getBarycentric (const btVector3 &p, btVector3 &a, btVector3 &b, btVector3 &c, btVector3 &bary)
 
static btScalar Dot4 (const btVector4 &a, const btVector4 &b)
 

Macro Definition Documentation

◆ IDX

#define IDX (   _x_,
  _y_ 
)    ((_y_)*n + (_x_))

◆ IDX2PTR

#define IDX2PTR (   _p_,
  _b_ 
)    map ? (&(_b_)[map[(((char*)_p_) - (char*)0)]]) : (&(_b_)[(((char*)_p_) - (char*)0)])

◆ NEXTRAND

#define NEXTRAND   (seed = (1664525L * seed + 1013904223L) & 0xffffffff)

◆ PTR2IDX

#define PTR2IDX (   _p_,
  _b_ 
)    reinterpret_cast<btSoftBody::Node*>((_p_) - (_b_))

Function Documentation

◆ buildTreeBottomUp()

static btDbvtNode * buildTreeBottomUp ( btAlignedObjectArray< btDbvtNode * > &  leafNodes,
btAlignedObjectArray< btAlignedObjectArray< int > > &  adj 
)
inlinestatic

btSoftBody implementation by Nathanael Presson

Definition at line 29 of file btSoftBody.cpp.

◆ calculateNormalCone()

static void calculateNormalCone ( btDbvntNode root)
inlinestatic

Definition at line 2611 of file btSoftBody.cpp.

◆ copyToDbvnt()

static btDbvntNode * copyToDbvnt ( const btDbvtNode n)
inlinestatic

Definition at line 2596 of file btSoftBody.cpp.

◆ Dot4()

static btScalar Dot4 ( const btVector4 a,
const btVector4 b 
)
static

Definition at line 3519 of file btSoftBody.cpp.

◆ getBarycentric()

static void getBarycentric ( const btVector3 p,
btVector3 a,
btVector3 b,
btVector3 c,
btVector3 bary 
)
static

Definition at line 2810 of file btSoftBody.cpp.