| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 | #include "stdafx.h"#include "OTSFieldDataClr.h"namespace OTSCLRINTERFACE {	using namespace System::Drawing;		COTSFieldDataClr::COTSFieldDataClr()													// constructor	{		mFieldData =new COTSFieldDataPtr( new COTSFieldData());	}		COTSFieldDataClr::COTSFieldDataClr(COTSFieldDataPtr a_pOTSFieldData)										// copy constructor	{					mFieldData = new COTSFieldDataPtr(a_pOTSFieldData);							}	COTSFieldDataClr::!COTSFieldDataClr()	{		if (mFieldData != nullptr)		{			delete mFieldData;			mFieldData = nullptr;		}	}	COTSFieldDataClr::~COTSFieldDataClr()	{		if (mFieldData != nullptr)		{			delete mFieldData;			mFieldData = nullptr;		}	}		COTSFieldDataPtr COTSFieldDataClr::GetOTSFieldDataPtr()	{				return *mFieldData;	}		System::Drawing::Point^ COTSFieldDataClr::GetPosition()	{		 return gcnew System::Drawing::Point(mFieldData->get()->GetPosition().x, mFieldData->get()->GetPosition().y); 	}	void COTSFieldDataClr::SetPosition(int x, int y)	{				auto p1 = CPoint(x, y); 		mFieldData->get()->SetPosition(p1); 	}	void COTSFieldDataClr::SetOTSRect(double left, double top, double right, double bottom)	{		COTSRect rec(left, top, right, bottom);		mFieldData->get()->SetOTSRect(rec);	}	COTSParticleListClr ^ COTSFieldDataClr::GetParticleList()	{		COTSParticleListClr ^ plist = gcnew COTSParticleListClr();		auto particles = mFieldData->get()->GetParticleList();		for each(auto p in particles)		{			plist->Add( gcnew COTSParticleClr(p));		}		return plist;	}	void COTSFieldDataClr::SetParticleList(COTSParticleListClr^ a_listParticles)	{		int nSize = (int)a_listParticles->Count;		COTSParticleList ps;		for (int i = 0; i < nSize; i++)		{			ps.push_back (a_listParticles[i]->GetOTSParticlePtr());		}		mFieldData->get()->SetParticleList(ps);	}		}
 |