#include "aecdbxdraw.h" struct SFPXStair; class AecDbArcSegStairDraw : public AecDbXDraw { public: ACRX_DECLARE_MEMBERS(AecDbArcSegStairDraw); public: AecDbArcSegStairDraw(void); ~AecDbArcSegStairDraw(void); public: virtual Acad::ErrorStatus Draw2d(AcGiDraw &dc) const; virtual Acad::ErrorStatus Draw3d(AcGiDraw &dc) const; protected: Acad::ErrorStatus DrawUpStairs2d(AcGiDraw& dc , const AcDbVoidPtrArray& CurveAr , const BOOL& bLBeam , const BOOL& bRBeam , const SFPXStair& data) const; Acad::ErrorStatus DrawUpStairs3d(AcGiDraw& dc , const AcDbVoidPtrArray& CurveAr , const SFPXStair& data) const; Acad::ErrorStatus DrawRail3d(AcGiDraw& dc , const AcDbArc* pArc , const SFPXStair& data) const; Acad::ErrorStatus DrawHandRail3d(AcGiDraw& dc , const AcDbArc* pArc , const SFPXStair& data) const; Acad::ErrorStatus DrawSide3d(AcGiDraw& dc , const AcDbVoidPtrArray& CurveAr , const double& dRegW , const double& dRegH , const double& dMoveH , const int& nCount , const SFPXStair& data) const; Acad::ErrorStatus DrawTriangleLand3d(const AcDbArc* pArc , AcArray& crossSectionCruves , const SFPXStair& data) const; Acad::ErrorStatus DrawNonSilp3d(const AcDbArc* pArc , AcArray& crossSectionCruves , const SFPXStair& data) const; Acad::ErrorStatus DrawSlope3d(AcGiDraw& dc , const AcDbVoidPtrArray& CurveAr , const SFPXStair& data) const; Acad::ErrorStatus DrawStairsAndSlope3d(AcGiDraw& dc , const AcDbVoidPtrArray& CurveAr , const SFPXStair& data) const; };