Exemplo n.º 1
0
        /// <summary>
        /// get vector ptr and length, no copy
        /// </summary>
        /// <param name="len"></param>
        /// <returns></returns>
        public unsafe DHVertex *GetPathDataPtr(out int len)
        {
            len = Length;
            if (IsNull)
            {
                len = 0;
                return(null);
            }
            DHVertex *vertices = Native.dh_getpathdata(path);

            return(vertices);
        }
Exemplo n.º 2
0
        /// <summary>
        /// copy path data to array
        /// </summary>
        /// <returns></returns>
        public DHVertex[] GetPathData()
        {
            if (IsNull)
            {
                return(null);
            }
            DHVertex *vertices = Native.dh_getpathdata(path);
            var       ret      = new DHVertex[Length];

            for (int i = 0; i < Length; i++)
            {
                ret[i] = vertices[i];
            }
            return(ret);
        }
Exemplo n.º 3
0
        public DHVertex[] GetVertexes()
        {
            if (IsNull || !mapLoaded)
            {
                return(null);
            }
            void *vuv1  = (void *)0;
            int   size1 = 0;

            Native.dh_get_vectices(dh, ref vuv1, &size1);
            var ret = new DHVertex[size1];

            for (int i = 0; i < size1; i++)
            {
                DHVertex *ut = (DHVertex *)vuv1;
                ret[i] = ut[i];
            }
            return(ret);
        }