Files
envi-code/SourceCode/Code2026/tg_shs/inc/geo/TTempZoomWindow.h
T

50 lines
1.2 KiB
C++
Raw Normal View History

2026-10-04 00:04:20 +08:00
//-----------------------------------------------------------------------------+
2026-09-28 15:28:50 +08:00
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
// = FileName : TTempZoomWindow.h
// = Version : ver2.0
// = Author : xlc
// = CreateDate : 2002-09-09
2026-10-04 00:04:20 +08:00
// = Description: 类的声明
2026-09-28 15:28:50 +08:00
// = Maintainers:
//
//-----------------------------------------------------------------------------+
#ifndef _TTEMPZOOMWINDOW_H_
#define _TTEMPZOOMWINDOW_H_
#ifndef _TADSGEPOINT3D_H_
#include "TADSGePoint3d.h"
#endif
2026-10-04 00:04:20 +08:00
// 根据需要临时执行ZOOM, 并在析构时恢复视图
2026-09-28 15:28:50 +08:00
class GEOAPI TTempZoomWindow
{
public:
TTempZoomWindow(const TADSGePoint3d &ptMin, const TADSGePoint3d &ptMax);
~TTempZoomWindow();
protected:
TADSGePoint3d m_ptLowViewCorner, m_ptUpViewCorner;
BOOL m_bRestoreView;
};
inline TTempZoomWindow::TTempZoomWindow(const TADSGePoint3d &ptMin, const TADSGePoint3d &ptMax)
{
GetScreenCorner(m_ptLowViewCorner, m_ptUpViewCorner);
m_bRestoreView = (AssureInCurrentView(ptMin, ptMax) == Acad::eOk);
}
inline TTempZoomWindow::~TTempZoomWindow()
{
if (m_bRestoreView)
{
2026-10-04 00:04:20 +08:00
ArxZoom(m_ptLowViewCorner, m_ptUpViewCorner); //恢复视口
2026-09-28 15:28:50 +08:00
}
}
#endif