public static IDisposable DisplayUndoable(this IEnumerable <IBody2> bodies, IModelDoc2 doc, System.Drawing.Color?c = null, swTempBodySelectOptions_e opt = swTempBodySelectOptions_e.swTempBodySelectOptionNone) { var view = (IModelView)doc.ActiveView; using (view.DisableGraphicsUpdate()) { var d = bodies.Select(toolBody => toolBody.DisplayUndoable(doc, c)).ToCompositeDisposable(); return(Disposable.Create(() => { using (view.DisableGraphicsUpdate()) { d.Dispose(); } })); } }
public static IDisposable DisplayBodiesUndoable(this IEnumerable <IBody2> bodies, IModelDoc2 doc, Color?c = null, swTempBodySelectOptions_e opt = swTempBodySelectOptions_e.swTempBodySelectOptionNone) { return(new CompositeDisposable(bodies.Select(b => b.DisplayUndoable(doc, c, opt)))); }
/// <summary> /// Uses Display3 to render the object. This is slow for animation. Better to create a Mesh and then render it. This /// will use OpenGL directly. /// </summary> /// <param name="body"></param> /// <param name="doc"></param> /// <param name="c"></param> /// <param name="opt"></param> /// <returns></returns> public static IDisposable DisplayUndoable(this IBody2 body, IModelDoc2 doc, Color?c = null, swTempBodySelectOptions_e opt = swTempBodySelectOptions_e.swTempBodySelectOptionNone) { body.DisplayTs(doc, c, opt); return(Disposable.Create(() => body.Hide(doc))); }
public static void DisplayAll(this IEnumerable <IBody2> bodies, IModelDoc2 doc, Color c, swTempBodySelectOptions_e opt) { foreach (var body in bodies) { body.DisplayTs(doc, c, opt); } }
public static void DisplayTs(this IBody2 body, IModelDoc2 doc = null, Color?c = null, swTempBodySelectOptions_e opt = swTempBodySelectOptions_e.swTempBodySelectOptionNone) { doc = doc ?? (IModelDoc2)SwAddinBase.Active.SwApp.ActiveDoc; c = c ?? Color.Yellow; var colorref = ColorTranslator.ToWin32(c.Value); body.Display3(doc, colorref, (int)opt); }
public static void DisplayTs([NotNull] this IBody2 body, IModelDoc2 doc = null, Color?c = null, swTempBodySelectOptions_e opt = swTempBodySelectOptions_e.swTempBodySelectOptionNone) { if (body == null) { throw new ArgumentNullException(nameof(body)); } doc = doc ?? (IModelDoc2)SwAddinBase.Active.SwApp.ActiveDoc; c = c ?? Color.Yellow; var colorref = ColorTranslator.ToWin32(c.Value); body.Display3(doc, colorref, (int)opt); }