| 536 | /// \also Circle3D |
| 537 | |
| 538 | class Sphere3D |
| 539 | { |
| 540 | public: |
| 541 | |
| 542 | float u, x, y, z, w; |
| 543 | |
| 544 | TERATHON_API static const ConstSphere3D zero; |
| 545 | |
| 546 | /// \brief Default constructor that leaves the components uninitialized. |
| 547 | |
| 548 | inline Sphere3D() = default; |
| 549 | |
| 550 | /// \brief Constructor that sets components explicitly. |
| 551 | /// \param su,sx,sy,sz,sw The components of the sphere. |
| 552 | |
| 553 | Sphere3D(float su, float sx, float sy, float sz, float sw) |
| 554 | { |
| 555 | u = su; |
| 556 | x = sx; |
| 557 | y = sy; |
| 558 | z = sz; |
| 559 | w = sw; |
| 560 | } |
| 561 | |
| 562 | /// \brief Sets all five components of a 3D sphere. |
| 563 | /// \param su,sx,sy,sz,sw The new components of the sphere. |
| 564 | |
| 565 | Sphere3D& Set(float su, float sx, float sy, float sz, float sw) |
| 566 | { |
| 567 | u = su; |
| 568 | x = sx; |
| 569 | y = sy; |
| 570 | z = sz; |
| 571 | w = sw; |
| 572 | return (*this); |
| 573 | } |
| 574 | |
| 575 | void Set(float su, float sx, float sy, float sz, float sw) volatile |
| 576 | { |
| 577 | u = su; |
| 578 | x = sx; |
| 579 | y = sy; |
| 580 | z = sz; |
| 581 | w = sw; |
| 582 | } |
| 583 | |
| 584 | Sphere3D& operator *=(float n) |
| 585 | { |
| 586 | u *= n; |
| 587 | x *= n; |
| 588 | y *= n; |
| 589 | z *= n; |
| 590 | w *= n; |
| 591 | return (*this); |
| 592 | } |
| 593 | |
| 594 | Sphere3D& operator /=(float n) |
| 595 | { |
no outgoing calls
no test coverage detected