全球FlexSim系统仿真中文论坛

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

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

[复制链接]
匿名
跳转到指定楼层
1#
匿名  发表于 2019-1-25 17:10:23 回帖奖励 |倒序浏览 |阅读模式
比如一台处理器,设置了SETUP TIME,则在OnSetupFinishi里设置改变固定实体3D外观的触发,表示开始作业。& L+ J# i6 X# Z0 j& O
系统的默认程序(已将item改成了current):
2 C. Q. O% l5 N7 V, Q! |treenode item = parnode(1);. @6 Y4 Y4 ], g5 S
treenode current = ownerobject(c);
$ Q7 Y+ T) K6 w3 P% bint port = parval(2);# ]5 _  p1 E2 q; S% q" A0 q6 c3 D9 ?
{ //************* PickOption Start *************\\3 [( y% R* F6 w0 ]% ~" ?4 _
/***popup:Change3DShape*/: A5 o4 T$ E3 D3 C
/**Change 3D Shape*/
+ G5 h' i0 `2 w, }4 [/** \nObject: */
; j% U, C% M5 @1 I) dtreenode involved = /***tag:node*//**/current/**/;1 v9 A7 N) a8 C( n; L7 M, K
/** \nShape Index Number: */
* M% k' X4 @6 {double theindex = /***tag:index*//**/getshapeindex("fs3d\\General\\Box.3ds")/**/;
( [. R0 |$ _  J6 B8 ^2 k; E1 q  K9 b( H) n- I9 D
setname(shape(involved),"_shape");. d# I* a* X# c2 a# [: S) m; {& O
setobjectshapeindex(involved,theindex);# ^1 t! o2 a. C6 W  l4 t
/**\n*/
+ w4 |! |- E, M! L" I1 B: |} //******* PickOption End *******\\" h, d  j/ C5 q: b# o
" v2 E( h8 v( B# L
其中,
+ W" Y: H- E* f( c. tfs3d\\General\\Box.3ds  X) j& D# K3 ~7 `
我尝试将自己的模型(SKP格式)放到这个路径下(C:\Program Files (x86)\Flexsim6\fs3d\General\),但一旦触发生效后,模型没有显示出来,读取失败?$ z* m9 f& R/ _: ]2 \# F
请问正确的操作是怎样的呢?谢谢!
0 F: ~! w$ i4 o' j, Z, K
5 X1 I( o7 V: {6 W# P& V/ Y
2#
SunshineFu 发表于 2019-1-25 20:13:21 | 只看该作者
不清楚具体情况,可以上传模型吗?
3#
王奕 发表于 2019-1-25 20:42:31 | 只看该作者
你好,请查看附件,
/ O  p1 A" T9 e4 ^9 r3 M% F* ]里面包含了两个SKP模型和一个FLEXSIM6版本的模型。% q5 h) w( X; d' {# t
FLEXIM模型是想描述一个烘箱的工序过程:停机的时候,门是打开的;开机运行的时候,门是关上的,所以想通过OnSetupFinish触发和OnProcessFinish触发来改变外观,但不知该如何让它们能正确显示出来。) o& T3 v, ]: B7 `7 V
谢谢!

本帖子中包含更多资源

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

x
5#
Stevenzheng 发表于 2019-1-26 09:23:02 | 只看该作者
我式了可以呐,只是在Shap下拉框中选的.
; s- u& }2 M3 \. h% b2 y
1 ?% R1 H9 E3 }: Y

本帖子中包含更多资源

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

x
6#
王奕 发表于 2019-1-26 09:51:05 | 只看该作者
我用的是flexsim6版本的,一直没有试出来
7#
Stevenzheng 发表于 2019-1-26 13:15:35 | 只看该作者
王奕 发表于 2019-1-25 23:11
9 b! e+ t: P% V" b9 S" Z" v, J问题如图
' v  {- v6 X# H0 j5 y
我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试呢
8#
Stevenzheng 发表于 2019-1-26 13:23:06 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:15
% B8 o8 X0 E1 p9 X3 T5 s" H我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试 ...
% y1 E! |7 H+ I# M# B" O6 w
里面代码是这样的:( A0 c& i( d  o* X% z( o
treenode item = parnode(1);4 b0 B" i, F1 L% @7 l, Q
treenode current = ownerobject(c);6 ]% @2 U4 f# _1 |0 b1 j0 p
{ //************* PickOption Start *************\\& X5 p' h7 R1 B" W4 I; ]
/***popup:Change3DShape*/; ]1 e* P; e; \* B! H' Z* d# _
/**Change 3D Shape*/5 |5 i3 z* g/ {8 Z% O& A
treenode involved = /** \nObject: *//***tagbject*//**/current/**/;1 o, j" \7 P1 V  F& X
string shapename = /** \nShape: *//***tag:shapepath*//**/"C:\\Users\\admin\\Desktop\\flexsim model\\sketchup models_CS\\heating cabinet_type1_running.skp"/**/;, V% V" U9 Y1 i+ I+ b* J0 }
* {0 t. N4 x5 D1 s# }+ B
double theindex = getshapeindex(shapename);
: K7 a, f( X6 M  P  F
) e) K' u8 N  ^9 _. M//Grab the current size of the object- u: J- v  h5 |
double x = xsize(involved);
" v9 r+ @/ |+ l. xdouble y = ysize(involved);4 x7 B2 c+ J; D& @0 N9 i$ l
double z = zsize(involved);2 T/ c/ r# b: F0 A! N+ Z

' l& x: X' R& e% p- r6 vsetname(shape(involved),"_shape");
% f( g- \/ _4 Nsetobjectshapeindex(involved,theindex);6 I% e) n$ Z, g5 R1 m8 B0 M
% y8 J! j1 _5 T1 x5 r; m% w
//Update the object to the original size/ u7 d! l4 u4 _6 n$ K7 b& f. n
applyshapefactors(involved);
! l4 X: O# V7 ^setsize(involved, x, y, z);
8 J' L: v. k# L5 I3 C  B& m/** \nNote: The getshapeindex command is slow if it is called frequently. # M( T: ~1 g/ ~& Q# g8 i1 D' J) v8 ^
It is better to define the shape index in a global variable that gets set
2 }1 G# F9 W) }& ]( fduring reset. You can then replace getshapeindex with the name of your global variable.1 I) f" S, m9 X8 [' y8 m! T% x
Index values for 3D shapes can be found through the Tools>Media Files menu,. }  |3 Y8 X8 m! \, @  j: m! T* |
but keep in mind that index values can change when new media is loaded.*/
6 t8 u  |  P+ }: a, W0 l7 C} //******* PickOption End *******\\4 c0 s$ z8 B3 D" A+ V0 V! `1 Z
9#
Stevenzheng 发表于 2019-1-26 13:25:51 | 只看该作者
本帖最后由 Stevenzheng 于 2019-1-26 13:28 编辑
" G4 D$ Z4 o: D4 _  j2 t" n
Stevenzheng 发表于 2019-1-26 13:23+ i4 Y5 ]& _5 L! a8 O' f, y
里面代码是这样的:
# c. W* Y# [; k- D$ D8 Ctreenode item = parnode(1);7 v% ~* T: k" }3 k
treenode current = ownerobject(c);

3 c9 b, E9 P+ o$ q那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改了保存不上
10#
王奕 发表于 2019-1-27 10:43:13 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:25) y; d3 J0 Y7 K; \
那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改 ...

3 Q4 F6 D9 w2 q6 a感谢回复,6里面没有吸管,也没有下拉框,只能通过代码来尝试。
" y0 `: T5 w* U; E- Y3 C% O1 V又试了几次,还是不行,只能改用别的方法来标识了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-28 01:43 , Processed in 0.089513 second(s), 14 queries .

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

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