超然A 发表于 2006-3-21 21:08:00

关于提高LISP程序速度

<P>最近根据置顶的帖子“求多义线的交点”做了一个求两个图层“打架”(相交)的程序。</P>
<P>结果因为我们做的地图图面信息量很大,每个图层的东西都是成千上万。</P>
<P>所以LISP执行程序检查交点太慢了(好几个小时),有没有提高执行速度的一些好建议?</P>
<P>如果大家不说,我就去自己找了。找到了给大家看。</P>

ZZXXQQ 发表于 2006-3-22 10:52:00

<P>1、能在循环外计算的数据放在循环外计算;</P>
<P>2、能局部选择实体就采用局部框选;</P>
<P>3、少用实数和转换函数;</P>
<P>4、关闭程序的屏幕输出(SETVAR "CMDECHO" 0);</P>
<P>5、如可能,关闭UNDO;</P>
<P>6、少用COMMAND函数;</P>

别晨 发表于 2006-3-22 12:26:00

严重同意2楼!<br>另外要进可能的优化程序的算法,这一点也是相当重要的<br>如果已经采用了你所能想到的最优算法,程序还要执行好几个小时的话<br>那就要限定程序使用的范围在可以接受的时间内执行完毕<br>或者放弃<br>

Andyhon 发表于 2006-3-22 13:41:00

<P>果真这么耗时建议用ArxObject来开发</P>
<P>&nbsp;</P>

超然A 发表于 2006-3-22 21:03:00

谢谢大家的建议

qq229918602 发表于 2012-5-6 22:05:37

能放程序么???参详一下。

hgf876 发表于 2012-5-7 09:00:48

用objectarx来开发了,运行速度肯定要快很多

sfzyr 发表于 2012-5-7 11:43:12

相交線求焦點的問題,論壇編程群裏面有個共享文件,--<算法>   ,其中一個例子,專門講到了這個求焦點的德優化算法,非常詳細,不知道有沒有高手按照裏面的最優化算法,用Lisp來編寫一個了?

fawn_lgc 发表于 2012-5-8 16:11:00

本帖最后由 fawn_lgc 于 2012-5-8 16:15 编辑

多用command命令。
我发现很多人不喜欢用command命令, 其实官方内置的命令本身就是很优秀的程序。
一行command命令就能解决的问题的话,自己另起炉灶写出一大堆程序未必能与之媲美,
除非你能确定你是高手。
我开发的号称运行最流畅占有CPU最少的动态填充,看了源代码后你会惊讶的发现其实它是用command命令实现。

lidaxiu 发表于 2012-5-8 21:22:40

呵呵取长补短,众说纷云啊
页: [1]
查看完整版本: 关于提高LISP程序速度