BuildingCoder.CmdDuplicateElements.Execute C# (CSharp) Метод

Execute() публичный Метод

public Execute ( ExternalCommandData commandData, string &message, ElementSet elements ) : Result
commandData ExternalCommandData
message string
elements ElementSet
Результат Result
        public Result Execute(
            ExternalCommandData commandData,
            ref string message,
            ElementSet elements)
        {
            UIApplication app = commandData.Application;
              UIDocument uidoc = app.ActiveUIDocument;
              Document doc = uidoc.Document;

              Transaction tx = new Transaction( doc,
            "Duplicate Elements" );

              tx.Start();

              //Group group = doc.Create.NewGroup( // 2012
              //  uidoc.Selection.Elements );

              Group group = doc.Create.NewGroup( // 2013
            uidoc.Selection.GetElementIds() );

              LocationPoint location = group.Location
            as LocationPoint;

              XYZ p = location.Point;
              XYZ newPoint = new XYZ( p.X, p.Y + 10, p.Z );

              Group newGroup = doc.Create.PlaceGroup(
            newPoint, group.GroupType );

              //group.Ungroup(); // 2012
              group.UngroupMembers(); // 2013

              //ElementSet eSet = newGroup.Ungroup(); // 2012

              ICollection<ElementId> eIds
            = newGroup.UngroupMembers(); // 2013

              // change the property or parameter values
              // of the member elements as required...

              tx.Commit();

              return Result.Succeeded;
        }
CmdDuplicateElements