Files
envi-code/SourceCode/Code2026/tg_shs/inc/pipebase/TTempZoom.h
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

66 lines
1.4 KiB
C++

#ifndef _TTEMPZOOM_H__
#define _TTEMPZOOM_H__
#if _MSC_VER > 1000
#pragma once
#endif
#ifdef _TCHPIPEBASE_
#define DLLIMPEXP __declspec(dllexport)
#else
#ifdef _TCHPIPEBASE_COM_
#define DLLIMPEXP
#else
#define DLLIMPEXP __declspec(dllimport)
#endif
#endif
class DLLIMPEXP TTempZoom
{
public:
TTempZoom();
//传入pt1,pt2 bPtIsUcs确定传入的点是ucs还是wcs
TTempZoom(const ads_point pt1, const ads_point pt2,BOOL bPtIsUcs = TRUE);
~TTempZoom();
private:
void SetPoint(ads_point pt, double x, double y, double z);
void Mid(const ads_point p1, const ads_point p2, ads_point dest);
int ScrCorner(ads_point lowerpt, ads_point upperpt);
void Max(const ads_point pt1, const ads_point pt2,ads_point pt3);
void Min(const ads_point pt1, const ads_point pt2,ads_point pt3);
int ScrSize(ads_real *width, ads_real *height);
void InitView(AcDbViewTableRecord& view);
Acad::ErrorStatus arxPan(AcGeVector2d& vtPan);
Acad::ErrorStatus arxZoomTo(const ads_point ptCen, double nWidth, double nHeight);
Acad::ErrorStatus arxZoom(const ads_point ptLow, const ads_point ptUp);
Acad::ErrorStatus AssureInCurrentView(const ads_point ptLow, const ads_point ptUp);
BOOL PointInSide(const ads_point pt,const ads_point ptLow, const ads_point ptUp);
private:
BOOL m_bRestore;
BOOL m_bAllInSide;
ads_point m_pt1;
ads_point m_pt2;
int m_iCmdEcho;
struct resbuf m_rbElevation;
};
#endif //_TTEMPZOOM_H__