Changeset 382 for trunk/src/core
- Timestamp:
- Mar 28, 2006, 10:01:45 AM (19 years ago)
- Location:
- trunk/src/core
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/core/RpUnits.cc
r262 r382 1514 1514 } 1515 1515 else if (group.compare("volume") == 0) { 1516 retVal = RpUnitsPreset::addPresetTime(); 1516 retVal = RpUnitsPreset::addPresetVolume(); 1517 } 1518 else if (group.compare("angle") == 0) { 1519 retVal = RpUnitsPreset::addPresetAngle(); 1517 1520 } 1518 1521 … … 1539 1542 result += addPresetEnergy(); 1540 1543 result += addPresetVolume(); 1544 result += addPresetAngle(); 1541 1545 1542 1546 return 0; … … 1687 1691 } 1688 1692 1693 /**********************************************************************/ 1694 // METHOD: addPresetAngle() 1695 /// Add Angle related units to the dictionary 1696 /** 1697 * Defines the following units: 1698 * degrees (deg) 1699 * gradians (grad) 1700 * radians (rad) (and metric extensions) 1701 * 1702 * Return codes: 0 success, anything else is error 1703 */ 1704 1705 int 1706 RpUnitsPreset::addPresetAngle () { 1707 1708 RpUnits* degree = RpUnits::define("deg", NULL, RP_TYPE_ANGLE); 1709 RpUnits* gradian = RpUnits::define("grad", NULL, RP_TYPE_ANGLE); 1710 RpUnits* radian = RpUnits::define("rad", NULL, RP_TYPE_ANGLE); 1711 1712 RpUnits::makeMetric(radian); 1713 1714 // add angle definitions 1715 RpUnits::define(degree,gradian,deg2grad,grad2deg); 1716 RpUnits::define(radian,degree,rad2deg,deg2rad); 1717 RpUnits::define(radian,gradian,rad2grad,grad2rad); 1718 1719 return 0; 1720 } 1721 1689 1722 // -------------------------------------------------------------------- // 1690 1723 -
trunk/src/core/RpUnitsStd.cc
r116 r382 147 147 double angstrom2meter (double angstrom) 148 148 { 149 149 return angstrom*(1.0e-10); 150 150 } 151 151 152 152 double meter2angstrom (double meter) 153 153 { 154 154 return meter*(1.0e10); 155 155 } 156 156 157 157 double meter2inch (double meter) 158 158 { 159 159 return meter*(39.37008); 160 160 } 161 161 162 162 double inch2meter (double in) 163 163 { 164 164 return (in/(39.37008)); 165 165 } 166 166 167 167 double meter2feet (double meter) 168 168 { 169 169 return (meter*(3.280840)); 170 170 } 171 171 172 172 double feet2meter (double ft) 173 173 { 174 174 return (ft/(3.280840)); 175 175 } 176 176 177 177 double meter2yard (double meter) 178 178 { 179 179 return (meter*(1.093613)); 180 180 } 181 181 182 182 double yard2meter (double yd) 183 183 { 184 184 return (yd/(1.093613)); 185 185 } 186 186 … … 191 191 double fahrenheit2centigrade (double F) 192 192 { 193 193 return ((F-32.0)/(9.0/5.0)); 194 194 } 195 195 196 196 double centigrade2fahrenheit (double C) 197 197 { 198 198 return ((C*(9.0/5.0))+32.0); 199 199 } 200 200 201 201 double centigrade2kelvin (double C) 202 202 { 203 203 return (C+273.15); 204 204 } 205 205 206 206 double kelvin2centigrade (double K) 207 207 { 208 208 return (K-273.15); 209 209 } 210 210 211 211 double rankine2kelvin (double R) 212 212 { 213 213 return ((9.0/5.0)*R); 214 214 } 215 215 216 216 double kelvin2rankine (double K) 217 217 { 218 218 return ((5.0/9.0)*K); 219 219 } 220 220 221 221 double fahrenheit2kelvin (double F) 222 222 { 223 223 return ((F+459.67)*(5.0/9.0)); 224 224 } 225 225 226 226 double kelvin2fahrenheit (double K) 227 227 { 228 228 return (((9.0/5.0)*K)-459.67); 229 229 } 230 230 … … 235 235 double electronVolt2joule (double eV) 236 236 { 237 237 return (eV*1.602177e-19); 238 238 } 239 239 240 240 double joule2electronVolt (double J) 241 241 { 242 242 return (J/1.602177e-19); 243 243 } 244 244 … … 249 249 double cubicMeter2usGallon (double m3) 250 250 { 251 251 return (m3*264.1721); 252 252 } 253 253 254 254 double usGallon2cubicMeter (double gal) 255 255 { 256 256 return (gal/264.1721); 257 257 } 258 258 259 259 double cubicFeet2usGallon (double ft3) 260 260 { 261 261 return (ft3*7.48051); 262 262 } 263 263 264 264 double usGallon2cubicFeet (double gal) 265 265 { 266 return (gal/7.48051); 267 } 268 266 return (gal/7.48051); 267 } 268 269 /**************************************** 270 * ANGLE CONVERSIONS 271 * http://www.metrication.com/ 272 ****************************************/ 273 274 double rad2deg (double rad) 275 { 276 return (rad*(180.00/M_PI)); 277 } 278 279 double deg2rad (double deg) 280 { 281 return (deg*(M_PI/180.00)); 282 } 283 284 double rad2grad (double rad) 285 { 286 return (rad*(200.00/M_PI)); 287 } 288 289 double grad2rad (double grad) 290 { 291 return (grad*(M_PI/200.00)); 292 } 293 294 double deg2grad (double deg) 295 { 296 return (deg*(10.00/9.00)); 297 } 298 299 double grad2deg (double grad) 300 { 301 return (grad*(9.00/10.00)); 302 } 269 303 270 304 #ifdef __cplusplus
Note: See TracChangeset
for help on using the changeset viewer.