public override void DrawCrossSection(IRM21cad2dDrawingContext cadContext,
  ref StationOffsetElevation aSOE, int whichSide)
 {
     base.setupCrossSectionDrawing(cadContext);
      cadContext.setElementColor(Color.FromArgb(255, 40, 123, 54));
      cadContext.setElementWeight(1.1);
      base.DrawCrossSection(cadContext, ref aSOE, whichSide);
 }
Beispiel #2
0
        public override void DrawCrossSection(IRM21cad2dDrawingContext cadContext,
         ref StationOffsetElevation aSOE, int whichSide)
        {
            base.setupCrossSectionDrawing(cadContext);
             cadContext.setElementColor(Color.FromArgb(128, 128, 128, 128));
             cadContext.setElementWeight(0.75);
             cadContext.addToDashArray(5);

             SuppressSlopeText = true;
             base.DrawCrossSection(cadContext, ref aSOE, whichSide);
        }
Beispiel #3
0
        public override void DrawCrossSection(IRM21cad2dDrawingContext cadContext,
         ref StationOffsetElevation aSOE, int whichSide)
        {
            double LLH = LiederLineHeight;
             double ribbonWidth;
             double X1 = aSOE.offset;
             double Y1 = aSOE.elevation;
             this.moveToOuterEdge(ref aSOE, whichSide);
             if (X1 == aSOE.offset && Y1 == aSOE.elevation) return;

             cadContext.Draw(X1, Y1, aSOE.offset, aSOE.elevation);
             return;
        }
 public override void DrawPlanViewSchematic(IRM21cad2dDrawingContext cadContext, int whichSide)
 {
     cadContext.setElementColor(Color.FromArgb(255, 40, 123, 54));
      cadContext.setElementWeight(1.1);
      base.DrawPlanViewSchematic(cadContext, whichSide);
 }
 private void DrawExistingGroundLine(IRM21cad2dDrawingContext cadContext, Profile existingGroundProfile)
 {
     if (null == existingGroundProfile) return;
      cadContext.setElementColor(Color.FromArgb(128, 255, 255, 255));
      cadContext.setElementWeight(2.0);
      cadContext.addToDashArray(12);
      cadContext.addToDashArray(2);
      existingGroundProfile.draw(cadContext);
 }
 private void DrawCenterLineAnnotationelementsForXS(IRM21cad2dDrawingContext cadContext, CogoStation station)
 {
     cadContext.setElementColor(Color.FromArgb(255, 255, 255, 255));
      cadContext.setElementWeight(1.5);
      cadContext.Draw(0.0, 0.5, 0.0, 8.0);
      cadContext.Draw("C", -0.45, 8.6, 0.0);
      cadContext.Draw("L", -0.2, 8.3, 0.0);
 }
        public void DrawPlanViewSchematic(IRM21cad2dDrawingContext cadContext, CogoStation station)
        {
            cadContext.setElementColor(Color.FromArgb(255, 255, 255, 0));  // yellow
             cadContext.setElementWeight(2.25);

             double begSta = Alignment.BeginStation;
             double endSta = Alignment.EndStation;

             cadContext.Draw(0.0, begSta, 0.0, endSta);

             foreach (var pglGrouping in allPGLgroupings)
             {
            pglGrouping.DrawPlanViewSchematic(cadContext, pglGrouping.myIndex);
             }
        }
        public void DrawCrossSection(IRM21cad2dDrawingContext cadContext, CogoStation station)
        {
            if (allPGLgroupings != null)
             {
            if (null != existingGroundSurface)
            {
               ptsPoint leftEndPt = null;
               ptsPoint rightEndPt = null;
               double distancetoLeftPoint = -200.0;
               if (Alignment.GetType is ptsCogo.Horizontal.rm21HorizontalAlignment)
               {
                  ((ptsCogo.Horizontal.rm21HorizontalAlignment)Alignment).getCrossSectionEndPoints(station,
                     out leftEndPt, distancetoLeftPoint, out rightEndPt, Math.Abs(distancetoLeftPoint));
               }
               existingGroundProfile = existingGroundSurface.getSectionProfile(leftEndPt, distancetoLeftPoint, rightEndPt);
            }

            DrawExistingGroundLine(cadContext, existingGroundProfile);
            DrawCenterLineAnnotationelementsForXS(cadContext, station);
            foreach (var pglGrouping in allPGLgroupings)
            {
               pglGrouping.DrawCrossSection(cadContext, existingGroundProfile, station, pglGrouping.myIndex);
            }
             }
        }
Beispiel #9
0
 public override void DrawPlanViewSchematic(IRM21cad2dDrawingContext cadContext,
        int whichSide)
 {
 }
Beispiel #10
0
 public void setupCrossSectionDrawing(IRM21cad2dDrawingContext cadContext)
 {
     cadContext.resetDashArray();
 }
Beispiel #11
0
 public virtual void DrawPlanViewSchematic(IRM21cad2dDrawingContext cadContext,
  int whichSide)
 {
     if (null != this.myOffsets)
     this.myOffsets.draw(cadContext);
 }
Beispiel #12
0
        public virtual void DrawCrossSection(IRM21cad2dDrawingContext cadContext, 
         ref StationOffsetElevation aSOE, int whichSide)
        {
            double LLH = LiederLineHeight;
             double ribbonWidth;
             double X1 = aSOE.offset;
             double Y1 = aSOE.elevation;
             this.moveToOuterEdge(ref aSOE, whichSide);
             if (X1 == aSOE.offset && Y1 == aSOE.elevation) return;

             cadContext.Draw(X1, Y1, aSOE.offset, aSOE.elevation);

             setupCrossSectionDrawing(cadContext);
             ribbonWidth = Math.Abs(aSOE.offset - X1);
             cadContext.setElementWeight(0.8);
             cadContext.setElementColor(Color.FromArgb(124, 255, 255, 255));
             cadContext.Draw(X1, LLH + 0.5, aSOE.offset, LLH + 0.5);
             cadContext.Draw(aSOE.offset, 0.5, aSOE.offset, LLH + 1.5);
             string widthStr = (Math.Round(ribbonWidth*10)/10).ToString();
             cadContext.Draw(widthStr, X1 + whichSide * ribbonWidth / 2, LLH + 0.5, 0.0);

             if (false == SuppressSlopeText)
             {
            Slope mySlope = new Slope((aSOE.elevation - Y1) / (aSOE.offset - X1));
            if (whichSide > 0)
               cadContext.Draw(mySlope.ToString(),
                  (X1 + aSOE.offset) / 2,
                  (Y1 + aSOE.elevation) / 2,
                  mySlope.getAsDegreesDouble());
            else
               cadContext.Draw(mySlope.FlipDirection().ToString(),
                  (X1 + aSOE.offset) / 2,
                  (Y1 + aSOE.elevation) / 2,
                  mySlope.getAsDegreesDouble());
             }
             SuppressSlopeText = false;
        }
        internal void DrawPlanViewSchematic(IRM21cad2dDrawingContext cadContext, int whichSide_)
        {
            int whichSide = Math.Sign(whichSide_);

             if (thePGLoffsetRibbon != null)
            thePGLoffsetRibbon.DrawPlanViewSchematic(cadContext, whichSide);

             if (insideRibbons != null)
             {

            foreach (var aRibbon in insideRibbons)
            {
               aRibbon.DrawPlanViewSchematic(cadContext, -1 * whichSide);
            }

             }

             if (outsideRibbons != null)
             {
            foreach (var aRibbon in outsideRibbons)
            {
               aRibbon.DrawPlanViewSchematic(cadContext, whichSide);
            }
             }
        }
        internal void DrawCrossSection(IRM21cad2dDrawingContext cadContext, Profile existingGroundProfile,
         CogoStation station, int whichSide_)
        {
            int whichSide = Math.Sign(whichSide_);
             StationOffsetElevation StaOffEL =
            new StationOffsetElevation(station.trueStation, 0.0, 0.0);

             if (pglProfile != null)
               StaOffEL.elevation = pglProfile.getElevation(station);

             if (thePGLoffsetRibbon != null)
            thePGLoffsetRibbon.DrawCrossSection(cadContext, ref StaOffEL, whichSide);

             if (insideRibbons != null)
             {
            double pglOffset = StaOffEL.offset;
            double pglElevation = StaOffEL.elevation;

            foreach (var aRibbon in insideRibbons)
            {
               aRibbon.DrawCrossSection(cadContext, ref StaOffEL, -1 * whichSide);
            }

            StaOffEL.offset = pglOffset;
            StaOffEL.elevation = pglElevation;
             }

             if (outsideRibbons != null)
             {
            foreach (var aRibbon in outsideRibbons)
            {
               aRibbon.DrawCrossSection(cadContext, ref StaOffEL, whichSide);
            }
             }
        }
Beispiel #15
0
 public void draw(IRM21cad2dDrawingContext drawingContext)
 {
     if (null == drawingContext) return;
      foreach (var seg in this.allVCs)
      {
     seg.draw(drawingContext);
      }
 }
Beispiel #16
0
 internal void draw(IRM21cad2dDrawingContext drawingContext)
 {
     if (BeginElevation != 0.0 && EndElevation != 0.0)
     {
        double x1, y1, x2, y2;
        x1 = BeginStation.trueStation; y1 = BeginElevation;
        x2 = EndStation.trueStation; y2 = EndElevation;
        if (drawingContext.getAheadOrientationAngle() == 90.0)
        {
       x1 = BeginElevation; y1 = BeginStation.trueStation;
       x2 = EndElevation; y2 = EndStation.trueStation;
        }
        drawingContext.Draw(x1, y1, x2, y2);
     }
 }