你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 图形图象处理与游戏编程
Visual C++图形编辑“点-线”联动(八)
 

CDrawNode* pDrawNode=(CDrawNode*)pView->GetDocument()->m_objects.GetNext(circlepos);

if(pDrawNode!=NULL)

{

if(nIndex==pDrawNode->GetObjIndex())

{//计算箭线的新位置

if(abs(length)<abs(width)&&width<0)

deltarect.TopLeft()=pDrawNode->GetHandle(4);

if(abs(length)<abs(width)&&width>0)

deltarect.TopLeft()=pDrawNode->GetHandle(8);

if((abs(length)>abs(width)&&width>0&&length<0)||    (abs(length)>abs(width)&&width<0&&length<0))

    deltarect.TopLeft()=pDrawNode->GetHandle(6);

if((abs(length)>abs(width)&&length>0&&width>0)||

    (abs(length)>abs(width)&&length>0&&width<0))

    deltarect.TopLeft()=pDrawNode->GetHandle(2);                                    }}i++;}}}

    pDrawObj->MoveTo(deltarect,pView);

    }

    if(Index==pDrawObj->m_BackConnect)

    {//节点是箭线终节点

        CRect deltarect=pDrawObj->m_position;

        deltarect.TopLeft()+=delta;

        int length=deltarect.top-deltarect.bottom;

        int width=deltarect.left-deltarect.right;

        if(abs(length)<abs(width)&&width<0)

                                        deltarect.TopLeft()=pDrawCircle->GetHandle(4);

    if(abs(length)<abs(width)&&width>0)

    deltarect.TopLeft()=pDrawCircle->GetHandle(8);

    if((abs(length)>abs(width)&&width>0&&length<0)||    (abs(length)>abs(width)&&width<0&&length<0))

    deltarect.TopLeft()=pDrawCircle->GetHandle(6);

    if((abs(length)>abs(width)&&length>0&&width>0)||

    (abs(length)>abs(width)&&length>0&&width<0))

    deltarect.TopLeft()=pDrawCircle->GetHandle(2);

    int nIndex=pDrawObj->m_ForeConnect;
  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089