#include "stdafx.h" #include "SigmaView.h" #include "ActionAddItem.h" ////////////////////////////////////////////////////////////////////////// // Ìí¼ÓÒ»ÌõÏß ////////////////////////////////////////////////////////////////////////// extern "C" __declspec(dllexport) int AddCurve(CSigmaView* pView, double arrayXY[], int ptCount, LPCTSTR curveName, LPCTSTR layerName) { CXy * pXy = pView->m_pDoc->m_pXy; CLayer * pLayer = pXy->FindAddLayer(layerName); CPointList PointList; for (int i = 0; i < ptCount; i++) { dfPoint point; point.x0 = arrayXY[i * 2]; point.y0 = arrayXY[i * 2 + 1]; PointList.AddTail(point); } CCurveEx* pCurve = new CCurveEx(); pCurve->SetPoints(PointList, 2); pCurve->SetName(curveName); POSITION pos = pXy->AddElement(pCurve, DOUBLEFOX_CURVE); COne* pOne = pXy->GetAt(pos); pOne->SetLayer(pLayer); pView->m_pDoc->SetActionItem(new CActionAddItem(pView->m_pDoc, IDS_STRING_ACTION_ADD, pOne)); PointList.RemoveAll(); return 1; }