Example #1
0
        /// <summary>
        /// 获取播放绘制的越界线信息
        /// </summary>
        /// <param name="vodHandle">播放标示句柄</param>
        /// <returns>绘制的越界线信息</returns>
        public List <PassLine> GetPlayDrawPassline(Int32 vodHandle)
        {
            MyLog4Net.ILogExtension.DebugWithDebugView(MyLog4Net.Container.Instance.Log, "IVXSDKProtocol VdaSdk_GetPlayDrawPassline lVodHandle:" + vodHandle);
            TVDASDK_DRAW_PASSLINE passline = new TVDASDK_DRAW_PASSLINE();
            bool retVal = IVXSDKProtocol.VdaSdk_GetPlayDrawPassline(vodHandle, out passline);

            if (!retVal)
            {
                // 调用失败,抛异常
                CheckError();
            }
            MyLog4Net.ILogExtension.DebugWithDebugView(MyLog4Net.Container.Instance.Log, string.Format("IVXSDKProtocol VdaSdk_GetPlayDrawPassline ret:{0},"
                                                                                                       , retVal));
            List <PassLine> ret = new List <PassLine>();

            for (int i = 0; i < passline.dwPassLineNum; i++)
            {
                TVDASDK_IA_SEARCH_PASS_LINE line = passline.atPassLineList[i];
                ret.Add(new PassLine
                {
                    PassLineType    = line.dwPassLineType,
                    PassLineStart   = new System.Drawing.Point((int)line.tPassLine.tStartPt.dwX, (int)line.tPassLine.tStartPt.dwY),
                    PassLineEnd     = new System.Drawing.Point((int)line.tPassLine.tEndPt.dwX, (int)line.tPassLine.tEndPt.dwY),
                    DirectLineStart = new System.Drawing.Point((int)line.tDirectLine.tStartPt.dwX, (int)line.tDirectLine.tStartPt.dwY),
                    DirectLineEnd   = new System.Drawing.Point((int)line.tDirectLine.tEndPt.dwX, (int)line.tDirectLine.tEndPt.dwY),
                });
            }
            return(ret);
        }