Blender  V3.3
Classes | Macros | Typedefs | Functions
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_)   ((_y_)*rx + (_x_))
 
#define IDX(_x_, _y_)   ((_y_)*rx + (_x_))
 
#define IDX(_x_, _y_)   ((_y_)*maxidx + (_x_))
 

Typedefs

typedef LinkDeps_tLinkDepsPtr_t
 

Functions

static void drawVertex (btIDebugDraw *idraw, const btVector3 &x, btScalar s, const btVector3 &c)
 btSoftBodyHelpers.cpp by Nathanael Presson More...
 
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_ 
)    ((_y_)*rx + (_x_))

◆ IDX [2/3]

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

◆ IDX [3/3]

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

◆ REOP_NODE_COMPLETE

#define REOP_NODE_COMPLETE   -2

Definition at line 540 of file btSoftBodyHelpers.cpp.

◆ REOP_NOT_DEPENDENT

#define REOP_NOT_DEPENDENT   -1

Definition at line 539 of file btSoftBodyHelpers.cpp.

◆ USE_NEW_CONVEX_HULL_COMPUTER

#define USE_NEW_CONVEX_HULL_COMPUTER

Typedef Documentation

◆ LinkDepsPtr_t

Definition at line 536 of file btSoftBodyHelpers.cpp.

Function Documentation

◆ add()

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

Definition at line 110 of file btSoftBodyHelpers.cpp.

References btAlignedObjectArray< T >::size().

Referenced by btSoftBodyHelpers::Draw().

◆ average()

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

Definition at line 130 of file btSoftBodyHelpers.cpp.

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

Referenced by btSoftBodyHelpers::Draw().

◆ drawBox()

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

Definition at line 39 of file btSoftBodyHelpers.cpp.

References btVector3, Freestyle::c, color, and btIDebugDraw::drawLine().

Referenced by drawTree().

◆ drawTree()

static void drawTree ( btIDebugDraw idraw,
const btDbvtNode node,
int  depth,
const btVector3 ncolor,
const btVector3 lcolor,
int  mindepth,
int  maxdepth 
)
static

◆ drawVertex()

static 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, Freestyle::c, btIDebugDraw::drawLine(), and x.

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

◆ mul()

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

Definition at line 120 of file btSoftBodyHelpers.cpp.

References btAlignedObjectArray< T >::size().

Referenced by addAlphaOverFloat(), axisProjection(), boid_brain(), calculate_struct_sizes(), collision_interpolate_element(), color_balance_byte_byte(), color_balance_byte_float(), color_balance_do_thread(), color_balance_fl_lgg(), color_balance_fl_sop(), color_balance_float_float(), btSoftBodyHelpers::Draw(), blender::compositor::AlphaOverKeyOperation::execute_pixel_sampled(), blender::compositor::AlphaOverMixedOperation::execute_pixel_sampled(), blender::compositor::AlphaOverPremultiplyOperation::execute_pixel_sampled(), flatten_background_closure_tree(), flatten_surface_closure_tree(), flatten_volume_closure_tree(), icu_to_fcurves(), IMB_alpha_under_color_byte(), IMB_alpha_under_color_float(), input_preprocess(), iterate_lengths_iter(), make_cb_table_float_lgg(), make_cb_table_float_sop(), modifier_color_balance_apply(), normalize_v3_length_db(), project_plane_normalized_v2_v2v2(), project_plane_normalized_v3_v3v3(), project_plane_v2_v2v2(), project_plane_v3_v3v3(), project_v2_v2v2(), project_v2_v2v2_normalized(), project_v3_plane(), project_v3_v3v3(), project_v3_v3v3_db(), project_v3_v3v3_normalized(), rule_follow_leader(), rule_goal_avoid(), seq_input_have_to_preprocess(), blender::compositor::AlphaOverKeyOperation::update_memory_buffer_row(), blender::compositor::AlphaOverMixedOperation::update_memory_buffer_row(), blender::compositor::AlphaOverPremultiplyOperation::update_memory_buffer_row(), and utf8_as_char32_test_at_buffer_size().

◆ nextLine()

static int nextLine ( const char *  buffer)
static

Definition at line 1121 of file btSoftBodyHelpers.cpp.

References buffer.

Referenced by btSoftBodyHelpers::CreateFromTetGenData().

◆ sum()

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

Definition at line 94 of file btSoftBodyHelpers.cpp.

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

Referenced by average(), BKE_nurb_makeCurve(), BKE_nurb_makeFaces(), BLI_ghash_calc_quality_ex(), BLI_hash_md5_stream(), BLI_noise_generic_turbulence(), libmv::BoxFilterHorizontal(), libmv::BoxFilterVertical(), btFactorLDLT(), btFindPos(), btLargeDot(), blender::compositor::CalculateMeanOperation::calculate_mean(), btDbvtBroadphase::calculateOverlappingPairs(), calculatePrincipalAxisTransform(), blender::fn::tests::SumVectorFunction::call(), compute_sss_kernel(), convertJoint(), libmv::Convolve(), Freestyle::BlenderFileLoader::countClippedFaces(), deinterlace_line(), deinterlace_line_inplace(), diffuse_shv3(), distribute_binary_search(), do_weight_paint_normalize_all(), do_weight_paint_normalize_all_locked(), equalize_cubic_bezier(), gjkepa2_impl::EPA::Evaluate(), EPA< btConvexTemplate >::Evaluate(), blender::compositor::GaussianBlurReferenceOperation::execute_pixel(), blender::compositor::ScreenLensDistortionOperation::execute_pixel(), btQuaternion::farthest(), libmv::FastConvolve(), find_even_superellipse_chords_general(), fractal_noise(), fractal_noise_1d(), fractal_noise_2d(), fractal_noise_3d(), fractal_noise_4d(), btSoftBody::generateBendingConstraints(), blender::deg::AveragedTimeSampler< MaxSamples >::get_averaged(), getNonDiagonal(), gResolveSingleConstraintRowGeneric_scalar_reference(), gResolveSingleConstraintRowLowerLimit_scalar_reference(), gResolveSplitPenetrationImpulse_scalar_reference(), gResolveSplitPenetrationImpulse_sse2(), blender::compositor::CalculateStandardDeviationOperation::initialize_tile_data(), kernel_accum_clamp(), make_gaussian_blur_kernel(), blender::compositor::BlurBaseOperation::make_gausstab(), math_trimatrix_vec3_solve(), mul_m4_m4m4_uniq(), btMatrixX< T >::multiply2_p8r(), btMatrixX< T >::multiplyAdd2_p8r(), btQuaternion::nearest(), blender::nodes::node_geo_attribute_statistic_cc::node_geo_exec(), Freestyle::VecMat::Vec2< T >::operator*(), Freestyle::VecMat::Vec3< T >::operator*(), Freestyle::VecMat::Vec< T, N >::operator*(), p_stretch_compute_vertex(), paint_stroke_overlapped_curve(), blender::noise::perlin_fractal_template(), resolveSingleConstraintRowGeneric(), blender::robust_pred::scale_expansion_zeroelim(), setupTorsionalFrictionConstraint(), shader_bsdf_bssrdf_pick(), shader_bssrdf_sample_weight(), shader_prepare_surface_closures(), btRotationalLimitMotor::solveAngularLimits(), btTranslationalLimitMotor::solveLinearAxis(), ContactSplitPenetrationImpulseSolverLoop::sumLoop(), JointSolverLoop::sumLoop(), ContactSolverLoop::sumLoop(), ContactFrictionSolverLoop::sumLoop(), InterleavedContactSolverLoop::sumLoop(), ContactRollingFrictionSolverLoop::sumLoop(), target_project_tri_correct(), TEST(), blender::compositor::KeyingBlurOperation::update_memory_buffer_partial(), and blender::compositor::ScreenLensDistortionOperation::update_memory_buffer_partial().