#include <TAPsSpringPropertiesForDefModel.hpp>

Definition at line 21 of file TAPsSpringPropertiesForDefModel.hpp.
| enum SpringPropertiesForDefModel::CONNECT |
Element Connectivities: up to 26 connections
*---*---* BACK | NW N NE / / /| *---*---* * CENTER | W C E / / /|/| *---*---* * * FRONT | SW S SE | | |/|/ *---*---* * e.g. BACK_C -> Back Center | | |/ *---*---* Total: 9 (front) + 8 (center) + 9 (back) = 26 Remark: Front is +Z and Back is -Z. Use Enum to Identify Connections
Definition at line 119 of file TAPsSpringPropertiesForDefModel.hpp.
00119 { 00120 //----------------------------- 00121 // x dimension 00122 EAST = 0, 00123 WEST, 00124 //----------------------------- 00125 // y dimension 00126 NORTH, 00127 SOUTH, 00128 //----------------------------- 00129 // z dimension 00130 FRONT, 00131 BACK, 00132 //----------------------------- 00133 // xy dimension 00134 NORTH_EAST, 00135 SOUTH_WEST, 00136 //--------- 00137 NORTH_WEST, 00138 SOUTH_EAST, 00139 //----------------------------- 00140 // xz dimension 00141 FRONT_EAST, 00142 BACK_WEST, 00143 //--------- 00144 FRONT_WEST, 00145 BACK_EAST, 00146 //----------------------------- 00147 // yz dimension 00148 FRONT_NORTH, 00149 BACK_SOUTH, 00150 //--------- 00151 FRONT_SOUTH, 00152 BACK_NORTH, 00153 //----------------------------- 00154 // xyz dimension 00155 FRONT_NORTH_EAST, 00156 BACK_SOUTH_WEST, 00157 //--------- 00158 FRONT_NORTH_WEST, 00159 BACK_SOUTH_EAST, 00160 //--------- 00161 FRONT_SOUTH_WEST, 00162 BACK_NORTH_EAST, 00163 //--------- 00164 FRONT_SOUTH_EAST, 00165 BACK_NORTH_WEST, 00166 //----------------------------- 00167 // dimensionless 00168 NOT_CONNECTED, 00169 //----------------------------- 00170 // Home Spring 00171 HOME 00172 //----------------------------- 00173 };
| SpringPropertiesForDefModel< T >::SpringPropertiesForDefModel | ( | ) | [inline] |
Definition at line 42 of file TAPsSpringPropertiesForDefModel.hpp.
00042 { 00043 SetToDefaultValues(); 00044 }
| SpringPropertiesForDefModel< T >::SpringPropertiesForDefModel | ( | T | Kstiffness, | |
| T | xLen, | |||
| T | yLen, | |||
| T | zLen | |||
| ) | [inline] |
Definition at line 46 of file TAPsSpringPropertiesForDefModel.hpp.
00051 { 00052 SetAllValues ( 00053 Kstiffness, 00054 #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00055 Kdamper, 00056 #endif // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00057 xLen, yLen, zLen ); 00058 }
| T SpringPropertiesForDefModel< T >::GetHomeSpringStiffness | ( | ) | [inline] |
| T SpringPropertiesForDefModel< T >::GetSpringRestLength | ( | enum CONNECT | springSelection | ) | [inline] |
Definition at line 216 of file TAPsSpringPropertiesForDefModel.hpp.
00217 { return REST_LENGTH[ springSelection ]; }
| T SpringPropertiesForDefModel< T >::GetSpringStiffness | ( | enum CONNECT | springSelection | ) | [inline] |
Definition at line 222 of file TAPsSpringPropertiesForDefModel.hpp.
00223 { return STIFFNESS[ springSelection ]; }
| T SpringPropertiesForDefModel< T >::GetStoreHomeSpringStiffness | ( | ) | [inline] |
Definition at line 208 of file TAPsSpringPropertiesForDefModel.hpp.
00208 { return m_tStore_Ks_Home; }
| std::string SpringPropertiesForDefModel< T >::Info | ( | ) | const [inline] |
Definition at line 419 of file TAPsSpringPropertiesForDefModel.hpp.
00419 { 00420 const int maxNumConnections = 26; 00421 std::string strInfo; 00422 //--------------------------------------- 00423 #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00424 strInfo += "Rest Length Stiffness Damper Distance Limit\n"; 00425 #else // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00426 strInfo += "Rest Length Stiffness Distance Limit\n"; 00427 #endif // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00428 //======================================= 00429 strInfo += "-----------\n"; 00430 strInfo += "HOME SPRING:\n"; 00431 strInfo += "-----------"; 00432 strInfo += "\n Home Spring: "; 00433 InfoConnectionProperties( strInfo, HOME, maxNumConnections ); 00434 //------------- 00435 //======================================= 00436 strInfo += "-----------\n"; 00437 strInfo += "FRONT GROUP:\n"; 00438 strInfo += "-----------"; 00439 //------------- 00440 strInfo += "\n FrontNorthWest: "; 00441 InfoConnectionProperties( strInfo, FRONT_NORTH_WEST, maxNumConnections ); 00442 strInfo += "\n FrontNorth: "; 00443 InfoConnectionProperties( strInfo, FRONT_NORTH, maxNumConnections ); 00444 strInfo += "\n FrontNorthEast: "; 00445 InfoConnectionProperties( strInfo, FRONT_NORTH_EAST, maxNumConnections ); 00446 //------------- 00447 strInfo += "\n FrontWest: "; 00448 InfoConnectionProperties( strInfo, FRONT_WEST, maxNumConnections ); 00449 strInfo += "\n Front: "; 00450 InfoConnectionProperties( strInfo, FRONT, maxNumConnections ); 00451 strInfo += "\n FrontEast: "; 00452 InfoConnectionProperties( strInfo, FRONT_EAST, maxNumConnections ); 00453 //------------- 00454 strInfo += "\n FrontSouthWest: "; 00455 InfoConnectionProperties( strInfo, FRONT_SOUTH_WEST, maxNumConnections ); 00456 strInfo += "\n FrontSouth: "; 00457 InfoConnectionProperties( strInfo, FRONT_SOUTH, maxNumConnections ); 00458 strInfo += "\n FrontSouthEast: "; 00459 InfoConnectionProperties( strInfo, FRONT_SOUTH_EAST, maxNumConnections ); 00460 //------------- 00461 strInfo += "\n"; 00462 //======================================= 00463 strInfo += "------------\n"; 00464 strInfo += "CENTER GROUP:\n"; 00465 strInfo += "------------"; 00466 //------------- 00467 strInfo += "\n NorthWest: "; 00468 InfoConnectionProperties( strInfo, NORTH_WEST, maxNumConnections ); 00469 strInfo += "\n North: "; 00470 InfoConnectionProperties( strInfo, NORTH, maxNumConnections ); 00471 strInfo += "\n NorthEast: "; 00472 InfoConnectionProperties( strInfo, NORTH_EAST, maxNumConnections ); 00473 //------------- 00474 strInfo += "\n West: "; 00475 InfoConnectionProperties( strInfo, WEST, maxNumConnections ); 00476 strInfo += "\n East: "; 00477 InfoConnectionProperties( strInfo, EAST, maxNumConnections ); 00478 //------------- 00479 strInfo += "\n SouthWest: "; 00480 InfoConnectionProperties( strInfo, SOUTH_WEST, maxNumConnections ); 00481 strInfo += "\n South: "; 00482 InfoConnectionProperties( strInfo, SOUTH, maxNumConnections ); 00483 strInfo += "\n SouthEast: "; 00484 InfoConnectionProperties( strInfo, SOUTH_EAST, maxNumConnections ); 00485 //------------- 00486 strInfo += "\n"; 00487 //======================================= 00488 strInfo += "----------\n"; 00489 strInfo += "BACK GROUP:\n"; 00490 strInfo += "----------"; 00491 //------------- 00492 strInfo += "\n BackNorthWest: "; 00493 InfoConnectionProperties( strInfo, BACK_NORTH_WEST, maxNumConnections ); 00494 strInfo += "\n BackNorth: "; 00495 InfoConnectionProperties( strInfo, BACK_NORTH, maxNumConnections ); 00496 strInfo += "\n BackNorthEast: "; 00497 InfoConnectionProperties( strInfo, BACK_NORTH_EAST, maxNumConnections ); 00498 //------------- 00499 strInfo += "\n BackWest: "; 00500 InfoConnectionProperties( strInfo, BACK_WEST, maxNumConnections ); 00501 strInfo += "\n Back: "; 00502 InfoConnectionProperties( strInfo, BACK, maxNumConnections ); 00503 strInfo += "\n BackEast: "; 00504 InfoConnectionProperties( strInfo, BACK_EAST, maxNumConnections ); 00505 //------------- 00506 strInfo += "\n BackSouthWest: "; 00507 InfoConnectionProperties( strInfo, BACK_SOUTH_WEST, maxNumConnections ); 00508 strInfo += "\n BackSouth: "; 00509 InfoConnectionProperties( strInfo, BACK_SOUTH, maxNumConnections ); 00510 strInfo += "\n BackSouthEast: "; 00511 InfoConnectionProperties( strInfo, BACK_SOUTH_EAST, maxNumConnections ); 00512 //------------- 00513 //======================================= 00514 return strInfo; 00515 }
| void SpringPropertiesForDefModel< T >::InfoConnectionProperties | ( | std::string & | addToStr, | |
| CONNECT | connect, | |||
| int | maxNumConnections = 26 | |||
| ) | const [inline] |
Definition at line 399 of file TAPsSpringPropertiesForDefModel.hpp.
00400 { 00401 char cStr[80]; 00402 if ( connect <= maxNumConnections ) { 00403 #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00404 sprintf( cStr, " %g, %g, %g", 00405 SPRING_PROP.REST_LENGTH[ connect ], 00406 SPRING_PROP.STIFFNESS[ connect ], 00407 SPRING_PROP.DAMPER[ connect ] 00408 ); 00409 #else // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00410 sprintf( cStr, " %g, %g", 00411 SPRING_PROP.REST_LENGTH[ connect ], 00412 SPRING_PROP.STIFFNESS[ connect ] 00413 ); 00414 #endif // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00415 addToStr += cStr; 00416 } 00417 }
| void SpringPropertiesForDefModel< T >::RestoreHomeSpringStiffness | ( | ) | [inline] |
Definition at line 210 of file TAPsSpringPropertiesForDefModel.hpp.
00211 { STIFFNESS[ HOME ] = m_tStore_Ks_Home; }
| void SpringPropertiesForDefModel< T >::SetAllValues | ( | T | Kstiffness, | |
| T | xLen, | |||
| T | yLen, | |||
| T | zLen | |||
| ) | [inline] |
Definition at line 79 of file TAPsSpringPropertiesForDefModel.hpp.
00084 { 00085 SetValueForAllStiffnesses( Kstiffness ); 00086 #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00087 SetValueForAllDampers( Kdamper ); 00088 #endif // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00089 SetValueForAllSpringLengths ( xLen, yLen, zLen ); 00090 }
| void SpringPropertiesForDefModel< T >::SetHomeSpringStiffness | ( | T | val | ) | [inline] |
Definition at line 253 of file TAPsSpringPropertiesForDefModel.hpp.
00254 { STIFFNESS[ HOME ] = m_tStore_Ks_Home = val; }
| void SpringPropertiesForDefModel< T >::SetHomeSpringStiffnessWithoutStoreItsCurrentValue | ( | T | val | ) | [inline] |
| void SpringPropertiesForDefModel< T >::SetSpringRestLength | ( | enum CONNECT | springSelection, | |
| T | val | |||
| ) | [inline] |
Definition at line 219 of file TAPsSpringPropertiesForDefModel.hpp.
00220 { REST_LENGTH[ springSelection ] = val; }
| void SpringPropertiesForDefModel< T >::SetSpringStiffness | ( | enum CONNECT | springSelection, | |
| T | val | |||
| ) | [inline] |
Definition at line 225 of file TAPsSpringPropertiesForDefModel.hpp.
00226 { STIFFNESS[ springSelection ] = val; 00227 if ( springSelection == HOME ) 00228 m_tStore_Ks_Home = val; 00229 }
| void SpringPropertiesForDefModel< T >::SetToDefaultValues | ( | ) | [inline] |
Definition at line 63 of file TAPsSpringPropertiesForDefModel.hpp.
00063 { 00064 T Kstiffness = 1; 00065 #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00066 T Kdamper = 1; 00067 #endif // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00068 T xLen = 0.5; 00069 T yLen = 0.5; 00070 T zLen = 0.5; 00071 //--------------------------------------- 00072 SetValueForAllStiffnesses( Kstiffness ); 00073 #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00074 SetValueForAllDampers( Kdamper ); 00075 #endif // #ifdef TAPs_MODEL_DEFORMABLE_GLSL_EXPLICIT_EULER_INTEGRATION 00076 SetValueForAllSpringLengths ( xLen, yLen, zLen ); 00077 }
| void SpringPropertiesForDefModel< T >::SetValueForAllSpringLengths | ( | T | xLen, | |
| T | yLen, | |||
| T | zLen | |||
| ) | [inline] |
Definition at line 342 of file TAPsSpringPropertiesForDefModel.hpp.
00343 { 00344 T xLenSqrt = xLen * xLen; 00345 T yLenSqrt = yLen * yLen; 00346 T zLenSqrt = zLen * zLen; 00347 T xyLen = sqrt( xLenSqrt + yLenSqrt ); 00348 T xzLen = sqrt( xLenSqrt + zLenSqrt ); 00349 T yzLen = sqrt( yLenSqrt + zLenSqrt ); 00350 T xyzLen = sqrt( xLenSqrt + yLenSqrt + zLenSqrt ); 00351 //--------------------------------------- 00352 #ifdef TAPs_DEBUG_MODE 00353 std::cout << "DEBUG REST LENGTH:\n"; 00354 std::cout << "xLen: " << xLen << "\n"; 00355 std::cout << "yLen: " << yLen << "\n"; 00356 std::cout << "zLen: " << zLen << "\n"; 00357 std::cout << "xyLen: " << xyLen << "\n"; 00358 std::cout << "xzLen: " << xzLen << "\n"; 00359 std::cout << "yzLen: " << yzLen << "\n"; 00360 std::cout << "xyzLen: " << xyzLen << "\n"; 00361 #endif // #ifdef TAPs_DEBUG_MODE 00362 //--------------------------------------- 00363 REST_LENGTH[FRONT] = zLen; 00364 REST_LENGTH[BACK] = zLen; 00365 //--------------- 00366 REST_LENGTH[EAST] = xLen; 00367 REST_LENGTH[WEST] = xLen; 00368 REST_LENGTH[NORTH] = yLen; 00369 REST_LENGTH[SOUTH] = yLen; 00370 //--------------- 00371 REST_LENGTH[NORTH_EAST] = xyLen; 00372 REST_LENGTH[SOUTH_WEST] = xyLen; 00373 REST_LENGTH[NORTH_WEST] = xyLen; 00374 REST_LENGTH[SOUTH_EAST] = xyLen; 00375 //--------------- 00376 REST_LENGTH[FRONT_EAST] = xzLen; 00377 REST_LENGTH[BACK_WEST] = xzLen; 00378 REST_LENGTH[FRONT_WEST] = xzLen; 00379 REST_LENGTH[BACK_EAST] = xzLen; 00380 //--------------- 00381 REST_LENGTH[FRONT_NORTH] = yzLen; 00382 REST_LENGTH[BACK_SOUTH] = yzLen; 00383 REST_LENGTH[FRONT_SOUTH] = yzLen; 00384 REST_LENGTH[BACK_NORTH] = yzLen; 00385 //--------------- 00386 REST_LENGTH[FRONT_NORTH_EAST] = xyzLen; 00387 REST_LENGTH[BACK_SOUTH_WEST] = xyzLen; 00388 REST_LENGTH[FRONT_NORTH_WEST] = xyzLen; 00389 REST_LENGTH[BACK_SOUTH_EAST] = xyzLen; 00390 //--------------- 00391 REST_LENGTH[FRONT_SOUTH_WEST] = xyzLen; 00392 REST_LENGTH[BACK_NORTH_EAST] = xyzLen; 00393 REST_LENGTH[FRONT_SOUTH_EAST] = xyzLen; 00394 REST_LENGTH[BACK_NORTH_WEST] = xyzLen; 00395 //--------------- 00396 REST_LENGTH[HOME] = 0; 00397 }
| void SpringPropertiesForDefModel< T >::SetValueForAllStiffnesses | ( | T | val | ) | [inline] |
Definition at line 263 of file TAPsSpringPropertiesForDefModel.hpp.
00264 { 00265 STIFFNESS[FRONT] = val; 00266 STIFFNESS[BACK] = val; 00267 //--------------- 00268 STIFFNESS[EAST] = val; 00269 STIFFNESS[WEST] = val; 00270 STIFFNESS[NORTH] = val; 00271 STIFFNESS[SOUTH] = val; 00272 //--------------- 00273 STIFFNESS[NORTH_EAST] = val; 00274 STIFFNESS[SOUTH_WEST] = val; 00275 STIFFNESS[NORTH_WEST] = val; 00276 STIFFNESS[SOUTH_EAST] = val; 00277 //--------------- 00278 STIFFNESS[FRONT_EAST] = val; 00279 STIFFNESS[BACK_WEST] = val; 00280 STIFFNESS[FRONT_WEST] = val; 00281 STIFFNESS[BACK_EAST] = val; 00282 //--------------- 00283 STIFFNESS[FRONT_NORTH] = val; 00284 STIFFNESS[BACK_SOUTH] = val; 00285 STIFFNESS[FRONT_SOUTH] = val; 00286 STIFFNESS[BACK_NORTH] = val; 00287 //--------------- 00288 STIFFNESS[FRONT_NORTH_EAST] = val; 00289 STIFFNESS[BACK_SOUTH_WEST] = val; 00290 STIFFNESS[FRONT_NORTH_WEST] = val; 00291 STIFFNESS[BACK_SOUTH_EAST] = val; 00292 //--------------- 00293 STIFFNESS[FRONT_SOUTH_WEST] = val; 00294 STIFFNESS[BACK_NORTH_EAST] = val; 00295 STIFFNESS[FRONT_SOUTH_EAST] = val; 00296 STIFFNESS[BACK_NORTH_WEST] = val; 00297 //--------------- 00298 STIFFNESS[HOME] = val; 00299 m_tStore_Ks_Home = val; 00300 }
friend class ModelDeformableCPU [friend] |
Definition at line 22 of file TAPsSpringPropertiesForDefModel.hpp.
friend class ModelDeformableGLSL [friend] |
Definition at line 23 of file TAPsSpringPropertiesForDefModel.hpp.
| std::ostream& operator<< | ( | std::ostream & | output, | |
| SpringPropertiesForDefModel< T > const & | o | |||
| ) | [friend] |
Definition at line 26 of file TAPsSpringPropertiesForDefModel.hpp.
00027 { 00028 output << "\n=========================================================\n" 00029 << "TAPs::OpenGL::SpringPropertiesForDefModel<" << typeid(T).name() << "> Class:\n" 00030 << "=========================================================\n"; 00031 //------------------------------------------------- 00032 output << o.Info(); 00033 output << "\n=========================================================\n"; 00034 //------------------------------------------------- 00035 return output; 00036 }
T SpringPropertiesForDefModel< T >::m_tStore_Ks_Home [private] |
Definition at line 201 of file TAPsSpringPropertiesForDefModel.hpp.
T SpringPropertiesForDefModel< T >::REST_LENGTH[28] [private] |
Definition at line 184 of file TAPsSpringPropertiesForDefModel.hpp.
T SpringPropertiesForDefModel< T >::STIFFNESS[28] [private] |
Definition at line 185 of file TAPsSpringPropertiesForDefModel.hpp.
1.5.6