andrewr
路人甲
路人甲
  • 注册日期2005-02-21
  • 发帖数32
  • QQ
  • 铜币244枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1692回复:3

[讨论]如何提高MouseMove事件的响应速度

楼主#
更多 发布于:2006-08-25 17:20
我需要在mousemove时间里判断鼠标是否在选择集之上,用过了ihittest.hittest和IRelationalOperator.contains来做,但速度还是比较慢,cpu占用率100,各位大侠有好的建议或者解决方案吗?谢谢!
喜欢0 评分0
hsghxm
路人甲
路人甲
  • 注册日期2004-10-27
  • 发帖数517
  • QQ4604052
  • 铜币1枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2006-08-26 11:35

<P>鼠标的{e.x,e.y}==>得到一个IPOINT,直接用IRelationalOperator.contains判断就可以了,速度应该不会慢的(注:把选择集合的Geometry合并起来,不需要每次都去一个一个的判断)</P>
<P>附:cpu占用率100?你用线程做的?如果是这样的话把线程暂停一下,如20毫秒,CPU就能释放了</P><img src="images/post/smile/dvbbs/em08.gif" />
MSN:hsghxm@163.com QQ:4604052 (很少用,最好别加) Email:hsghxm@163.com 我的BOLG:http://www.gisempire.com/blog/user1/864/index.htm
举报 回复(0) 喜欢(0)     评分
andrewr
路人甲
路人甲
  • 注册日期2005-02-21
  • 发帖数32
  • QQ
  • 铜币244枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2006-08-26 22:49
<P>没有用线程做过?请问有代码么?我用的是C#!</P>
举报 回复(0) 喜欢(0)     评分
hsghxm
路人甲
路人甲
  • 注册日期2004-10-27
  • 发帖数517
  • QQ4604052
  • 铜币1枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2006-08-28 10:21
<P>C#:</P>
<P>using System.Threading;</P>
<P>在你执行该操作的地方添加Thread.Sleep(20);</P>
<P>就可以释放CPU了</P>

MSN:hsghxm@163.com QQ:4604052 (很少用,最好别加) Email:hsghxm@163.com 我的BOLG:http://www.gisempire.com/blog/user1/864/index.htm
举报 回复(0) 喜欢(0)     评分
游客

返回顶部