//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, SH Software Co. Ltd. // = FileName : XScreenDc Àà // = Version : ver2.0 // = Author : zjq // = CreateDate : 2002-09-09 // = Description: XScreenDc ÉùÃ÷ // = Maintainers: // //-----------------------------------------------------------------------------+ #ifndef _XScreenDc_H_ #define _XScreenDc_H_ #ifndef _XDcStream_H_ #include "XDcStream.h" #endif #ifndef _XCURVESEGMENT_H_ #include "XCurveSegment.h" #endif #ifndef _XLINE_H_ #include "XLine.h" #endif #ifndef _XRECTANGLE_H_ #include "XRectAngle.h" #endif #ifndef _XPOINTLISTT_H_ #include "XPointList.h" #endif #ifndef _XARC_H_ #include "XArc.h" #endif #ifndef _XPOLY2D_H_ #include "XPoly2D.h" #endif #ifndef _XCIRCLE_H_ #include "XCircle.h" #endif #ifndef _X3DFACE_H_ #include "X3DFace.h" #endif #ifndef _XPOINT_H_ #include "XPoint.h" #endif #ifndef _ENTITY_H_ #include "Entity.h" #endif class GEOAPI XScreenDc: public XDcStream { public: XScreenDc(short nColor = 7, short nMode = 0); virtual ~XScreenDc(); virtual const TCHAR *Desc(); virtual void DrawXEntity(const Entity & e); virtual void DrawXPoint(const XPoint & pt); virtual void DrawX3DFace(const X3DFace & face); virtual void DrawXPoints(const XPointList & pts); virtual void DrawXPoly(const XPoly2D & poly,double dThick = 0); virtual void DrawXCurve(const XCurveSegment & curve,double dThick = 0); void SetMode(short nMode); void SetColor(short nColor); void Draw(const XLine & ln); void Draw(const XPoly2D & poly); void Draw(const X3DFace & face); void Draw(const XRectAngle & box); void Draw(const XCurveSegment & curve); void Draw(const XArc & arc, int nDiv = 30); void Draw(const XCircle & cir, int nDiv = 30); void Draw( const XPointList & pts, int bClose = 0); void Draw(const Entity & e,ads_matrix tranMat = NULL,int nBlkColor = 0); void Draw(const XPoint & 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 XLine &ln); }; #endif