#include "stdafx.h" #include "DbEquipment.h" #include "AcDbObjectPtr.h" #include "DbPipe.h" #include "FeedAccessoryDlg.h" #include "SelectBlkDlg.h" #include "SanitaryDangDlg.h" #include "PickEntSet.h" #include "TBlockEdJig.h" #include "TImageDrawDC.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif extern CString GetLayerNames(const TCHAR * szTgSubName); extern AcDbObjectId InitLayer(const TCHAR *szLayer, AcDbDatabase *pDb = NULL); ///////////////////////////////////////////////////////////////////////////// // CFeedAccessoryDlg dialog XPoint GetAngPoint(XPoint ptstart, double nAngle) { double nEle = ptstart.z; ptstart.z =0; XPoint ptRet, ptend; int itype = -1; double dAng(0); nAngle = GlobalFunc::Wcs2Ucs(nAngle); double ntmp2 = GlobalFunc::Radian2Angle(nAngle); while(1){ struct resbuf pointbuf; int iRet = ads_grread(5, &itype, &pointbuf);//得到动态点pointbuf ads_point_set(pointbuf.resval.rpoint, ptend);//ptend动态点,也就是引出支线的结束点 ptend.z = 0; double dOAng = ads_angle(ptstart, ptend) - nAngle; double dDis = ads_distance(ptstart, ptend); dDis = fabs(dDis * cos(dOAng)); //指出标注的引出方向 if(dOAng < -0.001) dOAng += 2*PI; else if(dOAng > (PI*2 + 0.001)) dOAng -= PI*2; double ntmp = GlobalFunc::Radian2Angle(dOAng); if(dOAng<=PI && dOAng>PI/2){ dAng = nAngle + PI; } else if(dOAng>=0 && dOAngPI/2*3){ dAng = nAngle; } else if(dOAng>=PI && dOAng vOsMode(_T("OSMODE"), nOsMode); CFeedAccessoryDlg dlg(acedGetAcadFrame()); { CTemporaryResourceOverride vTemp; dlg.Create(IDD_ACCESSORY_FEED, acedGetAcadFrame()); dlg.ShowWindow(SW_SHOW); acedGetAcadDwgView()->SetFocus(); } extern TCHAR *LAY_EQ_FEED; XPoint ptIns, ptInsEq; InitLayer(LAY_EQ_FEED); RBList rbMaskPipe(RTDXF0, _T("ATS_PIPE"), 8, GetLayerNames(_T("管")), NULL); g_Option::instance().g_nInsBlkRotate = 0; double nScale = 1; while(1){ dlg.UpdateData(); if(dlg.m_iType == 0) g_Option::instance().g_csInsBlkName = (const TCHAR*)xsTmp1; else if(dlg.m_iType == 1) g_Option::instance().g_csInsBlkName = (const TCHAR*)xsTmp2; else if(dlg.m_iType == 2) g_Option::instance().g_csInsBlkName = (const TCHAR*)xsTmp3; else if(dlg.m_iType == 3) g_Option::instance().g_csInsBlkName = (const TCHAR*)xsTmp4; else if(dlg.m_iType == 4) g_Option::instance().g_csInsBlkName = (const TCHAR*)xsTmp5; else if (dlg.m_iType == 5)//zxl 2012.04.13 add { g_Option::instance().g_csInsBlkName = (const TCHAR*)xsTmp8; nScale = g_Option::instance().g_nFeedCircleScale; } TBlockEdJig jig(g_Option::instance().g_csInsBlkName, ptIns, nScale); jig.SetPrompt(_T("\n请指定附件在管线上的插入点[旋转90度(A)/放大(E)/缩小(D)]<退出>:")); jig.SetKeyword(_T("A E D R")); int nKeyIndex = 0; int nRetCode = jig.DoIt(&nKeyIndex); if(nRetCode == RTNORM){ dlg.UpdateData(); ptIns = jig.GetPickPoint(); ptInsEq = ptIns; AcDbObjectId recordId = GlobalFunc::GetBlockIdFromString(g_Option::instance().g_csInsBlkName); PickSet ss(SS_FREE); XPoint ptUcs = GlobalFunc::Wcs2Ucs(ptIns); GlobalFunc::GetPointPickSet(ptUcs, ss, rbMaskPipe, 20); if(ss.Length() == 0){ GlobalFunc::GetPointPickSet(ptUcs, ss, rbMaskPipe, 50); } double nAng = g_Option::instance().g_nInsBlkRotate; Entity ent1; XCurveSegment seg; CDbPipe *pNewPipe3; if(ss.Length() == 1){ //管件插入在管线上 Entity entPipe = ss[0L]; OPENOBJ_BEGIN(entPipe, AcDb::kForRead, CDbPipe, pPipe); pNewPipe3 = (CDbPipe *)pPipe->clone(); XCurveSegment seg1(pPipe->StartPoint(), pPipe->EndPoint(), 0); seg = seg1; seg.ProjectToMe(ptIns, ptIns); ptInsEq = ptIns; nAng = ads_angle(seg.GetEndPoint(), seg.GetStartPoint()); XPoint ptPickPipe; OPENOBJ_END(); } else{ g_Option::instance().adsout << _T("\n给水附件没有插在支管上"); continue; } dlg.UpdateData(); if((ptIns == seg.EndPoint() || ptIns == seg.StartPoint())){//接在管末端 CString csBlkName; // if(dlg.m_iType == 0) // csBlkName = (const TCHAR*)xsTmp1; // else if(dlg.m_iType == 3) // csBlkName = (const TCHAR*)xsTmp4; recordId = GlobalFunc::GetBlockIdFromString(g_Option::instance().g_csInsBlkName); if(ptIns == seg.EndPoint()) nAng = ads_angle(seg.GetStartPoint(), seg.GetEndPoint()) + PI/2; else if(ptIns == seg.StartPoint()) nAng = ads_angle(seg.GetEndPoint(), seg.GetStartPoint()) + PI/2; CDbEquipment *pEquip = new CDbEquipment; pEquip->SetBlock2d(recordId); pEquip->SetLocation(ptInsEq); pEquip->SetHidePipe(FALSE); pEquip->SetAngle(nAng); pEquip->SetSpare(dlg.m_dQ); pEquip->SetScale(nScale); pEquip->SetDang(dlg.m_nDang); pEquip->SetSysBlock((const TCHAR*)dlg.m_csSysBlk); pEquip->setLayer(LAY_EQ_FEED); pEquip->setColor(AcCmColor()); //随层 GlobalFunc::AddToCurrentSpace(pEquip, Adesk::kTrue); continue; } double nAngCross(0); XPoint ptend, ptPipe; int itype = -1; ads_prompt(_T("\n请选择插入方向<确定>")); while(1){ struct resbuf pointbuf; int iRet = ads_grread(5, &itype, &pointbuf); ads_point_set(pointbuf.resval.rpoint, ptend); ptend = GlobalFunc::Ucs2Wcs(ptend); if(itype != 5 && itype != 3 && itype != 11) break; dlg.UpdateData(TRUE); AcGeVector3d vectBase(seg.EndPoint().x - seg.StartPoint().x, seg.EndPoint().y - seg.StartPoint().y, 0); AcGeVector3d vectTmp(ptend.x - ptIns.x, ptend.y - ptIns.y, 0); double dAng2 = vectBase.angleTo(vectTmp, AcGeVector3d::kZAxis); if(dAng2 < PI) ads_polar(ptIns, nAng - PI/2, dlg.m_nDist, ptPipe); else{ ads_polar(ptIns, nAng + PI/2, dlg.m_nDist, ptPipe); } ads_redraw(NULL, 1); //zxl 2012.08.10 add double dElev = 0.0; AcGePoint3d ptOldPipe = ptPipe; AcGePoint3d ptOldIns = ptIns; if (dlg.GetElevType(dElev) == 0)// 随支管 { dElev = ptPipe.z; } else// 指定标高 { ptPipe.z = dElev; } if(itype == 3 || itype == 11){ if(dlg.m_nDist > 10){ CDbPipe *pPipe = (CDbPipe *)pNewPipe3->clone(); if (dlg.m_nDimNewPipe == 1 && pPipe->IsDrawLabel()) { pPipe->EnableDrawLabel(FALSE); pNewPipe3->EnableDrawLabel(FALSE); } if(!g_Option::instance().g_bStandPipeArc)//传统扣弯 { pPipe->SetRadiusIn(-2); } else { pPipe->SetRadiusIn(0); } // 垂直连接 if (dlg.GetLinkType() == 1) { ptPipe.z = dElev; ptIns.z = dElev; if (ptIns.Distance(ptOldIns) > 0.001) { pPipe->SetPoints(ptOldIns, ptIns); GlobalFunc::AddToCurrentSpace(pPipe, Adesk::kTrue); } pNewPipe3->SetPoints(ptIns, ptPipe); } else { if (ptPipe.Distance(ptOldPipe) > 0.001) { pPipe->SetPoints(ptPipe, ptOldPipe); GlobalFunc::AddToCurrentSpace(pPipe, Adesk::kTrue); } pNewPipe3->SetPoints(ptIns, ptOldPipe); } GlobalFunc::AddToCurrentSpace(pNewPipe3, Adesk::kTrue); } else delete pNewPipe3; if(dAng2 > PI) nAngCross = nAng + PI; else nAngCross = nAng; break; } else{ XPoint ptTmpUcs1 = GlobalFunc::Wcs2Ucs(ptIns); XPoint ptTmpUcs2 = GlobalFunc::Wcs2Ucs(ptPipe); ads_grdraw(ptTmpUcs1, ptTmpUcs2, -1, 0); } } CDbEquipment *pEquip = new CDbEquipment; pEquip->SetBlock2d(recordId); pEquip->SetLocation(ptPipe); pEquip->SetHidePipe(FALSE); pEquip->SetSpare(dlg.m_dQ); pEquip->SetAngle(nAngCross); if(_tcsicmp(dlg.m_csSysBlk, _T("TWTSYS(00000005)")) == 0){//普通水龙头 if(g_Option::instance().g_bBlk3D){ if(GlobalFunc::LoadDwbBlock(csDwb, _T("00000364"), xsTmp6) != RTNORM)//3d水龙头 break; pEquip->SetBlock3d(GlobalFunc::GetBlockIdFromString(xsTmp6)); } } else if(g_Option::instance().g_bBlk3D && _tcsicmp(dlg.m_csSysBlk, _T("TWTSYS(00000352)")) == 0 ||_tcsicmp(dlg.m_csSysBlk, _T("TWTSYS(00000014)")) == 0){//小便器自闭式冲洗阀 if(GlobalFunc::LoadDwbBlock(csDwb, _T("00000368"), xsTmp7) != RTNORM)//3d自闭式冲洗阀 break; pEquip->SetBlock3d(GlobalFunc::GetBlockIdFromString(xsTmp7)); } else if(g_Option::instance().g_bBlk3D && _tcsicmp(dlg.m_csSysBlk, _T("TWTSYS(00000293)")) == 0){//大便器自闭式冲洗阀 if(GlobalFunc::LoadDwbBlock(csDwb, _T("00000369"), xsTmp7) != RTNORM)//3d自闭式冲洗阀 break; pEquip->SetBlock3d(GlobalFunc::GetBlockIdFromString(xsTmp7)); } pEquip->SetScale(nScale); pEquip->SetDang(dlg.m_nDang); pEquip->SetSysBlock((const TCHAR*)dlg.m_csSysBlk); pEquip->setLayer(LAY_EQ_FEED); pEquip->setColor(AcCmColor()); //随层 GlobalFunc::AddToCurrentSpace(pEquip, Adesk::kTrue); ads_redraw(NULL, 1); //TPipePerDocData *pData = GetCurPipeDocData(); //pData->ApplyUpdates(); } else if(nRetCode == RTKWORD){ if(nKeyIndex == 0) g_Option::instance().g_nInsBlkRotate += PI/2; else if(nKeyIndex == 1) nScale += 1; else if(nKeyIndex == 2 && jig.m_nSacle > 1) nScale -= 1; continue; } else break; } g_Option::instance().g_nInsBlkRotate = 0; dlg.DestroyWindow(); } int CFeedAccessoryDlg::m_iType = 0; int CFeedAccessoryDlg::m_iElevType = 0; int CFeedAccessoryDlg::m_iLinkType = 0; double CFeedAccessoryDlg::m_dElev = 0.0; IMPLEMENT_DYNAMIC(CFeedAccessoryDlg, CDialog) double CFeedAccessoryDlg::m_nDist = 200; int CFeedAccessoryDlg::m_nDimNewPipe = 0; CFeedAccessoryDlg::CFeedAccessoryDlg(CWnd* pParent /*=NULL*/) : CDialog(CFeedAccessoryDlg::IDD, pParent) { //{{AFX_DATA_INIT(CFeedAccessoryDlg) m_nDang = 0.5; m_dQ = 0.1; //}}AFX_DATA_INIT m_csSysBlk1 = _T("TWTSYS(00000005)"); m_csSysBlk2 = _T("TWTSYS(00000297)"); m_csSysBlk3 = _T("TWTSYS(00000017)"); m_csSysBlk4 = _T("TWTSYS(00000200)"); m_csSysBlk5 = _T("TWTSYS(00000492)"); m_csSysBlk6 = _T("TWTSYS(00000005)");//zxl 2012.04.13 add m_bKeepFocus = TRUE; } void CFeedAccessoryDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CFeedAccessoryDlg) DDX_Text(pDX, IDC_EDIT_DANG, m_nDang); DDX_Text(pDX, IDC_EDIT_Q, m_dQ); DDX_Radio(pDX, IDC_RADIO_TYPE1, m_iType); DDX_Radio(pDX, IDC_RADIO_WITHPIPE, m_iElevType); DDX_Text(pDX, IDC_EDIT_LEN2, m_nDist); DDX_Text(pDX, IDC_EDIT_ELEV, m_dElev); //}}AFX_DATA_MAP DDX_Radio(pDX, IDC_RADIO_DIM, m_nDimNewPipe); } BEGIN_MESSAGE_MAP(CFeedAccessoryDlg, CDialog) //{{AFX_MSG_MAP(CFeedAccessoryDlg) ON_MESSAGE(WM_ACAD_KEEPFOCUS,onAcadKeepFocus) ON_WM_PAINT() ON_WM_CLOSE() ON_BN_CLICKED(IDC_RADIO_TYPE1, OnRadioType1) ON_BN_CLICKED(IDC_RADIO_TYPE2, OnRadioType2) ON_BN_CLICKED(IDC_RADIO_TYPE3, OnRadioType3) ON_BN_CLICKED(IDC_RADIO_TYPE4, OnRadioType4) ON_BN_CLICKED(IDC_PREVIEW2, OnPreview2) ON_BN_CLICKED(IDC_BUTTON_DANG, OnButtonDang) ON_EN_SETFOCUS(IDC_EDIT_LEN2, OnSetfocusEditLen2) ON_EN_KILLFOCUS(IDC_EDIT_LEN2, OnKillfocusEditLen2) ON_BN_CLICKED(IDC_RADIO_TYPE5, OnRadioType5) ON_BN_CLICKED(IDC_RADIO_TYPE6, OnRadioType6) ON_BN_CLICKED(IDC_RADIO_WITHPIPE, OnRadioWithPipe) ON_BN_CLICKED(IDC_RADIO_ELEV, OnRadioElev) ON_BN_CLICKED(IDC_STATIC_PIC1, OnStaticPic1) ON_BN_CLICKED(IDC_STATIC_PIC2, OnStaticPic2) //}}AFX_MSG_MAP ON_BN_CLICKED(IDC_RADIO_DIM, &CFeedAccessoryDlg::OnBnClickedRadioDim) ON_BN_CLICKED(IDC_RADIO_NODIM, &CFeedAccessoryDlg::OnBnClickedRadioNodim) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CFeedAccessoryDlg message handlers BOOL CFeedAccessoryDlg::OnInitDialog() { CDialog::OnInitDialog(); OpenSlide(); CheckElveType(); ChangePicBK(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CFeedAccessoryDlg::OnPaint() { CPaintDC dc(this); // device context for painting OpenSlide(); } void CFeedAccessoryDlg::OnClose() { CDialog::OnClose(); acedPostCommand(_T("\33\33")); } LONG_PTR CFeedAccessoryDlg::onAcadKeepFocus(UINT_PTR, LONG_PTR) { return m_bKeepFocus; } void CFeedAccessoryDlg::OpenSlide() { UpdateData(TRUE); CWnd *pImageBox1 = GetDlgItem(IDC_PREVIEW1); CWnd *pImageBox2 = GetDlgItem(IDC_PREVIEW2); //zxl 2012.08.10 add CWnd *pPic1 = GetDlgItem(IDC_STATIC_PIC1); CWnd *pPic2 = GetDlgItem(IDC_STATIC_PIC2); if (pPic1 != NULL) { GlobalFunc::DrawSlide(_T("TWT(SPLJ)"), pPic1); } if (pPic2 != NULL) { GlobalFunc::DrawSlide(_T("TWT(CZLJ)"),pPic2); } CString csSldName, csSldName2; if(m_iType == 0){ csSldName = _T("TWTSYS(00000320)"); csSldName2 = m_csSysBlk1; } else if(m_iType == 1){ if(g_Option::instance().g_bIsFeedPoint) csSldName = _T("TWTSYS(00000002)"); else csSldName = _T("TWTSYS(00000225)"); csSldName2 = m_csSysBlk2; } else if(m_iType == 2){ csSldName = _T("TWTSYS(00000172)"); csSldName2 = m_csSysBlk3; } else if(m_iType == 3){ csSldName = _T("TWTSYS(00000210)"); csSldName2 = m_csSysBlk4; } else if(m_iType == 4){ csSldName = _T("TWTSYS(00000488)"); csSldName2 = m_csSysBlk5; } else if (m_iType == 5)//zxl 2012.04.13 add { csSldName = _T("TWTSYS(00000519)"); csSldName2 = m_csSysBlk6; } m_csSysBlk = csSldName2; GlobalFunc::DrawSlide((const TCHAR*)csSldName, pImageBox1); GlobalFunc::DrawSlide((const TCHAR*)csSldName2, pImageBox2); ChangePicBK(); } void CFeedAccessoryDlg::OnRadioType1() { OpenSlide(); UpdateData(FALSE); GlobalFunc::PostCommand(_T("R "), false); } void CFeedAccessoryDlg::OnRadioType2() { OpenSlide(); UpdateData(FALSE); GlobalFunc::PostCommand(_T("R "), false); } void CFeedAccessoryDlg::OnRadioType3() { OpenSlide(); UpdateData(FALSE); GlobalFunc::PostCommand(_T("R "), false); } void CFeedAccessoryDlg::OnRadioType4() { OpenSlide(); UpdateData(FALSE); GlobalFunc::PostCommand(_T("R "), false); } void CFeedAccessoryDlg::OnRadioType5() { OpenSlide(); UpdateData(FALSE); GlobalFunc::PostCommand(_T("R "), false); } void CFeedAccessoryDlg::OnRadioType6() { OpenSlide(); UpdateData(FALSE); GlobalFunc::PostCommand(_T("R "), false); } void CFeedAccessoryDlg::OnPreview2() { UpdateData(); CTemporaryResourceOverride vTemp; CSelectBlkDlg dlg; dlg.m_staticSlide.m_iRowNum = 4; dlg.m_staticSlide.m_iColNum = 4; dlg.m_csTkName = _T("TWTSYS"); if(m_iType == 2) dlg.m_csType = _T("淋浴头\\90度"); else dlg.m_csType = _T("给水点\\90度"); CWnd *pWnd = GetDlgItem(IDC_PREVIEW2); CRect rect; if(m_iType == 0) dlg.m_staticSlide.m_csCurRecord = m_csSysBlk1; else if(m_iType == 1) dlg.m_staticSlide.m_csCurRecord = m_csSysBlk2; else if(m_iType == 2) dlg.m_staticSlide.m_csCurRecord = m_csSysBlk3; else if(m_iType == 3) dlg.m_staticSlide.m_csCurRecord = m_csSysBlk4; else if (m_iType == 4) { dlg.m_staticSlide.m_csCurRecord = m_csSysBlk5; } else if (m_iType == 5)//zxl 2012.04.13 add { dlg.m_staticSlide.m_csCurRecord = m_csSysBlk6; } pWnd->GetWindowRect(&rect); dlg.m_ptBase = rect.TopLeft(); if(dlg.DoModal() == IDOK){ CString csRet = dlg.m_staticSlide.m_csCurRecord; XString xsTKName, xsRocord; GlobalFunc::SplitSlbName(csRet, xsTKName, xsRocord); csRet.Format(_T("%s(%s)"), dlg.m_csTkName, xsRocord); if(m_iType == 0) m_csSysBlk1 = csRet; else if(m_iType == 1) m_csSysBlk2 = csRet; else if(m_iType == 2) m_csSysBlk3 = csRet; else if(m_iType == 3) m_csSysBlk4 = csRet; else if (m_iType == 4) { m_csSysBlk5 = csRet; } else if (m_iType == 5)//zxl 2012.04.13 add { m_csSysBlk6 = csRet; } OpenSlide(); } } void CFeedAccessoryDlg::OnButtonDang() { CTemporaryResourceOverride vTemp; CSanitaryDangDlg dlg; if(dlg.DoModal() == IDOK && dlg.m_nRet > 0){ m_nDang = dlg.m_nRet; m_dQ = dlg.m_nRet2; UpdateData(FALSE); } } //void CFeedAccessoryDlg::OnFeedFree() //{ // UpdateData(TRUE); // CWnd *pWnd = GetDlgItem(IDC_EDIT_LEN2); // if(m_iFree == 0) // pWnd->EnableWindow(FALSE); // else // pWnd->EnableWindow(TRUE); // GlobalFunc::PostCommand(_T("R "), false); //} // //void CFeedAccessoryDlg::OnFeedFixup() //{ // UpdateData(TRUE); // CWnd *pWnd = GetDlgItem(IDC_EDIT_LEN2); // if(m_iFree == 0) // pWnd->EnableWindow(FALSE); // else // pWnd->EnableWindow(TRUE); // GlobalFunc::PostCommand(_T("R "), false); void CFeedAccessoryDlg::OnSetfocusEditLen2() { // m_bKeepFocus = TRUE; } void CFeedAccessoryDlg::OnKillfocusEditLen2() { // m_bKeepFocus = FALSE; // acedGetAcadDwgView()->SetFocus(); } void CFeedAccessoryDlg::CheckElveType() { UpdateData(TRUE); CWnd *pWnd = GetDlgItem(IDC_EDIT_ELEV); CWnd *pPic1 = GetDlgItem(IDC_STATIC_PIC1); CWnd *pPic2 = GetDlgItem(IDC_STATIC_PIC2); if (pWnd == NULL || pPic1 == NULL || pPic2 == NULL) { return; } if (m_iElevType == 0) { pWnd->EnableWindow(false); SetPicShowType(IDC_STATIC_PIC1, _T("TWT(SPLJ)"), false); SetPicShowType(IDC_STATIC_PIC2, _T("TWT(CZLJ)"), false); pPic1->EnableWindow(false); pPic2->EnableWindow(false); } else { pWnd->EnableWindow(true); pPic1->EnableWindow(true); pPic2->EnableWindow(true); ChangePicBK(); } } void CFeedAccessoryDlg::OnRadioWithPipe() { CheckElveType(); acedGetAcadDwgView()->SetFocus(); } void CFeedAccessoryDlg::OnRadioElev() { CheckElveType(); acedGetAcadDwgView()->SetFocus(); } void CFeedAccessoryDlg::OnStaticPic1() { m_iLinkType = 0; ChangePicBK(); } void CFeedAccessoryDlg::OnStaticPic2() { m_iLinkType = 1; ChangePicBK(); } void CFeedAccessoryDlg::SetPicShowType(int nID, const CString &strPicName, BOOL bIsSel) { CWnd* pImageBox = GetDlgItem(nID); if (pImageBox != NULL) { CDC* pDC = pImageBox->GetDC(); CRect rc; pImageBox->GetClientRect(&rc); TImageDrawDC* pImageDC = new TImageDrawDC; if (bIsSel) { pImageDC->InitDC(pDC, rc, RGB(255, 255, 255)); } else { pImageDC->InitDC(pDC, rc, GlobalFunc::GetAcadBackColor()); } pImageDC->PaintSlide(strPicName); pImageDC->SetDC(pDC); pImageBox->ReleaseDC(pDC); delete pImageDC; pImageDC = NULL; } } void CFeedAccessoryDlg::ChangePicBK() { if (m_iElevType == 0) { SetPicShowType(IDC_STATIC_PIC1, _T("TWT(SPLJ)"), false); SetPicShowType(IDC_STATIC_PIC2, _T("TWT(CZLJ)"), false); } else { if (m_iLinkType == 0) { SetPicShowType(IDC_STATIC_PIC1, _T("TWT(SPLJ)"), true); SetPicShowType(IDC_STATIC_PIC2, _T("TWT(CZLJ)"), false); } else { SetPicShowType(IDC_STATIC_PIC1, _T("TWT(SPLJ)"), false); SetPicShowType(IDC_STATIC_PIC2, _T("TWT(CZLJ)"), true); } } } int CFeedAccessoryDlg::GetLinkType() { return m_iLinkType; } int CFeedAccessoryDlg::GetElevType(double &dElev) { dElev = GlobalFunc::DocGetCurMeterUnitDraw() ? m_dElev : m_dElev * 1000; return m_iElevType; } void CFeedAccessoryDlg::OnBnClickedRadioDim() { acedGetAcadDwgView()->SetFocus(); } void CFeedAccessoryDlg::OnBnClickedRadioNodim() { acedGetAcadDwgView()->SetFocus(); }