diff --git a/Disp/DemoPickable.cs b/Disp/DemoPickable.cs index abca6e1..8dc9b46 100644 --- a/Disp/DemoPickable.cs +++ b/Disp/DemoPickable.cs @@ -2,60 +2,57 @@ using Hi.Geom; using System; -namespace Sample.Disp +namespace Sample.Disp; + +/// +/// Demonstrates creation of pickable 3D geometry at the primitive level. +/// Shows how to assign picking IDs directly to geometry vertices and create interactive triangles. +/// Uses a lower-level approach than the Pickable base class for more precise control. +/// +/// +/// ### Source Code +/// [!code-csharp[SampleCode](~/../Hi.Sample.Wpf/Disp/DemoPickable.cs)] +/// +public class DemoPickable : IDisplayee { - /// - /// Demonstrates creation of pickable 3D geometry at the primitive level. - /// Shows how to assign picking IDs directly to geometry vertices and create interactive triangles. - /// Uses a lower-level approach than the Pickable base class for more precise control. - /// - /// - /// ### Source Code - /// [!code-csharp[SampleCode](~/../Hi.Sample.Wpf/Disp/DemoPickable.cs)] - /// - public class DemoPickable : IDisplayee + private readonly Drawing draw; + private readonly ShowEventPickable pickable; + + /// + /// Initializes a new instance of DemoPickable. + /// Creates a pickable triangle with a specific picking ID for user interaction. + /// + public DemoPickable() { - private readonly Drawing draw; - private readonly ShowEventPickable pickable; - - /// - /// Initializes a new instance of DemoPickable. - /// Creates a pickable triangle with a specific picking ID for user interaction. - /// - public DemoPickable() - { - pickable = new ShowEventPickable(); - double pid = pickable.PickingID; - double[] vs = new double[] { - //pickID, x,y,z - pid, 0,0.1,0.1, - pid, 0.1,0,0, - pid, 0.1,0,0.1 - }; - draw = new Drawing(vs, Stamp.PV, GL.GL_TRIANGLES); - } - /// - public void Display(Bind bind) - { - draw.Display(bind); - } - /// - public void ExpandToBox3d(Box3d dst) - { - draw.ExpandToBox3d(dst); - } - - /// - /// Entry point for the DemoPickable example. - /// Creates and displays a pickable triangle that can respond to mouse events. - /// Demonstrates integration of picking functionality with geometric primitives. - /// - [STAThread] - public static void Main() - { - DemoUtil.RunApplication("DemoPickable", new DemoPickable()); - } + pickable = new ShowEventPickable(); + double pid = pickable.PickingID; + double[] vs = new double[] { + //pickID, x,y,z + pid, 0,0.1,0.1, + pid, 0.1,0,0, + pid, 0.1,0,0.1 + }; + draw = new Drawing(vs, Stamp.PV, GL.GL_TRIANGLES); + } + /// + public void Display(Bind bind) + { + draw.Display(bind); + } + /// + public void ExpandToBox3d(Box3d dst) + { + draw.ExpandToBox3d(dst); } - + /// + /// Entry point for the DemoPickable example. + /// Creates and displays a pickable triangle that can respond to mouse events. + /// Demonstrates integration of picking functionality with geometric primitives. + /// + [STAThread] + public static void Main() + { + DemoUtil.RunApplication("DemoPickable", new DemoPickable()); + } }