Files
envi-code/SourceCode/Code2026/tg_shs/inc/subgeo/TPGeFace3D.h
T
2026-09-28 15:28:50 +08:00

52 lines
1.2 KiB
C++

//-----------------------------------------------------------------------------+
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
// = FileName : TPGeFace3D.h
// = Version : ver2.0
// = Author : xlc
// = CreateDate : 2002-09-09
// = Description: 类的声明 空间任意曲面
// = Maintainers:
//
//-----------------------------------------------------------------------------+
#ifndef _TPGEFACE3D_H_
#define _TPGEFACE3D_H_
#ifndef _TGOBJECT3D_H_
#include "TGObject3D.h"
#endif
#ifndef _TGOBJECTLIST_H_
#include "TGObjectList.h"
#endif
#ifndef _TGOBJECT_H_
#include "TGObject.h"
#endif
class GEOAPI TPGeFace3D : public TGObject3D
{
DECLARE_RUN_TIME_CLASS(TPGeFace3D)
public:
virtual ~TPGeFace3D();
virtual bool IsClosed() const;
virtual bool IsSelfCross() const;
virtual double Area() const;
virtual double Volume() const;
virtual void Cut(const TGObject& obj,TGObjectList& left,TGObjectList& right,TGObjectList& mid) const;
//不能是自交曲面!!
//封闭曲面切割结果为左为内,右为外,不考虑曲面方向!不封闭曲面切割结果,左为下,右为上。
//不封闭的有限曲线段切割时,要求其可以正确进行结果分发时的上下测试!!
//子类需要加速才需要重载
//重载 TGObject
virtual bool IsInclude(const TGObject& obj) const;
};
#endif