登录发现更多内容
首页
资讯
分类
目录
索引
酷站
发帖
用户名
Email
自动登录
找回密码
密码
登录
立即注册
立即登录
立即注册
其他登录
QQ
微信
门户
Portal
论坛
BBS
搜索
搜索
本版
用户
帖子
设置
我的收藏
退出
1
0
0
首页
技术交流
›
随手翻:任务执行器分配任务给行进距离最短的任务执行器 ...
返回列表
随手翻:任务执行器分配任务给行进距离最短的任务执行器
[ 复制链接 ]
zorsite
技术交流
1281
1
2017-4-24 01:03:36
任务分配器的pass to选项,返回的是一个端口值。将任务分配给与该中间端口连接的任务执行器。
以下为flexsim17.1自带,寻找行进距离最短的任务分配器:
[code]treenode tasksequence = param(1);
Object current = ownerobject(c);
/**找到距离最近的任务执行器*/
/**如果任务执行器在网络路径上,则计算网络路径的距离,否则计算实体中心点间距。*/
double curmin = GLOBAL_UNREACHABLE;
int minindex = 0;
treenode destination = NULL;
for (int taskrank = 1; taskrank <= gettotalnroftasks(tasksequence) && destination == NULL; taskrank++)
{ // 找到第一个行进任务,并获取行进目的地。&& destination == NULL确保一旦找到行进目的地就退出for循环。
if (gettasktype(tasksequence,taskrank) == TASKTYPE_TRAVEL)
destination = gettaskinvolved(tasksequence,taskrank,1);
}
if (destination==NULL) // 如果没有行进任务,把任务传递给第一个可用任务执行器。
return 0;
//如果有行进目的地,则遍历所有任务执行器,寻找距离最近的那个。
for (int index = 1; index <= current.outObjects.length; index++)
{
treenode curobj = current.outObjects[index];
if (curobj && isclasstype(curobj, CLASSTYPE_TASKEXECUTER))
//中间端口有连接实体,并且该实体为任务执行器
{
double curdist = distancetotravel(curobj, destination);
//计算任务执行器和目的地之间的距离
if (curdist != GLOBAL_UNREACHABLE && (curmin == GLOBAL_UNREACHABLE || curmin > curdist))
{//如果计算出来的距离小于curmin,则更新curmin,把当前距离作为最小距离。
curmin = curdist;
minindex = index;
}
}
}
return minindex;
//返回minindex,距离最近的那个任务执行器在任务分配器上的中间端口号。[/code]
随手翻,不保证正确性、可读性。
点赞
0
收藏
0
────
0
人觉得很赞
────
回复
举报
1 回复
eb_sun
回复
举报
2017-4-24 11:08:09
谢谢大神的分享:victory:
回复
评论
举报
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
立即登录
点评
高级模式
本版积分规则
回帖后跳转到最后一页
返回
浏览过的版块
信息公告
新手入门
技术交流
登录开启您的创作之旅
快速登录,立即开启您的创作之旅~
登录
热门问答
查看更多
1
厂区生产线布局优化案例!新做的!
厂区生产线布局优化案例!新做的!
12102
227
2
Flexsim二次开发之塔吊
Flexsim二次开发之塔吊
6150
45
3
FlexSim2016 中国象棋
FlexSim2016 中国象棋
6023
44
4
快递分拨中心案例~新手可参考
快递分拨中心案例~新手可参考
5639
62
5
关于Processs Flow 使用的两个案例(AGV Elevator案例/子母穿梭
关于Processs Flow 使用的两个案例(AGV Elevator案例/子母穿梭
5492
34
博主榜
Htenghui
+ 10630
白可露
+ 7753
liguanyu
+ 6759
4
Round2011
+ 6323
5
梁之安
+ 6321
6
zgh1120
+ 5341
7
ishelo
+ 4710
8
linweixu168
+ 3722
9
liuzhifan
+ 3628
10
adysunshine
+ 3566
首页
分类
目录
索引
我的