37 lines
2.0 KiB
C++
37 lines
2.0 KiB
C++
// MediumStrongWenAndSch.h: interface for the CMediumStrongWenAndSch class.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_MEDIUMWENANDSCH_H__11AAA89F_5325_43C0_9124_2268FBA470A3__INCLUDED_)
|
|
#define AFX_MEDIUMWENANDSCH_H__11AAA89F_5325_43C0_9124_2268FBA470A3__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
#include "Medium.h"
|
|
|
|
class CMediumStrongWenAndSch : public CMedium
|
|
{
|
|
public:
|
|
CMediumStrongWenAndSch(int iAR);
|
|
virtual ~CMediumStrongWenAndSch();
|
|
|
|
virtual bool GenerateSptRecElecVal(int iEAmount, int* pMaxLevel, int* pPtAmount, CPtrArray* pSptRecArray);
|
|
virtual float CalculateCESptKVal(float fA, float fB, float fX, float fY);
|
|
virtual void CalculateSptPtLoc(int iMul, CSptRecord* pSptRecord); //计算脚本测点位置(iMul---in:倍数,pSptRecord---in:脚本记录)
|
|
virtual int GenSptRecLevel(int iA, int iB, int iM, int iN){ return iM - iA + (iN - iM - 1) / 2; } //计算脚本记录层数(iA---in:A,iB---in:B,iM---in:M,iN----in:N)
|
|
//温斯装置的中间点为MN的中点,由于MN之间的距离肯定为奇数,之间为,1,3,5,7,9
|
|
//那么iM + iN
|
|
virtual int GenSptRecPosInLevel(int iA, int iB, int iM, int iN){ return iM + (iN - iM) / 2; } //计算每层脚本记录位置(iA---in:A,iB---in:B,iM---in:M,iN----in:N)
|
|
virtual int GetMaxLevelByEAmount(int iEAmount); //通过电极总数取最大层数(iEAmount---in:电极总数)
|
|
// virtual void ReSortPoint(CPtrArray *f_ptr){return;}
|
|
// virtual void SetParamVal(const void* pVal){m_fSeprate = *((float*)pVal);}
|
|
// virtual void GetParamVal(void *pOutVal){*((float*)pOutVal) = m_fSeprate;}
|
|
virtual void CalculateTdPtLoc(const CRect& vRect, const int& iEAmount, int& iMaxLevel, CRect& lRect, int& iSmWidth, int& iSmHeight, CPtrArray* pTdRecArray);
|
|
virtual void ReSortPoint(CPtrArray *f_ptr);
|
|
int CMediumStrongWenAndSch::MOD(int x, int y);
|
|
};
|
|
|
|
#endif // !defined(AFX_MEDIUMWENANDSCH_H__11AAA89F_5325_43C0_9124_2268FBA470A3__INCLUDED_)
|