- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我开发了一个小程序,用户可以在其中创建一个简单的图表,其中包含用线连接的抽象 block ,例如流程图或结构图。工作说明书的条款之一是线必须绕过其他 block \线并且在移动时不要与它们相交。
插图
我尝试使用像 A* 或 Lee 算法 这样的寻路算法,并考虑像图形一样的工作空间(一个带有图表元素的窗口)——一个像素就是一个像素图节点。但是, block \线的移动会导致显着的时间延迟(例如,在大小为 500x500 的工作空间中寻路大约需要 320-360 毫秒)。对于那些算法来说,图表似乎太大了。
你能告诉我如何减少这个案例的节点数量吗?也许有办法加速这些算法或使用其他方法吗?!
最佳答案
不要将其视为图论问题,而应将其视为物理问题。
可视化如下。每个方 block 都有特定的力将其拉向最后放置的位置。线段、 block 和图形的边按照平方反比定律相互排斥(除了你画的线的末端不排斥它前面的 block )。在足够大的压力下,一条线段可以分解成更小的线段,这些线段有恢复直线的拉力。
动态很复杂,但实体的数量是您在屏幕上看到的对象数量,而不是绘制对象的像素数量。因此,您将能够相对快速地进行更新。
您需要稍微调整动态以获得良好的体验,但这应该是一种更易于处理的方法。
关于algorithm - 如何为寻路算法优化大图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52602833/
我有两种尺寸的图像(垂直和水平),它们将始终具有相同的尺寸,恭敬。我正在尝试创建一个容器来容纳图像但不会将内容推到上面并保持相似的高度或宽度。我也不想显示完整尺寸的图像,所以我在考虑使用 overfl
我有一个使用该类的 LaTeX 文档 \documentclass[12pt,a4paper]{scrbook} 我更改了一些用于定位浮点数的参数: \renewcommand{\topfractio
我有一个问题想和你分享。 所以就在这里。想象一下,我有一个非常大的图像,当我打开我的页面时它需要很重的负载。如果我想要将图像剪切成许多小块并在加载图像时将它们一个接一个地合并(只是 javascrip
我正在学习 Java SE 6.0。 是否有一张大图或图表来说明 Java 6.0 的所有类以及它们之间的关系? 提前致谢。 尊敬的 stackoverflow 开发人员和程序员。 你好。非常感谢您对
我得到了一个 InflateException 并且抛出了一个 OutOfMemoryError 异常。我知道我应该能够通过减小图像的大小/分辨率,或者通过将 android:largeHeap="t
我必须引用 id 从服务器到 android 移动设备检索所有大小的图像,所以我尝试使用下面的编码并成功获得 base 64 字符串并检索等效 base64string 的图像它适用于小尺寸图像但当我
我是一名优秀的程序员,十分优秀!