⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myeditview.cpp

📁 地理信息系统(GIS)相关.子图符号顺延.
💻 CPP
📖 第 1 页 / 共 3 页
字号:
{
	RegUnion();
}

void CMyEditView::OnReginter() 
{
	RegInter();
}

void CMyEditView::OnRegsub() 
{
	RegSub();
}

void CMyEditView::OnRegindent() 
{
	RegIdent();
}

void CMyEditView::Onbuffer() 
{
	BufferAnalyse();
}

void CMyEditView::OnSelectline() 
{
	SelectLine();
}

void CMyEditView::OnSelectpoint() 
{
	SelectPoint();
}

void CMyEditView::OnSelectregion() 
{
	SelectRegion();
}

void CMyEditView::OnSelectgraphics() 
{
	SelectGraphics();
}

//剪贴板操作
void CMyEditView::OnCopy() 
{
	_CopyToCbAi(GetPool(),GetPoolNum());
}

void CMyEditView::OnCut() 
{
	_CutToCbAi(GetPool(),GetPoolNum());
	_UpdateWindow();
}

void CMyEditView::OnPaste() 
{
	_PasteToMapGisAi(GetCurrentPntArea(),GetCurrentLinArea(),GetCurrentRegArea());	
	_UpdateWindow();
}

void CMyEditView::OnCreatelabel() 
{
	CreateLabelFile();
}

void CMyEditView::OnAutolinklin() 
{
	AutoLinkAllLin();
}

//----------------------------//
//--------菜单状态函数---------//
//----------------------------//
void CMyEditView::OnUpdateInstmLnlin(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateIndotLnlin(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateIn0Lnarc(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateIn0Lncir(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateIn0Lrect(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateIn1Lnarc(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateIn1Lncir(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateIn1Lrect(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateInEllips(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateInPtarc(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateInPtcir(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateInPtstr(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateInPtsub(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateCrossLnlin(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

void CMyEditView::OnUpdateCopy(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable(GetPoolNum() > 0);
}

void CMyEditView::OnUpdateCut(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable(GetPoolNum() > 0);
}

void CMyEditView::OnUpdatePaste(CCmdUI* pCmdUI) 
{
	pCmdUI->Enable(_IsMapgisClipBoardAvailable());
}

/*
void CMyEditView::OnUpdateSetTicPoint(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	pCmdUI->Enable((GetDigObj() != NULL)&&(_dgCheckTabletInited(GetDigObj())));
}

*/

void CMyEditView::OnMakegraphicsregion() 
{
	MakeGraphRegion();	
}

//-----------------------//
//-----自己定义的函数----//
//-----------------------//
//显示工作区中的文件名称
void CMyEditView::UpdateAreaName()
{
	char str[1000];
	char name[_MAX_FNAME];
	CString FName;
	
	str[0]=0;
	if (PAi)
	{   
	   name[0]=0;
	   _GetAreaFileName1(PAi,name,_MAX_FNAME);

	   if (name[0])
	   {
		  lstrcat(str,name);
		  
		  //添加后缀名
		  FName=name;
	      if (FName.Find(".",0)<0)
			  lstrcat(str,".wt");

          lstrcat(str," /");
	   }
	}
	 
	if (LAi)
	{  
	   name[0]=0;
	   _GetAreaFileName1(LAi,name,_MAX_FNAME);

	   if (name[0])
	   {
          lstrcat(str,name);

		  //添加后缀名
		  FName=name;
	      if (FName.Find(".",0)<0)
			  lstrcat(str,".wl");

		  lstrcat(str," /");
	   }
	}

	if (RAi)
	{  
	   name[0]=0;
	   _GetAreaFileName1(RAi,name,_MAX_FNAME);

	   if (name[0])
	   {  
		  lstrcat(str,name);
		  
		  //添加后缀名
		  FName=name;
	      if (FName.Find(".",0)<0)
			  lstrcat(str,".wp");

		  lstrcat(str," /");
	   }
	}

	//修改标题
    GetDocument()->SetTitle(str);
}

//------自定义操作------//
//--删除点--
void CMyEditView::OnMyDelpnts() 
{
	BaseGisTool *extTool;

	extTool=new CDelGroupPointTool(this);

	SetExtTool(extTool);
}

void CMyEditView::OnMyUndo() 
{
	Undo();	
}
int xx=0;
void CMyEditView::OnSub() 
{
short ai=GetEditArea(PNT);
	    long       i,pntN;

    short      len;

    PNT_INFO inf;

    D_DOT    xy;

    char      *dat;

        

_GetPntNum(ai,&i,&pntN);   //取点数
Czitu zitu;
zitu.DoModal();
xx=zitu.m_zitu;
        for(i=1;i<pntN;i++)

  {

  if(_GetPnt(ai,i,&xy,&dat,&len,&inf)<=0)

     continue;

  switch(inf.type)

      {



      case PNT_SUB:

           inf.info.sub.subno=inf.info.sub.subno+xx;//处理子图
_UpdatePntInfo(ai,i,&inf);

          break;


      default:    break;

      }

  }
_UpdateWindow();
}
int yy=0;
void CMyEditView::OnXian() 
{
	short ai=GetEditArea(LIN);
long i,linN;
long len;
LIN_INFO linf;
D_DOT *lxy;
   _GetLinNum(ai,&i,&linN); //取线实体数,i返回逻辑数,linN返回物理数
CXIANX xianx;
xianx.DoModal();
yy=xianx.m_xianx;
   for(i = 1;i < linN; i++)
   {
      if(_GetLin(ai,i,&lxy,&len,&linf) <= 0)
        continue;
      //处理线实体代码

{
	linf.ltp=linf.ltp+yy;
	_UpdateLinInfo(ai,i,&linf);
}
   }
	_UpdateWindow();



}

void CMyEditView::OnHua() 
{
		short ai=GetEditArea(REG);
long i,linN;
long len;
REG_INFO rinf;
long *rdat; 
   _GetRegNum(ai,&i,&linN); //取线实体数,i返回逻辑数,linN返回物理数
   int zz=0;
   Chua hua;
   hua.DoModal();
   zz=hua.m_huan;
   for(i = 1;i < linN; i++)
   {
      if(_GetReg(ai,i,&rdat,&len,&rinf) <= 0)
        continue;
      //处理线实体代码

{
	rinf.patno=rinf.patno+zz;
_UpdateRegInfo(ai,i,&rinf);
}
   }
		_UpdateWindow();
}

⌨️ 快捷键说明

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