一堆土 2019-06-10 09:29 采纳率: 0%
浏览 454
已结题

vtkUnstructedGrid非结构化网格效率问题

C#编程语言下,在vtkUnstructedGrid中添加数据时,数据量很大时,效率执行很慢

        DateTime start = DateTime.Now;
        foreach (PartUnit model in parts2Nodes.Keys)
        {
            if (!model.Visible)
            {
                continue;
            }
            foreach (AbstractCell cell in model.Cells)
            {
                if (availableCellIds != null && !availableCellIds.Contains(cell.CellId))
                {
                    continue;
                }
                //iCellId = (int)grid.InsertNextCell(12, cell.IdList);
                iCellId++;
                actualCellId2OriginalId[iCellId] = cell.CellId;
                int iCount = cell.Count;
                for (int i = iCount - 1; i >= 0; --i)
                {
                    pointsState[cell[i]] = true;
                }
            }
        }
        DateTime end = DateTime.Now;

        TimeSpan time = end - start;

        time.TotalMilliseconds.ToString();

当model.Cells总共有200多万个单元时,耗时要12s以上,效率很低,请求各位走过路过的大佬,我该怎么做

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-06-10 09:38
    关注

    你有两重循环大量的contains,可以考虑用dictionary先把键提取出来再连接,而不是反复循环

    评论

报告相同问题?

悬赏问题

  • ¥50 汇编语言除法溢出问题
  • ¥65 C++实现删除N个数据列表共有的元素
  • ¥15 Visual Studio问题
  • ¥15 state显示变量是字符串形式,但是仍然红色,无法引用,并显示类型不匹配
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗