https://github.com/sueda/eol-cloth
Revision 28fad2e07ec31f0dfd2c681878904e707f6715d5 authored by Shinjiro Sueda on 11 September 2018, 15:17:28 UTC, committed by GitHub on 11 September 2018, 15:17:28 UTC
1 parent 3c3ef84
Tip revision: 28fad2e07ec31f0dfd2c681878904e707f6715d5 authored by Shinjiro Sueda on 11 September 2018, 15:17:28 UTC
Create LICENSE
Create LICENSE
Tip revision: 28fad2e
Forces.h
#pragma once
#ifndef __Forces__
#define __Forces__
#include <vector>
#include <memory>
#include <string>
#include "Cloth.h"
#include "external\ArcSim\mesh.hpp"
#define EIGEN_DONT_ALIGN_STATICALLY
#include <Eigen/Dense>
#include <Eigen/Sparse>
#include <Eigen/StdVector>
#ifdef EOLC_ONLINE
class MatrixStack;
class Program;
#endif // EOLC_ONLINE
//class Mesh;
class Obstacles;
class Forces
{
public:
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Forces() : EoL_cutoff(0) {};
virtual ~Forces() {};
Eigen::VectorXd f;
Eigen::SparseMatrix<double> M;
Eigen::SparseMatrix<double> MDK;
int EoL_cutoff;
void fill(const Mesh& mesh, const Material& mat, const Eigen::Vector3d& grav, double h);
#ifdef EOLC_ONLINE
void drawSimple(const Mesh& mesh, std::shared_ptr<MatrixStack> MV, const std::shared_ptr<Program> p) const;
#endif // EOLC_ONLINE
};
#endif
Computing file changes ...