Esempio n. 1
0
        bool getSelectedWindow(ref List <Point3d> boundary, ref Editor ed, ref Database db)
        {
            PromptSelectionOptions pso = new PromptSelectionOptions();

            pso.MessageForAdding = "Select Objects: ";
            pso.SingleOnly       = false;
            PromptSelectionResult psr = ed.GetSelection(pso);

            if (psr.Status != PromptStatus.OK)
            {
                return(false);
            }
            SelectionSetDelayMarshalled ssMarshal = (SelectionSetDelayMarshalled)psr.Value;
            AdsName      name   = ssMarshal.Name;
            SelectionSet selSet = (SelectionSet)ssMarshal;

            foreach (SelectedObject item in selSet)
            {
                boundary.Clear();
                switch (item.SelectionMethod)
                {
                case SelectionMethod.Crossing:
                    CrossingOrWindowSelectedObject crossSelObj          = item as CrossingOrWindowSelectedObject;
                    PickPointDescriptor[]          crossSelPickedPoints = crossSelObj.GetPickPoints();
                    foreach (PickPointDescriptor point in crossSelPickedPoints)
                    {
                        boundary.Add(point.PointOnLine);
                    }
                    break;

                case SelectionMethod.Window:
                    CrossingOrWindowSelectedObject windSelObj         = item as CrossingOrWindowSelectedObject;
                    PickPointDescriptor[]          winSelPickedPoints = windSelObj.GetPickPoints();
                    foreach (PickPointDescriptor point in winSelPickedPoints)
                    {
                        boundary.Add(point.PointOnLine);
                    }
                    break;
                }
            }
            return(true);
        }
Esempio n. 2
0
 public static IAcedCmdArg Argument(SelectionSetDelayMarshalled value, string message = "")
 {
     return new CommandArgument(value.ToTypedValue(), message);
 }
Esempio n. 3
0
 public static IAcedCmdArg Argument(SelectionSetDelayMarshalled value, string message = "")
 {
     return(new CommandArgument(value.ToTypedValue(), message));
 }
 /// <summary>
 /// Creates the typed value.
 /// </summary>
 /// <param name="value">The value.</param>
 /// <returns></returns>
 public static TypedValue CreateTypedValue(SelectionSetDelayMarshalled value)
 {
     return value.ToTypedValue();
 }
 const short RTPICKS = 5007; /* Pick set */
 public static TypedValue ToResultTypedValue(this SelectionSetDelayMarshalled value)
 {
     return(new TypedValue(RTPICKS, value));
 }
 /// <summary>
 /// Creates the typed value.
 /// </summary>
 /// <param name="value">The value.</param>
 /// <returns></returns>
 public static TypedValue CreateTypedValue(SelectionSetDelayMarshalled value)
 {
     return(value.ToTypedValue());
 }