Blender V5.0
btSoftBodyHelpers.cpp File Reference
#include "btSoftBodyInternals.h"
#include <stdio.h>
#include <string>
#include <iostream>
#include <sstream>
#include <string.h>
#include <algorithm>
#include "btSoftBodyHelpers.h"
#include "LinearMath/btConvexHull.h"
#include "LinearMath/btConvexHullComputer.h"
#include <map>
#include <vector>

Go to the source code of this file.

Classes

class  LinkDeps_t

Macros

#define USE_NEW_CONVEX_HULL_COMPUTER
#define REOP_NOT_DEPENDENT   -1
#define REOP_NODE_COMPLETE   -2
#define IDX(_x_, _y_)
#define IDX(_x_, _y_)
#define IDX(_x_, _y_)

Typedefs

typedef LinkDeps_tLinkDepsPtr_t

Functions

static void drawVertex (btIDebugDraw *idraw, const btVector3 &x, btScalar s, const btVector3 &c)
 btSoftBodyHelpers.cpp by Nathanael Presson
static void drawBox (btIDebugDraw *idraw, const btVector3 &mins, const btVector3 &maxs, const btVector3 &color)
static void drawTree (btIDebugDraw *idraw, const btDbvtNode *node, int depth, const btVector3 &ncolor, const btVector3 &lcolor, int mindepth, int maxdepth)
template<typename T>
static T sum (const btAlignedObjectArray< T > &items)
template<typename T, typename Q>
static void add (btAlignedObjectArray< T > &items, const Q &value)
template<typename T, typename Q>
static void mul (btAlignedObjectArray< T > &items, const Q &value)
template<typename T>
static T average (const btAlignedObjectArray< T > &items)
static int nextLine (const char *buffer)

Macro Definition Documentation

◆ IDX [1/3]

#define IDX ( _x_,
_y_ )
Value:
((_y_)*maxidx + (_x_))

◆ IDX [2/3]

#define IDX ( _x_,
_y_ )
Value:
((_y_)*rx + (_x_))

◆ IDX [3/3]

#define IDX ( _x_,
_y_ )
Value:
((_y_)*rx + (_x_))

◆ REOP_NODE_COMPLETE

#define REOP_NODE_COMPLETE   -2

Definition at line 540 of file btSoftBodyHelpers.cpp.

Referenced by btSoftBodyHelpers::ReoptimizeLinkOrder().

◆ REOP_NOT_DEPENDENT

#define REOP_NOT_DEPENDENT   -1

Definition at line 539 of file btSoftBodyHelpers.cpp.

Referenced by btSoftBodyHelpers::ReoptimizeLinkOrder().

◆ USE_NEW_CONVEX_HULL_COMPUTER

#define USE_NEW_CONVEX_HULL_COMPUTER

Typedef Documentation

◆ LinkDepsPtr_t

Function Documentation

◆ add()

template<typename T, typename Q>
void add ( btAlignedObjectArray< T > & items,
const Q & value )
inlinestatic

Definition at line 110 of file btSoftBodyHelpers.cpp.

References i, and btAlignedObjectArray< T >::size().

◆ average()

template<typename T>
T average ( const btAlignedObjectArray< T > & items)
inlinestatic

Definition at line 130 of file btSoftBodyHelpers.cpp.

References btAlignedObjectArray< T >::size(), sum(), and T.

◆ drawBox()

void drawBox ( btIDebugDraw * idraw,
const btVector3 & mins,
const btVector3 & maxs,
const btVector3 & color )
static

Definition at line 39 of file btSoftBodyHelpers.cpp.

References btVector3, and btIDebugDraw::drawLine().

Referenced by drawTree().

◆ drawTree()

◆ drawVertex()

void drawVertex ( btIDebugDraw * idraw,
const btVector3 & x,
btScalar s,
const btVector3 & c )
static

btSoftBodyHelpers.cpp by Nathanael Presson

Definition at line 30 of file btSoftBodyHelpers.cpp.

References btVector3, btIDebugDraw::drawLine(), and x.

Referenced by btSoftBodyHelpers::Draw(), and btSoftBodyHelpers::DrawFrame().

◆ mul()

◆ nextLine()

int nextLine ( const char * buffer)
static

Definition at line 1121 of file btSoftBodyHelpers.cpp.

Referenced by btSoftBodyHelpers::CreateFromTetGenData().

◆ sum()

template<typename T>
T sum ( const btAlignedObjectArray< T > & items)
inlinestatic

Definition at line 94 of file btSoftBodyHelpers.cpp.

References i, btAlignedObjectArray< T >::size(), T, and v.

Referenced by average(), blender::ed::sculpt_paint::smooth::average_data_bmesh(), blender::ed::sculpt_paint::smooth::average_data_grids(), blender::ed::sculpt_paint::average_mask_border_position(), blender::ed::sculpt_paint::mask::average_masks(), blender::ed::sculpt_paint::average_unmasked_position(), BKE_nurb_makeCurve(), BKE_nurb_makeFaces(), BLI_ghash_calc_quality_ex(), BLI_hash_md5_stream(), BLI_noise_generic_turbulence(), libmv::BoxFilterHorizontal(), libmv::BoxFilterVertical(), bssrdf_sample(), btFactorLDLT(), btFindPos(), btLargeDot(), blender::ed::sculpt_paint::pose::calc_average_face_set_center(), blender::ed::sculpt_paint::auto_mask::calc_face_factors(), btDbvtBroadphase::calculateOverlappingPairs(), calculatePrincipalAxisTransform(), blender::fn::multi_function::tests::SumVectorFunction::call(), blender::noise::compute_2d_gabor_noise(), compute_2d_gabor_noise(), blender::noise::compute_3d_gabor_noise(), compute_3d_gabor_noise(), blender::nodes::node_composite_tonemap_cc::ToneMapOperation::compute_average_luminance(), blender::nodes::node_composite_levels_cc::LevelsOperation::compute_standard_deviation(), convertJoint(), libmv::Convolve(), blender::compositor::convolve(), Freestyle::BlenderFileLoader::countClippedFaces(), cycles_precompute(), distribute_binary_search(), do_weight_paint_normalize_all(), do_weight_paint_normalize_all_locked(), ED_ANIM_get_1d_gauss_kernel(), equalize_cubic_bezier(), EPA< btConvexTemplate >::Evaluate(), gjkepa2_impl::EPA::Evaluate(), btQuaternion::farthest(), libmv::FastConvolve(), film_clamp_light(), find_even_superellipse_chords_general(), blender::geometry::fix_large_angle(), btSoftBody::generateBendingConstraints(), getNonDiagonal(), gResolveSingleConstraintRowGeneric_scalar_reference(), gResolveSingleConstraintRowLowerLimit_scalar_reference(), gResolveSplitPenetrationImpulse_scalar_reference(), gResolveSplitPenetrationImpulse_sse2(), blender::geometry::guess_initial_scale(), blender::seq::make_gaussian_blur_kernel(), mul_m4_m4m4(), btMatrixX< float >::multiply2_p8r(), btMatrixX< float >::multiplyAdd2_p8r(), btQuaternion::nearest(), blender::ed::sculpt_paint::smooth::neighbor_color_average(), blender::nodes::node_geo_attribute_statistic_cc::node_geo_exec(), noise_fbm(), noise_fbm(), noise_fbm(), noise_fbm(), blender::operator*(), blender::operator*(), Freestyle::VecMat::value_type< T, 2 >::operator*(), Freestyle::VecMat::Vec2< uint >::operator*(), Freestyle::VecMat::Vec3< uint >::operator*(), blender::geometry::p_stretch_compute_vertex(), blender::ed::sculpt_paint::paint_stroke_overlapped_curve(), blender::noise::perlin_fbm(), resolveSingleConstraintRowGeneric(), blender::robust_pred::scale_expansion_zeroelim(), setupTorsionalFrictionConstraint(), btRotationalLimitMotor::solveAngularLimits(), btTranslationalLimitMotor::solveLinearAxis(), blender::compositor::sum_blue_gpu(), blender::compositor::sum_blue_squared_difference_gpu(), blender::compositor::sum_color_gpu(), blender::compositor::sum_green_gpu(), blender::compositor::sum_green_squared_difference_gpu(), blender::compositor::sum_log_luminance_gpu(), blender::compositor::sum_luminance_gpu(), blender::compositor::sum_luminance_squared_difference_gpu(), blender::compositor::sum_red_gpu(), blender::compositor::sum_red_squared_difference_gpu(), ContactFrictionSolverLoop::sumLoop(), ContactRollingFrictionSolverLoop::sumLoop(), ContactSolverLoop::sumLoop(), ContactSplitPenetrationImpulseSolverLoop::sumLoop(), InterleavedContactSolverLoop::sumLoop(), JointSolverLoop::sumLoop(), surface_shader_bsdf_bssrdf_pick(), surface_shader_bssrdf_sample_weight(), blender::compositor::SymmetricBlurWeights::SymmetricBlurWeights(), blender::compositor::SymmetricSeparableBlurWeights::SymmetricSeparableBlurWeights(), target_project_tri_correct(), blender::math::tests::TEST(), blender::tests::TEST(), TEST(), TEST(), uv_map_mirror(), and versioning_eevee_material_blend_mode_settings().