/********************************************************************/
/* Copyright (c) 2019 System fugen G.K. and Yuzi Mizuno          */
/* All rights reserved.                                             */
/********************************************************************/
/********************************************************************/
#if !defined(AFX_GLMESHPROPPANE_H__DA9D776A_FBC1_4275_9062_C57A0A71F126__INCLUDED_)
#define AFX_GLMESHPROPPANE_H__DA9D776A_FBC1_4275_9062_C57A0A71F126__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "resource.h"
#include "GLPropPanel.h"

/////////////////////////////////////////////////////////////////////////////
// CGLMeshPropPane ダイアログ

class CGLMeshPropPane : public CGLPropPane
{
	// 非 DDX/DDV パラメータ
private:
	int m_nIsoCurveMin, m_nIsoCurveMax; ///< アイソカーブ数の最小/最大値

// コンストラクション
public:
	CGLMeshPropPane(fugenDoc* pDoc);

// ダイアログ データ
	//{{AFX_DATA(CGLMeshPropPane)
	enum { IDD = IDD_PROP_MESH };

	// アイソカーブ表示
	BOOL m_bShowIsoCurve;///< アイソカーブ表示On/Off
	CSpinButtonCtrl m_spnIsoCurve; ///< アイソカーブ数のスピン
	int m_nIsoCurve; ///< アイソカーブ数 数値入力ダイアログ

	// レンダリングメッシュの質
	double m_dCurve; ///< 曲線トレランス
	double m_dSurf; ///< 曲面トレランス
	double m_dEdgeLenMax; ///< 最大エッジ長
	//}}AFX_DATA

// オーバーライド
	//{{AFX_VIRTUAL(CGLMeshPropPane)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);
	//}}AFX_VIRTUAL
	

// インプリメンテーション
protected:

	//{{AFX_MSG(CGLMeshPropPane)
	afx_msg void OnClickedShowIsoCurve();
	void OnButtonPropMeshDefault();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

	virtual void LoadUserProf();
	virtual BOOL UpdateUserProf();
	virtual void ResetToDefaultUserProf();

	virtual void LoadDocContext();
	virtual BOOL UpdateDocContext();
	virtual void ResetToDefaultDocContext();
};

#endif // !defined(AFX_GLMESHPROPPANE_H__DA9D776A_FBC1_4275_9062_C57A0A71F126__INCLUDED_)
