Beispiel #1
0
        /// <summary>
        /// at least source points should be non zero
        /// </summary>
        /// <param name="mypointCloudTarget"></param>
        /// <param name="mypointCloudSource"></param>
        /// <param name="mypointCloudResult"></param>
        /// <param name="changeColor"></param>
        //public void Show3PointClouds(PointCloud mypointCloudSource, PointCloud mypointCloudTarget, PointCloud mypointCloudResult, bool changeColor)
        //{

        //    this.OpenGL_UControl.RemoveAllModels();

        //    //target in green
        //    List<System.Drawing.Color> myColors;
        //    if (mypointCloudTarget != null)
        //    {

        //        if (changeColor)
        //        {
        //            myColors = ColorExtensions.ToColorList(mypointCloudTarget.Count, 0, 255, 0, 255);
        //            PointCloud.SetColorToList(mypointCloudTarget, myColors);
        //        }
        //        this.OpenGL_UControl.ShowPointCloud("ICP Target", mypointCloudTarget);

        //    }

        //    if (mypointCloudSource != null)
        //    {
        //        //source in white
        //        myColors = ColorExtensions.ToColorList(mypointCloudSource.Count, 255, 255, 255, 255);
        //        if (changeColor)
        //            PointCloud.SetColorToList(mypointCloudSource, myColors);
        //        this.OpenGL_UControl.ShowPointCloud("ICP To be matched", mypointCloudSource);

        //    }

        //    if (mypointCloudResult != null)
        //    {

        //        //transformed in red
        //        myColors = ColorExtensions.ToColorList(mypointCloudResult.Count, 255, 0, 0, 255);
        //        if (changeColor)
        //            PointCloud.SetColorToList(mypointCloudResult, myColors);
        //        this.OpenGL_UControl.ShowPointCloud("ICP Solution", mypointCloudResult);

        //    }

        //}
        /// <summary>
        /// at least source points should be non zero
        /// </summary>
        /// <param name="mypointCloudTarget"></param>
        /// <param name="mypointCloudSource"></param>
        /// <param name="mypointCloudResult"></param>
        /// <param name="changeColor"></param>
        public void Show3PointClouds(PointCloud mypointCloudSource, PointCloud mypointCloudTarget, PointCloud mypointCloudResult, bool changeColor)
        {
            this.OpenGL_UControl.RemoveAllPointClouds();


            List <System.Drawing.Color> myColors;


            if (mypointCloudSource != null)
            {
                mypointCloudSource.Name = "Source";
                //source in white
                myColors = ColorExtensions.ToColorList(mypointCloudSource.Count, 255, 255, 255, 255);
                if (changeColor)
                {
                    PointCloud.SetColorToList(mypointCloudSource, myColors);
                }
                this.OpenGL_UControl.ShowPointCloud(mypointCloudSource);
            }

            if (mypointCloudResult != null)
            {
                mypointCloudResult.Name = "Result";

                //transformed in red
                myColors = ColorExtensions.ToColorList(mypointCloudResult.Count, 255, 0, 0, 255);
                if (changeColor)
                {
                    PointCloud.SetColorToList(mypointCloudResult, myColors);
                }
                this.OpenGL_UControl.ShowPointCloud(mypointCloudResult);
            }
            if (mypointCloudTarget != null)
            {
                mypointCloudTarget.Name = "Target";
                //target in green
                if (changeColor)
                {
                    myColors = ColorExtensions.ToColorList(mypointCloudTarget.Count, 0, 255, 0, 255);
                    PointCloud.SetColorToList(mypointCloudTarget, myColors);
                }
                this.OpenGL_UControl.ShowPointCloud(mypointCloudTarget);
            }
        }