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

72 lines
1.6 KiB
C++

//-----------------------------------------------------------------------------+
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
// = FileName : TGGiClipBoundary 类
// = Version : ver2.0
// = Author : wlw
// = CreateDate : 2002-09-09
// = Description: TGGiClipBoundary 声明
// = Maintainers:
//
//-----------------------------------------------------------------------------+
#ifndef _TGGICLIPBOUNDARY_H_
#define _TGGICLIPBOUNDARY_H_
#ifndef _TGGEPOLY2D_H_
#include "TGGePoly2D.h"
#endif
#ifndef _TADSGEPOINT3D_H_
#include "TADSGePoint3d.h"
#endif
#ifndef _TGGEDBCURVEENTITY_H_
#include "TGGeDbCurveEntity.h"
#endif
#ifndef _TDPTRLIST_H_
#include "TDPtrList.h"
#endif
class GEOAPI TGGiClipBoundary
{
public:
enum ClipType
{
kClipIn = 0x0000, //去除内部
kClipOut = 0x0001, //去除外部
kNoClipEdge = 0x0002, //保留边界
kAcGiClip = 0x0004
};
TGGiClipBoundary(const TGGePoly2D& poly,int flag = 0);
virtual ~TGGiClipBoundary();
virtual int GetClipType() const;
virtual bool IsClip(const TADSGePoint3d&pt) const;
virtual bool DoClip(TDPtrList<TGGeCurveSegment>& lstCurve) const;
virtual bool DoClip(TDPtrList<TGGePoly2D> &lstRegion) const;
virtual bool DoClip(TDPtrList<TGGeDbCurveEntity>&lstObj) const;
virtual bool DoClip(TDPtrList<AcDbEntity> &lstEnt) const;
virtual TGGePoly2D GetClipPoly() const;
virtual AcGiClipBoundary* GetAcGiClip() const;
virtual bool IsExtentsClip(AcDbExtents& ext);
protected:
int m_clipType;
bool m_bExtExtracted;
ads_point m_ptLow;
ads_point m_ptUpp;
TGGePoly2D m_poly;
AcGiClipBoundary *m_pAcGiClip;
};
#endif