8 #ifndef __EIGEN3_SVD_C_API_CC__
9 #define __EIGEN3_SVD_C_API_CC__
12 #if defined(__GNUC__) && !defined(__clang__)
13 # pragma GCC diagnostic ignored "-Wlogical-op"
16 #ifdef __EIGEN3_SVD_C_API_CC__
20 #include <Eigen/Dense>
25 using Eigen::JacobiSVD;
27 using Eigen::NoQRPreconditioner;
29 using Eigen::ComputeThinU;
30 using Eigen::ComputeThinV;
33 using Eigen::MatrixXf;
34 using Eigen::VectorXf;
36 using Eigen::Matrix4f;
41 unsigned int flags = (r_U ? ComputeThinU : 0) | (r_V ? ComputeThinV : 0);
44 JacobiSVD<MatrixXf, NoQRPreconditioner> svd(Map<MatrixXf>((
float *)matrix,
size,
size), flags);
47 Map<MatrixXf>(r_U,
size,
size) = svd.matrixU();
51 Map<VectorXf>(r_S,
size) = svd.singularValues();
55 Map<MatrixXf>(r_V,
size,
size) = svd.matrixV();
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object for example to give variation to multiple instances of an object Point Retrieve information about points in a point cloud Retrieve the edges of an object as it appears to Cycles topology will always appear triangulated Convert a blackbody temperature to an RGB value Normal Map
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
void EIG_svd_square_matrix(const int size, const float *matrix, float *r_U, float *r_S, float *r_V)