Exemplo n.º 1
0
        /// <summary>
        /// renders the QTree in current openGl context
        /// </summary>
        private void RenderingPass(QTreeWrapper qtree, float FOV, float near, float far, Vector3f eyeVector, Point2f position)
        {
            QTree lasTree = qtree.qtree;

            if (lasTree != null)
            {
                lasTree.RenderingPass(FOV, near, far, eyeVector, position - qtree.positionOffset);

                /*
                 *                      Point3D tempPoint = new Point3D();
                 *                      int pointSize = Marshal.SizeOf(tempPoint);
                 *
                 *                      int allowedPointsInMemory = dedicatedPointMemory / pointSize;
                 *
                 *                      float percent = (float)lasTree.numberOfLoadedPoints / (float)allowedPointsInMemory;
                 *
                 *                      //allow discrepancy of 15%
                 *                      if (Math.Abs(percent - LOD) > 0.1)
                 *                      {
                 *                              LOD = (float)allowedPointsInMemory / (float)qtree.lasFile.header.NumberOfPointRecords;
                 *                              //lasTree.CascadeLOD(LOD);
                 *                      }
                 */
            }
        }