// Post public void TranslateT2C(TransCAD.IStdSketchGeometry tGeom) { if (tGeom.Type == TransCAD.StdSketchGeometryType.Circle) // Circle인 경우 { TransCAD.IStdSketchCircle tCircle = (TransCAD.IStdSketchCircle)tGeom; TransCAD.StdSketchControlPoint tCenterPoint = (TransCAD.StdSketchControlPoint)tCircle.CenterPoint; double cX = tCircle.CenterPoint.X; double cY = tCircle.CenterPoint.Y; MECMOD.Point2D cCenterPoint = SketchManager.cFactory.CreatePoint(cX, cY); cCenterPoint.ReportName = ++SketchManager.cReportName; double tRadius = tCircle.Radius; MECMOD.Circle2D cCircle = SketchManager.cFactory.CreateClosedCircle(cX, cY, tRadius); cCircle.CenterPoint = cCenterPoint; cCircle.ReportName = ++SketchManager.cReportName; } else if (tGeom.Type == TransCAD.StdSketchGeometryType.CircularArc) // Arc인 경우 { TransCAD.IStdSketchCircularArc tArc = (TransCAD.IStdSketchCircularArc)tGeom; TransCAD.StdSketchControlPoint tCenterPoint = (TransCAD.StdSketchControlPoint)tArc.CenterPoint; TransCAD.StdSketchControlPoint tStartPoint = (TransCAD.StdSketchControlPoint)tArc.StartPoint; TransCAD.StdSketchControlPoint tEndPoint = (TransCAD.StdSketchControlPoint)tArc.EndPoint; double cX = tArc.CenterPoint.X; double cY = tArc.CenterPoint.Y; MECMOD.Point2D cCenterPoint = SketchManager.cFactory.CreatePoint(cX, cY); cCenterPoint.ReportName = ++SketchManager.cReportName; double sX = tStartPoint.X; double sY = tStartPoint.Y; MECMOD.Point2D cStartPoint = SketchManager.cFactory.CreatePoint(sX, sY); cStartPoint.ReportName = ++SketchManager.cReportName; double eX = tEndPoint.X; double eY = tEndPoint.Y; MECMOD.Point2D cEndPoint = SketchManager.cFactory.CreatePoint(eX, eY); cEndPoint.ReportName = ++SketchManager.cReportName; double sA = tArc.StartAngle; double eA = tArc.EndAngle; double tRadius = tArc.Radius; MECMOD.Circle2D cCircle = SketchManager.cFactory.CreateCircle(cX, cY, tRadius, sA, eA); cCircle.CenterPoint = cCenterPoint; cCircle.StartPoint = cStartPoint; cCircle.EndPoint = cEndPoint; cCircle.ReportName = ++SketchManager.cReportName; } }
// Post public void TranslateT2C(TransCAD.IStdSketchGeometry tGeom) { if (tGeom.Type == TransCAD.StdSketchGeometryType.Line) // 일반 Line인 경우 { TransCAD.IStdSketchLine tLine = (TransCAD.IStdSketchLine)tGeom; TransCAD.StdSketchControlPoint tStartPoint = (TransCAD.StdSketchControlPoint)tLine.StartPoint; TransCAD.StdSketchControlPoint tEndPoint = (TransCAD.StdSketchControlPoint)tLine.EndPoint; double sX = tStartPoint.X; double sY = tStartPoint.Y; MECMOD.Point2D cStartPoint = SketchManager.cFactory.CreatePoint(sX, sY); cStartPoint.ReportName = ++SketchManager.cReportName; double eX = tEndPoint.X; double eY = tEndPoint.Y; MECMOD.Point2D cEndPoint = SketchManager.cFactory.CreatePoint(eX, eY); cEndPoint.ReportName = ++SketchManager.cReportName; MECMOD.Line2D cLine = SketchManager.cFactory.CreateLine(sX, sY, eX, eY); cLine.StartPoint = cStartPoint; cLine.EndPoint = cEndPoint; cLine.ReportName = ++SketchManager.cReportName; } else if (tGeom.Type == TransCAD.StdSketchGeometryType.Centerline) // Centerline인 경우 { TransCAD.IStdSketchCenterline tLine = (TransCAD.IStdSketchCenterline)tGeom; TransCAD.StdSketchControlPoint tStartPoint = (TransCAD.StdSketchControlPoint)tLine.StartPoint; TransCAD.StdSketchControlPoint tEndPoint = (TransCAD.StdSketchControlPoint)tLine.EndPoint; double sX = tStartPoint.X; double sY = tStartPoint.Y; MECMOD.Point2D cStartPoint = SketchManager.cFactory.CreatePoint(sX, sY); cStartPoint.ReportName = ++SketchManager.cReportName; double eX = tEndPoint.X; double eY = tEndPoint.Y; MECMOD.Point2D cEndPoint = SketchManager.cFactory.CreatePoint(eX, eY); cEndPoint.ReportName = ++SketchManager.cReportName; MECMOD.Line2D cLine = SketchManager.cFactory.CreateLine(sX, sY, eX, eY); cLine.StartPoint = cStartPoint; cLine.EndPoint = cEndPoint; cLine.ReportName = ++SketchManager.cReportName; SketchManager.cCenterLine = cLine; } }