首  页   最新日志    火人论坛        火人作品    编程园地    网络日志    网友作品     留言本本     关于火人
用户登陆
用户:
密码:
 

站点日历
73 2018 - 10 48
 123456
78910111213
14151617181920
21222324252627
28293031




日志搜索

 标题   内容

 
 
一生都要珍惜的人 AsphyreGUI完全中文支持版本--火人制作
晴天 传奇2地图读取(带寻路算法及源码)--火人出品
   [分类:火人作品][发表日期:2006-6-20] [发表:火人[查看:138188]

按此在新窗口打开图片
关于传奇地图的格式网上有很多,就不再多做说明,不了解的也可直接看代码。
显示引擎用的DelphiX
寻路算法已经封装成两个类TPathMap(通用),TLegendMap(传奇2专用)
(****************************************************************************
  关于TLegendMap(位于PathFind.pas)的用法
  1、FLegendMap:=TLegendMap.Create;
     FLegendMap.LoadMap('mapfile')返回地图数据TMapData
     FLegendMap.SetStartPos(StartX, StartY,PathSpace)
     Path:=FLegendMap.FindPath(StopX, StopY)
  2、FLegendMap:=TLegendMap.Create;
     FLegendMap.LoadMap('mapfile')返回地图数据TMapData
     Path:=FLegendMap.FindPath(StartX,StartY,StopX, StopY,PathSpace)

     其中
     Path为TPath = array of TPoint 为nil时表示不能到达
     第一个值为起点,最后一个值为终点

     PathSpace为离开障碍物多少个象素
****************************************************************************)

(****************************************************************************
  关于TPathMap的特点
  1、不需要传递地图数据,节省内存的频繁拷贝
  2、可自定义估价函数,根据自己需要产生不同路径

  关于TPathMap的用法
  1、定义估价函数MovingCost(X, Y, Direction: Integer)
     只需根据自定义的地图格式编写)
  2、FPathMap:=TPathMap.Create;
     FPathMap.MakePathMap(MapHeader.width, MapHeader.height, StartX, StartY,MovingCost);
     Path:=FPathMap.FindPathOnMap( EndX, EndY)
     其中Path为TPath = array of TPoint;

  如果不喜欢在TPathMap外部定义估价函数,可继承TPathMap,
  将地图数据的读取和估价函数封装成一个类使用。
***************************************************************************)

点击下载此文件



[本日志由 火人 于 2006-06-22 03:04 AM 编辑]

[6] [7] [8] [9] [10] [11] [12] [13] [14] [15]  ... [30]  

引用这个评论 Alfredgoaks 于 2017-09-08 04:51 AM 发表评论: 
wh0cd874586 [url=http://tretinoin.fail/]tretinoin cream[/url] [url=http://eloconoverthecounter.pro/]elocon cream over the counter[/url] 

引用这个评论 MichaelWen 于 2017-09-08 02:48 AM 发表评论: 
wh0cd4788791 [url=http://genericcialis.directory/]generic cialis[/url] [url=http://methotrexate.tools/]methotrexate lupus[/url] [url=http://buy-atarax.shop/]atarax[/url] 

引用这个评论 CharlesWab 于 2017-09-08 01:45 AM 发表评论: 
wh0cd4494890 [url=http://genericseroquel.pro/]seroquel for children[/url] [url=http://yasmin.work/]yasmin[/url] [url=http://buy-effexor.work/]venlafaxine effexor[/url] 

引用这个评论 Brettdib 于 2017-09-07 11:46 PM 发表评论: 
wh0cd4494904 [url=http://baclofen.work/]baclofen tablets[/url] [url=http://tretinoin.store/]tretinoin[/url] 

引用这个评论 Brettdib 于 2017-09-07 09:24 PM 发表评论: 
wh0cd4421428 [url=http://advair.us.com/]advair[/url] 

引用这个评论 AaronCax 于 2017-09-07 07:58 PM 发表评论: 
wh0cd3760155 [url=http://elimite.news/]elimite[/url] [url=http://prednisoloneonline.pro/]prednisolone[/url] 

引用这个评论 CharlesWab 于 2017-09-07 07:36 PM 发表评论: 
wh0cd4127525 [url=http://tretinoincream025.pro/]tretinoin cream[/url] [url=http://buyabilify.shop/]wellbutrin abilify[/url] 

引用这个评论 CharlesWab 于 2017-09-07 06:35 PM 发表评论: 
wh0cd4347964 [url=http://nexiumgeneric.pro/]generic nexium[/url] [url=http://wellbutrinonline.pro/]wellbutrin xl 150 mg[/url] 

引用这个评论 AaronCax 于 2017-09-07 02:11 PM 发表评论: 
wh0cd4715348 [url=http://buy-ventolin.reisen/]buy ventolin inhaler online[/url] [url=http://lasixonline.pro/]lasix[/url] 

引用这个评论 Stewartfoush 于 2017-09-07 12:44 AM 发表评论: 
wh0cd4568379 [url=http://buyprednisone.reisen/]prednisone[/url] [url=http://cipro.directory/]cipro[/url] [url=http://buy-albendazole.work/]albendazole[/url] 

引用这个评论 Brettdib 于 2017-09-07 10:08 AM 发表评论: 
wh0cd4200995 [url=http://buysynthroid.store/]where to buy synthroid online[/url] 

引用这个评论 Alfredgoaks 于 2017-09-07 08:01 AM 发表评论: 
wh0cd213325 [url=http://medrol.work/]medrol[/url] [url=http://buyabilify.shop/]abilify 2 mg[/url] 

引用这个评论 AaronCax 于 2017-09-07 07:37 AM 发表评论: 
wh0cd4494922 [url=http://effexorgeneric.pro/]75 mg effexor[/url] 

[6] [7] [8] [9] [10] [11] [12] [13] [14] [15]  ... [30]  

 

发表评论
发表: 用户:  密码:   注册?  
验证码    
评论:

禁止表情
禁止UBB
禁止图片
识别链接
识别关键字
表  情
 

Copyright © 2006 All rights reserved. Design by huosoft

电话:13974847258    QQ群:7155339
Powered by L-Blog V-Blog 2004-2005