BabylonAbstractMesh.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #pragma once
  2. #include <string>
  3. #include <cpprest\json.h>
  4. #include "BabylonVertex.h"
  5. #include "BabylonNode.h"
  6. // base class for meshes and mesh instances (instances not implemented yet)
  7. class BabylonAbstractMesh
  8. {
  9. private:
  10. std::wstring _name;
  11. babylon_vector3 _position;
  12. babylon_vector4 _rotationQuaternion;
  13. babylon_vector3 _scaling;
  14. public:
  15. const std::wstring& name() const{
  16. return _name;
  17. }
  18. void name(const std::wstring& value){
  19. _name = value;
  20. }
  21. babylon_vector3 position() const{
  22. return _position;
  23. }
  24. void position(babylon_vector3 value){
  25. _position = value;
  26. }
  27. babylon_vector4 rotationQuaternion() const{
  28. return _rotationQuaternion;
  29. }
  30. void rotationQuaternion(babylon_vector4 value){
  31. _rotationQuaternion = value;
  32. }
  33. babylon_vector3 scaling() const{
  34. return _scaling;
  35. }
  36. void scaling(babylon_vector3 value){
  37. _scaling = value;
  38. }
  39. BabylonAbstractMesh();
  40. BabylonAbstractMesh(BabylonNode* node);
  41. BabylonAbstractMesh(const BabylonAbstractMesh& ) = default;
  42. virtual web::json::value toJson() ;
  43. virtual ~BabylonAbstractMesh();
  44. };