//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, SH Software Co. Ltd. // = FileName : XArc3DWall.cpp // = Version : ver2.0 // = Author : zjq // = CreateDate : 2002-09-09 // = Description: 3维弧墙圆弧类的定义 // = Maintainers: // //-----------------------------------------------------------------------------+ #include "StdAfx.h" #include "XArc3DWall.h" #include "XPrivateGlobalFunc.h" #include "AdsXRx.h" XArc3DWall::XArc3DWall(const XArc &a, ads_real h, ads_real iD, ads_real oD) : XArc(a), height(h), iDist(iD), oDist(oD) { } XArc3DWall::~XArc3DWall() { } int XArc3DWall::MakeWall(XExplodeDraw &dc,const XArc &iArc, const XArc &oArc, DList §ionList) { int len = sectionList.Length(); ads_real lastAng = GetStarAngle(); for(int i = 0; i= arc.GetRadius() || oDist >= arc.GetRadius()) { return RTERROR; } XArc iArc = arc.Offset(-iDist); XArc oArc = arc.Offset(oDist); XPrivate::DrawArcSeg(dc, iArc, height, bShowStart, bShowEnd); XPrivate::DrawArcSeg(dc, oArc, height, bShowStart, bShowEnd); return RTNORM; } void XArc3DWall::MakeArcWallSeg(XExplodeDraw &dc, const XArc &iArc, const XArc &oArc, ads_real height, int bShowStart, int bShowEnd) { DrawArcSeg(dc, iArc, height, bShowStart, bShowEnd); DrawArcSeg(dc, oArc, height, bShowStart, bShowEnd); }