Alvaro Cassinelli
/
skinGames_forktest
just a test
Fork of scoreLight_Advanced by
Diff: classRigidScafold.cpp
- Revision:
- 33:43e8bc451ef0
- Parent:
- 32:52273c3291fe
- Child:
- 35:35af5086ab4f
--- a/classRigidScafold.cpp Mon Oct 29 14:28:47 2012 +0000 +++ b/classRigidScafold.cpp Mon Nov 05 06:08:35 2012 +0000 @@ -8,21 +8,28 @@ void RigidScafold::buildCircularScafold(float _radius, vector2Dd _pos, int _numScafoldPoints) { + sizeScafold=_radius; centerScafold=_pos; scafold.resize(_numScafoldPoints); float angInc= 2.0 * PI / _numScafoldPoints; float ang=0; for (int i = 0; i < scafold.size(); i++) { - scafold[i]= vector2Dd( cos(ang)* _radius, sin(ang)* _radius ) + centerScafold; + scafold[i]= vector2Dd( cos(ang)* _radius, sin(ang)* sizeScafold ) + centerScafold; // note: I cannot do vector2Dd( cos(ang), sin(ang) ) * _radius because vector2Dd would give (0,0) ang+=angInc; } } - void RigidScafold::resizeDimensionScafold(float _factor) { + void RigidScafold::resizeDimensionScafold(float _newSize) { + resizeFactorDimensionScafold(_newSize/sizeScafold); + sizeScafold=_newSize; + } + + void RigidScafold::resizeFactorDimensionScafold(float _factor) { for (int i = 0; i < scafold.size(); i++) { scafold[i] = ( scafold[i]-centerScafold)*_factor+centerScafold; } + sizeScafold*=_factor; } void RigidScafold::buildLine(float _length, float _angleDeg, vector2Dd _pos, int _numScafoldPoints) {