全球FlexSim系统仿真中文论坛

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

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

[复制链接]
匿名
跳转到指定楼层
1#
匿名  发表于 2019-1-25 17:10:23 回帖奖励 |正序浏览 |阅读模式
比如一台处理器,设置了SETUP TIME,则在OnSetupFinishi里设置改变固定实体3D外观的触发,表示开始作业。. P. W! \, s1 G! S/ Q1 x, C* c0 S
系统的默认程序(已将item改成了current):
) f; z. R# T9 b& A+ ]' P: Streenode item = parnode(1);
* |. G& j2 j6 H' g7 |" j  e. Otreenode current = ownerobject(c);" j* u) M2 o( g' K8 l8 p
int port = parval(2);
3 a' y0 h/ Z" ^* k4 P6 b+ K$ N7 s{ //************* PickOption Start *************\\
# t+ Y# f+ u" c" e% ]/***popup:Change3DShape*/& \7 ?4 z+ N! X& k( _9 B! C) z4 O& ?
/**Change 3D Shape*/
: m) a2 C6 J3 _3 F7 i' n5 p/** \nObject: */, C- z- U, v# i* M: L
treenode involved = /***tag:node*//**/current/**/;
% }) |# C4 \3 g6 n4 p; ~/** \nShape Index Number: */
# y! Q8 z! f5 Udouble theindex = /***tag:index*//**/getshapeindex("fs3d\\General\\Box.3ds")/**/;
% j& {; @+ E; z5 T# h) A( S2 V
2 d5 R* v- A5 L) J9 N; Lsetname(shape(involved),"_shape");
4 K( ~- z- y0 }setobjectshapeindex(involved,theindex);& |& V% _5 x1 X$ e
/**\n*/
7 [6 C1 Z; v' O+ W9 X; K/ N6 b} //******* PickOption End *******\\
0 F0 D" c1 ]. Y2 Y! i1 @. g& W$ W1 ?
其中,
% K9 \! j9 N" @! a( v, R; G1 tfs3d\\General\\Box.3ds
/ \4 j6 `$ i) F% z# o; Z我尝试将自己的模型(SKP格式)放到这个路径下(C:\Program Files (x86)\Flexsim6\fs3d\General\),但一旦触发生效后,模型没有显示出来,读取失败?
# a6 I: S0 L; n7 C) P请问正确的操作是怎样的呢?谢谢!6 p) }( U4 P: f) m

# n2 r0 n% u# v0 H/ x2 I! z
10#
王奕 发表于 2019-1-27 10:43:13 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:25/ ^4 b0 B% Q/ v% u
那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改 ...
; u1 g0 {0 m) r! {( |  Y
感谢回复,6里面没有吸管,也没有下拉框,只能通过代码来尝试。: q$ f( ^6 u  D2 ]" X; t1 r8 R
又试了几次,还是不行,只能改用别的方法来标识了。
9#
Stevenzheng 发表于 2019-1-26 13:25:51 | 只看该作者
本帖最后由 Stevenzheng 于 2019-1-26 13:28 编辑
* x0 [. G' G3 L3 u  i/ n  f4 a
Stevenzheng 发表于 2019-1-26 13:23
& ]3 N$ S* Z( E里面代码是这样的:
, p. q! j- A7 E* _" Z0 i2 Gtreenode item = parnode(1);
5 @) U6 a# e" W& K% `0 S. d( W* Ztreenode current = ownerobject(c);
# i# ]9 m8 r$ f# C& f
那个表情是一个冒号和o,被识别成表情了,另外我是把原来的触发删除后重新建的触发,在原来的触发上边改了保存不上
8#
Stevenzheng 发表于 2019-1-26 13:23:06 | 只看该作者
Stevenzheng 发表于 2019-1-26 13:15, c( h  J' ?0 B. V, `* D9 L+ J
我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试 ...
' J- l+ z+ |" @, k$ d: M' B7 I3 Y
里面代码是这样的:9 N# b, V0 m4 i  V
treenode item = parnode(1);: R" A6 W+ j& c3 `6 Z
treenode current = ownerobject(c);
: d* \' r6 m* i3 h{ //************* PickOption Start *************\\
5 q7 r0 m) u' k: ^) z5 ^/***popup:Change3DShape*/, x4 e( P0 @* H+ B
/**Change 3D Shape*/, B/ C$ f9 t2 N2 A! n
treenode involved = /** \nObject: *//***tagbject*//**/current/**/;
5 E6 g4 @8 ~* R4 L' u  r1 Ostring shapename = /** \nShape: *//***tag:shapepath*//**/"C:\\Users\\admin\\Desktop\\flexsim model\\sketchup models_CS\\heating cabinet_type1_running.skp"/**/;0 Z% C# A. [2 ]6 m. Q7 m$ j
! a5 r2 G2 Z- o& ~; d. h% Z
double theindex = getshapeindex(shapename);! M/ n, `2 w% z* G" |0 D0 r

* ]. z# K2 u- t//Grab the current size of the object
% \4 g  J; G  c/ u0 }" K6 q& idouble x = xsize(involved);
. [; d) ^& |- b' x( p8 T9 jdouble y = ysize(involved);
  C7 A4 _- R( ~/ `5 q  t: ?double z = zsize(involved);) V) n3 R7 a: H0 E4 y* K1 o5 H/ J
1 s$ Y" s0 G% J7 x8 t; u
setname(shape(involved),"_shape");' S0 i' }3 Y! O1 H& e
setobjectshapeindex(involved,theindex);9 d/ o$ p& u* L7 v) }. k

/ w& t8 g  n' g9 @- `//Update the object to the original size( O9 O# j7 L/ x, A3 n7 y
applyshapefactors(involved);: J2 d: I3 e# d. B4 z- y) C" ~
setsize(involved, x, y, z);
& c. f' [! T' d- H' |6 q/** \nNote: The getshapeindex command is slow if it is called frequently.
$ R- A; t8 G# R6 |; N: @It is better to define the shape index in a global variable that gets set " K- Q) W. C1 L: V4 S2 V1 _. s; |  b
during reset. You can then replace getshapeindex with the name of your global variable.2 b/ Q) X" V* N, O/ K+ \- f
Index values for 3D shapes can be found through the Tools>Media Files menu,
  ~2 ^: {" C0 N% G2 _7 D, I1 {but keep in mind that index values can change when new media is loaded.*/, V/ Z9 K$ D; S" J, [
} //******* PickOption End *******\\0 _+ \5 S, f& y" u, ^& v, L
7#
Stevenzheng 发表于 2019-1-26 13:15:35 | 只看该作者
王奕 发表于 2019-1-25 23:11
9 X9 a5 R6 C0 G  q7 m问题如图

) @+ ~! d$ T) X+ Q我用7和18刚打开也是这样的,但是选那个shap下拉框里的就可以,6没有那个下拉框吗?或者你用吸管吸下试试呢
6#
王奕 发表于 2019-1-26 09:51:05 | 只看该作者
我用的是flexsim6版本的,一直没有试出来
5#
Stevenzheng 发表于 2019-1-26 09:23:02 | 只看该作者
我式了可以呐,只是在Shap下拉框中选的.
7 ~( ~' U/ V1 c8 \
" ?' ^0 ]! I! X! d1 t. ]- Z3 P

本帖子中包含更多资源

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

x
3#
王奕 发表于 2019-1-25 20:42:31 | 只看该作者
你好,请查看附件,; F4 p* [0 p3 L/ t6 T0 G/ T
里面包含了两个SKP模型和一个FLEXSIM6版本的模型。4 u8 I* O% l$ C
FLEXIM模型是想描述一个烘箱的工序过程:停机的时候,门是打开的;开机运行的时候,门是关上的,所以想通过OnSetupFinish触发和OnProcessFinish触发来改变外观,但不知该如何让它们能正确显示出来。# {0 p7 c- X' z- T( F/ a2 Y8 d6 |
谢谢!

本帖子中包含更多资源

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

x
2#
SunshineFu 发表于 2019-1-25 20:13:21 | 只看该作者
不清楚具体情况,可以上传模型吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-28 14:02 , Processed in 0.066456 second(s), 15 queries .

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

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