From 1abb130ff49bae6031f624b2b11f00b50738bb39 Mon Sep 17 00:00:00 2001 From: DYH <1742647821@qq.com> Date: Wed, 14 Sep 2022 20:06:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0JigExTransient=E7=B1=BB?= =?UTF-8?q?=E7=9A=84=E6=B5=8B=E8=AF=95=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/TestShared/TestJigExTransient.cs | 52 ++++++++++++++++++++++++++ tests/TestShared/TestShared.projitems | 1 + 2 files changed, 53 insertions(+) create mode 100644 tests/TestShared/TestJigExTransient.cs diff --git a/tests/TestShared/TestJigExTransient.cs b/tests/TestShared/TestJigExTransient.cs new file mode 100644 index 0000000..28d05f8 --- /dev/null +++ b/tests/TestShared/TestJigExTransient.cs @@ -0,0 +1,52 @@ +namespace Test; + +public partial class Test +{ + [CommandMethod(nameof(TestJigExTransient))] + + public void TestJigExTransient() + { + // 先取1点,建2个圆 + var r1 = Env.Editor.GetPoint("\n选择点"); + if (r1.Status != PromptStatus.OK) + return; + var pt1 = r1.Value.Ucs2Wcs(); + + var c1 = new Circle(pt1, Vector3d.ZAxis, 100); + var c2 = new Circle(pt1.Polar(0, 300), Vector3d.ZAxis, 100); + + // 建瞬态容器 + using var jet = new JigExTransient(); + + // 将c1以默认模式、c2以亮显模式加到瞬态容器,即在图纸上显示 + jet.Add(c1); + jet.Add(c2, TransientDrawingMode.Highlight); + + // 再取一点,再建一个圆c3 + var r2 = Env.Editor.GetPoint("\n选择下一点"); + if (r2.Status != PromptStatus.OK) + return; + var pt2 = r2.Value.Ucs2Wcs(); + + var c3 = new Circle(pt2, Vector3d.ZAxis, 150); + + // 将c1从瞬态容器中移除,将c2修改颜色,c3加入瞬态容器 + jet.Remove(c1); + c2.ColorIndex = 1; + jet.Add(c3); + + // 由于c2进行了修改,所以需要更新,可以单个更新或更新整个瞬态容器 + jet.Update(c2); + //jet.UpdateAll(); + + var r4 = Env.Editor.GetPoint("\n此拾取无意义,仅为了暂停查看"); + + // 加到图纸中,为测试瞬态容器可以自行dispose消失,所以未全部加入 + using var tr = new DBTrans(); + tr.CurrentSpace.AddEntity(c3); + + // 若想将容器中所有图元全部加入提供了Entities属性 + // tr.CurrentSpace.AddEntity(jet.Entities); + + } +} diff --git a/tests/TestShared/TestShared.projitems b/tests/TestShared/TestShared.projitems index 7c433a6..ea9afeb 100644 --- a/tests/TestShared/TestShared.projitems +++ b/tests/TestShared/TestShared.projitems @@ -22,6 +22,7 @@ + -- Gitee