// Performs a rubber-sheet transformation on the features of a specified layer using the provided link lines, anchor points, and limited adjustment areas. await QueuedTask.Run(() => { //Perform rubber-sheet by geometries var rubbersheetMethod = new RubbersheetByGeometries() { RubbersheetType = RubbersheetMethodType.Linear, //The RubbersheetType can be Linear of NearestNeighbor LinkLines = linkLines, //IEnumerable list of link lines (polylines) AnchorPoints = anchorPoints, //IEnumerable list of anchor points (map points) LimitedAdjustmentAreas = limitedAdjustmentAreas //IEnumerable list of limited adjustment areas (polygons) }; var rubbersheetOp = new EditOperation(); //Performs linear rubber-sheet transformation on the features belonging to "layer" that fall within the limited adjustment areas rubbersheetOp.Rubbersheet(layer, rubbersheetMethod); //Execute the operation if (!rubbersheetOp.IsEmpty) { var result = rubbersheetOp.Execute(); //Execute and ExecuteAsync will return true if the operation was successful and false if not } //Alternatively, you can also perform rubber-sheet by layer var rubbersheetMethod2 = new RubbersheetByLayers() { RubbersheetType = RubbersheetMethodType.NearestNeighbor, //The RubbersheetType can be Linear of NearestNeighbor LinkLayer = linkLayer, AnchorPointLayer = anchorPointsLayer, LimitedAdjustmentAreaLayer = limitedAdjustmentAreaLayer }; //Performs nearest neighbor rubber-sheet transformation on the features belonging to "layer" that fall within the limited adjustment areas rubbersheetOp.Rubbersheet(layer, rubbersheetMethod2); if (!rubbersheetOp.IsEmpty) { //Execute and ExecuteAsync will return true if the operation was successful and false if not var result = rubbersheetOp.Execute(); } });
Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)