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

90 lines
1.9 KiB
C++

//-------------------------------------------------------------------------------------------------------+
// Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd.
// = FileName : TPGeGLineRay2D 类
// = Version : ver2.0
// = Author : wlw
// = CreateDate : 2002-09-09
// = Description: TPGeGLineRay2D 声明
// = Maintainers:
//
//-------------------------------------------------------------------------------------------------------+
#ifndef _TPGEGLINERAY2D_H_
#define _TPGEGLINERAY2D_H_
#ifndef _TPGECURVE2D_H_
#include "TPGeCurve2D.h"
#endif
#ifndef _TGVECTOR2D_H_
#include "TGVector2D.h"
#endif
#ifndef _TPGELINE2D_H_
#include "TPGeLine2D.h"
#endif
#ifndef _TGPOINT_H_
#include "TGPoint.h"
#endif
#ifndef _TTABLE_H_
#include "TTable.h"
#endif
#ifndef _TGOBJECT_H_
#include "TGObject.h"
#endif
#ifndef _TGOBJECTLIST_H_
#include "TGObjectList.h"
#endif
#ifndef _TWFLAG_H_
#include "TWFlag.h"
#endif
#ifndef _TPGEGLINE2D_H_
#include "TPGeGLine2D.h"
#endif
class TGObject3D;
class GEOAPI TPGeGLineRay2D:public TPGeGLine2D
{
DECLARE_RUN_TIME_CLASS(TPGeGLineRay2D)
public:
TPGeGLineRay2D();
TPGeGLineRay2D(const TGVector2D& vt,const TGPoint& pt);
TPGeGLineRay2D(const TGPoint& pt0,const TGPoint& pt1);
TPGeGLineRay2D(const TPGeLine2D& line);
virtual ~TPGeGLineRay2D();
//重载 TPGeCurve2D
//存在区间[0,正无穷)
virtual bool IsFinite(bool bStart) const;
virtual void Split(const TTable<double>& paTable,TGObjectList& res) const;
virtual TPGeCurve2D* GetExtendCurve() const;
//重载 TGObject2D
virtual TGObject3D* Convert3D() const;
//重载 TGObject
virtual TGObject * Clone() const;
virtual GRelation HitTest(const TGPoint& pt) const;
virtual bool IsInclude(const TGObject& obj) const;
virtual bool Intersect(const TGObject& obj,TGObjectList& res) const;
bool IsSameRay(const TPGeGLineRay2D& ray) const;
};
#endif