contour.h

来自「随着计算机信息技术的飞速发展」· C头文件 代码 · 共 56 行

H
56
字号
// contour.h : Declaration of the Ccontour

#ifndef __CONTOUR_H_
#define __CONTOUR_H_

#include "resource.h"       // main symbols
#include "allcontour.h"

/////////////////////////////////////////////////////////////////////////////
// Ccontour
class ATL_NO_VTABLE Ccontour : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<Ccontour, &CLSID_contour>,
	public IDispatchImpl<Icontour, &IID_Icontour, &LIBID_COM_EXLib>
{
public:
	Ccontour()
	{
		incZ = 0;
		startZ = 0;
		endZ = 0;
	}

DECLARE_REGISTRY_RESOURCEID(IDR_CONTOUR)

DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(Ccontour)
	COM_INTERFACE_ENTRY(Icontour)
	COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()

// Icontour
public:
	STDMETHOD(InitialContour)(/*[in]*/ LPCSTR filename);
	STDMETHOD(GetSegCountOf)(/*[in]*/ long nContourIndex, /*[out,retval]*/ long * nSegCount);
	STDMETHOD(GetPointsOf)(/*[in]*/ long nContourIndex, /*[in]*/ long nSegIndex, /*[out,ref]*/ double * pPointsX, /*[out,ref]*/ double * pPointsY);
	STDMETHOD(GetPointsCountOf)(/*[in]*/ long nContourIndex,/*[in]*/ long nSegIndex,/*[out,retval]*/ long * nPointsCount);
	STDMETHOD(GetContourValueOf)(/*[in]*/ long nContourIndex, /*[out,retval]*/ double *Z);
	STDMETHOD(GetContourCount)(/*[out, retval]*/ long * nCount);
	STDMETHOD(get_endZ)(/*[out, retval]*/ double *pVal);
	STDMETHOD(put_endZ)(/*[in]*/ double newVal);
	STDMETHOD(get_incZ)(/*[out, retval]*/ double *pVal);
	STDMETHOD(put_incZ)(/*[in]*/ double newVal);
	STDMETHOD(get_startZ)(/*[out, retval]*/ double *pVal);
	STDMETHOD(put_startZ)(/*[in]*/ double newVal);

	double incZ;	// 下一条等值线与前一条等值线之间的间距
	double startZ;
	double endZ;
	CTriangulate m_t;
	CAllContour m_allcon;
};

#endif //__CONTOUR_H_

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?