Make 'randomizeConstraints' optional, switched on by default (to keep existing behaviour)
Thanks Benoit for the report: http://code.google.com/p/bullet/issues/detail?id=315
This commit is contained in:
@@ -813,7 +813,7 @@ btSoftBody* btSoftBodyHelpers::CreateEllipsoid(btSoftBodyWorldInfo& worldInfo,c
|
|||||||
//
|
//
|
||||||
btSoftBody* btSoftBodyHelpers::CreateFromTriMesh(btSoftBodyWorldInfo& worldInfo,const btScalar* vertices,
|
btSoftBody* btSoftBodyHelpers::CreateFromTriMesh(btSoftBodyWorldInfo& worldInfo,const btScalar* vertices,
|
||||||
const int* triangles,
|
const int* triangles,
|
||||||
int ntriangles)
|
int ntriangles, bool randomizeConstraints)
|
||||||
{
|
{
|
||||||
int maxidx=0;
|
int maxidx=0;
|
||||||
int i,j,ni;
|
int i,j,ni;
|
||||||
@@ -848,13 +848,18 @@ btSoftBody* btSoftBodyHelpers::CreateFromTriMesh(btSoftBodyWorldInfo& worldInfo
|
|||||||
#undef IDX
|
#undef IDX
|
||||||
psb->appendFace(idx[0],idx[1],idx[2]);
|
psb->appendFace(idx[0],idx[1],idx[2]);
|
||||||
}
|
}
|
||||||
psb->randomizeConstraints();
|
|
||||||
|
if (randomizeConstraints)
|
||||||
|
{
|
||||||
|
psb->randomizeConstraints();
|
||||||
|
}
|
||||||
|
|
||||||
return(psb);
|
return(psb);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
btSoftBody* btSoftBodyHelpers::CreateFromConvexHull(btSoftBodyWorldInfo& worldInfo, const btVector3* vertices,
|
btSoftBody* btSoftBodyHelpers::CreateFromConvexHull(btSoftBodyWorldInfo& worldInfo, const btVector3* vertices,
|
||||||
int nvertices)
|
int nvertices, bool randomizeConstraints)
|
||||||
{
|
{
|
||||||
HullDesc hdsc(QF_TRIANGLES,nvertices,vertices);
|
HullDesc hdsc(QF_TRIANGLES,nvertices,vertices);
|
||||||
HullResult hres;
|
HullResult hres;
|
||||||
@@ -874,7 +879,10 @@ btSoftBody* btSoftBodyHelpers::CreateFromConvexHull(btSoftBodyWorldInfo& worldI
|
|||||||
psb->appendFace(idx[0],idx[1],idx[2]);
|
psb->appendFace(idx[0],idx[1],idx[2]);
|
||||||
}
|
}
|
||||||
hlib.ReleaseResult(hres);
|
hlib.ReleaseResult(hres);
|
||||||
psb->randomizeConstraints();
|
if (randomizeConstraints)
|
||||||
|
{
|
||||||
|
psb->randomizeConstraints();
|
||||||
|
}
|
||||||
return(psb);
|
return(psb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -109,11 +109,13 @@ struct btSoftBodyHelpers
|
|||||||
static btSoftBody* CreateFromTriMesh( btSoftBodyWorldInfo& worldInfo,
|
static btSoftBody* CreateFromTriMesh( btSoftBodyWorldInfo& worldInfo,
|
||||||
const btScalar* vertices,
|
const btScalar* vertices,
|
||||||
const int* triangles,
|
const int* triangles,
|
||||||
int ntriangles);
|
int ntriangles,
|
||||||
|
bool randomizeConstraints = true);
|
||||||
/* Create from convex-hull */
|
/* Create from convex-hull */
|
||||||
static btSoftBody* CreateFromConvexHull( btSoftBodyWorldInfo& worldInfo,
|
static btSoftBody* CreateFromConvexHull( btSoftBodyWorldInfo& worldInfo,
|
||||||
const btVector3* vertices,
|
const btVector3* vertices,
|
||||||
int nvertices);
|
int nvertices,
|
||||||
|
bool randomizeConstraints = true);
|
||||||
|
|
||||||
|
|
||||||
/* Export TetGen compatible .smesh file */
|
/* Export TetGen compatible .smesh file */
|
||||||
|
|||||||
Reference in New Issue
Block a user