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

60 lines
1.3 KiB
C++

//-----------------------------------------------------------------------------+
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
// = FileName : TGObject2D.h
// = Version : ver2.0
// = Author : xlc
// = CreateDate : 2002-09-09
// = Description: 类的声明 平面实体基类
// = Maintainers:
//
//-----------------------------------------------------------------------------+
#ifndef _TGOBJECT2D_H_
#define _TGOBJECT2D_H_
#ifndef _TGOBJECT_H_
#include "TGObject.h"
#endif
#ifndef _TPGEEXTEND3D_H_
#include "TPGeExtend3D.h"
#endif
#ifndef _TGPOINT_H_
#include "TGPoint.h"
#endif
class TGObject3D;
class GEOAPI TGObject2D : public TGObject
{
DECLARE_RUN_TIME_CLASS(TGObject2D)
public:
virtual ~TGObject2D();
//overridable
virtual void SetElev(double elev);//设标高
virtual double GetElev()const;//取标高
//转化为对应三维实体
virtual TGObject3D * Convert3D()const;
//override TGObject
//此处在TGObject基础由增加包含TGPoint2D判断
virtual bool IsInclude(const TGObject&obj)const;
//此处GetExtend2D()+Z=GetElev
virtual bool GetExtend3D(TPGeExtend3D&ext)const;
//transform
void Move(double cx,double cy);
void Scale(double sx,double sy);
void Scale(double sx,double sy,const TGPoint&basePoint);
void Rotate(double angle);
void Rotate(double angle,const TGPoint& basePoint);
};
#endif