{Enterprise Dynamics startup information} if(StartingED, SoftStartED([])); {Model information} AddLayer([Main], 1, 1, 0); {Load required atoms} int011; int035([Node], pDir([Atoms\Node.atm])); int035([Queue], pDir([Atoms\Queue.atm])); int035([Source], pDir([Atoms\Source.atm])); int035([Unpack], pDir([Atoms\Unpack.atm])); int035([Assembler], pDir([Atoms\Assembler.atm])); int035([Warehouse], pDir([Atoms\Warehouse.atm])); int035([Destinator], pDir([Atoms\Destinator.atm])); int035([Dispatcher], pDir([Atoms\Dispatcher.atm])); int035([ArrivalList], pDir([Atoms\ArrivalList.atm])); int035([Speedometer], pDir([Atoms\speedometer.atm])); int035([Transporter], pDir([Atoms\Transporter.atm])); int035([Network Node], pDir([Atoms\Network Node.atm])); int035([Fast Queue FIFO], pDir([Atoms\Fast Queue FIFO.atm])); int035([Node Manipulator], pDir([Atoms\Node Manipulator.atm])); int035([Network Controller], pDir([Atoms\Network Controller.atm])); int035([Advanced Transporter], pDir([Atoms\Advanced Transporter.atm])); int035([Non Accumulating Conveyor], pDir([Atoms\Non Accumulating Conveyor.atm])); int012; {Atom: Source1} sets; AtomByName([Source], Main); if(not(AtomExists), Error([Cannot find mother atom 'Source'. Inheriting from BaseClass.])); CreateAtom(a, s, [], 1, false); int023([Source1], 7168771, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\source.bmp]), [source])); AddModel3D( RegisterModel3D(Model3DDir([\source.wrl]), [source.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Source.ico])); SetChannels(1, 1); SetChannelRanges(1, 1, 1, 255); int001(156); int013(1, 0, true, false, 0, 0, [], []); SetLoc(-22, 0, 0); SetSize(5, 2, 5); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetExprAtt(2, [NegExp(mins(13))]); SetExprAtt(3, [{.0|10. Do Nothing.}0]); SetExprAtt(4, [SetLabel([type],1,i)]); SetExprAtt(5, [10]); SetExprAtt(6, [{.-1|1. Unlimited.}-1]); SetAtt(7, 3); int024; SetStatus(2); int018; {Atom: Container1} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); Set(OnInit, [RegisterEditField( [t-container3dicon], [3D Icon], [Att([ContainerType])], [SetAtt([ContainerType], &)], FieldListBox( 7, [Box/Transparant Box/Container/Pallet/Pallet with Stabilizers/Box with Texture/VR Icon] ) ) ]); int023([Container1], 6080220, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\Pallet.bmp]), [Pallet.bmp])); AddModel3D( RegisterModel3D(Model3DDir([\pallet-wood.wrl]), [pallet-wood.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-plastic.wrl]), [pallet-plastic.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\crate.wrl]), [crate.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Container.ico])); Set(Info, [Container. General ------------ Container for other atoms. Pack other atoms into this atom. Right click parameters: - several 3D icons like pallet, box and transparant box. - triggers to manipulate atoms that enter/exit - resize entering atoms to fit the container Double click to edit content. Last revision: ------------------- September 29, 2003 ]); Set(DdbRec, [>centerpoint:0.2.>t-nodestroy:1.]); int001(157); SetLoc(44, 3, 0); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); CreateAttributes(6); SetAttributeName(r(1), [AutoReSize]); SetAttributeName(r(2), [sx]); SetAttributeName(r(3), [sy]); SetAttributeName(r(4), [sz]); SetAttributeName(r(5), [ContainerType]); SetAttributeName(r(6), [UseBoxVisible]); SetExprAtt(r(2), [1]); SetExprAtt(r(3), [1]); SetExprAtt(r(4), [0.15]); SetAtt(r(5), 4); SetAtt(r(6), 1); int024; Set(OnEntered, [Do( If( AutoReSize, SetSize( sx, sy, sz, i) ), If( Content(c) = 1, SetLoc( Max( (sx - xSize( i)) / 2, 0), Max( (sy - ySize( i)) / 2, 0), zSize( c), i ), Do( SetLoc( xLoc( Prev( i)) + sx, yLoc( Prev( i)), zLoc( Prev( i)), i ), If( xLoc( i) >= xSize( c), Do( SetLoc( xLoc( First( c)), yLoc( i) + sy, zLoc( i), i ), If( yLoc( i) >= ySize( c), SetLoc( xLoc( First( c)), yLoc( First( c)), zLoc( i) + sz, i ) ) ) ) ) ) ) ]); Set(OnReset, [If( Label([t-nodestroy], c) = 0, DestroyAtom ) ]); Set(OnUser, [If( DoubleClick, {* Double Click *} If( SelectAtom(a, First, [Select an atom from the contents]), ExecOnUser(a) ), {* Right click *} Do( { Delete any current instances of this form.} GuiDestroy([Container]), { Register the GUI-form for this atom.} GuiRegister(PDir([\Atoms\Container.gui]), 1), { Show the GUI-form.} GuiCreate([Container], [Container], 0, c, 0, 1) ) ) ]); Set(On3DDraw, [If( Or( BoxVisible(0, 0, 0, xSize(c), ySize(c) ,zSize(c)), Not(UseBoxVisible) ), Case( ContainerType, {* Draw a Box *} Do( di3DBox(0, 0, 0, xSize(c), ySize(c), 0.01, Color(c)), di3DBox(0, 0, 0, xSize(c), 0.01, zSize(c), Color(c)), di3DBox(0, ySize(c), 0, xSize(c), 0.01, zSize(c), Color(c)), di3DBox(0, 0, 0, 0.01, ySize(c), zSize(c), Color(c)), di3DBox(xSize(c), 0, 0, 0.01, ySize(c), zSize(c), Color(c)) ), {* Draw a Transparant box *} Do( di3DBox(-0.06, -0.06, 0, xSize(c) + 0.12, ySize(c) + 0.12, 0.1, ColorBlack), Plane(-0.04, -0.04, zSize(c), ySize(c) + 0.08, 0.15, 0, 90, 0, 90, ColorBlack), Plane(xSize(c) + 0.04, -0.04, zSize(c), ySize(c) + 0.08, 0.15, 0, 90, 0, 90, ColorBlack), Plane(-0.04, -0.04, zSize(c), xSize(c) + 0.08, 0.15, 0, 0, 0, 90, ColorBlack), Plane(-0.04, ySize(c) + 0.04, zSize(c), xSize(c) + 0.08, 0.15, 0, 0, 0, 90, ColorBlack), Glass(0.5), Plane(-0.04, -0.04, 0.1, ySize(c) + 0.08, zSize(c) - 0.1, 0, 90, 0, 90, Color), Plane(xSize(c) + 0.04, -0.04, 0.1, ySize(c) + 0.08, zSize(c) - 0.1, 0, 90, 0, 90, Color), Plane(-0.04, -0.04, 0.1, xSize(c) + 0.08, zSize(c) - 0.1, 0, 0, 0, 90, Color), Plane(-0.04, ySize(c) + 0.04, 0.1, xSize(c) + 0.08, zSize(c) - 0.1, 0, 0, 0, 90, Color), Glass(1) ), {* Draw a Container *} Do( di3DBox(-0.05, -0.05, 0, xSize(c) + 0.1, ySize(c) + 0.1, 0.01, Color(c)), di3DBox(-0.05, -0.05, zSize(c), xSize(c) + 0.1, ySize(c) + 0.1, 0.01, Color(c)), di3DBox(-0.05, -0.05, 0, xSize(c) + 0.1, 0.01, zSize(c), Color(c)), di3DBox(-0.05, ySize(c) + 0.05, 0, xSize(c) + 0.1, -0.01, zSize(c), Color(c)), di3DBox(xSize(c) + 0.05, -0.04, 0, -0.01, ySize(c) + 0.08, zSize(c), Color(c)) ), {* Draw a Pallet *} Do( di3DBox(0, 0, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, ySize / 2 - 0.05, 0, xSize, 0.1, zSize - 0.05, Color), Di3DBox(0, ySize - 0.1, 0, xSize, 0.1, zSize - 0.05, Color), c.CenterPoint := xSize / 5, Repeat( 5, di3DBox(Count * c.CenterPoint, 0, zSize - 0.05, -0.1, ySize, 0.05, Color) ) ), {* Draw a Stabilized pallet *} Do( di3DBox(0, 0, 0, xSize(c), ySize(c) / 4 - 0.05, 0.05, 4823990), di3DBox(0, ySize(c) /4, 0, xSize(c), ySize(c) / 4 - 0.05, 0.05, 4823990), di3DBox(0, ySize(c) / 2, 0, xSize(c),ySize(c) / 4 - 0.05, 0.05, 4823990), di3DBox(0, ySize(c) / 4 * 3, 0, xSize(c), ySize(c) / 4, 0.05, 4823990), di3DBox(-0.05, -0.05, 0, xSize(c) + 0.1, 0.05, 0.05, ColorGray), di3DBox(-0.05, -0.05, 0, 0.05, ySize(c) + 0.1, 0.05, ColorGray), di3DBox(xSize(c), ySize(c) + 0.05, 0, 0.05, -0.1 - ySize(c), 0.05, ColorGray), di3DBox(xSize(c) + 0.05, ySize(c), 0, -0.1 - xSize(c), 0.05, 0.05, ColorGray), di3DBox(-0.05, -0.05, 0.05, 0.05, 0.05, zSize(c), ColorGray), di3DBox(-0.05, ySize(c), 0.05, 0.05, 0.05, zSize(c), ColorGray), di3DBox(xSize(c), ySize(c), 0.05, 0.05, 0.05, zSize(c),ColorGray), di3DBox(xSize(c), -0.05, 0.05, 0.05, 0.05, zSize(c), ColorGray) ), {* Draw a Textured Box (VR only) *} Do( DrawVRIcon(vrIcon, -0.05, -0.05, 0, xSize(c) + 0.1, ySize(c) + 0.1, 0.01, 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, -0.05, -0.05, 0, xSize(c) + 0.1, 0.01, zSize(c), 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, -0.05, ySize(c) + 0.04, 0, xSize(c) + 0.1, 0.01, zSize(c), 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, -0.05, -0.04, 0, 0.01, ySize(c) + 0.08, zSize(c), 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, xSize(c) + 0.04, -0.04, 0, 0.01, ySize(c) + 0.08, zSize(c), 0, 0, 0, Icon(c), Color(c)) ), {** Pallet - Wood **} DrawModel3D(Model3D(1, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Plastic **} DrawModel3D(Model3D(2, c), 0, 0, 0, xSize, ySize, zSize), {** Crate **} DrawModel3D(Model3D(3, c), 0, 0, 0, xSize, ySize, zSize) ) ) ]); SetStatus(0); int018; {Atom: Non Accumulating Conveyor1} sets; AtomByName([Non Accumulating Conveyor], Main); if(not(AtomExists), Error([Cannot find mother atom 'Non Accumulating Conveyor'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Non Accumulating Conveyor1], 13809478, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\conveyor.bmp]), [conveyor])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NonAccumulatingConveyor.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(158); int013(1, 0, true, false, 0, 0, [], []); SetLoc(-15, 0, 0); SetSize(10, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [5]); SetAtt(2, 0); SetExprAtt(3, [{.~1|~1~.}1]); SetAtt(4, 2); SetExprAtt(5, [5]); SetAtt(6, -2.54564102675067); SetExprAtt(7, [0]); SetAtt(8, 50); SetExprAtt(9, [0]); SetAtt(10, 1); SetAtt(11, 10); SetExprAtt(12, [0]); SetExprAtt(13, [If(Use_Physical, xSize(c), Input_Length)]); SetExprAtt(14, [ArcTan(Elevation / HorLength)]); SetExprAtt(15, [If(Elevation <> 0, HorLength / Cos(Angle), HorLength)]); SetAtt(16, 3); SetAtt(17, 10); SetAtt(18, 0); SetAtt(19, 5); SetAtt(20, 0); SetAtt(21, 3.33333333333333); SetAtt(22, 1); int024; SetStatus(13); int018; {Atom: Queue1} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Queue1], 12615680, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(159); int013(1, 0, true, false, 0, 0, [], []); SetLoc(-4, 0, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 10); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1.1); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Fast Queue FIFO1} sets; AtomByName([Fast Queue FIFO], Main); if(not(AtomExists), Error([Cannot find mother atom 'Fast Queue FIFO'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Fast Queue FIFO1], 4886135, 248); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\FastQueueFifo.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 1, 255); int001(160); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(43, 0, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~Bernoulli(50,1,2)~.}Bernoulli(50,1,2)]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); int024; SetStatus(13); int018; {Atom: Fast Queue FIFO2} sets; AtomByName([Fast Queue FIFO], Main); if(not(AtomExists), Error([Cannot find mother atom 'Fast Queue FIFO'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Fast Queue FIFO2], 4886135, 248); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\FastQueueFifo.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 1, 255); int001(161); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(44, 5, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~Bernoulli(50,1,2)~.}Bernoulli(50,1,2)]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); int024; SetStatus(13); int018; {Atom: Advanced Transporter1} sets; AtomByName([Advanced Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Advanced Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Advanced Transporter1], 767720, 66675); Set(Icon(a), RegisterIcon(IconsDir([Bmp\Transp\trns1001.bmp]), [trns1001.bmp], 1, 0, 0, 0, 0, false, 0)); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter2.ico])); Set(DdbRec, [>t-dest:1.>t-turntime:7.46401459158127E-11.>t-start:1.>t-transporter:1.]); SetChannels(3, 4); SetChannelRanges(3, 3, 4, 4); int001(162); int013(1, 0, true, false, 0, 0, [Product Origin], [Product Destination]); int013(2, 0, true, false, 1, 1, [Current goal (Origin or Destination)], [Next network node on path]); int013(3, 0, true, false, 1, 1, [Do not connect], [Previous network node on path]); int013(4, 0, true, false, 0, 0, [], [Link to network]); SetLoc(71.5, 1, 0); SetSize(3, 2, 1); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetAtt(2, 1); SetAtt(3, 71.5); SetAtt(4, 1); SetAtt(5, 0); SetAtt(6, 1); SetExprAtt(7, [120]); SetExprAtt(8, [50]); SetExprAtt(9, [40]); SetAtt(10, 0); SetAtt(11, 1); SetExprAtt(12, [{.~1|~1~.}1]); SetExprAtt(13, [10]); SetExprAtt(14, [max(0,Uniform(-25,526))]); SetExprAtt(15, [40]); SetExprAtt(16, [0]); SetExprAtt(17, [0]); SetAtt(18, 208933124); SetExprAtt(19, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on the label ~column~ of the first ranked atom of the destination..}label([column],first(in(2,c)))]); SetExprAtt(20, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(21, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on label ~row~ of the atom to be placed..}label([row],first(in(2,c)))]); SetExprAtt(22, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on label ~column~ of the atom to be placed..}label([column],i)]); SetExprAtt(23, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(24, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on the label ~row~ of the first ranked atom of the destination..}label([row],i)]); SetAtt(25, 1); SetAtt(26, 40); SetAtt(27, 5); SetTextAtt(28, [LabelName]); SetAtt(29, 0); SetAtt(30, 0); SetAtt(31, 1); SetAtt(32, 1); SetAtt(33, 0); SetAtt(34, 1); SetAtt(35, 1); SetAtt(36, 0); SetAtt(37, 407860.025058299); SetExprAtt(38, [0.5]); SetAtt(39, 0); SetAtt(40, 0); SetExprAtt(41, [0]); SetAtt(42, 0); SetAtt(43, 0); SetAtt(44, 253355644); SetAtt(45, 253345572); SetAtt(46, 253478468); SetAtt(47, 253342336); SetAtt(48, 3); SetAtt(49, 0); SetAtt(50, 30); SetAtt(51, 0); SetAtt(52, 0); SetAtt(53, 0); SetAtt(54, 0); SetTextAtt(55, [LabelName]); SetAtt(56, 1); SetAtt(57, 1); SetAtt(58, 0); SetAtt(59, 0); SetTextAtt(60, [Network Node2]); SetAtt(61, 1); SetAtt(62, 0); SetExprAtt(63, [{.if(att([angledifference],c)>~1,~3,~2)|2. Use two different corner speeds: if road angle is between min.angle and ~50~°,choose speed of ~1.5~ m/s, if angle is larger then choose ~0.5~ m/s.}if(att([angledifference],c)>50,0.5,1.5)]); SetAtt(64, 0); SetAtt(65, 0); SetExprAtt(66, [0]); SetAtt(67, 10); SetAtt(68, 253479096); SetAtt(69, 0); SetExprAtt(70, [750]); SetExprAtt(71, [{.~1|1. Constant: ~50~ Ah.}50]); SetExprAtt(72, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(73, [10]); SetExprAtt(74, [20]); SetAtt(75, 750); SetAtt(76, 100); SetAtt(77, 0); SetExprAtt(78, [1]); SetExprAtt(79, [0]); SetAtt(80, 0); SetAtt(81, 222114736); SetAtt(82, 1); SetAtt(83, 261697864); SetAtt(84, 261698492); SetAtt(85, 261699120); SetAtt(86, 0); SetAtt(87, 0); SetExprAtt(88, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(89, [{.~1|1. Constant: ~10~ Ah.}10]); SetExprAtt(90, [{.~1|1. Constant: ~100~ Ah.}100]); SetAtt(91, 0); SetAtt(92, 0); SetAtt(93, 0); SetAtt(94, 5000); int024; SetStatus(1); int018; {Atom: Advanced Transporter2} sets; AtomByName([Advanced Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Advanced Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Advanced Transporter2], 767720, 66675); Set(Icon(a), RegisterIcon(IconsDir([Bmp\Transp\trns1001.bmp]), [trns1001.bmp], 1, 0, 0, 0, 0, false, 0)); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter2.ico])); Set(DdbRec, [>t-dest:1.>t-turntime:6.69087777775227E-10.>t-start:1.>t-transporter:1.]); SetChannels(3, 4); SetChannelRanges(3, 3, 4, 4); int001(163); int013(1, 0, true, false, 0, 0, [Product Origin], [Product Destination]); int013(2, 0, true, false, 1, 1, [Current goal (Origin or Destination)], [Next network node on path]); int013(3, 0, true, false, 1, 1, [Do not connect], [Previous network node on path]); int013(4, 0, true, false, 0, 0, [], [Link to network]); SetLoc(71.5, 6, 0); SetSize(3, 2, 1); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetAtt(2, 1); SetAtt(3, 71.5); SetAtt(4, 6); SetAtt(5, 0); SetAtt(6, 1); SetExprAtt(7, [100]); SetExprAtt(8, [30]); SetExprAtt(9, [20]); SetAtt(10, 0); SetAtt(11, 1); SetExprAtt(12, [{.~1|1. Specific channel: always send to channel ~1~/.}1]); SetExprAtt(13, [10]); SetExprAtt(14, [max(0,Uniform(-25,526))]); SetExprAtt(15, [40]); SetExprAtt(16, [0]); SetExprAtt(17, [0]); SetAtt(18, 208934068); SetExprAtt(19, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on the label ~column~ of the first ranked atom of the destination..}label([column],first(in(2,c)))]); SetExprAtt(20, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(21, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on label ~row~ of the atom to be placed..}label([row],first(in(2,c)))]); SetExprAtt(22, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on label ~column~ of the atom to be placed..}label([column],i)]); SetExprAtt(23, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(24, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on the label ~row~ of the first ranked atom of the destination..}label([row],i)]); SetAtt(25, 1); SetAtt(26, 40); SetAtt(27, 5); SetTextAtt(28, [LabelName]); SetAtt(29, 0); SetAtt(30, 0); SetAtt(31, 1); SetAtt(32, 1); SetAtt(33, 0); SetAtt(34, 1); SetAtt(35, 1); SetAtt(36, 0); SetAtt(37, 1216699.81130994); SetExprAtt(38, [0.5]); SetAtt(39, 0); SetAtt(40, 0); SetExprAtt(41, [0]); SetAtt(42, 0); SetAtt(43, 0); SetAtt(44, 253355644); SetAtt(45, 253345572); SetAtt(46, 253478468); SetAtt(47, 253342336); SetAtt(48, 3); SetAtt(49, 0); SetAtt(50, 30); SetAtt(51, 0); SetAtt(52, 0); SetAtt(53, 0); SetAtt(54, 0); SetTextAtt(55, [LabelName]); SetAtt(56, 1); SetAtt(57, 1); SetAtt(58, 0); SetAtt(59, 0); SetTextAtt(60, [Network Node4]); SetAtt(61, 1); SetAtt(62, 0); SetExprAtt(63, [{.if(att([angledifference],c)>~1,~3,~2)|2. Use two different corner speeds: if road angle is between min.angle and ~50~°,choose speed of ~1.5~ m/s, if angle is larger then choose ~0.5~ m/s.}if(att([angledifference],c)>50,0.5,1.5)]); SetAtt(64, 0); SetAtt(65, 0); SetExprAtt(66, [0]); SetAtt(67, 10); SetAtt(68, 253479096); SetAtt(69, 0); SetExprAtt(70, [750]); SetExprAtt(71, [{.~1|1. Constant: ~50~ Ah.}50]); SetExprAtt(72, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(73, [10]); SetExprAtt(74, [20]); SetAtt(75, 750); SetAtt(76, 100); SetAtt(77, 0); SetExprAtt(78, [1]); SetExprAtt(79, [0]); SetAtt(80, 0); SetAtt(81, 222114736); SetAtt(82, 2); SetAtt(83, 261697864); SetAtt(84, 261698492); SetAtt(85, 261699120); SetAtt(86, 0); SetAtt(87, 0); SetExprAtt(88, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(89, [{.~1|1. Constant: ~10~ Ah.}10]); SetExprAtt(90, [{.~1|1. Constant: ~100~ Ah.}100]); SetAtt(91, 0); SetAtt(92, 0); SetAtt(93, 0); SetAtt(94, 5000); int024; SetStatus(1); int018; {Atom: Network Node1} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node1], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:1.>t-node:1.]); SetChannels(0, 3); SetChannelRanges(0, 255, 0, 255); int001(164); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); SetLoc(60, 1, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 1); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(2, 2); int015(0, 0, [ 1 2 ]); int015(1, 0, [1 1000000 1000000 ]); int015(2, 0, [2 0 0 ]); SetStatus(0); int018; {Atom: Network Node2} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node2], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:2.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(165); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(71, 1, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 2); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node3} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node3], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:3.>t-node:1.]); SetChannels(0, 3); SetChannelRanges(0, 255, 0, 255); int001(166); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); SetLoc(63, 7, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 3); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(2, 2); int015(0, 0, [`Direction` `Network Node4` `Network Node95` ]); int015(1, 0, [`Capacity` 1000000 1000000 ]); int015(2, 0, [`Content` 0 0 ]); SetStatus(0); int018; {Atom: Network Node4} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node4], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:4.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(167); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(71, 6, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 4); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Unpack1} sets; AtomByName([Unpack], Main); if(not(AtomExists), Error([Cannot find mother atom 'Unpack'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Unpack1], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); AddModel3D( RegisterModel3D(Model3DDir([\disassembler.wrl]), [disassembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Unpack.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 2, 2); int001(168); int013(1, 0, true, false, 0, 0, [Contents], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(82, 1, 0); SetSize(4, 2, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [content(first(c))]); SetExprAtt(2, [mins(30)]); SetAtt(3, 0); SetExprAtt(4, [0]); SetExprAtt(5, [0]); SetExprAtt(6, [and(if(Label([type],i)=1,1),if(label([p1],i)=1,2))]); SetExprAtt(7, [{.openallic(c)|1. Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(21); int018; {Atom: Assembler1} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Assembler1], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:1.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(169); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(50, -4, 0); SetSize(5, 6, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [max(0,lognormal(10,2))]); SetExprAtt(2, [0]); SetExprAtt(3, [SetLabel([basteh],1,i)]); SetExprAtt(4, [{.~1|~1~.}1]); SetAtt(5, 1); SetExprAtt(6, [1]); SetAtt(7, 6); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Transporter1} sets; AtomByName([Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Transporter1], 767720, 66643); Set(Icon(a), RegisterIcon(IconsDir([bmp\transp\truck2.bmp]), [truck 1])); AddModel3D( RegisterModel3D(Model3DDir([\Forklift.wrl]), [Forklift.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter1.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(170); int013(1, 0, true, false, 0, 0, [], []); SetLoc(10, 0, 0); SetSize(3, 2, 1); Set(RotationAs, -6.34018924536865); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 10); SetAtt(4, 5); SetAtt(5, 0); SetAtt(6, 0); SetAtt(7, 20); SetExprAtt(8, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(9, 1); SetExprAtt(10, [0]); SetExprAtt(11, [0]); SetExprAtt(12, [{.~1|~1~.}1]); SetExprAtt(13, [NegExp(mins(10))]); SetExprAtt(14, [max(0,LogNormal(10,2))]); int024; SetStatus(1); int018; {Atom: Transporter2} sets; AtomByName([Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Transporter2], 767720, 66643); Set(Icon(a), RegisterIcon(IconsDir([bmp\transp\truck2.bmp]), [truck 1])); AddModel3D( RegisterModel3D(Model3DDir([\Forklift.wrl]), [Forklift.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter1.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(171); int013(1, 0, true, false, 0, 0, [], []); SetLoc(10, 4, 0); SetSize(3, 2, 1); Set(RotationAs, 169.380344723845); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 10); SetAtt(4, 5); SetAtt(5, 0); SetAtt(6, 0); SetAtt(7, 20); SetExprAtt(8, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(9, 1); SetExprAtt(10, [0]); SetExprAtt(11, [0]); SetExprAtt(12, [{.~1|~1~.}1]); SetExprAtt(13, [NegExp(mins(10))]); SetExprAtt(14, [max(0,LogNormal(10,2))]); int024; SetStatus(1); int018; {Atom: Copy of Product (1)} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Copy of Product (1)], 12615680, 8273); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\product.bmp]), [product])); AddModel3D( RegisterModel3D(Model3DDir([\box-closed.wrl]), [box-closed.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\box-opened.wrl]), [box-opened.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-wood.wrl]), [pallet-wood.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-plastic.wrl]), [pallet-plastic.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\oildrum.wrl]), [oildrum.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\crate.wrl]), [crate.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Product.ico])); Set(Info, [A general product. General ----------- Put a product in your model and connect it's central channel with the input channel of a source to generate multiple instances of the product during running. Notes: --------- For cylinder shaped, horizontally oriented 3D icons set ySize equal to zSize. For cylinder shaped, vertically oriented 3D icons set xSize equal to ySize. For sphere set xSize equal to ySize and zSize. Last revision: ------------------ September 27, 2003 ]); Set(DdbRec, [>t-nodestroy:1.]); int001(172); SetLoc(-14, 20, 0); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); CreateAttributes(2); SetAttributeName(r(1), [Icon3D]); SetAttributeName(r(2), [Hide2DIcon]); SetAtt(r(1), 11); SetAtt(r(2), 1); int024; Set(OnCreation, [{ In the OnInit event handler some edit fields are registered. } { This is ok for the product in the library tree, but not for the } { products in the model, so erase the OnInit expression. } Set(OnInit, []) ]); Set(OnReset, [If( Label( [t-nodestroy] , c) = 0, DestroyAtom ) ]); Set(OnUser, [Do( { Delete any current instances of this form.} GuiDestroy([Product]), { Register the GUI-form for this atom.} GuiRegister(PDir([\Atoms\Product.gui]), 1), { Show the GUI-form.} GuiCreate([Product], [Product], 0, c, 0, 1) ) ]); Set(On2DDraw, [diBmp(0, 0, Hide2DIcon * Icon(c), 1, 5) ]); Set(On3DDraw, [Case( Icon3D, {** Cube **} di3DBox(0, 0, 0, xSize, ySize, zSize, Color), {** Picture Cube **} di3DBox(0, 0, 0, xSize, ySize, zSize, Color, 0, 0, Icon, 0, 100, 100), {** Cylinder Horizontal **} Do( c.CenterPoint := Max(ySize / 2, zSize / 2), Cylinder(0, c.CenterPoint, c.CenterPoint, xSize, 360, c.CenterPoint, 0, 0, 0, Color) ), {** Cylinder Vertical **} Do( c.CenterPoint := Max(xSize / 2, ySize / 2), Cylinder(c.CenterPoint, c.CenterPoint, 0, zSize, 360, c.CenterPoint, 0, 90, 0, Color) ), {** Ball **} Do( c.CenterPoint := Max(xSize / 2, Max(ySize / 2, zSize / 2)), Ball( c.CenterPoint, c.CenterPoint, c.CenterPoint, c.CenterPoint, 180, 360, 0, 0, 0, Color) ), {** Cone **} Do( c.CenterPoint := Max(xSize, ySize), Cone(c.CenterPoint / 2, c.CenterPoint / 2, 0, zSize, c.CenterPoint / 2, 0, 0, 90, 0, Color) ), {** Barrel Horizontal **} Do( c.CenterPoint := Max(ySize / 2, zSize / 2), Cylinder(0, c.CenterPoint, c.CenterPoint, xSize, 360, c.CenterPoint, 0, 0, 0, Color), Cone(0, c.CenterPoint, c.CenterPoint, 0, c.CenterPoint, 0, 0, 0, 0, Color), Cone(xSize, c.CenterPoint, c.CenterPoint, 0, c.CenterPoint, 0, 0, 0, 0, Color) ), {** Barrel Vertical **} Do( c.CenterPoint := Max(xSize / 2, ySize / 2), Cylinder(c.CenterPoint, c.CenterPoint, 0, zSize, 360, c.CenterPoint, 0, 90, 0, Color), Cone(c.CenterPoint, c.CenterPoint, zSize, 0, c.CenterPoint, 0, 0, 90, 0, Color), Cone(c.CenterPoint, c.CenterPoint, 0, 0, c.CenterPoint, 0, 0, 90, 0, Color) ), {** Pallet **} Do( di3DBox(0, 0, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, /( ySize, 2) - 0.05, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, ySize - 0.1, 0, xSize, 0.1, zSize - 0.05, Color), c.CenterPoint := xSize / 5, Repeat( 5, di3DBox(Count * c.CenterPoint, 0, zSize - 0.05, -0.1, ySize, 0.05, Color) ) ), {** Simple Person **} Do( c.CenterPoint := ySize / 2, {head} Ball( 0, c.CenterPoint, 1.8, 0.1, 180, 360, 0, -90 ,0, 7846395), {neck} Cylinder(0, c.CenterPoint, 1.65, 0.1, 360, 0.05, 0, 90, 0, 7846395), {shoulders}EllipseCone(0, c.CenterPoint, 1.52, 0.15, 360, 0.08, 0.05, 0.12, 0.2, 0, 90, 0, Color), {arm 1} Cone(0, 0.15 + c.CenterPoint, 1.5, 0.5, 0.05, 0.02, 20, -80, 0, Color), {arm 2} Cone(0, -0.15 + c.CenterPoint, 1.5, 0.5, 0.05, 0.02, 20, -80, 0, Color), {hand 1} Cone(0.08, -0.12 + c.CenterPoint, 1.02, 0.1, 0.02, 0.02, 20, -80, 0, 7846395), {hand 2} Cone(0.08, 0.18 + c.CenterPoint, 1.02, 0.1, 0.02, 0.02, 20, -80, 0, 7846395), {body} EllipseCone(0,c.CenterPoint, 1.07, 0.45, 360, 0.12, 0.2, 0.08, 0.1, 0, 90, 0, Color), {waist} EllipseCone(0,c.CenterPoint, 0.92, 0.15, 360, 0.08, 0.1, 0.11, 0.15, 0, 90, 0, ColorGray), {leg 1} Cone(0, 0.07 + c.CenterPoint, 0, 0.92, 0.03, 0.08, 0, 90, 0, ColorGray), {leg 2} Cone(0, -0.07 + c.CenterPoint, 0, 0.92, 0.03, 0.08, 0, 90, 0, ColorGray), {foot 1} EllipseCone(0, 0.07 + c.CenterPoint, 0,0.2, 180, 0.01, 0.03, 0.04, 0.05, 0, 0, 0, ColorBlack), {foot 2} EllipseCone(0, -0.07 + c.CenterPoint, 0, 0.2, 180, 0.01, 0.03, 0.04, 0.05, 0, 0, 0, ColorBlack) ), {** Closed Carton Box **} DrawModel3D(Model3D(1, c), 0, 0, 0, xSize, ySize, zSize), {** Open Carton Box **} DrawModel3D(Model3D(2, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Wood **} DrawModel3D(Model3D(3, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Plastic **} DrawModel3D(Model3D(4, c), 0, 0, 0, xSize, ySize, zSize), {** Oildrum **} DrawModel3D(Model3D(5, c), 0, 0, 0, xSize, ySize, zSize), {** Crate **} DrawModel3D(Model3D(6, c), 0, 0, 0, xSize, ySize, zSize) ) ]); SetStatus(0); int018; {Atom: Node1} sets; AtomByName([Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Node1], 8421504, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Node.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(173); int013(1, 0, true, true, 0, 0, [], []); SetLoc(10, 0, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetExprAtt(2, [20]); SetAtt(3, 0); SetAtt(4, 10); SetAtt(5, 20); SetAtt(6, 1); SetAtt(7, 50); SetAtt(8, 0.4); SetExprAtt(9, [0]); SetExprAtt(10, [0]); int024; SetStatus(0); int018; {Atom: Node3} sets; AtomByName([Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Node3], 8421504, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Node.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(174); int013(1, 0, true, true, 0, 0, [], []); SetLoc(10, 4, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetExprAtt(2, [20]); SetAtt(3, 0); SetAtt(4, 10); SetAtt(5, 20); SetAtt(6, 1); SetAtt(7, 50); SetAtt(8, 0.4); SetExprAtt(9, [0]); SetExprAtt(10, [0]); int024; SetStatus(0); int018; {Atom: Node4} sets; AtomByName([Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Node4], 8421504, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Node.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(175); int013(1, 0, true, true, 0, 0, [], []); SetLoc(15, 4, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetExprAtt(2, [20]); SetAtt(3, 0); SetAtt(4, 10); SetAtt(5, 20); SetAtt(6, 1); SetAtt(7, 50); SetAtt(8, 0.4); SetExprAtt(9, [0]); SetExprAtt(10, [0]); int024; SetStatus(0); int018; {Atom: Node2} sets; AtomByName([Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Node2], 8421504, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Node.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(176); int013(1, 0, true, true, 0, 0, [], []); SetLoc(15, 0, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetExprAtt(2, [20]); SetAtt(3, 0); SetAtt(4, 10); SetAtt(5, 20); SetAtt(6, 1); SetAtt(7, 50); SetAtt(8, 0.4); SetExprAtt(9, [0]); SetExprAtt(10, [0]); int024; SetStatus(0); int018; {Atom: Queue2} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Queue2], 12615680, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(177); int013(1, 0, true, false, 0, 0, [], []); SetLoc(-4, 5, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 10); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1.1); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Non Accumulating Conveyor2} sets; AtomByName([Non Accumulating Conveyor], Main); if(not(AtomExists), Error([Cannot find mother atom 'Non Accumulating Conveyor'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Non Accumulating Conveyor2], 13809478, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\conveyor.bmp]), [conveyor])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NonAccumulatingConveyor.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(178); int013(1, 0, true, false, 0, 0, [], []); SetLoc(-16, 3, 0); SetSize(15, 1, 2); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [10]); SetAtt(2, 0); SetExprAtt(3, [{.~1|~1~.}1]); SetAtt(4, 2); SetExprAtt(5, [7]); SetAtt(6, -0.999999999992724); SetExprAtt(7, [0]); SetAtt(8, 100); SetExprAtt(9, [0]); SetAtt(10, 1); SetAtt(11, 15); SetExprAtt(12, [0]); SetExprAtt(13, [If(Use_Physical, xSize(c), Input_Length)]); SetExprAtt(14, [ArcTan(Elevation / HorLength)]); SetExprAtt(15, [If(Elevation <> 0, HorLength / Cos(Angle), HorLength)]); SetAtt(16, 3); SetAtt(17, 15); SetAtt(18, 0); SetAtt(19, 10); SetAtt(20, 0); SetAtt(21, 5); SetAtt(22, 1); int024; SetStatus(13); int018; {Atom: Source2} sets; AtomByName([Source], Main); if(not(AtomExists), Error([Cannot find mother atom 'Source'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Source2], 7168771, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\source.bmp]), [source])); AddModel3D( RegisterModel3D(Model3DDir([\source.wrl]), [source.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Source.ico])); SetChannels(1, 1); SetChannelRanges(1, 1, 1, 255); int001(179); int013(1, 0, true, false, 0, 0, [], []); SetLoc(-22, 3, 0); SetSize(5, 2, 5); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetExprAtt(2, [NegExp(mins(20))]); SetExprAtt(3, [{.0|10. Do Nothing.}0]); SetExprAtt(4, [SetLabel([type],2,i)]); SetExprAtt(5, [10]); SetExprAtt(6, [{.-1|1. Unlimited.}-1]); SetAtt(7, 3); int024; SetStatus(2); int018; {Atom: Copy of Container2} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); Set(OnInit, [RegisterEditField( [t-container3dicon], [3D Icon], [Att([ContainerType])], [SetAtt([ContainerType], &)], FieldListBox( 7, [Box/Transparant Box/Container/Pallet/Pallet with Stabilizers/Box with Texture/VR Icon] ) ) ]); int023([Copy of Container2], 6080220, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\Pallet.bmp]), [Pallet.bmp])); AddModel3D( RegisterModel3D(Model3DDir([\pallet-wood.wrl]), [pallet-wood.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-plastic.wrl]), [pallet-plastic.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\crate.wrl]), [crate.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Container.ico])); Set(Info, [Container. General ------------ Container for other atoms. Pack other atoms into this atom. Right click parameters: - several 3D icons like pallet, box and transparant box. - triggers to manipulate atoms that enter/exit - resize entering atoms to fit the container Double click to edit content. Last revision: ------------------- September 29, 2003 ]); Set(DdbRec, [>centerpoint:0.2.>t-nodestroy:1.]); int001(180); SetLoc(42, 11, 0); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); CreateAttributes(6); SetAttributeName(r(1), [AutoReSize]); SetAttributeName(r(2), [sx]); SetAttributeName(r(3), [sy]); SetAttributeName(r(4), [sz]); SetAttributeName(r(5), [ContainerType]); SetAttributeName(r(6), [UseBoxVisible]); SetExprAtt(r(2), [1]); SetExprAtt(r(3), [1]); SetExprAtt(r(4), [0.15]); SetAtt(r(5), 4); SetAtt(r(6), 1); int024; Set(OnEntered, [Do( If( AutoReSize, SetSize( sx, sy, sz, i) ), If( Content(c) = 1, SetLoc( Max( (sx - xSize( i)) / 2, 0), Max( (sy - ySize( i)) / 2, 0), zSize( c), i ), Do( SetLoc( xLoc( Prev( i)) + sx, yLoc( Prev( i)), zLoc( Prev( i)), i ), If( xLoc( i) >= xSize( c), Do( SetLoc( xLoc( First( c)), yLoc( i) + sy, zLoc( i), i ), If( yLoc( i) >= ySize( c), SetLoc( xLoc( First( c)), yLoc( First( c)), zLoc( i) + sz, i ) ) ) ) ) ) ) ]); Set(OnReset, [If( Label([t-nodestroy], c) = 0, DestroyAtom ) ]); Set(OnUser, [If( DoubleClick, {* Double Click *} If( SelectAtom(a, First, [Select an atom from the contents]), ExecOnUser(a) ), {* Right click *} Do( { Delete any current instances of this form.} GuiDestroy([Container]), { Register the GUI-form for this atom.} GuiRegister(PDir([\Atoms\Container.gui]), 1), { Show the GUI-form.} GuiCreate([Container], [Container], 0, c, 0, 1) ) ) ]); Set(On3DDraw, [If( Or( BoxVisible(0, 0, 0, xSize(c), ySize(c) ,zSize(c)), Not(UseBoxVisible) ), Case( ContainerType, {* Draw a Box *} Do( di3DBox(0, 0, 0, xSize(c), ySize(c), 0.01, Color(c)), di3DBox(0, 0, 0, xSize(c), 0.01, zSize(c), Color(c)), di3DBox(0, ySize(c), 0, xSize(c), 0.01, zSize(c), Color(c)), di3DBox(0, 0, 0, 0.01, ySize(c), zSize(c), Color(c)), di3DBox(xSize(c), 0, 0, 0.01, ySize(c), zSize(c), Color(c)) ), {* Draw a Transparant box *} Do( di3DBox(-0.06, -0.06, 0, xSize(c) + 0.12, ySize(c) + 0.12, 0.1, ColorBlack), Plane(-0.04, -0.04, zSize(c), ySize(c) + 0.08, 0.15, 0, 90, 0, 90, ColorBlack), Plane(xSize(c) + 0.04, -0.04, zSize(c), ySize(c) + 0.08, 0.15, 0, 90, 0, 90, ColorBlack), Plane(-0.04, -0.04, zSize(c), xSize(c) + 0.08, 0.15, 0, 0, 0, 90, ColorBlack), Plane(-0.04, ySize(c) + 0.04, zSize(c), xSize(c) + 0.08, 0.15, 0, 0, 0, 90, ColorBlack), Glass(0.5), Plane(-0.04, -0.04, 0.1, ySize(c) + 0.08, zSize(c) - 0.1, 0, 90, 0, 90, Color), Plane(xSize(c) + 0.04, -0.04, 0.1, ySize(c) + 0.08, zSize(c) - 0.1, 0, 90, 0, 90, Color), Plane(-0.04, -0.04, 0.1, xSize(c) + 0.08, zSize(c) - 0.1, 0, 0, 0, 90, Color), Plane(-0.04, ySize(c) + 0.04, 0.1, xSize(c) + 0.08, zSize(c) - 0.1, 0, 0, 0, 90, Color), Glass(1) ), {* Draw a Container *} Do( di3DBox(-0.05, -0.05, 0, xSize(c) + 0.1, ySize(c) + 0.1, 0.01, Color(c)), di3DBox(-0.05, -0.05, zSize(c), xSize(c) + 0.1, ySize(c) + 0.1, 0.01, Color(c)), di3DBox(-0.05, -0.05, 0, xSize(c) + 0.1, 0.01, zSize(c), Color(c)), di3DBox(-0.05, ySize(c) + 0.05, 0, xSize(c) + 0.1, -0.01, zSize(c), Color(c)), di3DBox(xSize(c) + 0.05, -0.04, 0, -0.01, ySize(c) + 0.08, zSize(c), Color(c)) ), {* Draw a Pallet *} Do( di3DBox(0, 0, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, ySize / 2 - 0.05, 0, xSize, 0.1, zSize - 0.05, Color), Di3DBox(0, ySize - 0.1, 0, xSize, 0.1, zSize - 0.05, Color), c.CenterPoint := xSize / 5, Repeat( 5, di3DBox(Count * c.CenterPoint, 0, zSize - 0.05, -0.1, ySize, 0.05, Color) ) ), {* Draw a Stabilized pallet *} Do( di3DBox(0, 0, 0, xSize(c), ySize(c) / 4 - 0.05, 0.05, 4823990), di3DBox(0, ySize(c) /4, 0, xSize(c), ySize(c) / 4 - 0.05, 0.05, 4823990), di3DBox(0, ySize(c) / 2, 0, xSize(c),ySize(c) / 4 - 0.05, 0.05, 4823990), di3DBox(0, ySize(c) / 4 * 3, 0, xSize(c), ySize(c) / 4, 0.05, 4823990), di3DBox(-0.05, -0.05, 0, xSize(c) + 0.1, 0.05, 0.05, ColorGray), di3DBox(-0.05, -0.05, 0, 0.05, ySize(c) + 0.1, 0.05, ColorGray), di3DBox(xSize(c), ySize(c) + 0.05, 0, 0.05, -0.1 - ySize(c), 0.05, ColorGray), di3DBox(xSize(c) + 0.05, ySize(c), 0, -0.1 - xSize(c), 0.05, 0.05, ColorGray), di3DBox(-0.05, -0.05, 0.05, 0.05, 0.05, zSize(c), ColorGray), di3DBox(-0.05, ySize(c), 0.05, 0.05, 0.05, zSize(c), ColorGray), di3DBox(xSize(c), ySize(c), 0.05, 0.05, 0.05, zSize(c),ColorGray), di3DBox(xSize(c), -0.05, 0.05, 0.05, 0.05, zSize(c), ColorGray) ), {* Draw a Textured Box (VR only) *} Do( DrawVRIcon(vrIcon, -0.05, -0.05, 0, xSize(c) + 0.1, ySize(c) + 0.1, 0.01, 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, -0.05, -0.05, 0, xSize(c) + 0.1, 0.01, zSize(c), 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, -0.05, ySize(c) + 0.04, 0, xSize(c) + 0.1, 0.01, zSize(c), 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, -0.05, -0.04, 0, 0.01, ySize(c) + 0.08, zSize(c), 0, 0, 0, Icon(c), Color(c)), DrawVRIcon(vrIcon, xSize(c) + 0.04, -0.04, 0, 0.01, ySize(c) + 0.08, zSize(c), 0, 0, 0, Icon(c), Color(c)) ), {** Pallet - Wood **} DrawModel3D(Model3D(1, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Plastic **} DrawModel3D(Model3D(2, c), 0, 0, 0, xSize, ySize, zSize), {** Crate **} DrawModel3D(Model3D(3, c), 0, 0, 0, xSize, ySize, zSize) ) ) ]); SetStatus(0); int018; {Atom: Assembler2} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Assembler2], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:3.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(181); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(50, 3, 0); SetSize(5, 5, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [NegExp(mins(10))]); SetExprAtt(2, [0]); SetExprAtt(3, [SetLabel([basteh],2,i)]); SetExprAtt(4, [{.~1|~1~.}1]); SetAtt(5, 1); SetExprAtt(6, [1]); SetAtt(7, 6); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Unpack2} sets; AtomByName([Unpack], Main); if(not(AtomExists), Error([Cannot find mother atom 'Unpack'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Unpack2], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); AddModel3D( RegisterModel3D(Model3DDir([\disassembler.wrl]), [disassembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Unpack.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 2, 2); int001(182); int013(1, 0, true, false, 0, 0, [Contents], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(82, 5, 0); SetSize(4, 2, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [duniform(1,10)]); SetExprAtt(2, [mins(30)]); SetAtt(3, 0); SetExprAtt(4, [0]); SetExprAtt(5, [0]); SetExprAtt(6, [and(if(Label([type],i)=2,1),if(label([p1],i)=2,2))]); SetExprAtt(7, [{.openallic(c)|1. Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(21); int018; {Atom: Non Accumulating Conveyor3} sets; AtomByName([Non Accumulating Conveyor], Main); if(not(AtomExists), Error([Cannot find mother atom 'Non Accumulating Conveyor'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Non Accumulating Conveyor3], 13809478, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\conveyor.bmp]), [conveyor])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NonAccumulatingConveyor.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(183); int013(1, 0, true, false, 0, 0, [], []); SetLoc(87, 1, 0); SetSize(10, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [100]); SetAtt(2, 0); SetExprAtt(3, [{.~1|~1~.}1]); SetAtt(4, 1); SetExprAtt(5, [0]); SetAtt(6, 0); SetExprAtt(7, [0]); SetAtt(8, 100); SetExprAtt(9, [0]); SetAtt(10, 1); SetAtt(11, 10); SetExprAtt(12, [0]); SetExprAtt(13, [If(Use_Physical, xSize(c), Input_Length)]); SetExprAtt(14, [ArcTan(Elevation / HorLength)]); SetExprAtt(15, [If(Elevation <> 0, HorLength / Cos(Angle), HorLength)]); SetAtt(16, 3); SetAtt(17, 10); SetAtt(18, 0); SetAtt(19, 100); SetAtt(20, 0); SetAtt(21, 3.33333333333333); SetAtt(22, 1); int024; SetStatus(13); int018; {Atom: Assembler3} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Assembler3], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:5.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(184); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(100, 0, 0); SetSize(5, 5, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [mins(30)]); SetExprAtt(2, [0]); SetExprAtt(3, [0]); SetExprAtt(4, [{.~1|1. Specific channel: always send to channel ~1~.}1]); SetAtt(5, 0); SetExprAtt(6, [1]); SetAtt(7, 1); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Non Accumulating Conveyor5} sets; AtomByName([Non Accumulating Conveyor], Main); if(not(AtomExists), Error([Cannot find mother atom 'Non Accumulating Conveyor'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Non Accumulating Conveyor5], 13809478, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\conveyor.bmp]), [conveyor])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NonAccumulatingConveyor.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(185); int013(1, 0, true, false, 0, 0, [], []); SetLoc(87, 12, 0); SetSize(15, 1, 3); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [10]); SetAtt(2, 0); SetExprAtt(3, [{.~1|~1~.}1]); SetAtt(4, 1); SetExprAtt(5, [0]); SetAtt(6, 0); SetExprAtt(7, [0]); SetAtt(8, 10); SetExprAtt(9, [0]); SetAtt(10, 1); SetAtt(11, 15); SetExprAtt(12, [0]); SetExprAtt(13, [If(Use_Physical, xSize(c), Input_Length)]); SetExprAtt(14, [ArcTan(Elevation / HorLength)]); SetExprAtt(15, [If(Elevation <> 0, HorLength / Cos(Angle), HorLength)]); SetAtt(16, 3); SetAtt(17, 15); SetAtt(18, 0); SetAtt(19, 10); SetAtt(20, 0); SetAtt(21, 5); SetAtt(22, 1); int024; SetStatus(13); int018; {Atom: Assembler4} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Assembler4], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:8.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(186); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(98, 15, 0); SetSize(5, 5, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [mins(30)]); SetExprAtt(2, [0]); SetExprAtt(3, [0]); SetExprAtt(4, [{.~1|~1~.}1]); SetAtt(5, 1); SetExprAtt(6, [1]); SetAtt(7, 6); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Queue3} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Queue3], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(187); int013(1, 0, true, false, 0, 0, [], []); SetLoc(78, -4, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 1000); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 3.1358000000001); SetExprAtt(7, [{.openic(~1,c)|5. Channel ~1~.}openic(1,c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Queue4} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Queue4], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(188); int013(1, 0, true, false, 0, 0, [], []); SetLoc(79, 10, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1.1); SetExprAtt(7, [{.openic(~1,c)|5. Channel ~1~.}openic(1,c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Advanced Transporter3} sets; AtomByName([Advanced Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Advanced Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Advanced Transporter3], 767720, 66675); Set(Icon(a), RegisterIcon(IconsDir([Bmp\Transp\trns1001.bmp]), [trns1001.bmp], 1, 0, 0, 0, 0, false, 0)); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter2.ico])); Set(DdbRec, [>t-dest:1.>t-turntime:2.90782509182463E-11.>t-start:1.>t-transporter:1.]); SetChannels(3, 4); SetChannelRanges(3, 3, 4, 4); int001(189); int013(1, 0, true, false, 0, 0, [Product Origin], [Product Destination]); int013(2, 0, true, false, 1, 1, [Current goal (Origin or Destination)], [Next network node on path]); int013(3, 0, true, false, 1, 1, [Do not connect], [Previous network node on path]); int013(4, 0, true, false, 0, 0, [], [Link to network]); SetLoc(115.5, -11, 0); SetSize(3, 2, 1); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetAtt(2, 1); SetAtt(3, 115.5); SetAtt(4, -11); SetAtt(5, 0); SetAtt(6, 1); SetExprAtt(7, [120]); SetExprAtt(8, [50]); SetExprAtt(9, [40]); SetAtt(10, 0); SetAtt(11, 1); SetExprAtt(12, [{.~1|1. Specific channel --> Always send to channel ~1~.}1]); SetExprAtt(13, [0]); SetExprAtt(14, [max(0,uniform(-25,526))]); SetExprAtt(15, [40]); SetExprAtt(16, [0]); SetExprAtt(17, [0]); SetAtt(18, 271271236); SetExprAtt(19, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on the label ~column~ of the first ranked atom of the destination..}label([column],first(in(2,c)))]); SetExprAtt(20, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(21, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on label ~row~ of the atom to be placed..}label([row],first(in(2,c)))]); SetExprAtt(22, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on label ~column~ of the atom to be placed..}label([column],i)]); SetExprAtt(23, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(24, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on the label ~row~ of the first ranked atom of the destination..}label([row],i)]); SetAtt(25, 1); SetAtt(26, 40); SetAtt(27, 5); SetTextAtt(28, [LabelName]); SetAtt(29, 0); SetAtt(30, 0); SetAtt(31, 1); SetAtt(32, 1); SetAtt(33, 0); SetAtt(34, 1); SetAtt(35, 1); SetAtt(36, 0); SetAtt(37, 62638.0058029147); SetExprAtt(38, [0.5]); SetAtt(39, 0); SetAtt(40, 0); SetExprAtt(41, [0]); SetAtt(42, 0); SetAtt(43, 0); SetAtt(44, 253355644); SetAtt(45, 253345572); SetAtt(46, 253478468); SetAtt(47, 253342336); SetAtt(48, 3); SetAtt(49, 0); SetAtt(50, 30); SetAtt(51, 0); SetAtt(52, 0); SetAtt(53, 0); SetAtt(54, 0); SetTextAtt(55, [LabelName]); SetAtt(56, 1); SetAtt(57, 1); SetAtt(58, 0); SetAtt(59, 0); SetTextAtt(60, [Network Node921]); SetAtt(61, 1); SetAtt(62, 0); SetExprAtt(63, [{.if(att([angledifference],c)>~1,~3,~2)|2. Use two different corner speeds: if road angle is between min.angle and ~50~°,choose speed of ~1.5~ m/s, if angle is larger then choose ~0.5~ m/s.}if(att([angledifference],c)>50,0.5,1.5)]); SetAtt(64, 0); SetAtt(65, 0); SetExprAtt(66, [0]); SetAtt(67, 10); SetAtt(68, 253479096); SetAtt(69, 0); SetExprAtt(70, [750]); SetExprAtt(71, [{.~1|1. Constant: ~50~ Ah.}50]); SetExprAtt(72, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(73, [10]); SetExprAtt(74, [20]); SetAtt(75, 750); SetAtt(76, 100); SetAtt(77, 0); SetExprAtt(78, [1]); SetExprAtt(79, [0]); SetAtt(80, 0); SetAtt(81, 242448840); SetAtt(82, 1); SetAtt(83, 261697864); SetAtt(84, 261698492); SetAtt(85, 261699120); SetAtt(86, 0); SetAtt(87, 0); SetExprAtt(88, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(89, [{.~1|1. Constant: ~10~ Ah.}10]); SetExprAtt(90, [{.~1|1. Constant: ~100~ Ah.}100]); SetAtt(91, 0); SetAtt(92, 0); SetAtt(93, 0); SetAtt(94, 5000); int024; SetStatus(1); int018; {Atom: Copy of Copy of Advanced Transporter37} sets; AtomByName([Advanced Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Advanced Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Copy of Advanced Transporter37], 767720, 66675); Set(Icon(a), RegisterIcon(IconsDir([Bmp\Transp\trns1001.bmp]), [trns1001.bmp], 1, 0, 0, 0, 0, false, 0)); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter2.ico])); Set(DdbRec, [>d1:1000000000000.>t-start:1.>t-continue:1.>d4:1000000000000.>d2:1000000000000.>n3:14.>n2:14.>n1:14.>t-dest:1.>t-turntime:3.17552917294961E-10.>t-transporter:1.]); SetChannels(3, 4); SetChannelRanges(3, 3, 4, 4); int001(190); int013(1, 0, true, false, 0, 0, [Product Origin], [Product Destination]); int013(2, 0, true, false, 1, 1, [Current goal (Origin or Destination)], [Next network node on path]); int013(3, 0, true, false, 1, 1, [Do not connect], [Previous network node on path]); int013(4, 0, true, false, 0, 0, [], [Link to network]); SetLoc(113.5, 21, 0); SetSize(3, 2, 1); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetAtt(2, 1); SetAtt(3, 113.5); SetAtt(4, 21); SetAtt(5, 0); SetAtt(6, 1); SetExprAtt(7, [100]); SetExprAtt(8, [30]); SetExprAtt(9, [20]); SetAtt(10, 0); SetAtt(11, 1); SetExprAtt(12, [{.~1|1. Specific channel: always send to channel ~1~/.}1]); SetExprAtt(13, [0]); SetExprAtt(14, [max(0,Uniform(-25,526))]); SetExprAtt(15, [40]); SetExprAtt(16, [0]); SetExprAtt(17, [0]); SetAtt(18, 232826092); SetExprAtt(19, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on the label ~column~ of the first ranked atom of the destination..}label([column],first(in(2,c)))]); SetExprAtt(20, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(21, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on label ~row~ of the atom to be placed..}label([row],first(in(2,c)))]); SetExprAtt(22, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on label ~column~ of the atom to be placed..}label([column],i)]); SetExprAtt(23, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(24, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on the label ~row~ of the first ranked atom of the destination..}label([row],i)]); SetAtt(25, 1); SetAtt(26, 40); SetAtt(27, 5); SetTextAtt(28, [LabelName]); SetAtt(29, 0); SetAtt(30, 0); SetAtt(31, 1); SetAtt(32, 1); SetAtt(33, 0); SetAtt(34, 1); SetAtt(35, 1); SetAtt(36, 0); SetAtt(37, 190377.920516353); SetExprAtt(38, [0.5]); SetAtt(39, 0); SetAtt(40, 0); SetExprAtt(41, [0]); SetAtt(42, 0); SetAtt(43, 0); SetAtt(44, 253355644); SetAtt(45, 253345572); SetAtt(46, 253478468); SetAtt(47, 253342336); SetAtt(48, 3); SetAtt(49, 0); SetAtt(50, 30); SetAtt(51, 0); SetAtt(52, 0); SetAtt(53, 0); SetAtt(54, 0); SetTextAtt(55, [LabelName]); SetAtt(56, 1); SetAtt(57, 1); SetAtt(58, 0); SetAtt(59, 0); SetTextAtt(60, [Network Node91]); SetAtt(61, 1); SetAtt(62, 0); SetExprAtt(63, [{.if(att([angledifference],c)>~1,~3,~2)|2. Use two different corner speeds: if road angle is between min.angle and ~50~°,choose speed of ~1.5~ m/s, if angle is larger then choose ~0.5~ m/s.}if(att([angledifference],c)>50,0.5,1.5)]); SetTextAtt(64, [Network Node91]); SetTextAtt(65, [Network Node91]); SetTextAtt(66, [Network Node91]); SetAtt(67, 10); SetAtt(68, 253479096); SetAtt(69, 0); SetExprAtt(70, [750]); SetExprAtt(71, [{.~1|1. Constant: ~50~ Ah.}50]); SetExprAtt(72, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(73, [10]); SetExprAtt(74, [20]); SetAtt(75, 750); SetAtt(76, 100); SetAtt(77, 0); SetExprAtt(78, [1]); SetExprAtt(79, [0]); SetAtt(80, 0); SetAtt(81, 232018284); SetAtt(82, 2); SetAtt(83, 261697864); SetAtt(84, 261698492); SetAtt(85, 261699120); SetAtt(86, 0); SetAtt(87, 0); SetExprAtt(88, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(89, [{.~1|1. Constant: ~10~ Ah.}10]); SetExprAtt(90, [{.~1|1. Constant: ~100~ Ah.}100]); SetAtt(91, 0); SetAtt(92, 0); SetAtt(93, 0); SetAtt(94, 5000); int024; SetStatus(1); int018; {Atom: Copy of Non Accumulating Conveyor32 (1)} sets; AtomByName([Non Accumulating Conveyor], Main); if(not(AtomExists), Error([Cannot find mother atom 'Non Accumulating Conveyor'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Non Accumulating Conveyor32 (1)], 13809478, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\conveyor.bmp]), [conveyor])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NonAccumulatingConveyor.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(191); int013(1, 0, true, false, 0, 0, [], []); SetLoc(87, 3, 0); SetSize(10, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 0); SetExprAtt(3, [1]); SetAtt(4, 1); SetAtt(5, 0); SetAtt(6, 0); SetAtt(7, 0); SetAtt(8, 10000); SetAtt(9, 0); SetAtt(10, 1); SetAtt(11, 10); SetAtt(12, 0); SetExprAtt(13, [If(Use_Physical, xSize(c), Input_Length)]); SetExprAtt(14, [ArcTan(Elevation / HorLength)]); SetExprAtt(15, [If(Elevation <> 0, HorLength / Cos(Angle), HorLength)]); SetAtt(16, 3); SetAtt(17, 10); SetAtt(18, 0); SetAtt(19, 1); SetAtt(20, 0); SetAtt(21, 3.33333333333333); SetAtt(22, 1); int024; SetStatus(13); int018; {Atom: Non Accumulating Conveyor4} sets; AtomByName([Non Accumulating Conveyor], Main); if(not(AtomExists), Error([Cannot find mother atom 'Non Accumulating Conveyor'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Non Accumulating Conveyor4], 13809478, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\conveyor.bmp]), [conveyor])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NonAccumulatingConveyor.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(192); int013(1, 0, true, false, 0, 0, [], []); SetLoc(87, 3, 0); SetSize(10, 1, 2); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [5]); SetAtt(2, 0); SetExprAtt(3, [{.~1|~1~.}1]); SetAtt(4, 1); SetExprAtt(5, [0]); SetAtt(6, 0); SetExprAtt(7, [0]); SetAtt(8, 10); SetExprAtt(9, [0]); SetAtt(10, 1); SetAtt(11, 10); SetExprAtt(12, [0]); SetExprAtt(13, [If(Use_Physical, xSize(c), Input_Length)]); SetExprAtt(14, [ArcTan(Elevation / HorLength)]); SetExprAtt(15, [If(Elevation <> 0, HorLength / Cos(Angle), HorLength)]); SetAtt(16, 3); SetAtt(17, 10); SetAtt(18, 0); SetAtt(19, 5); SetAtt(20, 0); SetAtt(21, 3.33333333333333); SetAtt(22, 1); int024; SetStatus(13); int018; {Atom: Non Accumulating Conveyor4} sets; AtomByName([Non Accumulating Conveyor], Main); if(not(AtomExists), Error([Cannot find mother atom 'Non Accumulating Conveyor'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Non Accumulating Conveyor4], 13809478, 1234); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\conveyor.bmp]), [conveyor])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NonAccumulatingConveyor.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(193); int013(1, 0, true, false, 0, 0, [], []); SetLoc(87, 7, 0); SetSize(15, 1, 4); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [10]); SetAtt(2, 0); SetExprAtt(3, [{.~1|~1~.}1]); SetAtt(4, 1); SetExprAtt(5, [0]); SetAtt(6, 4.5542457762931); SetExprAtt(7, [0]); SetAtt(8, 10); SetExprAtt(9, [0]); SetAtt(10, 1); SetAtt(11, 15); SetExprAtt(12, [0]); SetExprAtt(13, [If(Use_Physical, xSize(c), Input_Length)]); SetExprAtt(14, [ArcTan(Elevation / HorLength)]); SetExprAtt(15, [If(Elevation <> 0, HorLength / Cos(Angle), HorLength)]); SetAtt(16, 3); SetAtt(17, 15); SetAtt(18, 0); SetAtt(19, 10); SetAtt(20, 0); SetAtt(21, 5); SetAtt(22, 1); int024; SetStatus(13); int018; {Atom: Product1} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Product1], 12615680, 8273); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\product.bmp]), [product])); AddModel3D( RegisterModel3D(Model3DDir([\box-closed.wrl]), [box-closed.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\box-opened.wrl]), [box-opened.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-wood.wrl]), [pallet-wood.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-plastic.wrl]), [pallet-plastic.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\oildrum.wrl]), [oildrum.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\crate.wrl]), [crate.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Product.ico])); Set(Info, [A general product. General ----------- Put a product in your model and connect it's central channel with the input channel of a source to generate multiple instances of the product during running. Notes: --------- For cylinder shaped, horizontally oriented 3D icons set ySize equal to zSize. For cylinder shaped, vertically oriented 3D icons set xSize equal to ySize. For sphere set xSize equal to ySize and zSize. Last revision: ------------------ September 27, 2003 ]); Set(DdbRec, [>t-nodestroy:1.]); int001(194); SetLoc(-27, 0, 0); SetSize(1, 1, 0.15); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); CreateAttributes(2); SetAttributeName(r(1), [Icon3D]); SetAttributeName(r(2), [Hide2DIcon]); SetAtt(r(1), 11); SetAtt(r(2), 1); int024; Set(OnCreation, [{ In the OnInit event handler some edit fields are registered. } { This is ok for the product in the library tree, but not for the } { products in the model, so erase the OnInit expression. } Set(OnInit, []) ]); Set(OnReset, [If( Label( [t-nodestroy] , c) = 0, DestroyAtom ) ]); Set(OnUser, [Do( { Delete any current instances of this form.} GuiDestroy([Product]), { Register the GUI-form for this atom.} GuiRegister(PDir([\Atoms\Product.gui]), 1), { Show the GUI-form.} GuiCreate([Product], [Product], 0, c, 0, 1) ) ]); Set(On2DDraw, [diBmp(0, 0, Hide2DIcon * Icon(c), 1, 5) ]); Set(On3DDraw, [Case( Icon3D, {** Cube **} di3DBox(0, 0, 0, xSize, ySize, zSize, Color), {** Picture Cube **} di3DBox(0, 0, 0, xSize, ySize, zSize, Color, 0, 0, Icon, 0, 100, 100), {** Cylinder Horizontal **} Do( c.CenterPoint := Max(ySize / 2, zSize / 2), Cylinder(0, c.CenterPoint, c.CenterPoint, xSize, 360, c.CenterPoint, 0, 0, 0, Color) ), {** Cylinder Vertical **} Do( c.CenterPoint := Max(xSize / 2, ySize / 2), Cylinder(c.CenterPoint, c.CenterPoint, 0, zSize, 360, c.CenterPoint, 0, 90, 0, Color) ), {** Ball **} Do( c.CenterPoint := Max(xSize / 2, Max(ySize / 2, zSize / 2)), Ball( c.CenterPoint, c.CenterPoint, c.CenterPoint, c.CenterPoint, 180, 360, 0, 0, 0, Color) ), {** Cone **} Do( c.CenterPoint := Max(xSize, ySize), Cone(c.CenterPoint / 2, c.CenterPoint / 2, 0, zSize, c.CenterPoint / 2, 0, 0, 90, 0, Color) ), {** Barrel Horizontal **} Do( c.CenterPoint := Max(ySize / 2, zSize / 2), Cylinder(0, c.CenterPoint, c.CenterPoint, xSize, 360, c.CenterPoint, 0, 0, 0, Color), Cone(0, c.CenterPoint, c.CenterPoint, 0, c.CenterPoint, 0, 0, 0, 0, Color), Cone(xSize, c.CenterPoint, c.CenterPoint, 0, c.CenterPoint, 0, 0, 0, 0, Color) ), {** Barrel Vertical **} Do( c.CenterPoint := Max(xSize / 2, ySize / 2), Cylinder(c.CenterPoint, c.CenterPoint, 0, zSize, 360, c.CenterPoint, 0, 90, 0, Color), Cone(c.CenterPoint, c.CenterPoint, zSize, 0, c.CenterPoint, 0, 0, 90, 0, Color), Cone(c.CenterPoint, c.CenterPoint, 0, 0, c.CenterPoint, 0, 0, 90, 0, Color) ), {** Pallet **} Do( di3DBox(0, 0, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, /( ySize, 2) - 0.05, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, ySize - 0.1, 0, xSize, 0.1, zSize - 0.05, Color), c.CenterPoint := xSize / 5, Repeat( 5, di3DBox(Count * c.CenterPoint, 0, zSize - 0.05, -0.1, ySize, 0.05, Color) ) ), {** Simple Person **} Do( c.CenterPoint := ySize / 2, {head} Ball( 0, c.CenterPoint, 1.8, 0.1, 180, 360, 0, -90 ,0, 7846395), {neck} Cylinder(0, c.CenterPoint, 1.65, 0.1, 360, 0.05, 0, 90, 0, 7846395), {shoulders}EllipseCone(0, c.CenterPoint, 1.52, 0.15, 360, 0.08, 0.05, 0.12, 0.2, 0, 90, 0, Color), {arm 1} Cone(0, 0.15 + c.CenterPoint, 1.5, 0.5, 0.05, 0.02, 20, -80, 0, Color), {arm 2} Cone(0, -0.15 + c.CenterPoint, 1.5, 0.5, 0.05, 0.02, 20, -80, 0, Color), {hand 1} Cone(0.08, -0.12 + c.CenterPoint, 1.02, 0.1, 0.02, 0.02, 20, -80, 0, 7846395), {hand 2} Cone(0.08, 0.18 + c.CenterPoint, 1.02, 0.1, 0.02, 0.02, 20, -80, 0, 7846395), {body} EllipseCone(0,c.CenterPoint, 1.07, 0.45, 360, 0.12, 0.2, 0.08, 0.1, 0, 90, 0, Color), {waist} EllipseCone(0,c.CenterPoint, 0.92, 0.15, 360, 0.08, 0.1, 0.11, 0.15, 0, 90, 0, ColorGray), {leg 1} Cone(0, 0.07 + c.CenterPoint, 0, 0.92, 0.03, 0.08, 0, 90, 0, ColorGray), {leg 2} Cone(0, -0.07 + c.CenterPoint, 0, 0.92, 0.03, 0.08, 0, 90, 0, ColorGray), {foot 1} EllipseCone(0, 0.07 + c.CenterPoint, 0,0.2, 180, 0.01, 0.03, 0.04, 0.05, 0, 0, 0, ColorBlack), {foot 2} EllipseCone(0, -0.07 + c.CenterPoint, 0, 0.2, 180, 0.01, 0.03, 0.04, 0.05, 0, 0, 0, ColorBlack) ), {** Closed Carton Box **} DrawModel3D(Model3D(1, c), 0, 0, 0, xSize, ySize, zSize), {** Open Carton Box **} DrawModel3D(Model3D(2, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Wood **} DrawModel3D(Model3D(3, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Plastic **} DrawModel3D(Model3D(4, c), 0, 0, 0, xSize, ySize, zSize), {** Oildrum **} DrawModel3D(Model3D(5, c), 0, 0, 0, xSize, ySize, zSize), {** Crate **} DrawModel3D(Model3D(6, c), 0, 0, 0, xSize, ySize, zSize) ) ]); SetStatus(0); int018; {Atom: Product2} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Product2], 12615680, 8273); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\product.bmp]), [product])); AddModel3D( RegisterModel3D(Model3DDir([\box-closed.wrl]), [box-closed.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\box-opened.wrl]), [box-opened.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-wood.wrl]), [pallet-wood.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\pallet-plastic.wrl]), [pallet-plastic.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\oildrum.wrl]), [oildrum.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); AddModel3D( RegisterModel3D(Model3DDir([\crate.wrl]), [crate.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Product.ico])); Set(Info, [A general product. General ----------- Put a product in your model and connect it's central channel with the input channel of a source to generate multiple instances of the product during running. Notes: --------- For cylinder shaped, horizontally oriented 3D icons set ySize equal to zSize. For cylinder shaped, vertically oriented 3D icons set xSize equal to ySize. For sphere set xSize equal to ySize and zSize. Last revision: ------------------ September 27, 2003 ]); Set(DdbRec, [>t-nodestroy:1.]); int001(195); SetLoc(-27, 3, 0); SetSize(1, 1, 0.15); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); CreateAttributes(2); SetAttributeName(r(1), [Icon3D]); SetAttributeName(r(2), [Hide2DIcon]); SetAtt(r(1), 11); SetAtt(r(2), 1); int024; Set(OnCreation, [{ In the OnInit event handler some edit fields are registered. } { This is ok for the product in the library tree, but not for the } { products in the model, so erase the OnInit expression. } Set(OnInit, []) ]); Set(OnReset, [If( Label( [t-nodestroy] , c) = 0, DestroyAtom ) ]); Set(OnUser, [Do( { Delete any current instances of this form.} GuiDestroy([Product]), { Register the GUI-form for this atom.} GuiRegister(PDir([\Atoms\Product.gui]), 1), { Show the GUI-form.} GuiCreate([Product], [Product], 0, c, 0, 1) ) ]); Set(On2DDraw, [diBmp(0, 0, Hide2DIcon * Icon(c), 1, 5) ]); Set(On3DDraw, [Case( Icon3D, {** Cube **} di3DBox(0, 0, 0, xSize, ySize, zSize, Color), {** Picture Cube **} di3DBox(0, 0, 0, xSize, ySize, zSize, Color, 0, 0, Icon, 0, 100, 100), {** Cylinder Horizontal **} Do( c.CenterPoint := Max(ySize / 2, zSize / 2), Cylinder(0, c.CenterPoint, c.CenterPoint, xSize, 360, c.CenterPoint, 0, 0, 0, Color) ), {** Cylinder Vertical **} Do( c.CenterPoint := Max(xSize / 2, ySize / 2), Cylinder(c.CenterPoint, c.CenterPoint, 0, zSize, 360, c.CenterPoint, 0, 90, 0, Color) ), {** Ball **} Do( c.CenterPoint := Max(xSize / 2, Max(ySize / 2, zSize / 2)), Ball( c.CenterPoint, c.CenterPoint, c.CenterPoint, c.CenterPoint, 180, 360, 0, 0, 0, Color) ), {** Cone **} Do( c.CenterPoint := Max(xSize, ySize), Cone(c.CenterPoint / 2, c.CenterPoint / 2, 0, zSize, c.CenterPoint / 2, 0, 0, 90, 0, Color) ), {** Barrel Horizontal **} Do( c.CenterPoint := Max(ySize / 2, zSize / 2), Cylinder(0, c.CenterPoint, c.CenterPoint, xSize, 360, c.CenterPoint, 0, 0, 0, Color), Cone(0, c.CenterPoint, c.CenterPoint, 0, c.CenterPoint, 0, 0, 0, 0, Color), Cone(xSize, c.CenterPoint, c.CenterPoint, 0, c.CenterPoint, 0, 0, 0, 0, Color) ), {** Barrel Vertical **} Do( c.CenterPoint := Max(xSize / 2, ySize / 2), Cylinder(c.CenterPoint, c.CenterPoint, 0, zSize, 360, c.CenterPoint, 0, 90, 0, Color), Cone(c.CenterPoint, c.CenterPoint, zSize, 0, c.CenterPoint, 0, 0, 90, 0, Color), Cone(c.CenterPoint, c.CenterPoint, 0, 0, c.CenterPoint, 0, 0, 90, 0, Color) ), {** Pallet **} Do( di3DBox(0, 0, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, /( ySize, 2) - 0.05, 0, xSize, 0.1, zSize - 0.05, Color), di3DBox(0, ySize - 0.1, 0, xSize, 0.1, zSize - 0.05, Color), c.CenterPoint := xSize / 5, Repeat( 5, di3DBox(Count * c.CenterPoint, 0, zSize - 0.05, -0.1, ySize, 0.05, Color) ) ), {** Simple Person **} Do( c.CenterPoint := ySize / 2, {head} Ball( 0, c.CenterPoint, 1.8, 0.1, 180, 360, 0, -90 ,0, 7846395), {neck} Cylinder(0, c.CenterPoint, 1.65, 0.1, 360, 0.05, 0, 90, 0, 7846395), {shoulders}EllipseCone(0, c.CenterPoint, 1.52, 0.15, 360, 0.08, 0.05, 0.12, 0.2, 0, 90, 0, Color), {arm 1} Cone(0, 0.15 + c.CenterPoint, 1.5, 0.5, 0.05, 0.02, 20, -80, 0, Color), {arm 2} Cone(0, -0.15 + c.CenterPoint, 1.5, 0.5, 0.05, 0.02, 20, -80, 0, Color), {hand 1} Cone(0.08, -0.12 + c.CenterPoint, 1.02, 0.1, 0.02, 0.02, 20, -80, 0, 7846395), {hand 2} Cone(0.08, 0.18 + c.CenterPoint, 1.02, 0.1, 0.02, 0.02, 20, -80, 0, 7846395), {body} EllipseCone(0,c.CenterPoint, 1.07, 0.45, 360, 0.12, 0.2, 0.08, 0.1, 0, 90, 0, Color), {waist} EllipseCone(0,c.CenterPoint, 0.92, 0.15, 360, 0.08, 0.1, 0.11, 0.15, 0, 90, 0, ColorGray), {leg 1} Cone(0, 0.07 + c.CenterPoint, 0, 0.92, 0.03, 0.08, 0, 90, 0, ColorGray), {leg 2} Cone(0, -0.07 + c.CenterPoint, 0, 0.92, 0.03, 0.08, 0, 90, 0, ColorGray), {foot 1} EllipseCone(0, 0.07 + c.CenterPoint, 0,0.2, 180, 0.01, 0.03, 0.04, 0.05, 0, 0, 0, ColorBlack), {foot 2} EllipseCone(0, -0.07 + c.CenterPoint, 0, 0.2, 180, 0.01, 0.03, 0.04, 0.05, 0, 0, 0, ColorBlack) ), {** Closed Carton Box **} DrawModel3D(Model3D(1, c), 0, 0, 0, xSize, ySize, zSize), {** Open Carton Box **} DrawModel3D(Model3D(2, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Wood **} DrawModel3D(Model3D(3, c), 0, 0, 0, xSize, ySize, zSize), {** Pallet - Plastic **} DrawModel3D(Model3D(4, c), 0, 0, 0, xSize, ySize, zSize), {** Oildrum **} DrawModel3D(Model3D(5, c), 0, 0, 0, xSize, ySize, zSize), {** Crate **} DrawModel3D(Model3D(6, c), 0, 0, 0, xSize, ySize, zSize) ) ]); SetStatus(0); int018; {Atom: Dispatcher1} sets; AtomByName([Dispatcher], Main); if(not(AtomExists), Error([Cannot find mother atom 'Dispatcher'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Dispatcher1], 16711808, 96); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Dispatcher.ico])); Set(DdbRec, [>t-dispatcher:1.]); SetChannels(2, 1); SetChannelRanges(1, 255, 1, 255); int001(196); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(66, -8, 0); SetSize(6, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.dispatch_ftf|2. A free transporter (FTF) --> look for a free transporter. Check the First Transporter connected to the dispatcher First./.}dispatch_ftf]); SetAtt(2, 0); SetExprAtt(3, [{.[no sort required]|1. FIFO --> first in first out..}[no sort required]]); SetAtt(4, 0); SetExprAtt(5, [in(message,c)]); SetExprAtt(6, [first(in(message,c))]); SetAtt(7, 1); SetAtt(8, 0); SetAtt(9, 0); SetAtt(10, 0); SetAtt(11, 0); SetAtt(12, 1); SetAtt(13, 0); SetAtt(14, 1); SetAtt(15, 0); SetAtt(16, 0); SetAtt(17, 0); SetAtt(18, 0); int024; SetStatus(0); int018; {Atom: Copy of Queue64} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Queue64], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); Set(DdbRec, [>t-node2:4.>t-node1:2.>t-network:1.]); SetChannels(2, 2); SetChannelRanges(1, 255, 1, 255); int001(197); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(71, 3, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~if(label([basteh],First(c))=1,1,2)~.}if(label([basteh],First(c))=1,1,2)]); SetAtt(2, 1000); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 2.86670000000011); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Dispatcher2} sets; AtomByName([Dispatcher], Main); if(not(AtomExists), Error([Cannot find mother atom 'Dispatcher'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Dispatcher2], 16711808, 96); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Dispatcher.ico])); Set(DdbRec, [>t-dispatcher:1.]); SetChannels(2, 1); SetChannelRanges(1, 255, 1, 255); int001(198); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(66, 19, 0); SetSize(6, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.if(loadpermission(out(~1,c),in(3,cs)),~1,0)|1. Specific channel --> always send to channel ~1~/.}if(loadpermission(out(1,c),in(3,cs)),1,0)]); SetAtt(2, 0); SetExprAtt(3, [{.[no sort required]|1. FIFO --> first in first out..}[no sort required]]); SetAtt(4, 0); SetExprAtt(5, [in(message,c)]); SetExprAtt(6, [first(in(message,c))]); SetAtt(7, 1); SetAtt(8, 0); SetAtt(9, 0); SetAtt(10, 0); SetAtt(11, 0); SetAtt(12, 1); SetAtt(13, 0); SetAtt(14, 1); SetAtt(15, 0); SetAtt(16, 0); SetAtt(17, 0); SetAtt(18, 0); int024; SetStatus(0); int018; {Atom: Dispatcher3} sets; AtomByName([Dispatcher], Main); if(not(AtomExists), Error([Cannot find mother atom 'Dispatcher'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Dispatcher3], 16711808, 96); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Dispatcher.ico])); Set(DdbRec, [>t-node1:16.>t-network:1.>t-dispatcher:1.]); SetChannels(2, 2); SetChannelRanges(1, 255, 1, 255); int001(199); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(101, -6, 0); SetSize(6, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.dispatch_ftf|2. A free transporter (FTF) --> look for a free transporter. Check the First Transporter connected to the dispatcher First./.}dispatch_ftf]); SetAtt(2, 0); SetExprAtt(3, [{.[no sort required]|1. FIFO --> first in first out..}[no sort required]]); SetAtt(4, 0); SetExprAtt(5, [in(message,c)]); SetExprAtt(6, [first(in(message,c))]); SetAtt(7, 1); SetAtt(8, 0); SetAtt(9, 0); SetAtt(10, 0); SetAtt(11, 0); SetAtt(12, 1); SetAtt(13, 0); SetAtt(14, 1); SetAtt(15, 0); SetAtt(16, 0); SetAtt(17, 0); SetAtt(18, 0); int024; SetStatus(0); int018; {Atom: Dispatcher4} sets; AtomByName([Dispatcher], Main); if(not(AtomExists), Error([Cannot find mother atom 'Dispatcher'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Dispatcher4], 16711808, 96); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Dispatcher.ico])); Set(DdbRec, [>t-node1:13.>t-network:1.>t-dispatcher:1.]); SetChannels(2, 2); SetChannelRanges(1, 255, 1, 255); int001(200); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(108, 27, 0); SetSize(6, 3, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.dispatch_ftf|2. A free transporter (FTF) --> look for a free transporter. Check the First Transporter connected to the dispatcher First./.}dispatch_ftf]); SetAtt(2, 0); SetExprAtt(3, [{.[no sort required]|1. FIFO --> first in first out..}[no sort required]]); SetAtt(4, 0); SetExprAtt(5, [in(message,c)]); SetExprAtt(6, [first(in(message,c))]); SetAtt(7, 0); SetAtt(8, 0); SetAtt(9, 0); SetAtt(10, 0); SetAtt(11, 0); SetAtt(12, 1); SetAtt(13, 0); SetAtt(14, 1); SetAtt(15, 0); SetAtt(16, 0); SetAtt(17, 0); SetAtt(18, 0); int024; SetStatus(0); int018; {Atom: Fast Queue FIFO3} sets; AtomByName([Fast Queue FIFO], Main); if(not(AtomExists), Error([Cannot find mother atom 'Fast Queue FIFO'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Fast Queue FIFO3], 4886135, 248); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\FastQueueFifo.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 1, 255); int001(201); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(84, -12, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~Bernoulli(50,1,2)~.}Bernoulli(50,1,2)]); SetAtt(2, 10); SetExprAtt(3, [0]); SetExprAtt(4, [0]); int024; SetStatus(13); int018; {Atom: Fast Queue FIFO4} sets; AtomByName([Fast Queue FIFO], Main); if(not(AtomExists), Error([Cannot find mother atom 'Fast Queue FIFO'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Fast Queue FIFO4], 4886135, 248); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\FastQueueFifo.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 1, 255); int001(202); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(86, -8, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~Bernoulli(50,1,2)~.}Bernoulli(50,1,2)]); SetAtt(2, 10); SetExprAtt(3, [0]); SetExprAtt(4, [0]); int024; SetStatus(13); int018; {Atom: Fast Queue FIFO5} sets; AtomByName([Fast Queue FIFO], Main); if(not(AtomExists), Error([Cannot find mother atom 'Fast Queue FIFO'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Fast Queue FIFO5], 4886135, 248); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\FastQueueFifo.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 1, 255); int001(203); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(77, 18, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~Bernoulli(50,1,2)~.}Bernoulli(50,1,2)]); SetAtt(2, 10); SetExprAtt(3, [0]); SetExprAtt(4, [0]); int024; SetStatus(13); int018; {Atom: Fast Queue FIFO6} sets; AtomByName([Fast Queue FIFO], Main); if(not(AtomExists), Error([Cannot find mother atom 'Fast Queue FIFO'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Fast Queue FIFO6], 4886135, 248); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\FastQueueFifo.ico])); SetChannels(1, 2); SetChannelRanges(1, 255, 1, 255); int001(204); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(84, 25, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~Bernoulli(50,1,2)~.}Bernoulli(50,1,2)]); SetAtt(2, 10); SetExprAtt(3, [0]); SetExprAtt(4, [0]); int024; SetStatus(13); int018; {Atom: Destinator1} sets; AtomByName([Destinator], Main); if(not(AtomExists), Error([Cannot find mother atom 'Destinator'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Destinator1], 16711808, 96); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Destinator.ico])); Set(DdbRec, [>t-destinator:1.]); SetChannels(2, 2); SetChannelRanges(1, 255, 1, 255); int001(205); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(100, -17, 0); SetSize(6, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [1]); SetAtt(2, 10); SetAtt(3, 0); SetAtt(4, 0); SetExprAtt(5, [in(ic(c),c)]); SetAtt(6, 1); int024; int020(2, true, true); SetStatus(0); int018; {Atom: Warehouse3} sets; AtomByName([Warehouse], Main); if(not(AtomExists), Error([Cannot find mother atom 'Warehouse'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Warehouse3], 4605453, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\buffers\warehouse.bmp]), [warehouse])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); AddTexture( RegisterTexture(IconsDir([Bmp\Buffers\warehouse.bmp]), [warehouse.bmp], 128, 64, 255, 255, 0, 0, 0, 0), a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Warehouse.ico])); Set(DdbRec, [>t-node1:7.>t-network:1.]); SetChannels(1, 0); SetChannelRanges(1, 255, 0, 255); int001(206); int013(1, 0, true, false, 0, 0, [], []); SetLoc(135, -13, 0); SetSize(20, 2, 10); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 11); SetAtt(2, 2); SetAtt(3, 1); SetAtt(4, 1); SetExprAtt(5, [0]); SetExprAtt(6, [0]); SetExprAtt(7, [label([row],i)]); SetExprAtt(8, [label([column],i)]); SetExprAtt(9, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetExprAtt(10, [{.content(c)|Fifo (First In First Out).}content(c)]); SetExprAtt(11, [{.~1|~1~.}1]); SetExprAtt(12, [first(c)]); SetAtt(13, 0); SetAtt(14, 0); SetAtt(15, 1); SetAtt(16, 1); int024; SetTable(11, 2); int015(0, 0, [ 1 2 3 4 5 6 7 8 9 10 11 ]); int015(1, 0, [1 ]); int015(2, 0, [2 ]); SetStatus(0); int018; {Atom: Warehouse4} sets; AtomByName([Warehouse], Main); if(not(AtomExists), Error([Cannot find mother atom 'Warehouse'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Warehouse4], 4605453, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\buffers\warehouse.bmp]), [warehouse])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); AddTexture( RegisterTexture(IconsDir([Bmp\Buffers\warehouse.bmp]), [warehouse.bmp], 128, 64, 255, 255, 0, 0, 0, 0), a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Warehouse.ico])); Set(DdbRec, [>t-node1:12.>t-network:1.]); SetChannels(1, 0); SetChannelRanges(1, 255, 0, 255); int001(207); int013(1, 0, true, false, 0, 0, [], []); SetLoc(135, -4, 0); SetSize(20, 2, 10); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 15); SetAtt(2, 2); SetAtt(3, 1); SetAtt(4, 1); SetExprAtt(5, [0]); SetExprAtt(6, [0]); SetExprAtt(7, [label([row],i)]); SetExprAtt(8, [label([column],i)]); SetExprAtt(9, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetExprAtt(10, [{.content(c)|Fifo (First In First Out).}content(c)]); SetExprAtt(11, [{.~1|~1~.}1]); SetExprAtt(12, [first(c)]); SetAtt(13, 0); SetAtt(14, 0); SetAtt(15, 1); SetAtt(16, 1); int024; SetTable(15, 2); int015(0, 0, [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ]); int015(1, 0, [1 ]); int015(2, 0, [2 ]); SetStatus(0); int018; {Atom: Warehouse6} sets; AtomByName([Warehouse], Main); if(not(AtomExists), Error([Cannot find mother atom 'Warehouse'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Warehouse6], 4605453, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\buffers\warehouse.bmp]), [warehouse])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); AddTexture( RegisterTexture(IconsDir([Bmp\Buffers\warehouse.bmp]), [warehouse.bmp], 128, 64, 255, 255, 0, 0, 0, 0), a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Warehouse.ico])); Set(DdbRec, [>t-node1:10.>t-network:1.]); SetChannels(1, 1); SetChannelRanges(1, 255, 0, 255); int001(208); int013(1, 0, true, false, 0, 0, [], []); SetLoc(135, 1, 0); SetSize(20, 2, 10); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 19); SetAtt(2, 2); SetAtt(3, 1); SetAtt(4, 1); SetExprAtt(5, [0]); SetExprAtt(6, [0]); SetExprAtt(7, [label([row],i)]); SetExprAtt(8, [label([column],i)]); SetExprAtt(9, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetExprAtt(10, [{.content(c)|Fifo (First In First Out).}content(c)]); SetExprAtt(11, [{.~1|~1~.}1]); SetExprAtt(12, [first(c)]); SetAtt(13, 0); SetAtt(14, 0); SetAtt(15, 1); SetAtt(16, 1); int024; SetTable(19, 2); int015(0, 0, [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ]); int015(1, 0, [1 ]); int015(2, 0, [2 ]); SetStatus(0); int018; {Atom: Warehouse7} sets; AtomByName([Warehouse], Main); if(not(AtomExists), Error([Cannot find mother atom 'Warehouse'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Warehouse7], 4605453, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\buffers\warehouse.bmp]), [warehouse])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); AddTexture( RegisterTexture(IconsDir([Bmp\Buffers\warehouse.bmp]), [warehouse.bmp], 128, 64, 255, 255, 0, 0, 0, 0), a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Warehouse.ico])); Set(DdbRec, [>t-node1:11.>t-network:1.]); SetChannels(1, 1); SetChannelRanges(1, 255, 0, 255); int001(209); int013(1, 0, true, false, 0, 0, [], []); SetLoc(137, 7, 0); SetSize(20, 2, 10); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 23); SetAtt(2, 2); SetAtt(3, 1); SetAtt(4, 1); SetExprAtt(5, [0]); SetExprAtt(6, [0]); SetExprAtt(7, [label([row],i)]); SetExprAtt(8, [label([column],i)]); SetExprAtt(9, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetExprAtt(10, [{.content(c)|Fifo (First In First Out).}content(c)]); SetExprAtt(11, [{.~1|~1~.}1]); SetExprAtt(12, [first(c)]); SetAtt(13, 0); SetAtt(14, 0); SetAtt(15, 1); SetAtt(16, 1); int024; SetTable(23, 2); int015(0, 0, [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ]); int015(1, 0, [1 ]); int015(2, 0, [2 ]); SetStatus(0); int018; {Atom: Destinator2} sets; AtomByName([Destinator], Main); if(not(AtomExists), Error([Cannot find mother atom 'Destinator'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Destinator2], 16711808, 96); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Destinator.ico])); Set(DdbRec, [>t-destinator:1.]); SetChannels(2, 2); SetChannelRanges(1, 255, 1, 255); int001(210); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(121, 20, 0); SetSize(6, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [1]); SetAtt(2, 10); SetAtt(3, 0); SetAtt(4, 0); SetExprAtt(5, [in(ic(c),c)]); SetAtt(6, 1); int024; int020(2, true, true); SetStatus(0); int018; {Atom: Network Controller77} sets; AtomByName([Network Controller], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Controller'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Controller77], 0, 530528); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\tedatom.bmp]), [ed])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkController.ico])); int001(211); SetLoc(62, -12, 0); SetSize(9, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 222605672); SetAtt(4, 222626576); SetAtt(5, 222609144); SetAtt(6, 0); SetAtt(7, 222616536); SetAtt(8, 222613656); SetAtt(9, 222614688); SetAtt(10, 222622704); int024; SetTable(18, 18); int015(0, 0, [ `Network Node1` `Network Node2` `Network Node3` `Network Node4` `Network Node92` `Network Node95` `Network Node79` `Network Node80` `Network Node81` `Network Node83` `Network Node84` `Network Node85` `Network Node89` `Network Node91` `Network Node90` `Network Node91` `Network Node921` `Network Node90` ]); int015(1, 0, [`Network Node1` 1 1 ]); int015(2, 0, [`Network Node2` 1 ]); int015(3, 0, [`Network Node3` 1 1 ]); int015(4, 0, [`Network Node4` 1 ]); int015(5, 0, [`Network Node92` 1 ]); int015(6, 0, [`Network Node95` 1 ]); int015(7, 0, [`Network Node79` 1 ]); int015(8, 0, [`Network Node80` 1 1 1 ]); int015(9, 0, [`Network Node81` 1 1 1 ]); int015(10, 0, [`Network Node83` 1 ]); int015(11, 0, [`Network Node84` 1 ]); int015(12, 0, [`Network Node85` 1 ]); int015(13, 0, [`Network Node89` 1 ]); int015(14, 0, [`Network Node91` 1 ]); int015(15, 0, [`Network Node90` 1 1 1 ]); int015(16, 0, [`Network Node91` 1 ]); int015(17, 0, [`Network Node921` 1 ]); int015(18, 0, [`Network Node90` 1 1 1 ]); SetStatus(0); int018; {Atom: Distance Table} sets; BaseClass; CreateAtom(a, s, [], 1, false); int023([Distance Table], 0, 3264); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(0); int001(212); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); int024; SetTable(18, 18); int015(0, 0, [ `Network Node1` `Network Node2` `Network Node3` `Network Node4` `Network Node92` `Network Node95` `Network Node79` `Network Node80` `Network Node81` `Network Node83` `Network Node84` `Network Node85` `Network Node89` `Network Node91` `Network Node90` `Network Node91` `Network Node921` `Network Node90` ]); int015(1, 0, [`Network Node1` 0 11 1000000000 1000000000 13.6014705087354 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 ]); int015(2, 0, [`Network Node2` 11 0 1000000000 1000000000 24.6014705087354 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 ]); int015(3, 0, [`Network Node3` 1000000000 1000000000 0 8.06225774829855 1000000000 18.0277563773199 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 ]); int015(4, 0, [`Network Node4` 1000000000 1000000000 8.06225774829855 0 1000000000 26.0900141256184 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 ]); int015(5, 0, [`Network Node92` 13.6014705087354 24.6014705087354 1000000000 1000000000 0 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 ]); int015(6, 0, [`Network Node95` 1000000000 1000000000 18.0277563773199 26.0900141256184 1000000000 0 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 ]); int015(7, 0, [`Network Node79` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 0 9.48683298050514 1000000000 1000000000 1000000000 24.4868329805051 1000000000 1000000000 14.4868329805051 29.4868329805051 19.8719977876396 1000000000 ]); int015(8, 0, [`Network Node80` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 9.48683298050514 0 1000000000 1000000000 1000000000 15 1000000000 1000000000 5 20 10.3851648071345 1000000000 ]); int015(9, 0, [`Network Node81` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 0 7.81024967590665 9.48683298050514 1000000000 16 18.6157731058639 1000000000 1000000000 1000000000 11 ]); int015(10, 0, [`Network Node83` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 7.81024967590665 0 17.2970826564118 1000000000 23.8102496759066 26.4260227817706 1000000000 1000000000 1000000000 18.8102496759066 ]); int015(11, 0, [`Network Node84` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 9.48683298050514 17.2970826564118 0 1000000000 25.4868329805051 28.102606086369 1000000000 1000000000 1000000000 20.4868329805051 ]); int015(12, 0, [`Network Node85` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 24.4868329805051 15 1000000000 1000000000 1000000000 0 1000000000 1000000000 20 35 25.3851648071345 1000000000 ]); int015(13, 0, [`Network Node89` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 16 23.8102496759066 25.4868329805051 1000000000 0 12.6157731058639 1000000000 1000000000 1000000000 5 ]); int015(14, 0, [`Network Node91` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 18.6157731058639 26.4260227817706 28.102606086369 1000000000 12.6157731058639 0 1000000000 1000000000 1000000000 7.61577310586391 ]); int015(15, 0, [`Network Node90` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 14.4868329805051 5 1000000000 1000000000 1000000000 20 1000000000 1000000000 0 15 5.3851648071345 1000000000 ]); int015(16, 0, [`Network Node91` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 29.4868329805051 20 1000000000 1000000000 1000000000 35 1000000000 1000000000 15 0 20.3851648071345 1000000000 ]); int015(17, 0, [`Network Node921` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 19.8719977876396 10.3851648071345 1000000000 1000000000 1000000000 25.3851648071345 1000000000 1000000000 5.3851648071345 20.3851648071345 0 1000000000 ]); int015(18, 0, [`Network Node90` 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 11 18.8102496759066 20.4868329805051 1000000000 5 7.61577310586391 1000000000 1000000000 1000000000 0 ]); SetStatus(0); int018; {Atom: Node Table} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Node Table], 0, 3264); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(0); int001(213); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); int024; SetTable(18, 18); int015(0, 0, [ `Network Node1` `Network Node2` `Network Node3` `Network Node4` `Network Node92` `Network Node95` `Network Node79` `Network Node80` `Network Node81` `Network Node83` `Network Node84` `Network Node85` `Network Node89` `Network Node91` `Network Node90` `Network Node91` `Network Node921` `Network Node90` ]); int015(1, 0, [`Network Node1` 1 1 1 ]); int015(2, 0, [`Network Node2` 2 2 1 ]); int015(3, 0, [`Network Node3` 3 3 3 ]); int015(4, 0, [`Network Node4` 4 4 3 ]); int015(5, 0, [`Network Node92` 5 1 5 ]); int015(6, 0, [`Network Node95` 6 3 6 ]); int015(7, 0, [`Network Node79` 7 7 8 8 15 15 ]); int015(8, 0, [`Network Node80` 8 8 8 8 15 15 ]); int015(9, 0, [`Network Node81` 9 9 9 18 18 9 ]); int015(10, 0, [`Network Node83` 10 10 9 18 18 9 ]); int015(11, 0, [`Network Node84` 11 9 11 18 18 9 ]); int015(12, 0, [`Network Node85` 8 12 12 8 15 15 ]); int015(13, 0, [`Network Node89` 18 9 9 13 18 13 ]); int015(14, 0, [`Network Node91` 18 9 9 18 14 14 ]); int015(15, 0, [`Network Node90` 8 15 8 15 15 15 ]); int015(16, 0, [`Network Node91` 8 15 8 16 16 15 ]); int015(17, 0, [`Network Node921` 8 15 8 17 15 17 ]); int015(18, 0, [`Network Node90` 18 9 9 18 18 18 ]); SetStatus(0); int018; {Atom: Pointer Table} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Pointer Table], 0, 3264); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(0); SetChannels(0, 18); int001(214); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); int013(4, 0, true, true, 0, 0, [], []); int013(5, 0, true, true, 0, 0, [], []); int013(6, 0, true, true, 0, 0, [], []); int013(7, 0, true, true, 0, 0, [], []); int013(8, 0, true, true, 0, 0, [], []); int013(9, 0, true, true, 0, 0, [], []); int013(10, 0, true, true, 0, 0, [], []); int013(11, 0, true, true, 0, 0, [], []); int013(12, 0, true, true, 0, 0, [], []); int013(13, 0, true, true, 0, 0, [], []); int013(14, 0, true, true, 0, 0, [], []); int013(15, 0, true, true, 0, 0, [], []); int013(16, 0, true, true, 0, 0, [], []); int013(17, 0, true, true, 0, 0, [], []); int013(18, 0, true, true, 0, 0, [], []); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); int024; SetTable(18, 1); int015(0, 0, [ `Network Node1` `Network Node2` `Network Node3` `Network Node4` `Network Node92` `Network Node95` `Network Node79` `Network Node80` `Network Node81` `Network Node83` `Network Node84` `Network Node85` `Network Node89` `Network Node91` `Network Node90` `Network Node91` `Network Node921` `Network Node90` ]); int015(1, 0, [1 221773844 232149372 90894584 195061732 232999904 242185220 242186488 233009172 233010004 233011460 241589880 241590584 241591828 241593108 241555556 241556976 241558260 232945288 ]); SetStatus(0); int018; {Atom: Angle Table} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Angle Table], 0, 3264); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(0); int001(215); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); int024; SetTable(18, 18); int015(0, 0, [ `Network Node1` `Network Node2` `Network Node3` `Network Node4` `Network Node92` `Network Node95` `Network Node79` `Network Node80` `Network Node81` `Network Node83` `Network Node84` `Network Node85` `Network Node89` `Network Node91` `Network Node90` `Network Node91` `Network Node921` `Network Node90` ]); int015(1, 0, [`Network Node1` 180 287.102728969052 ]); int015(2, 0, [`Network Node2` 0 ]); int015(3, 0, [`Network Node3` 172.874983651098 70.5599651718238 ]); int015(4, 0, [`Network Node4` 352.874983651098 ]); int015(5, 0, [`Network Node92` 107.102728969052 ]); int015(6, 0, [`Network Node95` 250.559965171824 ]); int015(7, 0, [`Network Node79` 18.434948822922 ]); int015(8, 0, [`Network Node80` 198.434948822922 233.130102354156 0 ]); int015(9, 0, [`Network Node81` 140.194428907735 198.434948822922 0 ]); int015(10, 0, [`Network Node83` 320.194428907735 ]); int015(11, 0, [`Network Node84` 18.434948822922 ]); int015(12, 0, [`Network Node85` 53.130102354156 ]); int015(13, 0, [`Network Node89` 233.130102354156 ]); int015(14, 0, [`Network Node91` 113.198590513648 ]); int015(15, 0, [`Network Node90` 180 270 291.801409486352 ]); int015(16, 0, [`Network Node91` 90 ]); int015(17, 0, [`Network Node921` 111.801409486352 ]); int015(18, 0, [`Network Node90` 180 53.130102354156 293.198590513648 ]); SetStatus(0); int018; {Atom: Atom Table} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Atom Table], 0, 3264); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(0); SetChannels(0, 19); int001(216); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); int013(4, 0, true, true, 0, 0, [], []); int013(5, 0, true, true, 0, 0, [], []); int013(6, 0, true, true, 0, 0, [], []); int013(7, 0, true, true, 0, 0, [], []); int013(8, 0, true, true, 0, 0, [], []); int013(9, 0, true, true, 0, 0, [], []); int013(10, 0, true, true, 0, 0, [], []); int013(11, 0, true, true, 0, 0, [], []); int013(12, 0, true, true, 0, 0, [], []); int013(13, 0, true, true, 0, 0, [], []); int013(14, 0, true, true, 0, 0, [], []); int013(15, 0, true, true, 0, 0, [], []); int013(16, 0, true, true, 0, 0, [], []); int013(17, 0, true, true, 0, 0, [], []); int013(18, 0, true, true, 0, 0, [], []); int013(19, 0, true, true, 0, 0, [], []); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); int024; SetTable(19, 2); int015(0, 0, [ `Assembler1` ` Assembler2` ` Assembler3` ` Assembler4` `Copy of Queue64` ` Dispatcher3` `Dispatcher4` `Warehouse3` ` Warehouse4` `Warehouse6` ` Warehouse7` ` Assembler1-1` ` Assembler2-2` `Copy of Assembler3` `Copy of Assembler4` `Copy of Queue3` `Copy of Copy of Queue3` `Copy of Copy of Queue3 (1)` `Copy of Copy of Copy of Queue3 (1)` ]); int015(1, 0, [`Pointer Value` 195289976 232271708 221807988 222085292 222114736 232939832 221662652 222105012 221625188 242183340 222444660 222617332 222610196 222618488 222612856 232997572 233000828 233006128 232999276 ]); int015(2, 0, [`Connected Node` 1 3 5 8 2 16 13 7 12 10 11 6 5 10 9 17 14 16 13 ]); SetStatus(0); int018; {Atom: Battery Pointer Table} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Battery Pointer Table], 0, 3264); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(0); int001(217); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); int024; SetStatus(0); int018; {Atom: Battery Distance Table} sets; BaseClass; CreateAtom(a, Up(s), [], 1, false); int023([Battery Distance Table], 0, 3264); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(0); int001(218); SetSize(1, 1, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); int024; SetStatus(0); int018; Up; {Atom: Assembler1-1} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Assembler1-1], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:6.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(219); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(50, -10, 0); SetSize(5, 5, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [max(0,lognormal(10,2))]); SetExprAtt(2, [0]); SetExprAtt(3, [SetLabel([basteh],2,i)]); SetExprAtt(4, [{.~1|1. Specific channel: always send to channel ~1~.}1]); SetAtt(5, 1); SetExprAtt(6, [1]); SetAtt(7, 6); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Assembler2-2} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ Assembler2-2], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:5.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(220); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(50, 11, 0); SetSize(5, 5, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [NegExp(mins(10))]); SetExprAtt(2, [0]); SetExprAtt(3, [SetLabel([basteh],1,i)]); SetExprAtt(4, [{.~1|~1~.}1]); SetAtt(5, 1); SetExprAtt(6, [1]); SetAtt(7, 6); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Copy of Assembler3} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Assembler3], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:10.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(221); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(98, -12, 0); SetSize(5, 5, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [mins(30)]); SetExprAtt(2, [0]); SetExprAtt(3, [0]); SetExprAtt(4, [{.~1|~1~.}1]); SetAtt(5, 0); SetExprAtt(6, [1]); SetAtt(7, 1); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Copy of Assembler4} sets; AtomByName([Assembler], Main); if(not(AtomExists), Error([Cannot find mother atom 'Assembler'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Assembler4], 4194432, 1264); Set(Icon(a), RegisterIcon(IconsDir([bmp\machines\mach1001.bmp]), [mach1001])); AddModel3D( RegisterModel3D(Model3DDir([\assembler.wrl]), [assembler.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Assembler.ico])); Set(DdbRec, [>t-node1:9.>t-network:1.]); SetChannels(2, 1); SetChannelRanges(2, 255, 1, 255); int001(222); int013(1, 0, true, false, 5, 0, [container/order/main product], []); int013(2, 0, false, false, 0, 0, [], []); SetLoc(98, 23, 0); SetSize(5, 5, 1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [mins(30)]); SetExprAtt(2, [0]); SetExprAtt(3, [0]); SetExprAtt(4, [{.~1|~1~.}1]); SetAtt(5, 1); SetExprAtt(6, [1]); SetAtt(7, 6); SetAtt(8, 1); SetAtt(9, 1); SetExprAtt(10, [0]); SetAtt(11, 1); SetAtt(12, 2); int024; SetTable(2, 1); int015(0, 0, [ `Input ch1` `Input ch2` ]); int015(1, 0, [`Product 1` 5 1 ]); SetStatus(1); int018; {Atom: Speedometer} sets; AtomByName([Speedometer], Main); if(not(AtomExists), Error([Cannot find mother atom 'Speedometer'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Speedometer], 0, 3112); Set(Icon(a), RegisterIcon(pDir([media\images\default.jpg]), [default.jpg])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Tools.ico])); Set(DdbRec, [>y1start:-9.5.>y2start:-10.>stepcounter:20.]); SetChannels(1, 0); SetChannelRanges(1, 100, 0, 0); int001(223); int013(1, 0, true, true, 0, 0, [To input], []); SetLoc(60, -100, 0); SetSize(50, 11, 1); LockPosition(true); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [10]); SetExprAtt(2, [0.5]); SetExprAtt(3, [2]); SetExprAtt(4, [0.2]); SetAtt(5, 0); SetExprAtt(6, [2]); SetExprAtt(7, [ColorSilver]); SetExprAtt(8, [ColorWhite]); SetExprAtt(9, [ColorBlack]); SetExprAtt(10, [ColorBlack]); SetExprAtt(11, [ColorRed]); SetExprAtt(12, [ColorBrown]); SetExprAtt(13, [ColorBlue]); SetExprAtt(14, [ColorBlack]); SetAtt(15, 1); SetExprAtt(16, [1.609344]); SetAtt(17, 0); SetAtt(18, 0); SetAtt(19, 0); SetAtt(20, 0); int024; SetTable(30, 8); int015(0, 0, [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ]); int015(1, 0, [`Time` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); int015(2, 0, [`Current Speed` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); int015(3, 0, [`X-location` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); int015(4, 0, [`Calc. X-loc` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); int015(5, 0, [`Y-location` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); int015(6, 0, [`Calc. Y-loc` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); int015(7, 0, [`Calc. XY-loc` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); int015(8, 0, [`Angular Speed` 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]); SetStatus(0); int018; {Atom: Queue88} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Queue88], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(224); int013(1, 0, true, false, 0, 0, [], []); SetLoc(60, -9, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Copy of Queue88} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Queue88], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(225); int013(1, 0, true, false, 0, 0, [], []); SetLoc(60, -6, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 5); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Copy of Queue88 (1)} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Queue88 (1)], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(226); int013(1, 0, true, false, 0, 0, [], []); SetLoc(62, 26, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 5); SetExprAtt(7, [{.openic(~1,c)|5. Channel ~1~.}openic(1,c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Copy of Copy of Queue88} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Copy of Queue88], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(227); int013(1, 0, true, false, 0, 0, [], []); SetLoc(58, 19, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: ArrivalList92} sets; AtomByName([ArrivalList], Main); if(not(AtomExists), Error([Cannot find mother atom 'ArrivalList'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([ArrivalList92], 7168771, 1256); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\source.bmp]), [source])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\ArrivalList.ico])); SetChannels(1, 2); SetChannelRanges(1, 1, 1, 255); int001(228); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(42, -4, 0); SetSize(5, 2, 0.1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetExprAtt(2, [negexp(10)]); SetAtt(3, 1); SetExprAtt(4, [{.0|1. No repeat.}0]); SetAtt(5, 0); SetAtt(6, 100); SetExprAtt(7, [do(Bernoulli(50,1,2),SetLabel([p1],1,i))]); SetAtt(8, 0); SetAtt(9, 0); SetAtt(10, 0); SetAtt(11, 0); int024; SetTable(1, 4); int015(0, 0, [`nr` 1 ]); int015(1, 0, [`Arrival Time` `NegExp(mins(10))` ]); int015(2, 0, [`Atom name` `palet1` ]); int015(3, 0, [`Quantity` 100 ]); int015(4, 0, [`Channel` 1 ]); SetStatus(2); int018; {Atom: Copy of ArrivalList92} sets; AtomByName([ArrivalList], Main); if(not(AtomExists), Error([Cannot find mother atom 'ArrivalList'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of ArrivalList92], 7168771, 1256); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\source.bmp]), [source])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\ArrivalList.ico])); SetChannels(1, 2); SetChannelRanges(1, 1, 1, 255); int001(229); int013(1, 0, true, false, 0, 0, [], []); int013(2, 0, true, false, 0, 0, [], []); SetLoc(45, 12, 0); SetSize(5, 2, 0.1); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetExprAtt(2, [negexp(10)]); SetAtt(3, 1); SetExprAtt(4, [{.hr(~1)|3. The repeat time is ~8~ hours.}hr(8)]); SetAtt(5, 0); SetAtt(6, 100); SetExprAtt(7, [do(Bernoulli(50,1,2),SetLabel([p2],2,i))]); SetAtt(8, 0); SetAtt(9, 0); SetAtt(10, 0); SetAtt(11, 0); int024; SetTable(1, 4); int015(0, 0, [`nr` 1 ]); int015(1, 0, [`Arrival Time` `NegExp(mins(5))` ]); int015(2, 0, [`Atom Name` `palet2` ]); int015(3, 0, [`Quantity` 100 ]); int015(4, 0, [`Channel` 1 ]); SetStatus(2); int018; {Atom: Copy of Queue3} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Queue3], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); Set(DdbRec, [>t-node1:17.>t-network:1.]); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(230); int013(1, 0, true, false, 0, 0, [], []); SetLoc(110, -9, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1.1); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Copy of Copy of Queue3} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Copy of Queue3], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); Set(DdbRec, [>t-node1:14.>t-network:1.]); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(231); int013(1, 0, true, false, 0, 0, [], []); SetLoc(105, 20, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1.88); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Copy of Copy of Queue3 (1)} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Copy of Queue3 (1)], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); Set(DdbRec, [>t-node1:16.>t-network:1.]); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(232); int013(1, 0, true, false, 0, 0, [], []); SetLoc(111, 1, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 1.1); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Copy of Copy of Copy of Queue3 (1)} sets; AtomByName([Queue], Main); if(not(AtomExists), Error([Cannot find mother atom 'Queue'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Copy of Copy of Copy of Queue3 (1)], 12615680, 240); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\queue.bmp]), [queue])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Queue.ico])); Set(DdbRec, [>t-node1:13.>t-network:1.]); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(233); int013(1, 0, true, false, 0, 0, [], []); SetLoc(105, 12, 0); SetSize(5, 2, 0); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetExprAtt(1, [{.~1|~1~.}1]); SetAtt(2, 100); SetExprAtt(3, [0]); SetExprAtt(4, [0]); SetExprAtt(5, [{.content(c)|Fifo (First In First Out).}content(c)]); SetAtt(6, 0.866000000000002); SetExprAtt(7, [{.openallic(c)|Any inputchannel.}openallic(c)]); SetAtt(8, 2); int024; SetStatus(13); int018; {Atom: Network Node92} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node92], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:5.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(234); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(56, 14, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 5); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node95} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node95], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:6.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(235); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(57, -10, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 6); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node79} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node79], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:7.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(236); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(131, -13, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 7); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node80} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node80], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:8.>t-node:1.]); SetChannels(0, 3); SetChannelRanges(0, 255, 0, 255); int001(237); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); SetLoc(122, -16, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 8); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(3, 2); int015(0, 0, [ 1 2 3 ]); int015(1, 0, [1 1000000 1000000 1000000 ]); int015(2, 0, [2 0 0 0 ]); SetStatus(0); int018; {Atom: Network Node81} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node81], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:9.>t-node:1.]); SetChannels(0, 3); SetChannelRanges(0, 255, 0, 255); int001(238); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); SetLoc(127, 14, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 9); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(3, 2); int015(0, 0, [ 1 2 3 ]); int015(1, 0, [1 1000000 1000000 1000000 ]); int015(2, 0, [2 0 0 0 ]); SetStatus(0); int018; {Atom: Network Node83} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node83], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:10.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(239); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(133, 9, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 10); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node84} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node84], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:11.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(240); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(136, 17, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 11); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node85} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node85], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:12.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(241); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(131, -4, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 12); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node89} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node89], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:13.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(242); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(113, 10, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 13); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node91} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node91], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:14.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(243); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(113, 21, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 14); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node90} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node90], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:15.>t-node:1.]); SetChannels(0, 3); SetChannelRanges(0, 255, 0, 255); int001(244); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); SetLoc(117, -16, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 15); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(3, 2); int015(0, 0, [ 1 2 3 ]); int015(1, 0, [1 1000000 1000000 1000000 ]); int015(2, 0, [2 0 0 0 ]); SetStatus(0); int018; {Atom: Network Node91} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node91], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:16.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(245); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(117, -1, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 16); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Network Node921} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node921], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:17.>t-node:1.]); SetChannels(0, 2); SetChannelRanges(0, 255, 0, 255); int001(246); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); SetLoc(115, -11, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 17); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(1, 2); int015(0, 0, [ 1 ]); int015(1, 0, [1 1000000 ]); int015(2, 0, [2 0 ]); SetStatus(0); int018; {Atom: Advanced Transporter93} sets; AtomByName([Advanced Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Advanced Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Advanced Transporter93], 767720, 66675); Set(Icon(a), RegisterIcon(IconsDir([Bmp\Transp\trns1001.bmp]), [trns1001.bmp], 1, 0, 0, 0, 0, false, 0)); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter2.ico])); Set(DdbRec, [>t-start:1.>t-turntime:6.87639574910766E-12.>t-dest:1.>t-continue:1.>d4:1000000000000.>d2:1000000000000.>d3:23.8102496759066.>d1:23.8102496759066.>n3:10.>n2:18.>n1:13.>t-transporter:1.]); SetChannels(3, 4); SetChannelRanges(3, 3, 4, 4); int001(247); int013(1, 0, true, false, 0, 0, [Product Origin], [Product Destination]); int013(2, 0, true, false, 1, 1, [Current goal (Origin or Destination)], [Next network node on path]); int013(3, 0, true, false, 1, 1, [Do not connect], [Previous network node on path]); int013(4, 0, true, false, 0, 0, [], [Link to network]); SetLoc(113.5, 10, 0); SetSize(3, 2, 1); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetAtt(2, 1); SetAtt(3, 113.5); SetAtt(4, 10); SetAtt(5, 0); SetAtt(6, 1); SetExprAtt(7, [3]); SetExprAtt(8, [1]); SetExprAtt(9, [1]); SetAtt(10, 0); SetAtt(11, 1); SetExprAtt(12, [{.~1|1. Specific channel --> Always send to channel ~1~.}1]); SetExprAtt(13, [0]); SetExprAtt(14, [0]); SetExprAtt(15, [1]); SetExprAtt(16, [0]); SetExprAtt(17, [0]); SetAtt(18, 253010700); SetExprAtt(19, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on the label ~column~ of the first ranked atom of the destination..}label([column],first(in(2,c)))]); SetExprAtt(20, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(21, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on label ~row~ of the atom to be placed..}label([row],first(in(2,c)))]); SetExprAtt(22, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on label ~column~ of the atom to be placed..}label([column],i)]); SetExprAtt(23, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~.}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(24, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on the label ~row~ of the first ranked atom of the destination..}label([row],i)]); SetAtt(25, 1); SetAtt(26, 1); SetAtt(27, 1); SetTextAtt(28, [LabelName]); SetAtt(29, 0); SetAtt(30, 0); SetAtt(31, 1); SetAtt(32, 1); SetAtt(33, 0); SetAtt(34, 1); SetAtt(35, 1); SetAtt(36, 0); SetAtt(37, 177929.607227284); SetExprAtt(38, [0.5]); SetAtt(39, 0); SetAtt(40, 0); SetExprAtt(41, [0]); SetAtt(42, 0); SetAtt(43, 0); SetAtt(44, 253355644); SetAtt(45, 253345572); SetAtt(46, 253478468); SetAtt(47, 253342336); SetAtt(48, 3); SetAtt(49, 0); SetAtt(50, 30); SetAtt(51, 0); SetAtt(52, 0); SetAtt(53, 0); SetAtt(54, 0); SetTextAtt(55, [LabelName]); SetAtt(56, 1); SetAtt(57, 1); SetAtt(58, 0); SetAtt(59, 0); SetTextAtt(60, [Network Node89]); SetAtt(61, 1); SetAtt(62, 0); SetExprAtt(63, [{.if(att([angledifference],c)>~1,~3,~2)|2. Use two different corner speeds: if road angle is between min.angle and ~50~°,choose speed of ~1.5~ m/s, if angle is larger then choose ~0.5~ m/s.}if(att([angledifference],c)>50,0.5,1.5)]); SetAtt(64, 320.194428907735); SetAtt(65, 320.194428907735); SetAtt(66, 0); SetAtt(67, 10); SetAtt(68, 253479096); SetAtt(69, 0); SetExprAtt(70, [750]); SetExprAtt(71, [{.~1|1. Constant: ~50~ Ah.}50]); SetExprAtt(72, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(73, [10]); SetExprAtt(74, [20]); SetAtt(75, 750); SetAtt(76, 100); SetAtt(77, 0); SetExprAtt(78, [1]); SetExprAtt(79, [0]); SetAtt(80, 0); SetAtt(81, 232018284); SetAtt(82, 1); SetAtt(83, 261697864); SetAtt(84, 261698492); SetAtt(85, 261699120); SetAtt(86, 0); SetAtt(87, 0); SetExprAtt(88, [{.~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(89, [{.~1|1. Constant: ~10~ Ah.}10]); SetExprAtt(90, [{.~1|1. Constant: ~100~ Ah.}100]); SetAtt(91, 0); SetAtt(92, 0); SetAtt(93, 0); SetAtt(94, 5000); int024; SetStatus(1); int018; {Atom: Advanced Transporter94} sets; AtomByName([Advanced Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Advanced Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Advanced Transporter94], 767720, 66675); Set(Icon(a), RegisterIcon(IconsDir([Bmp\Transp\trns1001.bmp]), [trns1001.bmp], 1, 0, 0, 0, 0, false, 0)); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter2.ico])); Set(DdbRec, [>t-start:1.>t-transporter:1.]); SetChannels(3, 4); SetChannelRanges(3, 3, 4, 4); int001(248); int013(1, 0, true, false, 0, 0, [Product Origin], [Product Destination]); int013(2, 0, true, false, 1, 1, [Current goal (Origin or Destination)], [Next network node on path]); int013(3, 0, true, false, 1, 1, [Do not connect], [Previous network node on path]); int013(4, 0, true, false, 0, 0, [], [Link to network]); SetLoc(120, -3, 0); SetSize(3, 2, 1); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 0); SetAtt(2, 1); SetAtt(3, 120); SetAtt(4, -3); SetAtt(5, 0); SetAtt(6, 1); SetExprAtt(7, [3]); SetExprAtt(8, [1]); SetExprAtt(9, [1]); SetAtt(10, 0); SetAtt(11, 1); SetExprAtt(12, [{.~1|1. Specific channel --> Always send to channel ~1~ .}1]); SetExprAtt(13, [0]); SetExprAtt(14, [0]); SetExprAtt(15, [1]); SetAtt(16, 0); SetAtt(17, 0); SetAtt(18, 58016728); SetExprAtt(19, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on the label ~column~ of the first ranked atom of the destination. .}label([column],first(in(2,c)))]); SetExprAtt(20, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~ .}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(21, [{.label([~1],first(in(2,c)))|2. Atom label (for picking) --> the offset is found on label ~row~ of the atom to be placed. .}label([row],first(in(2,c)))]); SetExprAtt(22, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on label ~column~ of the atom to be placed. .}label([column],i)]); SetExprAtt(23, [{.yabsloc(c,model)-yabsloc(in(2,c),model)|4. Horizontal line --> the transporter travels in a horizontal line. ~Only use this option to define the Y offsets!~ .}yabsloc(c,model)-yabsloc(in(2,c),model)]); SetExprAtt(24, [{.label([~1],i)|3. Atom label (for placing) --> the offset is found on the label ~row~ of the first ranked atom of the destination. .}label([row],i)]); SetAtt(25, 1); SetAtt(26, 0); SetAtt(27, 1); SetTextAtt(28, [LabelName]); SetAtt(29, 0); SetAtt(30, 0); SetAtt(31, 1); SetAtt(32, 1); SetAtt(33, 0); SetExprAtt(34, [true]); SetAtt(35, 1); SetAtt(36, 0); SetAtt(37, 3552.6158561785); SetExprAtt(38, [0.5]); SetAtt(39, 0); SetAtt(40, 0); SetAtt(41, 0); SetAtt(42, 0); SetAtt(43, 0); SetAtt(44, 0); SetAtt(45, 0); SetAtt(46, 0); SetAtt(47, 0); SetAtt(48, 3); SetAtt(49, 0); SetAtt(50, 30); SetAtt(51, 0); SetAtt(52, 0); SetAtt(53, 0); SetAtt(54, 0); SetTextAtt(55, [LabelName]); SetAtt(56, 1); SetAtt(57, 1); SetAtt(58, 0); SetAtt(59, 0); SetAtt(60, 0); SetAtt(61, 1); SetAtt(62, 0); SetExprAtt(63, [{.if(att([angledifference],c)>~1,~3,~2)|2. Use two different corner speeds: if road angle is between min.angle and ~50~°,choose speed of ~1.5~ m/s, if angle is larger then choose ~0.5~ m/s .}if(att([angledifference],c)>50,0.5,1.5)]); SetAtt(64, 0); SetAtt(65, 0); SetExprAtt(66, [0]); SetExprAtt(67, [10]); SetExprAtt(68, [0]); SetAtt(69, 0); SetExprAtt(70, [750]); SetExprAtt(71, [{~1|1. Constant: ~50~ Ah.}50]); SetExprAtt(72, [{~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(73, [10]); SetExprAtt(74, [20]); SetAtt(75, 750); SetAtt(76, 100); SetAtt(77, 0); SetExprAtt(78, [1]); SetExprAtt(79, [0]); SetAtt(80, 0); SetAtt(81, 242448840); SetAtt(82, 2); SetAtt(83, 0); SetAtt(84, 0); SetAtt(85, 0); SetAtt(86, 0); SetAtt(87, 0); SetExprAtt(88, [{~1|1. Constant: ~100~ Ah.}100]); SetExprAtt(89, [{~1|1. Constant: ~10~ Ah.}10]); SetExprAtt(90, [{~1|1. Constant: ~100~ Ah.}100]); SetAtt(91, 0); SetAtt(92, 0); SetAtt(93, 0); SetAtt(94, 5000); int024; SetStatus(1); int018; {Atom: Transporter89} sets; AtomByName([Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Transporter89], 767720, 66643); Set(Icon(a), RegisterIcon(IconsDir([bmp\transp\truck2.bmp]), [truck 1])); AddModel3D( RegisterModel3D(Model3DDir([\Forklift.wrl]), [Forklift.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter1.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(249); int013(1, 0, true, false, 0, 0, [], []); SetLoc(76, 4, 0); SetSize(3, 2, 1); Set(RotationAs, -75.9866473736495); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 0); SetAtt(4, 0); SetAtt(5, 0); SetAtt(6, 0); SetAtt(7, 1); SetExprAtt(8, [{.openallic(c)|Any inputchannel .}openallic(c)]); SetAtt(9, 1); SetAtt(10, 0); SetAtt(11, 0); SetExprAtt(12, [1]); SetExprAtt(13, [0]); SetExprAtt(14, [0]); int024; SetStatus(1); int018; {Atom: Transporter90} sets; AtomByName([Transporter], Main); if(not(AtomExists), Error([Cannot find mother atom 'Transporter'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Transporter90], 767720, 66643); Set(Icon(a), RegisterIcon(IconsDir([bmp\transp\truck2.bmp]), [truck 1])); AddModel3D( RegisterModel3D(Model3DDir([\Forklift.wrl]), [Forklift.wrl], 0, 0, 0, 1, 1, -1, -90, 0, 0), a); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\Transporter1.ico])); SetChannels(1, 1); SetChannelRanges(1, 255, 1, 255); int001(250); int013(1, 0, true, false, 0, 0, [], []); SetLoc(79, 10, 0); SetSize(3, 2, 1); Set(RotationAs, -116.612092036388); LockPosition(false); LockSize(false); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 0); SetAtt(4, 0); SetAtt(5, 0); SetAtt(6, 0); SetAtt(7, 1); SetExprAtt(8, [{.openallic(c)|Any inputchannel .}openallic(c)]); SetAtt(9, 1); SetAtt(10, 0); SetAtt(11, 0); SetExprAtt(12, [1]); SetExprAtt(13, [0]); SetExprAtt(14, [0]); int024; SetStatus(1); int018; {Atom: Network Node90} sets; AtomByName([Network Node], Main); if(not(AtomExists), Error([Cannot find mother atom 'Network Node'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Network Node90], 0, 6384); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\server.bmp]), [server])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NetworkNode.ico])); Set(DdbRec, [>t-netreference:232018912.>t-node1:18.>t-node:1.]); SetChannels(0, 3); SetChannelRanges(0, 255, 0, 255); int001(251); int013(1, 0, true, true, 0, 0, [], []); int013(2, 0, true, true, 0, 0, [], []); int013(3, 0, true, true, 0, 0, [], []); SetLoc(116, 14, 0); SetSize(1, 1, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetAtt(2, 1); SetAtt(3, 1); SetAtt(4, 18); SetAtt(5, 0); SetAtt(6, 1); int024; SetTable(3, 2); int015(0, 0, [ 1 2 3 ]); int015(1, 0, [1 1000000 1000000 1000000 ]); int015(2, 0, [2 0 0 0 ]); SetStatus(0); int018; {Atom: Node Manipulator94} sets; AtomByName([Node Manipulator], Main); if(not(AtomExists), Error([Cannot find mother atom 'Node Manipulator'. Inheriting from BaseClass.])); CreateAtom(a, Up(s), [], 1, false); int023([Node Manipulator94], 32768, 3106); Set(Icon(a), RegisterIcon(IconsDir([bmp\atoms\tedatom.bmp]), [ed])); SetMaterial( RegisterMaterial([Default], 8421504, 8421504, 3289650, 0, 0.100000001490116, 0, false, false, 1, 0), 1, a); Set(Version(a), 0); SetTreeIcon(pDir([Media\Icons\NodeManipulator.ico])); SetChannels(1, 1); SetChannelRanges(1, 1, 1, 1); int001(252); SetLoc(121, 32, 0); SetSize(2, 2, 0); LockPosition(false); LockSize(true); DisableIconRotation(false); SetProductCode([]); SetAtt(1, 1); SetExprAtt(2, [do( setatt(3,0,c), loopuntil( att(3,c), do( if(=(count,1),setcs(first(up(c))),setcs(next(cs))), if( and( >(max(xloc(cs),+(xloc(cs),xsize(cs))),xloc(c)), >(max(yloc(cs),+(yloc(cs),ysize(cs))),yloc(c)), <(min(xloc(cs),+(xloc(cs),xsize(cs))),+(xloc(c),xsize(c))), <(min(yloc(cs),+(yloc(cs),ysize(cs))),+(yloc(c),ysize(c))), <>(atomid(cs),atomid(c)), not(ddb([t999-hidenodes],cs)) ), setatt(3,1,c) ) ), content(up(c)) ) ) ]); SetAtt(3, 1); SetAtt(4, 1); SetAtt(5, 0); SetExprAtt(6, [if( atomexists(in(1,c)), connect(0,c,1,c) )]); SetAtt(7, 1); SetAtt(8, 1); SetAtt(9, 1); SetAtt(10, 0); SetAtt(11, 1); int024; SetStatus(0); int018; Up; int014(1, 156, 1, 158, 0); int014(0, 194, 1, 156, 0); int014(1, 158, 1, 159, 0); int014(1, 159, 1, 170, 0); int014(1, 160, 1, 169, 0); int014(1, 176, 1, 160, 0); int014(2, 160, 1, 220, 0); int014(1, 161, 1, 181, 0); int014(1, 175, 1, 161, 0); int014(2, 161, 1, 219, 0); int014(1, 162, 1, 197, 0); int014(1, 196, 1, 162, 0); int014(2, 162, 0, 165, 0); int014(3, 162, 0, 165, 0); int014(4, 162, 0, 165, 0); int014(1, 163, 2, 197, 0); int014(1, 198, 1, 163, 0); int014(2, 163, 0, 167, 0); int014(3, 163, 0, 167, 0); int014(4, 163, 0, 167, 0); int014(1, 164, 0, 165, 0); int014(2, 164, 0, 234, 0); int014(3, 164, 0, 169, 0); int014(1, 165, 0, 164, 0); int014(2, 165, 0, 197, 0); int014(1, 166, 0, 167, 0); int014(2, 166, 0, 235, 0); int014(3, 166, 0, 181, 0); int014(1, 167, 0, 166, 0); int014(2, 167, 0, 197, 0); int014(1, 168, 1, 183, 0); int014(1, 187, 1, 168, 0); int014(2, 168, 1, 191, 0); int014(1, 169, 1, 225, 0); int014(1, 228, 2, 169, 0); int014(1, 170, 1, 173, 0); int014(1, 171, 1, 174, 0); int014(1, 177, 1, 171, 0); int014(1, 173, 1, 176, 0); int014(1, 174, 1, 175, 0); int014(1, 178, 1, 177, 0); int014(1, 179, 1, 178, 0); int014(0, 195, 1, 179, 0); int014(1, 181, 1, 226, 0); int014(1, 229, 2, 181, 0); int014(1, 182, 1, 185, 0); int014(1, 188, 1, 182, 0); int014(2, 182, 1, 193, 0); int014(1, 183, 1, 201, 0); int014(1, 184, 1, 232, 0); int014(2, 201, 1, 184, 0); int014(2, 202, 2, 184, 0); int014(1, 185, 1, 204, 0); int014(1, 186, 1, 233, 0); int014(1, 203, 1, 186, 0); int014(1, 204, 2, 186, 0); int014(1, 249, 1, 187, 0); int014(1, 250, 1, 188, 0); int014(1, 189, 1, 205, 0); int014(1, 199, 1, 189, 0); int014(2, 189, 0, 246, 0); int014(3, 189, 0, 246, 0); int014(4, 189, 0, 246, 0); int014(1, 190, 2, 210, 0); int014(2, 200, 1, 190, 0); int014(2, 190, 0, 243, 0); int014(3, 190, 0, 243, 0); int014(4, 190, 0, 243, 0); int014(1, 192, 1, 202, 0); int014(1, 193, 1, 203, 0); int014(1, 225, 1, 196, 0); int014(1, 227, 2, 196, 0); int014(1, 197, 1, 249, 0); int014(2, 197, 1, 250, 0); int014(1, 226, 1, 198, 0); int014(1, 224, 2, 198, 0); int014(1, 230, 1, 199, 0); int014(2, 199, 1, 248, 0); int014(1, 232, 2, 199, 0); int014(1, 200, 1, 247, 0); int014(1, 233, 1, 200, 0); int014(1, 231, 2, 200, 0); int014(1, 201, 1, 221, 0); int014(1, 202, 2, 221, 0); int014(2, 203, 1, 222, 0); int014(2, 204, 2, 222, 0); int014(1, 205, 1, 206, 0); int014(2, 205, 1, 207, 0); int014(1, 248, 2, 205, 0); int014(1, 210, 1, 208, 0); int014(2, 210, 1, 209, 0); int014(1, 247, 1, 210, 0); int014(1, 214, 0, 164, 0); int014(2, 214, 0, 165, 0); int014(3, 214, 0, 166, 0); int014(4, 214, 0, 167, 0); int014(5, 214, 0, 234, 0); int014(6, 214, 0, 235, 0); int014(7, 214, 0, 236, 0); int014(8, 214, 0, 237, 0); int014(9, 214, 0, 238, 0); int014(10, 214, 0, 239, 0); int014(11, 214, 0, 240, 0); int014(12, 214, 0, 241, 0); int014(13, 214, 0, 242, 0); int014(14, 214, 0, 243, 0); int014(15, 214, 0, 244, 0); int014(16, 214, 0, 245, 0); int014(17, 214, 0, 246, 0); int014(18, 214, 0, 251, 0); int014(1, 216, 0, 169, 0); int014(2, 216, 0, 181, 0); int014(3, 216, 0, 184, 0); int014(4, 216, 0, 186, 0); int014(5, 216, 0, 197, 0); int014(6, 216, 0, 199, 0); int014(7, 216, 0, 200, 0); int014(8, 216, 0, 206, 0); int014(9, 216, 0, 207, 0); int014(10, 216, 0, 208, 0); int014(11, 216, 0, 209, 0); int014(12, 216, 0, 219, 0); int014(13, 216, 0, 220, 0); int014(14, 216, 0, 221, 0); int014(15, 216, 0, 222, 0); int014(16, 216, 0, 230, 0); int014(17, 216, 0, 231, 0); int014(18, 216, 0, 232, 0); int014(19, 216, 0, 233, 0); int014(1, 219, 1, 224, 0); int014(2, 229, 2, 219, 0); int014(1, 220, 1, 227, 0); int014(2, 228, 2, 220, 0); int014(1, 221, 1, 230, 0); int014(1, 222, 1, 231, 0); int014(0, 162, 1, 223, 0); int014(0, 157, 1, 228, 0); int014(0, 180, 1, 229, 0); int014(1, 234, 0, 164, 0); int014(2, 234, 0, 220, 0); int014(1, 235, 0, 166, 0); int014(2, 235, 0, 219, 0); int014(1, 236, 0, 237, 0); int014(2, 236, 0, 206, 0); int014(1, 237, 0, 236, 0); int014(2, 237, 0, 241, 0); int014(3, 237, 0, 244, 0); int014(1, 238, 0, 239, 0); int014(2, 238, 0, 240, 0); int014(3, 238, 0, 251, 0); int014(1, 239, 0, 238, 0); int014(2, 239, 0, 208, 0); int014(1, 240, 0, 238, 0); int014(2, 240, 0, 209, 0); int014(1, 241, 0, 237, 0); int014(2, 241, 0, 207, 0); int014(1, 242, 0, 251, 0); int014(2, 242, 0, 233, 0); int014(1, 243, 0, 251, 0); int014(2, 243, 0, 231, 0); int014(1, 244, 0, 246, 0); int014(2, 244, 0, 245, 0); int014(3, 244, 0, 237, 0); int014(1, 245, 0, 244, 0); int014(2, 245, 0, 232, 0); int014(1, 246, 0, 244, 0); int014(2, 246, 0, 230, 0); int014(2, 247, 0, 242, 0); int014(3, 247, 0, 242, 0); int014(4, 247, 0, 242, 0); int014(1, 251, 0, 238, 0); int014(2, 251, 0, 242, 0); int014(3, 251, 0, 243, 0); int006(10, 156, 1, 0, 0); int006(0, 162, 19, 999, 0); int006(0, 163, 19, 999, 0); int006(10, 179, 1, 0, 0); int006(0, 189, 19, 999, 0); int006(0, 190, 19, 999, 0); int006(631.438328514472, 228, 1, 0, 0); int006(603.912872635778, 229, 1, 0, 0); int006(28800, 229, 2, 0, 0); int006(0, 247, 19, 999, 0); int006(0, 248, 19, 999, 0); {Experiment settings} int034; int007;