全球FlexSim系统仿真中文论坛

搜索
查看: 3530|回复: 9
打印 上一主题 下一主题

请问如何如何根据生产状态(比如开机或停机)改变实体(比如处理器)....

[复制链接]
匿名
跳转到指定楼层
1#
匿名  发表于 2019-1-25 17:10:23 回帖奖励 |倒序浏览 |阅读模式
比如一台处理器,设置了SETUP TIME,则在OnSetupFinishi里设置改变固定实体3D外观的触发,表示开始作业。% Y1 p9 A( z% L9 p6 @
系统的默认程序(已将item改成了current):7 A. K: `/ v% N) y* f. w
treenode item = parnode(1);
0 ^0 S: s1 n) n( i% k; wtreenode current = ownerobject(c);
! i' j4 g' J  j9 ?int port = parval(2);- K/ P7 l9 v. `4 `$ x4 @
{ //************* PickOption Start *************\\$ m  b2 a$ k# b; H8 |- f
/***popup:Change3DShape*/
* \# H: ~& y! h4 C1 F- o/ @, A/**Change 3D Shape*/
9 m/ d0 [0 m* b0 T: M/** \nObject: */
# h1 j$ h) m7 g+ V, Gtreenode involved = /***tag:node*//**/current/**/;
9 d! j( w* s+ S3 e* w! w; G2 M/** \nShape Index Number: */% l9 e8 T, g, y2 b& L
double theindex = /***tag:index*//**/getshapeindex("fs3d\\General\\Box.3ds")/**/;* `# N7 I  N: c7 d9 k7 q
* N  a7 I* z9 b4 R1 \( ~; h, V
setname(shape(involved),"_shape");
7 j) J& U8 s3 L& Ksetobjectshapeindex(involved,theindex);
. t- J! |1 ?: i' l8 k6 q/**\n*/
) O3 @2 C" H9 {} //******* PickOption End *******\\- t4 J5 A0 a( j4 J8 B" i
4 l1 ?: X2 l8 Y: V, D/ \6 m
其中,8 r. _0 @- c0 A
fs3d\\General\\Box.3ds
6 j1 O; T# w$ G# \4 H6 v! f8 t$ H我尝试将自己的模型(SKP格式)放到这个路径下(C:\Program Files (x86)\Flexsim6\fs3d\General\),但一旦触发生效后,模型没有显示出来,读取失败?8 F0 h- i/ K: B4 Q& K
请问正确的操作是怎样的呢?谢谢!
3 a* U; `% X+ K! q6 y4 a) ^0 |. S) U9 B: Y! E
2#
SunshineFu 发表于 2019-1-25 20:13:21 | 只看该作者
不清楚具体情况,可以上传模型吗?
3#
王奕 发表于 2019-1-25 20:42:31 | 只看该作者
你好,请查看附件,5 F/ r2 ~3 w" u3 I. t
里面包含了两个SKP模型和一个FLEXSIM6版本的模型。
1 V' h* G5 l! |$ y, a; LFLEXIM模型是想描述一个烘箱的工序过程:停机的时候,门是打开的;开机运行的时候,门是关上的,所以想通过OnSetupFinish触发和OnProcessFinish触发来改变外观,但不知该如何让它们能正确显示出来。
% `2 O- e6 z9 L7 r6 R谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
5#
Stevenzheng 发表于 2019-1-26 09:23:02 | 只看该作者
我式了可以呐,只是在Shap下拉框中选的.
' c% @% u; M* F8 K- x2 k
' U$ N7 T, x. z2 u+ @

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
6#
王奕 发表于 2019-1-26 09:51:05 | 只看该作者
我用的是flexsim6版本的,一直没有试出来
7#
Stevenzheng 发表于 2019-1-26 13:15:35 | 只看该作者
王奕 发表于 2019-1-25 23:11
4 M! y: a( ?6 L: B- s7 g问题如图

( k7 P5 E) H) I8 _9 G我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试呢
8#
Stevenzheng 发表于 2019-1-26 13:23:06 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:157 V7 O& L# E5 V+ T
我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试 ...

0 [/ ]( p, a) Y$ U( Z+ c里面代码是这样的:+ P1 H3 E& \6 h
treenode item = parnode(1);
" r0 p( p! a& y! E( a8 ~treenode current = ownerobject(c);
  R/ h4 r4 P( R. G. m" L{ //************* PickOption Start *************\\  `. I# D* f- F$ p% G5 p( q
/***popup:Change3DShape*// [  o; E8 i4 l
/**Change 3D Shape*/
2 ]& e4 S# x" ?treenode involved = /** \nObject: *//***tagbject*//**/current/**/;6 L) i8 H5 M, a$ S
string shapename = /** \nShape: *//***tag:shapepath*//**/"C:\\Users\\admin\\Desktop\\flexsim model\\sketchup models_CS\\heating cabinet_type1_running.skp"/**/;
2 @" z  y. S* w6 j  b, p
3 W: J* ]$ |/ r' b8 e$ k9 m8 Hdouble theindex = getshapeindex(shapename);) q( O5 B) T% @/ y" _+ @

, u3 Q9 C. ]& ~! K9 g//Grab the current size of the object# E2 L; {% U% G+ k4 N
double x = xsize(involved);1 Z. Q4 {  N  _5 Q
double y = ysize(involved);
. _1 }8 ^' v- E: N6 Z' odouble z = zsize(involved);( q' W$ R' A3 a9 W: @9 |

  Y% B0 L8 j- ], q! s' a" A1 lsetname(shape(involved),"_shape");8 t4 k- d3 t/ p. @% `# t  |) T
setobjectshapeindex(involved,theindex);6 H5 t3 T$ c) y5 I3 Q& e2 H. k

9 y$ t) V8 w# a% h//Update the object to the original size- B) f" \5 l( u- \6 ^* M6 ?
applyshapefactors(involved);
1 s$ @( ^1 w3 Ksetsize(involved, x, y, z);
/ o% W7 [9 |( D4 Q+ I6 I. G/** \nNote: The getshapeindex command is slow if it is called frequently. 9 o3 `; {' a% [, C4 \
It is better to define the shape index in a global variable that gets set
) y6 ~) S) p2 w1 fduring reset. You can then replace getshapeindex with the name of your global variable.
8 K6 s7 `! i. \& BIndex values for 3D shapes can be found through the Tools>Media Files menu,- B& ^7 O4 G# [
but keep in mind that index values can change when new media is loaded.*/
  K# y& `. ^$ \1 ~4 T7 o} //******* PickOption End *******\\
3 s# Q$ B1 h( L! w
9#
Stevenzheng 发表于 2019-1-26 13:25:51 | 只看该作者
本帖最后由 Stevenzheng 于 2019-1-26 13:28 编辑
  @4 a6 W1 d/ l% c2 ?9 N( N& f
Stevenzheng 发表于 2019-1-26 13:23) |/ Z) I  k/ j# A( O
里面代码是这样的:
7 V) R+ O4 h% [0 y. s" \3 Utreenode item = parnode(1);, h( y# @8 y% W6 r- p
treenode current = ownerobject(c);

4 o" Q$ d' f3 s: w: k那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改了保存不上
10#
王奕 发表于 2019-1-27 10:43:13 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:25
8 e& X5 t. w6 T% F/ |" p/ D那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改 ...

6 S- n5 f! `9 e! F( Y感谢回复,6里面没有吸管,也没有下拉框,只能通过代码来尝试。1 |3 Z; O5 V9 G+ K* U5 o! g
又试了几次,还是不行,只能改用别的方法来标识了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2024-5-20 14:07 , Processed in 0.089314 second(s), 14 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表