Shinya Kitaoka 810553
#pragma once
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifndef PLASTICVISUALSETTINGS_H
Toshihiro Shimizu 890ddd
#define PLASTICVISUALSETTINGS_H
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//===========================================================
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//    Forward declarations
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class TXshColumn;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//===========================================================
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//*********************************************************************************************
Toshihiro Shimizu 890ddd
//    PlasticVisualSettings  definition
Toshihiro Shimizu 890ddd
//*********************************************************************************************
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
//! The PlasticVisualSettings class stores the fundamental visualization options
Shinya Kitaoka 120a6e
//! that need
Toshihiro Shimizu 890ddd
//! to be implemented in any painter supporting the plastic framework.
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
struct PlasticVisualSettings {
Shinya Kitaoka 120a6e
  bool m_applyPlasticDeformation;  //!< Whether the deformation must be applied.
Shinya Kitaoka 38fd86
                                   //! If false,
Shinya Kitaoka 120a6e
  //!< the original image should be displayed instead.
Shinya Kitaoka 120a6e
  TXshColumn *m_showOriginalColumn;  //!< As an exception to the above control,
Shinya Kitaoka 38fd86
                                     //! one specific
Shinya Kitaoka 120a6e
  //!< mesh column can be dispensed from deforming.
Shinya Kitaoka 120a6e
  //!< This is typically used in PlasticTool's 'build mode'.
Shinya Kitaoka 120a6e
  bool m_drawMeshesWireframe;  //!< Whether any mesh wireframe should be
Shinya Kitaoka 38fd86
                               //! displayed
Shinya Kitaoka 120a6e
  bool m_drawRigidity;         //!< Whether mesh rigidities should be displayed
Shinya Kitaoka 120a6e
  bool m_drawSO;               //!< Whether mesh vertices' stacking order should
Shinya Kitaoka 120a6e
                               //!< be displayed
Toshihiro Shimizu 890ddd
public:
Shinya Kitaoka 120a6e
  PlasticVisualSettings()
Shinya Kitaoka 120a6e
      : m_applyPlasticDeformation(true)
Shinya Kitaoka 120a6e
      , m_showOriginalColumn()
Shinya Kitaoka 120a6e
      , m_drawMeshesWireframe(true)
Shinya Kitaoka 120a6e
      , m_drawRigidity(false)
Shinya Kitaoka 120a6e
      , m_drawSO(false) {}
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
#endif  // PLASTICVISUALSETTINGS_H