File tree Expand file tree Collapse file tree 4 files changed +13
-10
lines changed
extern/AntTweakBar/include Expand file tree Collapse file tree 4 files changed +13
-10
lines changed Original file line number Diff line number Diff line change @@ -112,7 +112,7 @@ void TimeStepTriangleModel::constraintProjection(TriangleModel &model)
112112 }
113113 else if (m_simulationMethod == 2 ) // strain energy constraint
114114 {
115- std::vector< TriangleModel::TriangleConstraint> &triangleConstraints = model.getTriangleConstraints ();
115+ TriangleModel::TriangleConstraintVector &triangleConstraints = model.getTriangleConstraints ();
116116 const unsigned int *tris = model.getParticleMesh ().getFaces ().data ();
117117 const unsigned int nFaces = model.getParticleMesh ().numFaces ();
118118 for (unsigned int i = 0 ; i < nFaces; i++)
@@ -152,7 +152,7 @@ void TimeStepTriangleModel::constraintProjection(TriangleModel &model)
152152 }
153153 else if (m_simulationMethod == 3 ) // strain based dynamics
154154 {
155- std::vector< TriangleModel::TriangleConstraint> &triangleConstraints = model.getTriangleConstraints ();
155+ TriangleModel::TriangleConstraintVector &triangleConstraints = model.getTriangleConstraints ();
156156 const unsigned int *tris = model.getParticleMesh ().getFaces ().data ();
157157 const unsigned int nFaces = model.getParticleMesh ().numFaces ();
158158 for (unsigned int i = 0 ; i < nFaces; i++)
@@ -192,7 +192,7 @@ void TimeStepTriangleModel::constraintProjection(TriangleModel &model)
192192
193193 if (m_bendingMethod != 0 )
194194 {
195- std::vector< TriangleModel::BendingConstraint> &bendingConstraints = model.getBendingConstraints ();
195+ TriangleModel::BendingConstraintVector &bendingConstraints = model.getBendingConstraints ();
196196
197197 for (unsigned int i = 0 ; i < (unsigned int )bendingConstraints.size (); i++)
198198 {
Original file line number Diff line number Diff line change @@ -90,6 +90,7 @@ void TriangleModel::initTriangleConstraints()
9090 unsigned int nFaces = getParticleMesh ().numFaces ();
9191 const unsigned int *tris = getParticleMesh ().getFaces ().data ();
9292 const ParticleData &pd = getParticleMesh ().getVertexData ();
93+ m_triangleConstraints.reserve (nFaces);
9394 for (unsigned int i = 0 ; i < nFaces; i++)
9495 {
9596 const Eigen::Vector3f &x1 = pd.getPosition0 (tris[3 * i]);
@@ -157,12 +158,12 @@ void TriangleModel::initBendingConstraints()
157158 }
158159}
159160
160- std::vector< TriangleModel::BendingConstraint> & TriangleModel::getBendingConstraints ()
161+ TriangleModel::BendingConstraintVector & TriangleModel::getBendingConstraints ()
161162{
162163 return m_bendingConstraints;
163164}
164165
165- std::vector< TriangleModel::TriangleConstraint> & TriangleModel::getTriangleConstraints ()
166+ TriangleModel::TriangleConstraintVector & TriangleModel::getTriangleConstraints ()
166167{
167168 return m_triangleConstraints;
168169}
Original file line number Diff line number Diff line change @@ -32,12 +32,14 @@ namespace PBD
3232 virtual ~TriangleModel ();
3333
3434 typedef IndexedFaceMesh<ParticleData> ParticleMesh;
35+ typedef std::vector<BendingConstraint, Eigen::aligned_allocator<BendingConstraint>> BendingConstraintVector;
36+ typedef std::vector<TriangleConstraint, Eigen::aligned_allocator<TriangleConstraint>> TriangleConstraintVector;
3537
3638 protected:
3739 /* * Face mesh of particles which represents the simulation model */
3840 ParticleMesh m_particleMesh;
39- std::vector<BendingConstraint> m_bendingConstraints;
40- std::vector<TriangleConstraint> m_triangleConstraints;
41+ BendingConstraintVector m_bendingConstraints;
42+ TriangleConstraintVector m_triangleConstraints;
4143 float m_stiffness;
4244 float m_bendingStiffness;
4345 float m_xxStiffness;
@@ -81,8 +83,8 @@ namespace PBD
8183 virtual void reset ();
8284 void updateMeshNormals ();
8385
84- std::vector<BendingConstraint> &getBendingConstraints ();
85- std::vector<TriangleConstraint> &getTriangleConstraints ();
86+ BendingConstraintVector &getBendingConstraints ();
87+ TriangleConstraintVector &getTriangleConstraints ();
8688
8789 };
8890}
Original file line number Diff line number Diff line change 4242// OS specific definitions
4343// ----------------------------------------------------------------------------
4444
45- #if (defined(_WIN32) || defined(_WIN64)) && !defined(TW_STATIC)
45+ #if (defined(_WIN32) || defined(_WIN64)) // && !defined(TW_STATIC)
4646# define TW_CALL __stdcall
4747# define TW_CDECL_CALL __cdecl
4848# define TW_EXPORT_API __declspec (dllexport)
You can’t perform that action at this time.
0 commit comments