Exemple #1
0
        private static void DisplayPipeline_DrawMarkers(object sender, Rhino.Display.DrawEventArgs e)
        {
            counter++;

            //for (int i = 0; i < markers.Count; ++i)
            //    e.Display.DrawPoint(markers[i], Rhino.Display.PointStyle.X, (int)marker_sizes[i], System.Drawing.Color.Red);

            e.Display.DrawPoints(markers, Rhino.Display.PointStyle.X, 3, System.Drawing.Color.Red);
            if (DisplayCoords)
            {
                for (int i = 0; i < markers.Count; ++i)
                {
                    e.Display.Draw2dText(string.Format(CultureInfo.InvariantCulture, "   {0:0.0} {1:0.0} {2:0.0} ", markers[i].X, markers[i].Y, markers[i].Z), System.Drawing.Color.Red, markers[i], false, 12);
                }
            }

            e.Display.DrawArrows(new Line[]
            {
                new Line(plane.Origin, plane.Origin + plane.XAxis * 100.0),
                new Line(plane.Origin, plane.Origin + plane.YAxis * 100.0),
                new Line(plane.Origin, plane.Origin + plane.ZAxis * 100.0)
            }
                                 , System.Drawing.Color.Gray);

            //e.Display.DrawArrow(new Line(plane.Origin, plane.Origin + plane.XAxis * 100.0), System.Drawing.Color.Red);
            //e.Display.DrawArrow(new Line(plane.Origin, plane.Origin + plane.YAxis * 100.0), System.Drawing.Color.Green);
            //e.Display.DrawArrow(new Line(plane.Origin, plane.Origin + plane.ZAxis * 100.0), System.Drawing.Color.Blue);

            e.Display.Draw2dText("x", System.Drawing.Color.Gray, plane.Origin + plane.XAxis * 105.0, true, 12);
            e.Display.Draw2dText("y", System.Drawing.Color.Gray, plane.Origin + plane.YAxis * 105.0, true, 12);
            e.Display.Draw2dText("z", System.Drawing.Color.Gray, plane.Origin + plane.ZAxis * 105.0, true, 12);
            e.Display.Draw2dText("RhinoNatNet", System.Drawing.Color.Gray, plane.Origin, true, 12);
        }
Exemple #2
0
        private static void DisplayPipeline_DrawPointcloud(object sender, Rhino.Display.DrawEventArgs e)
        {
            counter++;

            //for (int i = 0; i < markers.Count; ++i)
            //    e.Display.DrawPoint(markers[i], Rhino.Display.PointStyle.X, (int)marker_sizes[i], System.Drawing.Color.Red);

            e.Display.DrawPoints(markers, Rhino.Display.PointStyle.X, 3, System.Drawing.Color.Red);

            e.Display.DrawArrows(new Line[]
            {
                new Line(plane.Origin, plane.Origin + plane.XAxis * 100.0),
                new Line(plane.Origin, plane.Origin + plane.YAxis * 100.0),
                new Line(plane.Origin, plane.Origin + plane.ZAxis * 100.0)
            }
                                 , System.Drawing.Color.Gray);

            //e.Display.DrawArrow(new Line(plane.Origin, plane.Origin + plane.XAxis * 100.0), System.Drawing.Color.Red);
            //e.Display.DrawArrow(new Line(plane.Origin, plane.Origin + plane.YAxis * 100.0), System.Drawing.Color.Green);
            //e.Display.DrawArrow(new Line(plane.Origin, plane.Origin + plane.ZAxis * 100.0), System.Drawing.Color.Blue);

            e.Display.Draw2dText("x", System.Drawing.Color.Gray, plane.Origin + plane.XAxis * 105.0, true, 12);
            e.Display.Draw2dText("y", System.Drawing.Color.Gray, plane.Origin + plane.YAxis * 105.0, true, 12);
            e.Display.Draw2dText("z", System.Drawing.Color.Gray, plane.Origin + plane.ZAxis * 105.0, true, 12);
            e.Display.Draw2dText("RhinoNatNet", System.Drawing.Color.Gray, plane.Origin, true, 12);
        }
 protected override void DrawForeground(Rhino.Display.DrawEventArgs e)
 {
     if (Recs != null)
     {
         e.Display.DrawPointCloud(Srcs, 5, System.Drawing.Color.Green);
     }
     if (Srcs != null)
     {
         e.Display.DrawPointCloud(Srcs, 5, System.Drawing.Color.Red);
     }
     if (Dir != null)
     {
         e.Display.DrawLineArrow(Dir, System.Drawing.Color.Red, 3, .1);
     }
     if (Reflections != null)
     {
         foreach (Rhino.Geometry.Polyline L in Reflections)
         {
             e.Display.DrawDottedPolyline(L.AsEnumerable <Point3d>(), System.Drawing.Color.GreenYellow, false);
         }
     }
     if (Speakers != null)
     {
         foreach (Rhino.Geometry.Line Sp in Speakers)
         {
             //Draw Speaker Cabinets, for clarity.
             Rhino.Geometry.Box BB = new Box(new Rhino.Geometry.Plane(Sp.From, Sp.UnitTangent), new BoundingBox(-.125, -.15, -.18, .125, .15, .18));
             e.Display.DrawBox(BB, System.Drawing.Color.Blue);
             e.Display.DrawLineArrow(Sp, System.Drawing.Color.Blue, 1, .05);
         }
     }
 }
    protected override void DrawForeground(Rhino.Display.DrawEventArgs e)
    {
        var bounds = e.Viewport.Bounds;
        var pt     = new Rhino.Geometry.Point2d(bounds.Right - 100, bounds.Bottom - 30);

        e.Display.Draw2dText("Hello", System.Drawing.Color.Red, pt, false);
    }
        protected override void DrawForeground(Rhino.Display.DrawEventArgs e)
        {
            System.Drawing.Rectangle rect = e.Viewport.Bounds;
            Point2d point = new Point2d(rect.Right - (0.5 * m_sprite_size), rect.Bottom - (0.5 * m_sprite_size));

            e.Display.DrawSprite(m_bitmap, point, m_sprite_size);
        }
 protected override void DrawOverlay(Rhino.Display.DrawEventArgs e)
 {
     System.Drawing.Color color = Rhino.ApplicationSettings.AppearanceSettings.DefaultObjectColor;
     for (int i = 0; i < _points.Count; i++)
     {
         e.Display.DrawPoint(_points[i], color);
     }
 }
Exemple #7
0
 void DisplayPipeline_PostDrawObjects(object sender, Rhino.Display.DrawEventArgs e)
 {
     //Draw all circles using a pipeline
     foreach (var c in m_circles)
     {
         c.Draw(e.Display);
     }
 }
 private void DisplayPipeline_PreDrawObjects(object sender, Rhino.Display.DrawEventArgs e)
 {
     if (_model.ProgramId != 0)
     {
         RHC_UpdateShader(_resourceName, _defines, _model.ProgramId);
         _model.RecycleCurrentProgram = false;
     }
 }
Exemple #9
0
 protected override void PostDrawObjects(Rhino.Display.DrawEventArgs e)
 {
     if (null != Mesh)
     {
         Rhino.Display.DisplayMaterial material = new Rhino.Display.DisplayMaterial();
         material.Diffuse = System.Drawing.Color.Blue;
         e.Display.DrawMeshShaded(Mesh, material);
     }
 }
 protected override void OnDraw(Rhino.Display.DrawEventArgs e)
 {
     System.Drawing.Color color = this.Attributes.DrawColor(e.RhinoDoc);
     e.Display.DrawPoint(this.CurveGeometry.PointAtStart, color);
     if (!this.CurveGeometry.IsClosed)
     {
         e.Display.DrawPoint(this.CurveGeometry.PointAtEnd, color);
     }
     base.OnDraw(e);
 }
Exemple #11
0
 protected override void DrawForeground(Rhino.Display.DrawEventArgs e)
 {
     if (m_conduit_points != null)
     {
         foreach (var cp in m_conduit_points)
         {
             e.Display.DrawPoint(cp.Point, PointStyle.Simple, 3, cp.Color);
         }
     }
 }
Exemple #12
0
        protected override void DrawForeground(Rhino.Display.DrawEventArgs e)
        {
            e.Display.DrawCurve(m_curve_a, Color.Red);
            e.Display.DrawCurve(m_curve_b, Color.Red);

            e.Display.DrawPoint(m_min_dist_point_a, Color.LawnGreen);
            e.Display.DrawPoint(m_min_dist_point_b, Color.LawnGreen);
            e.Display.DrawLine(new Line(m_min_dist_point_a, m_min_dist_point_b), Color.LawnGreen);
            e.Display.DrawPoint(m_max_dist_point_a, Color.Red);
            e.Display.DrawPoint(m_max_dist_point_b, Color.Red);
            e.Display.DrawLine(new Line(m_max_dist_point_a, m_max_dist_point_b), Color.Red);
        }
Exemple #13
0
 protected override void PostDrawObjects(Rhino.Display.DrawEventArgs e)
 {
     if (null != Mesh)
     {
         Rhino.Display.DisplayMaterial material = new Rhino.Display.DisplayMaterial();
         material.IsTwoSided  = true;
         material.Diffuse     = System.Drawing.Color.Blue;
         material.BackDiffuse = System.Drawing.Color.Red;
         e.Display.EnableLighting(true);
         e.Display.DrawMeshShaded(Mesh, material);
         e.Display.DrawMeshWires(Mesh, System.Drawing.Color.Black);
     }
 }
Exemple #14
0
 private void DisplayPipeline_PreDrawObjects(object sender, Rhino.Display.DrawEventArgs e)
 {
     GLShaderComponentBase.UpdateContext(e);
     if (_model.ProgramId != 0)
     {
         if (Rhino.Runtime.HostUtils.RunningOnWindows)
         {
             WindowsMethods.RHC_UpdateShader(_resourceName, _defines, _model.ProgramId);
         }
         else
         {
             MacMethods.RHC_UpdateShader(_resourceName, _defines, _model.ProgramId);
         }
         _model.RecycleCurrentProgram = false;
     }
 }
Exemple #15
0
        private static void DisplayPipeline_DrawPointcloud(object sender, Rhino.Display.DrawEventArgs e)
        {
            if (ClippingBox.IsValid && Clip)
            {
                Point3d max = new Point3d(
                    ClippingBox.X.Max,
                    ClippingBox.Y.Max,
                    ClippingBox.Z.Max
                    );

                Point3d min = new Point3d(
                    ClippingBox.X.Min,
                    ClippingBox.Y.Min,
                    ClippingBox.Z.Min
                    );

                int[] clips = new int[6];

                clips[0] = e.Display.AddClippingPlane(max, -Vector3d.XAxis);
                clips[1] = e.Display.AddClippingPlane(min, Vector3d.XAxis);

                clips[2] = e.Display.AddClippingPlane(max, -Vector3d.YAxis);
                clips[3] = e.Display.AddClippingPlane(min, Vector3d.YAxis);

                clips[4] = e.Display.AddClippingPlane(max, -Vector3d.ZAxis);
                clips[5] = e.Display.AddClippingPlane(min, Vector3d.ZAxis);


                e.Display.EnableClippingPlanes(true);

                e.Display.ZBiasMode = Rhino.Display.ZBiasMode.TowardsCamera;

                e.Display.DrawPointCloud(Cloud, (float)PointSize);

                e.Display.EnableClippingPlanes(false);

                for (int i = 0; i < 6; ++i)
                {
                    e.Display.RemoveClippingPlane(clips[i]);
                }
            }
            else
            {
                e.Display.DrawPointCloud(Cloud, 1);
            }
        }
Exemple #16
0
    static void DisplayPipeline_PostDrawObjects(object sender, Rhino.Display.DrawEventArgs e)
    {
        var spr = GetSprite();

        if (m_draw_single_sprite)
        {
            if (m_draw_world_location)
            {
                e.Display.DrawSprite(spr, new Point3d(20, 0, 0), m_sprite_size, System.Drawing.Color.White, false);
            }
            else
            {
                e.Display.DrawSprite(spr, new Point2d(150, 150), m_sprite_size, System.Drawing.Color.White);
            }
        }
        else
        {
            var items = GetItems();
            e.Display.DrawSprites(spr, items, m_sprite_size, false);
        }
    }
    protected override void DrawOverlay(Rhino.Display.DrawEventArgs e)
    {
        if (m_points.Count > 0)
        {
            var color = Rhino.ApplicationSettings.AppearanceSettings.TrackingColor;
            for (int i = 0; i < m_points.Count; i++)
            {
                if (i % 100 == 0 && e.Display.InterruptDrawing())
                {
                    break;
                }

                var pt  = m_points[i];
                var dir = m_normals[i];
                if (Flip)
                {
                    dir.Reverse();
                }
                e.Display.DrawDirectionArrow(pt, dir, color);
            }
        }
    }
Exemple #18
0
 protected override void DrawForeground(Rhino.Display.DrawEventArgs e)
 {
     e.Display.DrawArrow(m_line, System.Drawing.Color.Black, m_screen_size, m_world_size);
 }