SuperMap.WinRT.Core.ShapeElement.SetClip C# (CSharp) Méthode

SetClip() private méthode

private SetClip ( Point2DCollection clippedPoint2Ds, Rectangle2D clipbox ) : void
clippedPoint2Ds Point2DCollection
clipbox Rectangle2D
Résultat void
        internal void SetClip(Point2DCollection clippedPoint2Ds, Rectangle2D clipbox)
        {
            this.ClippedPoint2Ds = clippedPoint2Ds;
            this.ClipBox = clipbox;
            this.InvalidatePath(this.Resolution, this.OriginX, this.OriginY);
        }

Usage Example

 //对于SL自带的Rectangle暂不做处理
 private void SetClipShapeBase(ShapeElement sb, Rectangle2D clipBox, double resolution)
 {
     Rectangle2D bounds = sb.Point2Ds.GetBounds();
     if ((Rectangle2D.IsNullOrEmpty(bounds)) || ((bounds.Width / resolution) < 16383.5))
     {
         if (sb.ClippedPoint2Ds != null)
         {
             sb.ClearClip();
         }
     }
     else if (((Rectangle2D.IsNullOrEmpty(sb.ClipBox)) || !clipBox.Within(sb.ClipBox)) || ((sb.ClipBox.Width / resolution) >= 16383.5))
     {
         if (sb is PolygonElement)
         {
             sb.SetClip(new PolygonElementClip(clipBox).Clip(sb.Point2Ds), clipBox);
         }
         else if (sb is PolylineElement)
         {
             sb.SetClip(new PolylineElementClip(clipBox).Clip(sb.Point2Ds), clipBox);
         }
     }
 }