ArcGIS Pro 3.3 API Reference Guide
ArcGIS.Desktop.Editing Namespace / EditOperation Class / Create Method / Create(Builder) Method
The parallel offset builder to use in the create
Example Version

    Create(Builder) Method
    Creates new features copied parallel to the selected features in the ParallelOffset.Selection. A ParallelOffset is created from the input builder.
    Syntax
    public void Create( 
       ParallelOffset.Builder builder
    )

    Parameters

    builder
    The parallel offset builder to use in the create
    Example
    Edit Operation Duplicate Features
    {
      var duplicateFeatures = new EditOperation() { Name = "Duplicate Features" };
    
      //Duplicate with an X and Y offset of 500 map units
      //At 2.x duplicateFeatures.Duplicate(featureLayer, oid, 500.0, 500.0, 0.0);
    
      //Execute to execute the operation
      //Must be called within QueuedTask.Run
      var insp2 = new Inspector();
      insp2.Load(featureLayer, oid);
      var geom = insp2["SHAPE"] as Geometry;
    
      var rtoken = duplicateFeatures.Create(insp2.MapMember, insp2.ToDictionary(a => a.FieldName, a => a.CurrentValue));
      if (!duplicateFeatures.IsEmpty)
      {
        if (duplicateFeatures.Execute())//Execute and ExecuteAsync will return true if the operation was successful and false if not
        {
          var modifyOp = duplicateFeatures.CreateChainedOperation();
          modifyOp.Modify(featureLayer, (long)rtoken.ObjectID, GeometryEngine.Instance.Move(geom, 500.0, 500.0));
          if (!modifyOp.IsEmpty)
          {
            var result = modifyOp.Execute();
          }
        }
      }
    }
    
    Edit Operation ParallelOffset
    //Create parrallel features from the selected features
    
    //find the roads layer
    var roadsLayer = MapView.Active.Map.FindLayers("Roads").FirstOrDefault();
    
    //instatiate paralleloffset builder and set parameters
    var parOffsetBuilder = new ParallelOffset.Builder()
    {
      Selection = MapView.Active.Map.GetSelection(),
      Template = roadsLayer.GetTemplate("Freeway"),
      Distance = 200,
      Side = ParallelOffset.SideType.Both,
      Corner = ParallelOffset.CornerType.Mitered,
      Iterations = 1,
      AlignConnected = false,
      CopyToSeparateFeatures = false,
      RemoveSelfIntersectingLoops = true
    };
    
    //create editoperation and execute
    var parallelOp = new EditOperation();
    parallelOp.Create(parOffsetBuilder);
    if (!parallelOp.IsEmpty)
    {
      var result = parallelOp.Execute(); //Execute and ExecuteAsync will return true if the operation was successful and false if not
    }
    
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also