全球FlexSim系统仿真中文论坛

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

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

[复制链接]
匿名
跳转到指定楼层
1#
匿名  发表于 2019-1-25 17:10:23 回帖奖励 |倒序浏览 |阅读模式
比如一台处理器,设置了SETUP TIME,则在OnSetupFinishi里设置改变固定实体3D外观的触发,表示开始作业。
8 S& n% V) Z9 N4 l( l" `% Q& w+ r) Z系统的默认程序(已将item改成了current):. M, L# M/ Z* H  I9 D
treenode item = parnode(1);2 g+ o& S+ `" u' D4 H6 R
treenode current = ownerobject(c);0 c- x6 j4 e' j: b
int port = parval(2);
3 w* w* n$ s8 S{ //************* PickOption Start *************\\
. q, m6 u% d& s6 K) m5 ]/***popup:Change3DShape*/
. d7 Q+ N7 o2 b8 n( m% |% a/**Change 3D Shape*/2 d. ^& {- J7 k4 n5 P! c( v  F+ j, d
/** \nObject: */
; m0 l. p( Y) Xtreenode involved = /***tag:node*//**/current/**/;4 S) a2 ^# t8 B+ c
/** \nShape Index Number: */% Q. h7 X' s5 R" _+ Q# }
double theindex = /***tag:index*//**/getshapeindex("fs3d\\General\\Box.3ds")/**/;
. c, N& y9 w6 x4 L: P3 A% [" [" s1 S
# j* d  ^7 ~" _: P4 d& l6 A+ @setname(shape(involved),"_shape");* p6 i  P1 b( k
setobjectshapeindex(involved,theindex);5 z) y- `. Y* D, h) H
/**\n*/% B  K# }" O: I# U; Z# C
} //******* PickOption End *******\\" o0 ~1 ]' X" u% i( {
+ t0 v$ k5 v9 g) ~5 `: [0 D+ ?, t' V; U
其中,* G2 e; ^6 }- C
fs3d\\General\\Box.3ds
) r  o* p2 V& ?7 q7 h  ~8 p. |我尝试将自己的模型(SKP格式)放到这个路径下(C:\Program Files (x86)\Flexsim6\fs3d\General\),但一旦触发生效后,模型没有显示出来,读取失败?$ e, M: o. d2 i, m0 ]; h1 i
请问正确的操作是怎样的呢?谢谢!2 I( |2 W0 ^, v/ v6 p
1 @, U; A$ ^  U' ]; @9 o/ ^
2#
SunshineFu 发表于 2019-1-25 20:13:21 | 只看该作者
不清楚具体情况,可以上传模型吗?
3#
王奕 发表于 2019-1-25 20:42:31 | 只看该作者
你好,请查看附件,
+ ]6 G; K! a, \* ]+ I9 \6 f* s1 B里面包含了两个SKP模型和一个FLEXSIM6版本的模型。, o0 t0 \/ P1 F! J6 V
FLEXIM模型是想描述一个烘箱的工序过程:停机的时候,门是打开的;开机运行的时候,门是关上的,所以想通过OnSetupFinish触发和OnProcessFinish触发来改变外观,但不知该如何让它们能正确显示出来。
2 ~" w' _% f) d8 h3 e6 W1 c, M谢谢!

本帖子中包含更多资源

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

x
5#
Stevenzheng 发表于 2019-1-26 09:23:02 | 只看该作者
我式了可以呐,只是在Shap下拉框中选的.4 S' Q' j; E. v2 I

% l9 q: c" ?- e- ]# z' Y* ?

本帖子中包含更多资源

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

x
6#
王奕 发表于 2019-1-26 09:51:05 | 只看该作者
我用的是flexsim6版本的,一直没有试出来
7#
Stevenzheng 发表于 2019-1-26 13:15:35 | 只看该作者
王奕 发表于 2019-1-25 23:118 Z3 b0 S8 O' |) Z4 e, F
问题如图

' p+ l+ U' `1 _' i7 k1 J3 U2 f我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试呢
8#
Stevenzheng 发表于 2019-1-26 13:23:06 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:15! M( a* J2 |- Y/ J, P- X
我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试 ...
$ Y. a: }4 s5 X" `( l" O  J) F9 n
里面代码是这样的:
+ }/ I, ], B% h+ B& Otreenode item = parnode(1);
. h6 }( r4 a4 @8 U/ ]6 {treenode current = ownerobject(c);" J+ g- Y2 c' Q. E& t1 A2 e. f5 E
{ //************* PickOption Start *************\\
* [  `5 s4 R0 P5 B/ G  {. |/***popup:Change3DShape*/; n6 |0 r" w) H9 |  y# @
/**Change 3D Shape*/
) w. Y* M0 f  ]2 N  w4 dtreenode involved = /** \nObject: *//***tagbject*//**/current/**/;3 U  ?8 G8 e. q) J* @# t
string shapename = /** \nShape: *//***tag:shapepath*//**/"C:\\Users\\admin\\Desktop\\flexsim model\\sketchup models_CS\\heating cabinet_type1_running.skp"/**/;
! o- F! [4 Q1 d4 k2 e6 y( m
' u5 M8 a" x5 P4 Idouble theindex = getshapeindex(shapename);
# A; r9 |8 V' A. f  g% n% `( G9 S4 C* S
//Grab the current size of the object- M/ B/ [! m4 X0 z( y3 U5 k
double x = xsize(involved);9 [" K) f+ i/ W% B6 ?9 V
double y = ysize(involved);
6 m. q* k0 m/ _3 E, {double z = zsize(involved);$ q( E0 A5 ~$ O$ F
# p$ [* I: @4 K# @$ Q+ r
setname(shape(involved),"_shape");
" J' Q" C! v$ b2 Rsetobjectshapeindex(involved,theindex);
# a/ z% f' E" j7 I. p1 R
, M8 l' Q/ d. P, ?" L# M( J//Update the object to the original size
2 p4 b+ N1 ~/ f( w" napplyshapefactors(involved);
: M8 q  Z3 n; L/ csetsize(involved, x, y, z);
% G0 O% A, A- |* l8 c. `/** \nNote: The getshapeindex command is slow if it is called frequently. " U  P. M+ K( H5 I8 k7 v0 i
It is better to define the shape index in a global variable that gets set 7 A. L- W& C6 `* [  `
during reset. You can then replace getshapeindex with the name of your global variable.
6 A# s4 ?- S5 @Index values for 3D shapes can be found through the Tools>Media Files menu,5 R$ S( P2 E; s: _) w6 O
but keep in mind that index values can change when new media is loaded.*/
0 I5 |1 A3 y" r* I} //******* PickOption End *******\\
& P) [( }& w2 n/ p; P
9#
Stevenzheng 发表于 2019-1-26 13:25:51 | 只看该作者
本帖最后由 Stevenzheng 于 2019-1-26 13:28 编辑
6 e' f6 g) a5 N; Y( M; F/ X  a8 B
Stevenzheng 发表于 2019-1-26 13:230 R, \2 f. M& F+ R% ^+ ?& ?$ J
里面代码是这样的:' m) Q' }/ V* Y4 H; h5 r
treenode item = parnode(1);
3 h: _- h% q% @6 x' c, _treenode current = ownerobject(c);

8 e- [( q. A. K) `2 m- |那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改了保存不上
10#
王奕 发表于 2019-1-27 10:43:13 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:250 M2 z0 e( @3 `6 ?$ C2 T& ?
那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改 ...
# k9 {) g* ~; e0 n
感谢回复,6里面没有吸管,也没有下拉框,只能通过代码来尝试。
: m) P; X4 n9 [! j& Y# h' x! e又试了几次,还是不行,只能改用别的方法来标识了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-23 19:53 , Processed in 0.088327 second(s), 15 queries .

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

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