//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : TGGiScreenDrawStream 类 // = Version : ver2.0 // = Author : wlw // = CreateDate : 2002-09-09 // = Description: TGGiScreenDrawStream 声明 // = Maintainers: // //-----------------------------------------------------------------------------+ #ifndef _TGGISCREENDRAWSTREAM_H_ #define _TGGISCREENDRAWSTREAM_H_ #ifndef _TGGIDRAWSTREAMBASE_H_ #include "TGGiDrawStreamBase.h" #endif #ifndef _TGGECURVESEGMENT_H_ #include "TGGeCurveSegment.h" #endif #ifndef _TGGELINE_H_ #include "TGGeLine.h" #endif #ifndef _TGGERECTANGLE_H_ #include "TGGeRectAngle.h" #endif #ifndef _TADSGEPOINTLIST_H_ #include "TADSGePointList.h" #endif #ifndef _TGGEARC_H_ #include "TGGeArc.h" #endif #ifndef _TGGEPOLY2D_H_ #include "TGGePoly2D.h" #endif #ifndef _TGGECIRCLE_H_ #include "TGGeCircle.h" #endif #ifndef _TGGE3DFACE_H_ #include "TGGe3DFace.h" #endif #ifndef _TADSGEPOINT3D_H_ #include "TADSGePoint3d.h" #endif #ifndef _TENTITYSET_H_ #include "TEntitySet.h" #endif class GEOAPI TGGiScreenDrawStream: public TGGiDrawStreamBase { public: TGGiScreenDrawStream(short nColor = 7, short nMode = 0); virtual ~TGGiScreenDrawStream(); virtual const TCHAR *Desc(); virtual void DrawXEntity(const TEntitySet & e); virtual void DrawXPoint(const TADSGePoint3d & pt); virtual void DrawX3DFace(const TGGe3DFace & face); virtual void DrawXPoints(const TADSGePointList & pts); virtual void DrawXPoly(const TGGePoly2D & poly,double dThick = 0); virtual void DrawXCurve(const TGGeCurveSegment & curve,double dThick = 0); void SetMode(short nMode); void SetColor(short nColor); void Draw(const TGGeLine & ln); void Draw(const TGGePoly2D & poly); void Draw(const TGGe3DFace & face); void Draw(const TGGeRectAngle & box); void Draw(const TGGeCurveSegment & curve); void Draw(const TGGeArc & arc, int nDiv = 30); void Draw(const TGGeCircle & cir, int nDiv = 30); void Draw( const TADSGePointList & pts, int bClose = 0); void Draw(const TEntitySet & e,ads_matrix tranMat = NULL,int nBlkColor = 0); void Draw(const TADSGePoint3d & pt, int nStyle = PS_CROSS_SLANT, int nPercentage = 5); static const TCHAR *Descriptor(); public: short m_nFrontColor, m_nBackColor; short m_nDrawMode; // 0--normal 1--highlight int m_nFlag; ads_real m_nModelX, m_nModelY; // Screen Size protected: virtual void _Draw(const TGGeLine &ln); }; #endif