Blender
V3.3
|
#include <btSoftBodyHelpers.h>
Static Public Member Functions | |
static void | Draw (btSoftBody *psb, btIDebugDraw *idraw, int drawflags=fDrawFlags::Std) |
static void | DrawInfos (btSoftBody *psb, btIDebugDraw *idraw, bool masses, bool areas, bool stress) |
static void | DrawNodeTree (btSoftBody *psb, btIDebugDraw *idraw, int mindepth=0, int maxdepth=-1) |
static void | DrawFaceTree (btSoftBody *psb, btIDebugDraw *idraw, int mindepth=0, int maxdepth=-1) |
static void | DrawClusterTree (btSoftBody *psb, btIDebugDraw *idraw, int mindepth=0, int maxdepth=-1) |
static void | DrawFrame (btSoftBody *psb, btIDebugDraw *idraw) |
static btSoftBody * | CreateRope (btSoftBodyWorldInfo &worldInfo, const btVector3 &from, const btVector3 &to, int res, int fixeds) |
static btSoftBody * | CreatePatch (btSoftBodyWorldInfo &worldInfo, const btVector3 &corner00, const btVector3 &corner10, const btVector3 &corner01, const btVector3 &corner11, int resx, int resy, int fixeds, bool gendiags, btScalar perturbation=0.) |
static btSoftBody * | CreatePatchUV (btSoftBodyWorldInfo &worldInfo, const btVector3 &corner00, const btVector3 &corner10, const btVector3 &corner01, const btVector3 &corner11, int resx, int resy, int fixeds, bool gendiags, float *tex_coords=0) |
static float | CalculateUV (int resx, int resy, int ix, int iy, int id) |
static btSoftBody * | CreateEllipsoid (btSoftBodyWorldInfo &worldInfo, const btVector3 ¢er, const btVector3 &radius, int res) |
static btSoftBody * | CreateFromTriMesh (btSoftBodyWorldInfo &worldInfo, const btScalar *vertices, const int *triangles, int ntriangles, bool randomizeConstraints=true) |
static btSoftBody * | CreateFromConvexHull (btSoftBodyWorldInfo &worldInfo, const btVector3 *vertices, int nvertices, bool randomizeConstraints=true) |
static btSoftBody * | CreateFromTetGenData (btSoftBodyWorldInfo &worldInfo, const char *ele, const char *face, const char *node, bool bfacelinks, bool btetralinks, bool bfacesfromtetras) |
static btSoftBody * | CreateFromVtkFile (btSoftBodyWorldInfo &worldInfo, const char *vtk_file) |
static void | writeObj (const char *file, const btSoftBody *psb) |
static void | getBarycentricWeights (const btVector3 &a, const btVector3 &b, const btVector3 &c, const btVector3 &d, const btVector3 &p, btVector4 &bary) |
static void | getBarycentricWeights (const btVector3 &a, const btVector3 &b, const btVector3 &c, const btVector3 &p, btVector4 &bary) |
static void | interpolateBarycentricWeights (btSoftBody *psb) |
static void | extrapolateBarycentricWeights (btSoftBody *psb) |
static void | generateBoundaryFaces (btSoftBody *psb) |
static void | duplicateFaces (const char *filename, const btSoftBody *psb) |
static void | ReoptimizeLinkOrder (btSoftBody *psb) |
Definition at line 50 of file btSoftBodyHelpers.h.
|
static |
Definition at line 968 of file btSoftBodyHelpers.cpp.
Referenced by CreatePatchUV().
|
static |
Definition at line 1015 of file btSoftBodyHelpers.cpp.
References Freestyle::a, btCos(), btSin(), btSqrt(), btVector3, center, CreateFromConvexHull(), btAlignedObjectArray< T >::resize(), SIMD_PI, btAlignedObjectArray< T >::size(), t, w(), and x.
|
static |
Definition at line 1093 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendFace(), btSoftBody::appendLink(), HullLibrary::CreateConvexHull(), HullResult::m_Indices, HullResult::m_OutputVertices, HullDesc::mMaxVertices, HullResult::mNumFaces, HullResult::mNumOutputVertices, QF_TRIANGLES, btSoftBody::randomizeConstraints(), and HullLibrary::ReleaseResult().
Referenced by CreateEllipsoid().
|
static |
Definition at line 1140 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendFace(), btSoftBody::appendLink(), btSoftBody::appendTetra(), btSoftBody::initializeDmInverse(), btSoftBody::m_faces, btSoftBody::m_links, btSoftBody::m_nodes, btSoftBody::m_tetras, btSoftBody::m_tetraScratches, btSoftBody::m_tetraScratchesTn, nextLine(), node, pos, result, btAlignedObjectArray< T >::size(), x, y, and z.
|
static |
Definition at line 1046 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendFace(), btSoftBody::appendLink(), btMax(), btVector3, IDX, btSoftBody::randomizeConstraints(), btAlignedObjectArray< T >::resize(), and btAlignedObjectArray< T >::size().
|
static |
Definition at line 1246 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendLink(), btSoftBody::appendTetra(), btAssert, btVector3, generateBoundaryFaces(), indices, btSoftBody::initializeDmInverse(), btSoftBody::m_faces, btSoftBody::m_links, btSoftBody::m_nodes, btSoftBody::m_tetras, btSoftBody::m_tetraScratches, btSoftBody::m_tetraScratchesTn, btAlignedObjectArray< T >::size(), and X.
|
static |
Definition at line 722 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendFace(), btSoftBody::appendLink(), btVector3, IDX, lerp(), btSoftBody::setMass(), and x.
|
static |
Definition at line 806 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendFace(), btSoftBody::appendLink(), btVector3, CalculateUV(), IDX, lerp(), btSoftBody::setMass(), x, and z.
|
static |
Definition at line 690 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendLink(), btVector3, from, lerp(), r, btSoftBody::setMass(), t, and x.
|
static |
Definition at line 171 of file btSoftBodyHelpers.cpp.
References Freestyle::a, add(), fDrawFlags::Anchors, btSoftBody::Joint::eType::Angular, average(), btCross(), btDot(), btVector3, Freestyle::c, center, fDrawFlags::Clusters, fDrawFlags::ClusterTree, col, color, fDrawFlags::Contacts, count, HullLibrary::CreateConvexHull(), btSoftBody::fMaterial::DebugDraw, btIDebugDraw::draw3dText(), DrawClusterTree(), DrawFaceTree(), btIDebugDraw::drawLine(), DrawNodeTree(), btIDebugDraw::drawTriangle(), drawVertex(), btConvexHullComputer::edges, fDrawFlags::Faces, btConvexHullComputer::faces, fDrawFlags::FaceTree, btConvexHullComputer::Edge::getNextEdgeOfFace(), btConvexHullComputer::Edge::getSourceVertex(), btConvexHullComputer::Edge::getTargetVertex(), getX(), fDrawFlags::Joints, l, btSoftBody::Joint::eType::Linear, fDrawFlags::Links, btSoftBody::m_anchors, btSoftBody::Joint::m_bodies, btSoftBody::m_clusters, btSoftBody::Note::m_coords, btSoftBody::m_faces, btSoftBody::Material::m_flags, btSoftBody::Node::m_im, HullResult::m_Indices, btSoftBody::m_joints, btSoftBody::m_links, btSoftBody::Feature::m_material, btSoftBody::Node::m_n, btSoftBody::Face::m_n, btSoftBody::Note::m_nodes, btSoftBody::m_nodes, btSoftBody::m_notes, btSoftBody::Note::m_offset, HullResult::m_OutputVertices, btSoftBody::Note::m_rank, btSoftBody::m_rcontacts, btSoftBody::Joint::m_refs, btSoftBody::m_tetras, btSoftBody::Note::m_text, btSoftBody::Node::m_x, HullDesc::mMaxVertices, HullResult::mNumFaces, mul(), fDrawFlags::Nodes, fDrawFlags::NodeTree, fDrawFlags::Normals, fDrawFlags::Notes, QF_TRIANGLES, r, HullLibrary::ReleaseResult(), btAlignedObjectArray< T >::resize(), btAlignedObjectArray< T >::size(), stride, t, fDrawFlags::Tetras, btSoftBody::Joint::Type(), v, v1, v2, btConvexHullComputer::vertices, x, btSoftBody::Body::xform(), and y.
Referenced by btDeformableMultiBodyDynamicsWorld::debugDrawWorld(), btSoftMultiBodyDynamicsWorld::debugDrawWorld(), and btSoftRigidDynamicsWorld::debugDrawWorld().
|
static |
Definition at line 483 of file btSoftBodyHelpers.cpp.
References btVector3, drawTree(), btSoftBody::m_cdbvt, and btDbvt::m_root.
Referenced by btSoftMultiBodyDynamicsWorld::debugDrawWorld(), btSoftRigidDynamicsWorld::debugDrawWorld(), and Draw().
|
static |
Definition at line 474 of file btSoftBodyHelpers.cpp.
References btVector3, drawTree(), btSoftBody::m_fdbvt, and btDbvt::m_root.
Referenced by btSoftMultiBodyDynamicsWorld::debugDrawWorld(), btSoftRigidDynamicsWorld::debugDrawWorld(), and Draw().
|
static |
Definition at line 666 of file btSoftBodyHelpers.cpp.
References btMatrix3x3, btVector3, btIDebugDraw::drawLine(), drawVertex(), btSoftBody::Pose::m_bframe, btSoftBody::Pose::m_com, btSoftBody::Pose::m_pos, btSoftBody::m_pose, btSoftBody::Pose::m_rot, btSoftBody::Pose::m_scl, normalized(), btAlignedObjectArray< T >::size(), and x.
Referenced by btDeformableMultiBodyDynamicsWorld::debugDrawWorld(), btSoftMultiBodyDynamicsWorld::debugDrawWorld(), and btSoftRigidDynamicsWorld::debugDrawWorld().
|
static |
Definition at line 439 of file btSoftBodyHelpers.cpp.
References btIDebugDraw::draw3dText(), btSoftBody::Node::m_area, btSoftBody::Node::m_im, btSoftBody::m_nodes, btSoftBody::Node::m_x, and btAlignedObjectArray< T >::size().
|
static |
Definition at line 465 of file btSoftBodyHelpers.cpp.
References btVector3, drawTree(), btSoftBody::m_ndbvt, and btDbvt::m_root.
Referenced by btSoftMultiBodyDynamicsWorld::debugDrawWorld(), btSoftRigidDynamicsWorld::debugDrawWorld(), and Draw().
|
static |
Definition at line 1488 of file btSoftBodyHelpers.cpp.
References btVector3, pos, btAlignedObjectArray< T >::push_back(), and btAlignedObjectArray< T >::size().
|
static |
Definition at line 1613 of file btSoftBodyHelpers.cpp.
References btCross(), btFabs(), btMin(), btVector3, blender::math::dot(), getBarycentricWeights(), btSoftBody::m_faces, btSoftBody::Face::m_n, btSoftBody::m_renderNodes, btSoftBody::m_renderNodesInterpolationWeights, btSoftBody::m_renderNodesParents, btSoftBody::Node::m_x, btSoftBody::m_z, btAlignedObjectArray< T >::push_back(), btAlignedObjectArray< T >::resize(), SIMD_INFINITY, and btAlignedObjectArray< T >::size().
|
static |
Definition at line 1352 of file btSoftBodyHelpers.cpp.
References btSoftBody::appendFace(), counter, indices, btSoftBody::m_nodes, btSoftBody::m_tetras, map, btAlignedObjectArray< T >::size(), and sort().
Referenced by CreateFromVtkFile().
|
static |
Definition at line 1532 of file btSoftBodyHelpers.cpp.
References Freestyle::a, usdtokens::b(), btVector3, Freestyle::c, and blender::math::dot().
Referenced by extrapolateBarycentricWeights(), and interpolateBarycentricWeights().
|
static |
Definition at line 1552 of file btSoftBodyHelpers.cpp.
References Freestyle::a, usdtokens::b(), btDot(), btVector3, Freestyle::c, v1, and v2.
|
static |
Definition at line 1569 of file btSoftBodyHelpers.cpp.
References btMin(), btVector3, getBarycentricWeights(), btSoftBody::m_renderNodes, btSoftBody::m_renderNodesInterpolationWeights, btSoftBody::m_renderNodesParents, btSoftBody::m_tetras, btSoftBody::m_z, btAlignedObjectArray< T >::push_back(), btAlignedObjectArray< T >::resize(), btAlignedObjectArray< T >::size(), and t.
|
static |
Sort the list of links to move link calculations that are dependent upon earlier ones as far as possible away from the calculation of those values This tends to make adjacent loop iterations not dependent upon one another, so out-of-order processors can execute instructions from multiple iterations at once
Definition at line 542 of file btSoftBodyHelpers.cpp.
References btSoftBody::m_links, btSoftBody::m_nodes, LinkDeps_t::next, NULL, REOP_NODE_COMPLETE, REOP_NOT_DEPENDENT, btAlignedObjectArray< T >::size(), and LinkDeps_t::value.
|
static |
Definition at line 1423 of file btSoftBodyHelpers.cpp.
References btAssert, btSoftBody::m_faces, btSoftBody::m_nodes, btSoftBody::m_tetras, and btAlignedObjectArray< T >::size().