Sidebar-PID.js 63 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655
  1. (function()
  2. {
  3. // Adds P&ID shapes
  4. Sidebar.prototype.addPidPalette = function(pids, dir)
  5. {
  6. this.setCurrentSearchEntryLibrary('pid', 'pidInstruments');
  7. this.addPidInstrumentsPalette();
  8. this.setCurrentSearchEntryLibrary('pid', 'pidMisc');
  9. this.addPidMiscPalette();
  10. this.setCurrentSearchEntryLibrary('pid', 'pidValves');
  11. this.addPidValvesPalette();
  12. this.setCurrentSearchEntryLibrary('pid', 'pidCompressors');
  13. this.addPidCompressorsPalette();
  14. this.setCurrentSearchEntryLibrary('pid', 'pidEngines');
  15. this.addPidEnginesPalette();
  16. this.setCurrentSearchEntryLibrary('pid', 'pidFilters');
  17. this.addPidFiltersPalette();
  18. this.setCurrentSearchEntryLibrary('pid', 'pidFlow Sensors');
  19. this.addPidFlowSensorsPalette();
  20. this.setCurrentSearchEntryLibrary('pid', 'pidPiping');
  21. this.addPidPipingPalette();
  22. this.setCurrentSearchEntryLibrary('pid', 'pidCrushers Grinding');
  23. this.addPidCrushersGrindingPalette();
  24. this.setCurrentSearchEntryLibrary('pid', 'pidFittings');
  25. this.addPidFittingsPalette();
  26. this.setCurrentSearchEntryLibrary('pid', 'pidFittings');
  27. this.addPidSeparatorsPalette();
  28. var pidLibs = ['Instruments', 'Misc', 'Valves', 'Compressors', 'Engines', 'Filters', 'Flow Sensors', 'Piping', 'Crushers Grinding', 'Fittings', 'Separators'];
  29. for (var i = 0; i < pids.length; i++)
  30. {
  31. if (mxUtils.indexOf(pidLibs, pids[i]) < 0)
  32. {
  33. this.setCurrentSearchEntryLibrary('pid', 'pid' + pids[i]);
  34. this.addStencilPalette('pid' + pids[i], 'Proc. Eng. / ' + pids[i],
  35. dir + '/pid/' + pids[i].toLowerCase().replace(' ', '_') + '.xml',
  36. ';html=1;pointerEvents=1;align=center;' + mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;dashed=0;',
  37. null, null, null, null, null, 'pid');
  38. }
  39. }
  40. this.setCurrentSearchEntryLibrary();
  41. }
  42. Sidebar.prototype.addPidInstrumentsPalette = function()
  43. {
  44. var s = 'html=1;outlineConnect=0;align=center;dashed=0;aspect=fixed;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
  45. var s2 = 'html=1;outlineConnect=0;align=center;dashed=0;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
  46. var gn = 'mxgraph.pid2inst';
  47. var dt = 'pid process instrumentation engineering instrument engineering ';
  48. this.addPaletteFunctions('pidInstruments', 'Proc. Eng. / Instruments', false,
  49. [
  50. this.createVertexTemplateEntry(s + 'inst.discInst;mounting=room',
  51. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  52. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Discrete Instrument (control room)', null, null, this.getTagsForStencil(gn, 'discInst', dt + 'discrete control room').join(' ')),
  53. this.createVertexTemplateEntry(s + 'inst.discInst;mounting=field',
  54. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  55. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Discrete Instrument (field)', null, null, this.getTagsForStencil(gn, 'discInst', dt + 'discrete field').join(' ')),
  56. this.createVertexTemplateEntry(s + 'inst.discInst;mounting=inaccessible',
  57. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  58. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Discrete Instrument (inaccessible)', null, null, this.getTagsForStencil(gn, 'discInst', dt + 'discrete inaccessible').join(' ')),
  59. this.createVertexTemplateEntry(s + 'inst.discInst;mounting=local',
  60. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  61. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Discrete Instrument (local panel)', null, null, this.getTagsForStencil(gn, 'discInst', dt + 'discrete local panel').join(' ')),
  62. this.createVertexTemplateEntry(s + 'inst.sharedCont;mounting=room',
  63. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  64. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Shared Control/Display in DCS (control room)', null, null, this.getTagsForStencil(gn, 'sharedCont', dt + 'shared control display room').join(' ')),
  65. this.createVertexTemplateEntry(s + 'inst.sharedCont;mounting=field',
  66. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  67. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Shared Control/Display in DCS (field)', null, null, this.getTagsForStencil(gn, 'sharedCont', dt + 'shared control display dcs field').join(' ')),
  68. this.createVertexTemplateEntry(s + 'inst.sharedCont;mounting=inaccessible',
  69. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  70. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Shared Control/Display in DCS (inaccessible)', null, null, this.getTagsForStencil(gn, 'sharedCont', dt + 'shared control display dcs inaccessible').join(' ')),
  71. this.createVertexTemplateEntry(s + 'inst.sharedCont;mounting=local',
  72. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  73. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Shared Control/Display in DCS (local panel)', null, null, this.getTagsForStencil(gn, 'sharedCont', dt + 'shared control display dcs local panel').join(' ')),
  74. this.createVertexTemplateEntry(s + 'inst.compFunc;mounting=room',
  75. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  76. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Computer Function (control room)', null, null, this.getTagsForStencil(gn, 'compFunc', dt + 'computer function control room').join(' ')),
  77. this.createVertexTemplateEntry(s + 'inst.compFunc;mounting=field',
  78. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  79. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Computer Function (field)', null, null, this.getTagsForStencil(gn, 'compFunc', dt + 'computer function field').join(' ')),
  80. this.createVertexTemplateEntry(s + 'inst.compFunc;mounting=inaccessible',
  81. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  82. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Computer Function (inaccessible)', null, null, this.getTagsForStencil(gn, 'compFunc', dt + 'computer function inaccessible').join(' ')),
  83. this.createVertexTemplateEntry(s + 'inst.compFunc;mounting=local',
  84. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  85. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Computer Function (local panel)', null, null, this.getTagsForStencil(gn, 'compFunc', dt + 'computer function local panel').join(' ')),
  86. this.createVertexTemplateEntry(s + 'inst.progLogCont;mounting=room',
  87. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  88. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Programmable Logic Control (control room)', null, null, this.getTagsForStencil(gn, 'progLogCont', dt + 'programmable logic control plc room').join(' ')),
  89. this.createVertexTemplateEntry(s + 'inst.progLogCont;mounting=field',
  90. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  91. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Programmable Logic Control (field)', null, null, this.getTagsForStencil(gn, 'progLogCont', dt + 'programmable logic control plc field').join(' ')),
  92. this.createVertexTemplateEntry(s + 'inst.progLogCont;mounting=inaccessible',
  93. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  94. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Programmable Logic Control (inaccessible)', null, null, this.getTagsForStencil(gn, 'progLogCont', dt + 'programmable logic control plc inaccessible').join(' ')),
  95. this.createVertexTemplateEntry(s + 'inst.progLogCont;mounting=local',
  96. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:width;">' +
  97. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Programmable Logic Control (local panel)', null, null, this.getTagsForStencil(gn, 'progLogCont', dt + 'programmable logic control plc local panel').join(' ')),
  98. this.createVertexTemplateEntry(s + 'inst.logic;mounting=room',
  99. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  100. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Logic (control room)', null, null, this.getTagsForStencil(gn, 'logic', dt + 'control room').join(' ')),
  101. this.createVertexTemplateEntry(s + 'inst.logic;mounting=field',
  102. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  103. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Logic (field)', null, null, this.getTagsForStencil(gn, 'logic', dt + 'field').join(' ')),
  104. this.createVertexTemplateEntry(s + 'inst.logic;mounting=inaccessible',
  105. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  106. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Logic (inaccessible)', null, null, this.getTagsForStencil(gn, 'logic', dt + 'inaccessible').join(' ')),
  107. this.createVertexTemplateEntry(s + 'inst.logic;mounting=local',
  108. 50, 50, '<table cellpadding="4" cellspacing="0" border="0" style="font-size:1em;width:100%;height:100%;">' +
  109. '<tr><td>TI</td></tr><tr><td>##</td></table> ', 'Logic (local panel)', null, null, this.getTagsForStencil(gn, 'logic', dt + 'local panel').join(' ')),
  110. this.createVertexTemplateEntry(s2 + 'inst.indicator;mounting=room;overflow=fill;indType=inst', 50, 100,
  111. '<table cellpadding="0" cellspacing="0" style="font-size:1em;width:100%;height:100%;"><tr><td align="center" height="25">TI</td></tr><tr><td align="center" height="25">##</td></tr><tr><td align="center" valign="bottom"></td></tr></table>',
  112. 'Indicator (Instrument)', null, null, this.getTagsForStencil(gn, 'indicator', dt + 'indicator').join(' ')),
  113. this.createVertexTemplateEntry(s2 + 'inst.indicator;mounting=room;overflow=fill;indType=ctrl', 50, 100,
  114. '<table cellpadding="0" cellspacing="0" style="font-size:1em;width:100%;height:100%;"><tr><td align="center" height="25">TI</td></tr><tr><td align="center" height="25">##</td></tr><tr><td align="center" valign="bottom"></td></tr></table>',
  115. 'Indicator (Control)', null, null, this.getTagsForStencil(gn, 'indicator', dt + 'indicator control').join(' ')),
  116. this.createVertexTemplateEntry(s2 + 'inst.indicator;mounting=room;overflow=fill;indType=func', 50, 100,
  117. '<table cellpadding="0" cellspacing="0" style="font-size:1em;width:100%;height:100%;"><tr><td align="center" height="25">TI</td></tr><tr><td align="center" height="25">##</td></tr><tr><td align="center" valign="bottom"></td></tr></table>',
  118. 'Indicator (Function)', null, null, this.getTagsForStencil(gn, 'indicator', dt + 'indicator function').join(' ')),
  119. this.createVertexTemplateEntry(s2 + 'inst.indicator;mounting=room;overflow=fill;indType=plc', 50, 100,
  120. '<table cellpadding="0" cellspacing="0" style="font-size:1em;width:100%;height:100%;"><tr><td align="center" height="25">TI</td></tr><tr><td align="center" height="25">##</td></tr><tr><td align="center" valign="bottom"></td></tr></table>',
  121. 'Indicator (PLC)', null, null, this.getTagsForStencil(gn, 'indicator', dt + 'indicator plc programmable logic control').join(' '))
  122. ]);
  123. };
  124. Sidebar.prototype.addPidValvesPalette = function()
  125. {
  126. var s = 'dashed=0;outlineConnect=0;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
  127. var sv = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;pointerEvents=1;dashed=0;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2valves.valve;valveType=";
  128. var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;pointerEvents=1;dashed=0;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2valves.";
  129. var gn = 'mxgraph.pid2valves';
  130. var dt = 'pid process instrumentation engineering ';
  131. this.addPaletteFunctions('pidValves', 'Proc. Eng. / Valves', false,
  132. [
  133. this.createVertexTemplateEntry(sv + 'gate', 100, 60, '', 'Gate Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate').join(' ')),
  134. this.createVertexTemplateEntry(sv + 'gate;defState=closed', 100, 60, '', 'Normally Closed Gate Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'normally closed nc gate').join(' ')),
  135. this.createVertexTemplateEntry(sv + 'ball', 100, 60, '', 'Ball Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'ball').join(' ')),
  136. this.createVertexTemplateEntry(sv + 'ball;defState=closed', 100, 60, '', 'Normally Closed Ball Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'normally closed nc ball').join(' ')),
  137. this.createVertexTemplateEntry(sv + 'globe', 100, 60, '', 'Globe Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'globe').join(' ')),
  138. this.createVertexTemplateEntry(sv + 'butterfly', 100, 60, '', 'Butterfly Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'butterfly').join(' ')),
  139. this.createVertexTemplateEntry(sv + 'check;', 100, 60, '', 'Check Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'check').join(' ')),
  140. this.createVertexTemplateEntry(sv + 'plug', 100, 60, '', 'Plug Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'plug').join(' ')),
  141. this.createVertexTemplateEntry(sv + 'needle', 100, 60, '', 'Needle Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'needle').join(' ')),
  142. this.createVertexTemplateEntry(sv + 'selfDrain', 100, 60, '', 'Self Draining Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'self draining').join(' ')),
  143. this.createVertexTemplateEntry(sv + 'gate;actuator=man', 100, 100, '', 'Gate Valve (Manual)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate manual').join(' ')),
  144. this.createVertexTemplateEntry(sv + 'gate;actuator=diaph', 100, 100, '', 'Gate Valve (Diaphragm)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate diaphragm').join(' ')),
  145. this.createVertexTemplateEntry(sv + 'gate;actuator=balDiaph', 100, 100, '', 'Gate Valve (Balanced Diaphragm)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate balanced diaphragm').join(' ')),
  146. this.addEntry(dt + 'valve gate powered', function()
  147. {
  148. var bg1 = new mxCell('', new mxGeometry(0, 0, 100, 100), sv + 'gate;actuator=powered');
  149. bg1.vertex = true;
  150. var item1 = new mxCell('', new mxGeometry(32.5, 0, 35, 35), 'part=1;strokeColor=none;fillColor=none;fontStyle=1;fontSize=14;');
  151. item1.vertex = true;
  152. bg1.insert(item1);
  153. return sb.createVertexTemplateFromCells([bg1], 100, 100, 'Gate Valve (Powered)');
  154. }),
  155. this.createVertexTemplateEntry(sv + 'gate;actuator=digital', 100, 100, '', 'Gate Valve (Digital)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate digital').join(' ')),
  156. this.createVertexTemplateEntry(sv + 'gate;actuator=elHyd', 100, 100, '', 'Gate Valve (Electro-Hydraulic)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate electro hydraulic').join(' ')),
  157. this.createVertexTemplateEntry(sv + 'gate;actuator=key', 100, 100, '', 'Gate Valve (Key)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate key').join(' ')),
  158. this.createVertexTemplateEntry(sv + 'gate;actuator=motor', 100, 100, '', 'Gate Valve (Motor)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate motor').join(' ')),
  159. this.createVertexTemplateEntry(sv + 'gate;actuator=pilot', 100, 100, '', 'Gate Valve (Pilot)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate pilot').join(' ')),
  160. this.createVertexTemplateEntry(sv + 'gate;actuator=solenoid', 100, 100, '', 'Gate Valve (Solenoid)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate solenoid').join(' ')),
  161. this.createVertexTemplateEntry(sv + 'gate;actuator=solenoidManRes', 100, 100, '', 'Gate Valve (Solenoid With Manual Reset)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate solenoid manual reset').join(' ')),
  162. this.createVertexTemplateEntry(sv + 'gate;actuator=spring', 100, 100, '', 'Gate Valve (Spring)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate spring').join(' ')),
  163. this.createVertexTemplateEntry(sv + 'gate;actuator=weight', 100, 100, '', 'Gate Valve (Weight)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate weight').join(' ')),
  164. this.createVertexTemplateEntry(sv + 'gate;actuator=singActing', 100, 100, '', 'Gate Valve (Single Acting Cylinder)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate single acting cylinder').join(' ')),
  165. this.createVertexTemplateEntry(sv + 'gate;actuator=dblActing', 100, 100, '', 'Gate Valve (Double Acting Cylinder)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'gate double acting cylinder').join(' ')),
  166. this.createVertexTemplateEntry(sv + 'gate;actuator=angBlow', 100, 100, '', 'Angle Blowdown Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'angle blowdown').join(' ')),
  167. this.createVertexTemplateEntry(s + 'blockBleedValve;actuator=none', 100, 130, '', 'Integrated Block and Bleed Valve', null, null, this.getTagsForStencil(gn, 'blockBleedValve', dt + 'integrated block bleed').join(' ')),
  168. this.createVertexTemplateEntry(s + 'blockBleedValve;actuator=man', 100, 170, '', 'Integrated Block and Bleed Valve (Manual)', null, null, this.getTagsForStencil(gn, 'blockBleedValve', dt + 'integrated block bleed manual').join(' ')),
  169. this.createVertexTemplateEntry(sv + 'angle;actuator=none', 100, 80, '', 'Angle Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'angle').join(' ')),
  170. this.createVertexTemplateEntry(sv + 'angle;actuator=man', 100, 120, '', 'Angle Valve (Manual)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'angle manual').join(' ')),
  171. this.createVertexTemplateEntry(sv + 'angleGlobe;actuator=none', 100, 80, '', 'Angle Globe Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'angle globe').join(' ')),
  172. this.createVertexTemplateEntry(sv + 'angleGlobe;actuator=man', 100, 120, '', 'Angle Globe Valve (Manual)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'angle globe manual').join(' ')),
  173. this.createVertexTemplateEntry(sv + 'threeWay;actuator=none', 100, 80, '', '3 Way Valve', null, null, this.getTagsForStencil(gn, 'valve', dt + 'three way').join(' ')),
  174. this.createVertexTemplateEntry(sv + 'threeWay;actuator=man', 100, 120, '', '3 Way Valve (Manual)', null, null, this.getTagsForStencil(gn, 'valve', dt + 'three way manual').join(' ')),
  175. this.createVertexTemplateEntry(s + 'autoRecircValve', 100, 60, '', 'Auto Recirculation Valve', null, null, this.getTagsForStencil(gn, 'blockBleedValve', dt + 'auto recirculation').join(' '))
  176. ]);
  177. };
  178. Sidebar.prototype.addPidCompressorsPalette = function()
  179. {
  180. var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;outlineConnect=0;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.compressors.";
  181. var gn = 'mxgraph.pid.compressors';
  182. var dt = 'pid process instrumentation engineering ';
  183. this.addPaletteFunctions('pidCompressors', 'Proc. Eng. / Compressors', false,
  184. [
  185. this.createVertexTemplateEntry(s + 'ac_air_compressor', 100, 65, '', 'AC Air Compressor', null, null, this.getTagsForStencil(gn, 'ac_air_compressor', dt + '').join(' ')),
  186. this.createVertexTemplateEntry(s + 'centrifugal_compressor', 70, 70, '', 'Centrifugal Compressor', null, null, this.getTagsForStencil(gn, 'centrifugal_compressor', dt + '').join(' ')),
  187. this.createVertexTemplateEntry(mxConstants.STYLE_SHAPE + '=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;dashed=0;fontSize=8;html=1;overflow=fill;', 100, 70,
  188. '<table cellpadding="0" cellspacing="0" style="width:100%;height:100%;">' +
  189. '<tr style="height:25%;">' +
  190. '<td></td>' +
  191. '</tr>' +
  192. '<tr style="height:75%;">' +
  193. '<td align="left" style="padding-left:11%;width:100%">T</td>' +
  194. '</tr>' +
  195. '</table>',
  196. 'Centrifugal Compressor - Turbine Driven', null, null, this.getTagsForStencil(gn, 'centrifugal_compressor_-_turbine_driven', dt + '').join(' ')),
  197. this.createVertexTemplateEntry(s + 'compressor', 100, 100, '', 'Compressor', null, null, this.getTagsForStencil(gn, 'compressor', dt + '').join(' ')),
  198. this.createVertexTemplateEntry(s + 'compressor_and_silencers;pointerEvents=1', 90, 80, '', 'Compressor and Silencers', null, null, this.getTagsForStencil(gn, 'compressor_and_silencers', dt + 'silencer').join(' ')),
  199. this.createVertexTemplateEntry(s + 'liquid_ring_compressor', 90, 90, '', 'Liquid Ring Compressor', null, null, this.getTagsForStencil(gn, 'liquid_ring_compressor', dt + '').join(' ')),
  200. this.createVertexTemplateEntry(s + 'reciprocating_compressor', 100, 40, '', 'Reciprocating Compressor', null, null, this.getTagsForStencil(gn, 'reciprocating_compressor', dt + '').join(' ')),
  201. this.createVertexTemplateEntry(s + 'reciprocating_compressor_2', 50, 65, '', 'Reciprocating Compressor 2', null, null, this.getTagsForStencil(gn, 'reciprocating_compressor_2', dt + '').join(' ')),
  202. this.createVertexTemplateEntry(s + 'rotary_compressor', 42, 91, '', 'Rotary Compressor', null, null, this.getTagsForStencil(gn, 'rotary_compressor', dt + '').join(' '))
  203. ]);
  204. };
  205. Sidebar.prototype.addPidEnginesPalette = function()
  206. {
  207. var s = "dashed=0;outlineConnect=0;align=center;html=1;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.engines.";
  208. var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.engines.";
  209. var gn = 'mxgraph.pid.engines';
  210. var dt = 'pid process instrumentation engine motor ';
  211. this.addPaletteFunctions('pidEngines', 'Proc. Eng. / Engines', false,
  212. [
  213. this.createVertexTemplateEntry(s + 'electric_motor;fontSize=45;', 100, 100, 'M', 'Electric Motor', null, null, this.getTagsForStencil(gn, 'electric_motor', dt).join(' ')),
  214. this.createVertexTemplateEntry(s + 'electric_motor_(ac);fontSize=45;', 100, 100, 'M', 'Electric Motor (AC)', null, null, this.getTagsForStencil(gn, 'electric_motor_(ac)', dt).join(' ')),
  215. this.createVertexTemplateEntry(s + 'electric_motor_(dc);fontSize=45;', 100, 100, 'M', 'Electric Motor (DC)', null, null, this.getTagsForStencil(gn, 'electric_motor_(dc)', dt).join(' ')),
  216. this.createVertexTemplateEntry(s + 'gear;fontSize=45;', 100, 100, 'G', 'Gear', null, null, this.getTagsForStencil(gn, 'gear', dt).join(' ')),
  217. this.createVertexTemplateEntry(s + 'generator;fontSize=45;', 100, 100, 'G', 'Generator', null, null, this.getTagsForStencil(gn, 'generator', dt).join(' ')),
  218. this.createVertexTemplateEntry(s + 'generator_(ac);fontSize=45;', 100, 100, 'G', 'Generator (AC)', null, null, this.getTagsForStencil(gn, 'generator_(ac)', dt).join(' ')),
  219. this.createVertexTemplateEntry(s + 'generator_(dc);fontSize=45;', 100, 100, 'G', 'Generator (DC)', null, null, this.getTagsForStencil(gn, 'generator_(dc)', dt).join(' ')),
  220. this.createVertexTemplateEntry(sb + 'turbine', 70, 100, '', 'Turbine', null, null, this.getTagsForStencil(gn, 'turbine', dt).join(' '))
  221. ]);
  222. };
  223. Sidebar.prototype.addPidFiltersPalette = function()
  224. {
  225. var s = "html=1;dashed=0;outlineConnect=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.filters.";
  226. var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.filters.";
  227. var gn = 'mxgraph.pid.filters';
  228. var dt = 'pid process instrumentation filter ';
  229. this.addPaletteFunctions('pidFilters', 'Proc. Eng. / Filters', false,
  230. [
  231. this.createVertexTemplateEntry(sb + 'filter;',
  232. 50, 50, '', 'Filter', null, null, this.getTagsForStencil(gn, 'filter', dt).join(' ')),
  233. this.createVertexTemplateEntry(sb + 'gas_filter;',
  234. 50, 100, '', 'Gas Filter', null, null, this.getTagsForStencil(gn, 'gas_filter', dt).join(' ')),
  235. this.createVertexTemplateEntry(sb + 'gas_filter_(bag,_candle,_cartridge);',
  236. 50, 100, '', 'Gas Filter (Bag, Candle, Cartridge)', null, null, this.getTagsForStencil(gn, 'gas_filter_(bag,_candle,_cartridge)', dt).join(' ')),
  237. this.createVertexTemplateEntry(sb + 'gas_filter_(belt,_roll);',
  238. 50, 100, '', 'Gas Filter (Belt, Roll)', null, null, this.getTagsForStencil(gn, 'gas_filter_(belt,_roll)', dt).join(' ')),
  239. this.createVertexTemplateEntry(sb + 'gas_filter_(fixed_bed);',
  240. 50, 100, '', 'Gas Filter (Fixed Bed)', null, null, this.getTagsForStencil(gn, 'gas_filter_(fixed_bed)', dt).join(' ')),
  241. this.createVertexTemplateEntry(s + 'gas_filter_(hepa);',
  242. 50, 100, 'HEPA', 'Gas Filter (HEPA)', null, null, this.getTagsForStencil(gn, 'gas_filter_(hepa)', dt).join(' ')),
  243. this.createVertexTemplateEntry(sb + 'liquid_filter;',
  244. 50, 100, '', 'Liquid Filter', null, null, this.getTagsForStencil(gn, 'liquid_filter', dt).join(' ')),
  245. this.createVertexTemplateEntry(sb + 'liquid_Filter_(bag,_candle,_cartridge);',
  246. 50, 100, '', 'Liquid Filter (Bag, Candle, Cartridge)', null, null, this.getTagsForStencil(gn, 'liquid_Filter_(bag,_candle,_cartridge)', dt).join(' ')),
  247. this.createVertexTemplateEntry(sb + 'liquid_filter_(belt,_roll);',
  248. 50, 100, '', 'Liquid Filter (Belt, Roll)', null, null, this.getTagsForStencil(gn, 'liquid_filter_(belt,_roll)', dt).join(' ')),
  249. this.createVertexTemplateEntry(s + 'liquid_filter_(biological);',
  250. 50, 100, 'BIO', 'Liquid Filter (Biological)', null, null, this.getTagsForStencil(gn, 'liquid_filter_(biological)', dt).join(' ')),
  251. this.createVertexTemplateEntry(sb + 'liquid_filter_(fixed_bed);',
  252. 50, 100, '', 'Liquid Filter (Fixed Bed)', null, null, this.getTagsForStencil(gn, 'liquid_filter_(fixed_bed)', dt).join(' ')),
  253. this.createVertexTemplateEntry(s + 'liquid_filter_(ion_exchanger);',
  254. 50, 100, 'ION', 'Liquid Filter (Ion Exchanger)', null, null, this.getTagsForStencil(gn, 'liquid_filter_(ion_exchanger)', dt).join(' ')),
  255. this.createVertexTemplateEntry(sb + 'liquid_filter_(rotary,_drum_or_disc);',
  256. 50, 100, '', 'Liquid Filter (Rotary, Drum or Disc)', null, null, this.getTagsForStencil(gn, 'liquid_filter_(rotary,_drum_or_disc)', dt).join(' ')),
  257. this.createVertexTemplateEntry(sb + 'liquid_filter_(rotary,_drum_or_disc,_scraper);',
  258. 55, 100, '', 'Liquid Filter (Rotary, Drum or Disc, Scraper)', null, null, this.getTagsForStencil(gn, 'liquid_filter_(rotary,_drum_or_disc,_scraper)', dt).join(' ')),
  259. this.createVertexTemplateEntry(sb + 'press_filter;',
  260. 100, 50, '', 'Press Filter', null, null, this.getTagsForStencil(gn, 'press_filter', dt).join(' ')),
  261. this.createVertexTemplateEntry(sb + 'suction_filter;',
  262. 50, 100, '', 'Suction Filter', null, null, this.getTagsForStencil(gn, 'suction_filter', dt).join(' '))
  263. ]);
  264. };
  265. Sidebar.prototype.addPidFlowSensorsPalette = function()
  266. {
  267. var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;outlineConnect=0;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.flow_sensors.";
  268. var gn = 'mxgraph.pid.flow_sensors';
  269. var dt = 'process instrumentation sensor ';
  270. this.addPaletteFunctions('pidFlow Sensors', 'Proc. Eng. / Flow Sensors', false,
  271. [
  272. this.createVertexTemplateEntry(s + 'averging_pitot_tube;',
  273. 50, 50, '', 'Averging Pitot Tube', null, null, this.getTagsForStencil(gn, 'averging_pitot_tube', dt).join(' ')),
  274. this.createVertexTemplateEntry(s + 'coriolis;',
  275. 50, 50, '', 'Coriolis', null, null, this.getTagsForStencil(gn, 'coriolis', dt).join(' ')),
  276. this.createVertexTemplateEntry(s + 'flow_nozzle;',
  277. 50, 25, '', 'Flow Nozzle', null, null, this.getTagsForStencil(gn, 'flow_nozzle', dt).join(' ')),
  278. this.createVertexTemplateEntry(s + 'flume;pointerEvents=1;',
  279. 50, 50, '', 'Flume', null, null, this.getTagsForStencil(gn, 'flume', dt).join(' ')),
  280. this.createVertexTemplateEntry(mxConstants.STYLE_SHAPE + '=mxgraph.pid.flow_sensors.magnetic;dashed=0;align=center;html=1;fontSize=25;',
  281. 50, 50, 'M', 'Magnetic', null, null, this.getTagsForStencil(gn, 'magnetic', dt).join(' ')),
  282. this.createVertexTemplateEntry(s + 'pitot_tube;',
  283. 50, 50, '', 'Pitot Tube', null, null, this.getTagsForStencil(gn, 'pitot_tube', dt).join(' ')),
  284. this.createVertexTemplateEntry(s + 'positive_displacement;',
  285. 50, 30, '', 'Positive Displacement', null, null, this.getTagsForStencil(gn, 'positive_displacement', dt).join(' ')),
  286. this.createVertexTemplateEntry(s + 'rotameter;',
  287. 75, 50, '', 'Rotameter', null, null, this.getTagsForStencil(gn, 'rotameter', dt).join(' ')),
  288. this.createVertexTemplateEntry(s + 'target;',
  289. 50, 50, '', 'Target', null, null, this.getTagsForStencil(gn, 'target', dt).join(' ')),
  290. this.createVertexTemplateEntry(s + 'turbine;',
  291. 50, 50, '', 'Turbine', null, null, this.getTagsForStencil(gn, 'turbine', dt).join(' ')),
  292. this.createVertexTemplateEntry(s + 'ultrasonic;',
  293. 50, 50, '', 'Ultrasonic', null, null, this.getTagsForStencil(gn, 'ultrasonic', dt).join(' ')),
  294. this.createVertexTemplateEntry(s + 'v-cone;',
  295. 50, 50, '', 'V-cone', null, null, this.getTagsForStencil(gn, 'v-cone', dt).join(' ')),
  296. this.createVertexTemplateEntry(s + 'venturi;',
  297. 50, 40, '', 'Venturi', null, null, this.getTagsForStencil(gn, 'venturi', dt).join(' ')),
  298. this.createVertexTemplateEntry(s + 'vortex;',
  299. 50, 50, '', 'Vortex', null, null, this.getTagsForStencil(gn, 'vortex', dt).join(' ')),
  300. this.createVertexTemplateEntry(s + 'wedge;',
  301. 50, 50, '', 'Wedge', null, null, this.getTagsForStencil(gn, 'wedge', dt).join(' ')),
  302. this.createVertexTemplateEntry(s + 'weir;',
  303. 50, 50, '', 'Weir', null, null, this.getTagsForStencil(gn, 'weir', dt).join(' '))
  304. ]);
  305. };
  306. Sidebar.prototype.addPidPipingPalette = function()
  307. {
  308. var s = "html=1;dashed=0;outlineConnect=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.piping.";
  309. var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.piping.";
  310. var gn = 'mxgraph.pid.piping';
  311. var dt = 'process instrumentation piping ';
  312. this.addPaletteFunctions('pidPiping', 'Proc. Eng. / Piping', false,
  313. [
  314. this.createVertexTemplateEntry(sb + 'basket_strainer;', 50, 45, '', 'Basket Strainer', null, null, this.getTagsForStencil(gn, 'basket_strainer', dt).join(' ')),
  315. this.createVertexTemplateEntry(sb + 'blank2;', 20, 60, '', 'Blank', null, null, this.getTagsForStencil(gn, 'blank', dt).join(' ')),
  316. this.createVertexTemplateEntry(sb + 'breather;', 50, 30, '', 'Breather', null, null, this.getTagsForStencil(gn, 'breather', dt).join(' ')),
  317. this.createVertexTemplateEntry(sb + 'cap;', 10, 20, '', 'Cap', null, null, this.getTagsForStencil(gn, 'cap', dt).join(' ')),
  318. this.createVertexTemplateEntry(sb + 'closed_figure_8_blind2;', 20, 80, '', 'Closed Figure 8 Blind', null, null, this.getTagsForStencil(gn, 'closed_figure_8_blind', dt).join(' ')),
  319. this.createVertexTemplateEntry(sb + 'concentric_reducer;', 20, 20, '', 'Concentric Reducer', null, null, this.getTagsForStencil(gn, 'concentric_reducer', dt).join(' ')),
  320. this.createVertexTemplateEntry(sb + 'cone_strainer;', 30, 30, '', 'Cone Strainer', null, null, this.getTagsForStencil(gn, 'cone_strainer', dt).join(' ')),
  321. this.createVertexTemplateEntry(sb + 'damper2;', 50, 20, '', 'Damper', null, null, this.getTagsForStencil(gn, 'damper', dt).join(' ')),
  322. this.createVertexTemplateEntry(s + 'desuper_heater;', 50, 50, 'DS', 'Desuper Heater', null, null, this.getTagsForStencil(gn, 'desuper_heater', dt).join(' ')),
  323. this.createVertexTemplateEntry(s + 'detonation_arrestor;', 50, 20, 'D', 'Detonation Arrestor', null, null, this.getTagsForStencil(gn, 'detonation_arrestor', dt).join(' ')),
  324. this.createVertexTemplateEntry(sb + 'diverter_valve;pointerEvents=1;', 50, 35, '', 'Diverter Valve', null, null, this.getTagsForStencil(gn, 'diverter_valve', dt).join(' ')),
  325. this.createVertexTemplateEntry(sb + 'double_flange;pointerEvents=1;', 5, 20, '', 'Double Flange', null, null, this.getTagsForStencil(gn, 'double_flange', dt).join(' ')),
  326. this.createVertexTemplateEntry(sb + 'duplex_strainer;', 50, 40, '', 'Duplex Strainer', null, null, this.getTagsForStencil(gn, 'duplex_strainer', dt).join(' ')),
  327. this.createVertexTemplateEntry(sb + 'eccentric_reducer;', 20, 15, '', 'Eccentric Reducer', null, null, this.getTagsForStencil(gn, 'eccentric_reducer', dt).join(' ')),
  328. this.createVertexTemplateEntry(sb + 'excess_flow_valve2;', 50, 25, '', 'Excess Flow Valve', null, null, this.getTagsForStencil(gn, 'excess_flow_valve', dt).join(' ')),
  329. this.createVertexTemplateEntry(sb + 'exhaust_head;', 50, 40, '', 'Exhaust Head', null, null, this.getTagsForStencil(gn, 'exhaust_head', dt).join(' ')),
  330. this.createVertexTemplateEntry(sb + 'expansion_joint;', 50, 20, '', 'Expansion Joint', null, null, this.getTagsForStencil(gn, 'expansion_joint', dt).join(' ')),
  331. this.createVertexTemplateEntry(s + 'flame_arrestor;', 50, 20, 'F', 'Flame Arrestor', null, null, this.getTagsForStencil(gn, 'flame_arrestor', dt).join(' ')),
  332. this.createVertexTemplateEntry(sb + 'flange;pointerEvents=1;', 5, 20, '', 'Flange', null, null, this.getTagsForStencil(gn, 'flange', dt).join(' ')),
  333. this.createVertexTemplateEntry(sb + 'flange_in;pointerEvents=1;', 10, 20, '', 'Flange In', null, null, this.getTagsForStencil(gn, 'flange_in', dt).join(' ')),
  334. this.createVertexTemplateEntry(sb + 'flexible_hose;pointerEvents=1;', 50, 25, '', 'Flexible Hose', null, null, this.getTagsForStencil(gn, 'flexible_hose', dt).join(' ')),
  335. this.createVertexTemplateEntry(sb + 'hose_connection;pointerEvents=1;', 20, 20, '', 'Hose Connection', null, null, this.getTagsForStencil(gn, 'hose_connection', dt).join(' ')),
  336. this.createVertexTemplateEntry(sb + 'in-line_mixer;', 50, 10, '', 'In-Line Mixer', null, null, this.getTagsForStencil(gn, 'in-line_mixer', dt).join(' ')),
  337. this.createVertexTemplateEntry(s + 'in-line_silencer;', 50, 20, 'S', 'In-Line Silencer', null, null, this.getTagsForStencil(gn, 'in-line_silencer', dt).join(' ')),
  338. this.createVertexTemplateEntry(sb + 'open_figure_8_blind2;', 20, 80, '', 'Open Figure 8 Blind', null, null, this.getTagsForStencil(gn, 'open_figure_8_blind', dt).join(' ')),
  339. this.createVertexTemplateEntry(sb + 'orifice_(quick_change);', 10, 50, '', 'Orifice (Quick Change)', null, null, this.getTagsForStencil(gn, 'orifice_(quick_change)', dt).join(' ')),
  340. this.createVertexTemplateEntry(sb + 'plug;', 10, 10, '', 'Plug', null, null, this.getTagsForStencil(gn, 'plug', dt).join(' ')),
  341. this.createVertexTemplateEntry(sb + 'pulsation_dampener;', 50, 150, '', 'Pulsation Dampener', null, null, this.getTagsForStencil(gn, 'pulsation_dampener', dt).join(' ')),
  342. this.createVertexTemplateEntry(mxConstants.STYLE_VERTICAL_ALIGN + '=bottom;pointerEvents=1;dashed=0;' + mxConstants.STYLE_SHAPE + '=mxgraph.pid.piping.removable_spool;html=1;overflow=fill;', 50, 30,
  343. '<table cellpadding="0" cellspacing="0" style="width:100%;height:100%;">' +
  344. '<tr>' +
  345. '<td valign="bottom" align="center">RS</td>' +
  346. '</tr>' +
  347. '</table>',
  348. 'Removable Spool', null, null, this.getTagsForStencil(gn, 'removable_spool', dt).join(' ')),
  349. this.createVertexTemplateEntry(sb + 'rotary_valve;pointerEvents=1;', 50, 20, '', 'Rotary Valve', null, null, this.getTagsForStencil(gn, 'rotary_valve', dt).join(' ')),
  350. this.createVertexTemplateEntry(sb + 'spacer;', 20, 60, '', 'Spacer', null, null, this.getTagsForStencil(gn, 'spacer', dt).join(' ')),
  351. this.createVertexTemplateEntry(s + 'steam_trap;', 50, 50, 'T', 'Steam Trap', null, null, this.getTagsForStencil(gn, 'steam_trap', dt).join(' ')),
  352. this.createVertexTemplateEntry(sb + 't-type_strainer;', 20, 35, '', 'T-Type Strainer', null, null, this.getTagsForStencil(gn, 't-type_strainer', dt).join(' ')),
  353. this.createVertexTemplateEntry(sb + 'temporary_strainer;', 30, 30, '', 'Temporary Strainer', null, null, this.getTagsForStencil(gn, 'temporary_strainer', dt).join(' ')),
  354. this.createVertexTemplateEntry(s + 'vent_silencer;', 20, 80, 'S', 'Vent Silencer', null, null, this.getTagsForStencil(gn, 'vent_silencer', dt).join(' ')),
  355. this.createVertexTemplateEntry(sb + 'welded_connection2;', 50, 20, '', 'Welded Connection', null, null, this.getTagsForStencil(gn, 'welded_connection', dt).join(' ')),
  356. this.createVertexTemplateEntry(sb + 'y-type_strainer;pointerEvents=1;', 50, 35, '', 'Y-Type Strainer', null, null, this.getTagsForStencil(gn, 'y-type_strainer', dt).join(' '))
  357. ]);
  358. };
  359. Sidebar.prototype.addPidCrushersGrindingPalette = function()
  360. {
  361. var s = "html=1;dashed=0;outlineConnect=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.crushers_grinding.";
  362. var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.crushers_grinding.";
  363. var gn = 'mxgraph.pid.crushers_grinding';
  364. var dt = 'process instrumentation crushers grinding ';
  365. this.addPaletteFunctions('pidCrushers Grinding', 'Proc. Eng. / Crushers Grinding', false,
  366. [
  367. this.createVertexTemplateEntry(sb + 'crusher;', 100, 60, '', 'Crusher', null, null, this.getTagsForStencil(gn, 'crusher', dt).join(' ')),
  368. this.createVertexTemplateEntry(sb + 'crusher_(cone);', 100, 60, '', 'Crusher (Cone)', null, null, this.getTagsForStencil(gn, 'crusher cone', dt).join(' ')),
  369. this.createVertexTemplateEntry(sb + 'crusher_(hammer);', 100, 60, '', 'Crusher (Hammer)', null, null, this.getTagsForStencil(gn, 'crusher hammer', dt).join(' ')),
  370. this.createVertexTemplateEntry(sb + 'crusher_(impact);', 100, 60, '', 'Crusher (Impact)', null, null, this.getTagsForStencil(gn, 'crusher impact', dt).join(' ')),
  371. this.createVertexTemplateEntry(sb + 'crusher_(jaw);', 100, 60, '', 'Crusher (Jaw)', null, null, this.getTagsForStencil(gn, 'crusher jaw', dt).join(' ')),
  372. this.createVertexTemplateEntry(sb + 'crusher_(roller);', 100, 60, '', 'Crusher (Roller)', null, null, this.getTagsForStencil(gn, 'crusher roller', dt).join(' ')),
  373. this.createVertexTemplateEntry(sb + 'crushing,_grinding_machine;', 100, 60, '', 'Crushing, Grinding Machine', null, null, this.getTagsForStencil(gn, 'crushing grinding machine', dt).join(' ')),
  374. this.createVertexTemplateEntry(sb + 'mill,_pulverizer;', 100, 60, '', 'Mill, Pulverizer', null, null, this.getTagsForStencil(gn, 'mill pulverizer', dt).join(' ')),
  375. this.createVertexTemplateEntry(sb + 'mill,_pulverizer_(hammer);', 100, 60, '', 'Mill, Pulverizer (Hammer)', null, null, this.getTagsForStencil(gn, 'mill pulverizer hammer', dt).join(' ')),
  376. this.createVertexTemplateEntry(sb + 'mill,_pulverizer_(impact);', 100, 60, '', 'Mill, Pulverizer (Impact)', null, null, this.getTagsForStencil(gn, 'mill pulverizer impact', dt).join(' ')),
  377. this.createVertexTemplateEntry(sb + 'mill_(roller);', 100, 60, '', 'Mill (Roller)', null, null, this.getTagsForStencil(gn, 'mill roller', dt).join(' ')),
  378. this.createVertexTemplateEntry(sb + 'mill_(vibration)2;', 100, 60, '', 'Mill (Vibration)', null, null, this.getTagsForStencil(gn, 'mill vibration', dt).join(' '))
  379. ]);
  380. };
  381. Sidebar.prototype.addPidFittingsPalette = function()
  382. {
  383. var s = "html=1;dashed=0;outlineConnect=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.fittings.";
  384. var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.fittings.";
  385. var gn = 'mxgraph.pid.fittings';
  386. var dt = 'process instrumentation fittings ';
  387. this.addPaletteFunctions('pidFittings', 'Proc. Eng. / Fittings', false,
  388. [
  389. this.createVertexTemplateEntry(sb + 'blind_disc2;', 40, 140, '', 'Blind Disc', null, null, this.getTagsForStencil(gn, 'blind disc', dt).join(' ')),
  390. this.createVertexTemplateEntry(sb + 'breakthrough2;', 38, 100, '', 'Breakthrough', null, null, this.getTagsForStencil(gn, 'breakthrough', dt).join(' ')),
  391. this.createVertexTemplateEntry(sb + 'clamped_flange_coupling;', 50, 100, '', 'Clamped Flange Coupling', null, null, this.getTagsForStencil(gn, 'clamped flange coupling', dt).join(' ')),
  392. this.createVertexTemplateEntry(sb + 'compensator;', 40, 80, '', 'Compensator', null, null, this.getTagsForStencil(gn, 'compensator', dt).join(' ')),
  393. this.createVertexTemplateEntry(sb + 'coupling;', 50, 100, '', 'Coupling', null, null, this.getTagsForStencil(gn, 'coupling', dt).join(' ')),
  394. this.createVertexTemplateEntry(sb + 'flame_arrestor;', 100, 100, '', 'Flame Arrestor', null, null, this.getTagsForStencil(gn, 'flame arrestor', dt).join(' ')),
  395. this.createVertexTemplateEntry(sb + 'flame_arrestor_(detonation-proof);', 100, 100, '', 'Flame Arrestor (Detonation-Proof)', null, null, this.getTagsForStencil(gn, 'flame arrestor detonation proof', dt).join(' ')),
  396. this.createVertexTemplateEntry(sb + 'flame_arrestor_(explosion-proof);', 100, 100, '', 'Flame Arrestor (Explosion-Proof)', null, null, this.getTagsForStencil(gn, 'flame arrestor explosion proof)', dt).join(' ')),
  397. this.createVertexTemplateEntry(sb + 'flame_arrestor_(fire-resistant);', 100, 100, '', 'Flame Arrestor (Fire-Resistant)', null, null, this.getTagsForStencil(gn, 'flame arrestor fire resistant)', dt).join(' ')),
  398. this.createVertexTemplateEntry(sb + 'flame_arrestor_(fire-resistant,_detonation-proof);', 100, 100, '', 'Flame Arrestor (Fire-Resistant, Detonation-Proof)', null, null, this.getTagsForStencil(gn, 'flame arrestor fire resistant detonation proof)', dt).join(' ')),
  399. this.createVertexTemplateEntry(sb + 'flanged_connection;', 20, 50, '', 'Flanged Connection', null, null, this.getTagsForStencil(gn, 'flanged connection', dt).join(' ')),
  400. this.createVertexTemplateEntry(sb + 'flanged_dummy_cover;', 85, 50, '', 'Flanged Dummy Cover', null, null, this.getTagsForStencil(gn, 'flanged dummy cover', dt).join(' ')),
  401. this.createVertexTemplateEntry(sb + 'funnel;', 80, 140, '', 'Funnel', null, null, this.getTagsForStencil(gn, 'funnel', dt).join(' ')),
  402. this.createVertexTemplateEntry(sb + 'hose;', 180, 30, '', 'Hose', null, null, this.getTagsForStencil(gn, 'hose', dt).join(' ')),
  403. this.createVertexTemplateEntry(sb + 'injector;', 80, 40, '', 'Injector', null, null, this.getTagsForStencil(gn, 'injector', dt).join(' ')),
  404. this.createVertexTemplateEntry(sb + 'interchangeable_disc_(blind_disc)2;', 40, 140, '', 'Interchangeable Disc (Blind Disc)', null, null, this.getTagsForStencil(gn, 'interchangeable disc (blind disc)', dt).join(' ')),
  405. this.createVertexTemplateEntry(sb + 'interchangeable_disc_(open_disc_in_function)2;', 40, 140, '', 'Interchangeable Disc (Open Disc In Function)', null, null, this.getTagsForStencil(gn, 'interchangeable disc (open disc in function)', dt).join(' ')),
  406. this.createVertexTemplateEntry(sb + 'open_disc;', 40, 140, '', 'Open Disc', null, null, this.getTagsForStencil(gn, 'open disc', dt).join(' ')),
  407. this.createVertexTemplateEntry(sb + 'orifice_plate2;', 40, 140, '', 'Orifice Plate', null, null, this.getTagsForStencil(gn, 'orifice plate', dt).join(' ')),
  408. this.createVertexTemplateEntry(sb + 'reducer;', 70, 50, '', 'Reducer', null, null, this.getTagsForStencil(gn, 'reducer', dt).join(' ')),
  409. this.createVertexTemplateEntry(sb + 'rupture_disc;', 50, 100, '', 'Rupture Disc', null, null, this.getTagsForStencil(gn, 'rupture disc', dt).join(' ')),
  410. this.createVertexTemplateEntry(sb + 'self-operating_release_valve2;', 105, 105, '', 'Self-Operating Release Valve', null, null, this.getTagsForStencil(gn, 'self operating release valve', dt).join(' ')),
  411. this.createVertexTemplateEntry(sb + 'silencer;', 140, 100, '', 'Silencer', null, null, this.getTagsForStencil(gn, 'silencer', dt).join(' ')),
  412. this.createVertexTemplateEntry(sb + 'single_flange;', 5, 50, '', 'Single Flange', null, null, this.getTagsForStencil(gn, 'single flange', dt).join(' ')),
  413. this.createVertexTemplateEntry(sb + 'strainer;', 40, 80, '', 'Strainer', null, null, this.getTagsForStencil(gn, 'strainer', dt).join(' ')),
  414. this.createVertexTemplateEntry(sb + 'strainer_(cone);', 40, 80, '', 'Strainer (Cone)', null, null, this.getTagsForStencil(gn, 'strainer (cone)', dt).join(' ')),
  415. this.createVertexTemplateEntry(sb + 'vent;', 80, 140, '', 'Vent', null, null, this.getTagsForStencil(gn, 'vent', dt).join(' ')),
  416. this.createVertexTemplateEntry(sb + 'viewing_glass;', 100, 50, '', 'Viewing Glass', null, null, this.getTagsForStencil(gn, 'viewing glass', dt).join(' ')),
  417. this.createVertexTemplateEntry(sb + 'viewing_glass_(lighting);', 100, 100, '', 'Viewing Glass (Lighting)', null, null, this.getTagsForStencil(gn, 'viewing glass (lighting)', dt).join(' '))
  418. ]);
  419. };
  420. Sidebar.prototype.addPidSeparatorsPalette = function()
  421. {
  422. var s = "html=1;dashed=0;outlineConnect=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.separators.";
  423. var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.separators.";
  424. var gn = 'mxgraph.pid.fittings';
  425. var dt = 'process instrumentation separators separator ';
  426. this.addPaletteFunctions('pidSeparators', 'Proc. Eng. / Separators', false,
  427. [
  428. this.createVertexTemplateEntry(sb + 'gravity_separator,_settling_chamber2;', 80, 120, '', 'Gravity Separator, Settling Chamber', null, null, this.getTagsForStencil(gn, 'gravity settling chamber', dt).join(' ')),
  429. this.createVertexTemplateEntry(sb + 'impact_separator;', 80, 120, '', 'Impact Separator', null, null, this.getTagsForStencil(gn, 'impact', dt).join(' ')),
  430. this.createVertexTemplateEntry(sb + 'separator,_sifter2;', 80, 120, '', 'Separator, Sifter', null, null, this.getTagsForStencil(gn, 'sifter', dt).join(' ')),
  431. this.createVertexTemplateEntry(sb + 'separator_(cyclone)2;', 80, 120, '', 'Separator (Cyclone)', null, null, this.getTagsForStencil(gn, 'cyclone', dt).join(' ')),
  432. this.createVertexTemplateEntry(sb + 'separator_(electromagnetic);', 80, 120, '', 'Separator (Electromagnetic)', null, null, this.getTagsForStencil(gn, 'electromagnetic', dt).join(' ')),
  433. this.createVertexTemplateEntry(sb + 'separator_(electrostatic_precipitator);', 80, 120, '', 'Separator (Electrostatic Precipitator)', null, null, this.getTagsForStencil(gn, 'electrostatic precipitator', dt).join(' ')),
  434. this.createVertexTemplateEntry(sb + 'separator_(electrostatic_precipitator,_wet);', 80, 120, '', 'Separator (Electrostatic Precipitator, Wet)', null, null, this.getTagsForStencil(gn, 'electrostatic precipitator wet)', dt).join(' ')),
  435. this.createVertexTemplateEntry(sb + 'separator_(permanent_magnet)2;', 80, 120, '', 'Separator (Permanent Magnet)', null, null, this.getTagsForStencil(gn, 'permanent magnet', dt).join(' ')),
  436. this.createVertexTemplateEntry(sb + 'separator_(venturi_scrubber);', 80, 120, '', 'Separator (Venturi Scrubber)', null, null, this.getTagsForStencil(gn, 'venturi scrubber', dt).join(' ')),
  437. this.createVertexTemplateEntry(sb + 'separator_(wet_scrubber)2;', 80, 120, '', 'Separator (Wet Scrubber)', null, null, this.getTagsForStencil(gn, 'wet scrubber', dt).join(' ')),
  438. this.createVertexTemplateEntry(sb + 'solidifier_(closed);', 80, 120, '', 'Solidifier (Closed)', null, null, this.getTagsForStencil(gn, 'solidifier closed', dt).join(' ')),
  439. this.createVertexTemplateEntry(sb + 'solidifier_(open);', 80, 120, '', 'Solidifier (Open)', null, null, this.getTagsForStencil(gn, 'solidifier open', dt).join(' ')),
  440. this.createVertexTemplateEntry(sb + 'spray_scrubber;', 80, 120, '', 'Spray Scrubber', null, null, this.getTagsForStencil(gn, 'spray scrubber', dt).join(' '))
  441. ]);
  442. };
  443. Sidebar.prototype.addPidMiscPalette = function()
  444. {
  445. var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;outlineConnect=0;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
  446. var s2 = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;outlineConnect=0;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.misc.";
  447. var s3 = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;outlineConnect=0;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2misc.";
  448. var gn = 'mxgraph.pid.misc';
  449. var dt = 'process instrumentation ';
  450. this.addPaletteFunctions('pidMisc', 'Proc. Eng. / Misc', false,
  451. [
  452. this.createVertexTemplateEntry(s + 'misc.fan;fanType=common',
  453. 50, 50, '', 'Fan', null, null, this.getTagsForStencil(gn, 'fan', dt).join(' ')),
  454. this.createVertexTemplateEntry(s + 'misc.column;columnType=common',
  455. 50, 120, '', 'Column', null, null, this.getTagsForStencil(gn, 'column', dt).join(' ')),
  456. this.createVertexTemplateEntry(s + 'misc.column;columnType=tray',
  457. 50, 120, '', 'Column (Tray)', null, null, this.getTagsForStencil(gn, 'column', dt + 'tray').join(' ')),
  458. this.createVertexTemplateEntry(s + 'misc.column;columnType=fixed',
  459. 50, 180, '', 'Column (Fixed Bed)', null, null, this.getTagsForStencil(gn, 'column', dt + 'fixed bed').join(' ')),
  460. this.createVertexTemplateEntry(s + 'misc.column;columnType=fluid',
  461. 50, 120, '', 'Column (Fluidized Bed)', null, null, this.getTagsForStencil(gn, 'column', dt + 'fluidized bed').join(' ')),
  462. this.createVertexTemplateEntry(s + 'misc.column;columnType=baffle',
  463. 50, 120, '', 'Column (Staggered Baffle Trays)', null, null, this.getTagsForStencil(gn, 'column', dt + 'staggered baffle tray').join(' ')),
  464. this.createVertexTemplateEntry(s + 'misc.column;columnType=bubble',
  465. 50, 120, '', 'Column (Bubble Cap Trays)', null, null, this.getTagsForStencil(gn, 'column', dt + 'bubble cap tray').join(' ')),
  466. this.createVertexTemplateEntry(s + 'misc.column;columnType=valve',
  467. 50, 120, '', 'Column (Valve Trays)', null, null, this.getTagsForStencil(gn, 'column', dt + 'valve tray').join(' ')),
  468. this.createVertexTemplateEntry(s + 'misc.column;columnType=nozzle',
  469. 50, 180, '', 'Column (Fixed Bed, Spray Nozzle)', null, null, this.getTagsForStencil(gn, 'column', dt + 'fixed bed spray nozzle').join(' ')),
  470. this.createVertexTemplateEntry(s + 'misc.conveyor',
  471. 200, 50, '', 'Conveyor', null, null, this.getTagsForStencil(gn, 'conveyor', dt).join(' ')),
  472. this.createVertexTemplateEntry(s2 + 'aerator_with_sparger;',
  473. 35, 100, '', 'Aerator With Sparger', null, null, this.getTagsForStencil(gn, 'aerator_with_sparger', dt).join(' ')),
  474. this.createVertexTemplateEntry(s2 + 'air_cooler;',
  475. 70, 20, '', 'Air Cooler', null, null, this.getTagsForStencil(gn, 'air_cooler', dt).join(' ')),
  476. this.createVertexTemplateEntry(s2 + 'air_filter;',
  477. 40, 65, '', 'Air Filter', null, null, this.getTagsForStencil(gn, 'air_filter', dt).join(' ')),
  478. this.createVertexTemplateEntry(s2 + 'air_separator;',
  479. 65.5, 106, '', 'Air Separator', null, null, this.getTagsForStencil(gn, 'air_separator', dt).join(' ')),
  480. this.createVertexTemplateEntry(s2 + 'back_draft_damper2;',
  481. 62, 32, '', 'Back Draft Damper', null, null, this.getTagsForStencil(gn, 'back_draft_damper', dt).join(' ')),
  482. this.createVertexTemplateEntry(s2 + 'bag_filling_machine2;',
  483. 80, 100, '', 'Bag Filling Machine', null, null, this.getTagsForStencil(gn, 'bag_filling_machine', dt).join(' ')),
  484. this.createVertexTemplateEntry(s2 + 'belt_skimmer;',
  485. 70, 98, '', 'Belt Skimmer', null, null, this.getTagsForStencil(gn, 'belt_skimmer', dt).join(' ')),
  486. this.createVertexTemplateEntry(s2 + 'bin;',
  487. 100, 65, '', 'Bin', null, null, this.getTagsForStencil(gn, 'bin', dt).join(' ')),
  488. this.createVertexTemplateEntry(s2 + 'boiler_(dome);',
  489. 100, 120, '', 'Boiler (Dome)', null, null, this.getTagsForStencil(gn, 'boiler_(dome)', dt).join(' ')),
  490. this.createVertexTemplateEntry(s2 + 'boiler_(dome,_hot_liquid);',
  491. 100, 120, '', 'Boiler (Dome, Hot Liquid)', null, null, this.getTagsForStencil(gn, 'boiler_(dome,_hot_liquid)', dt).join(' ')),
  492. this.createVertexTemplateEntry(s2 + 'box_truck;',
  493. 120, 80, '', 'Box Truck', null, null, this.getTagsForStencil(gn, 'box_truck', dt).join(' ')),
  494. this.createVertexTemplateEntry(s2 + 'bucket_elevator;',
  495. 65, 200, '', 'Bucket Elevator', null, null, this.getTagsForStencil(gn, 'bucket_elevator', dt).join(' ')),
  496. this.createVertexTemplateEntry(s2 + 'chiller;',
  497. 155, 115, '', 'Chiller', null, null, this.getTagsForStencil(gn, 'chiller', dt).join(' ')),
  498. this.createVertexTemplateEntry(s2 + 'combustion_chamber;',
  499. 130, 100, '', 'Combustion Chamber', null, null, this.getTagsForStencil(gn, 'combustion_chamber', dt).join(' ')),
  500. this.createVertexTemplateEntry(s2 + 'conveyor2;',
  501. 200, 60, '', 'Conveyor', null, null, this.getTagsForStencil(gn, 'conveyor', dt).join(' ')),
  502. this.createVertexTemplateEntry(s2 + 'conveyor_(belt);',
  503. 200, 50, '', 'Conveyor (Belt)', null, null, this.getTagsForStencil(gn, 'conveyor_(belt)', dt).join(' ')),
  504. this.createVertexTemplateEntry(s2 + 'conveyor_(belt,_closed);',
  505. 240, 80, '', 'Conveyor (Belt, Closed)', null, null, this.getTagsForStencil(gn, 'conveyor_(belt,_closed)', dt).join(' ')),
  506. this.createVertexTemplateEntry(s2 + 'conveyor_(belt,_closed,_reversible)2;',
  507. 240, 80, '', 'Conveyor (Belt, Closed, Reversible)', null, null, this.getTagsForStencil(gn, 'conveyor_(belt,_closed,_reversible)', dt).join(' ')),
  508. this.createVertexTemplateEntry(s2 + 'conveyor_(chain,_closed);',
  509. 240, 80, '', 'Conveyor (Chain, Closed)', null, null, this.getTagsForStencil(gn, 'conveyor_(chain,_closed)', dt).join(' ')),
  510. this.createVertexTemplateEntry(s2 + 'conveyor_(screw,_closed);',
  511. 220, 80, '', 'Conveyor (Screw, Closed)', null, null, this.getTagsForStencil(gn, 'conveyor_(screw,_closed)', dt).join(' ')),
  512. this.createVertexTemplateEntry(s2 + 'conveyor_(vibrating,_closed)2;',
  513. 240, 80, '', 'Conveyor (Vibrating, Closed)', null, null, this.getTagsForStencil(gn, 'conveyor_(vibrating,_closed)', dt).join(' ')),
  514. this.createVertexTemplateEntry(s2 + 'cooler;',
  515. 85, 90, '', 'Cooler', null, null, this.getTagsForStencil(gn, 'cooler', dt).join(' ')),
  516. this.createVertexTemplateEntry(s2 + 'cooling_tower',
  517. 100, 120, '', 'Cooling Tower', null, null, this.getTagsForStencil(gn, 'cooling_tower', dt).join(' ')),
  518. this.createVertexTemplateEntry(s2 + 'cooling_tower_(dry,_forced_draught);',
  519. 100, 120, '', 'Cooling Tower (Dry, Forced Draught)', null, null, this.getTagsForStencil(gn, 'cooling_tower_(dry,_forced_draught)', dt).join(' ')),
  520. this.createVertexTemplateEntry(s2 + 'cooling_tower_(dry,_induced_draught);',
  521. 100, 120, '', 'Cooling Tower (Dry, Induced Draught)', null, null, this.getTagsForStencil(gn, 'cooling_tower_(dry,_induced_draught)', dt).join(' ')),
  522. this.createVertexTemplateEntry(s2 + 'cooling_tower_(dry,_natural_draught);',
  523. 100, 120, '', 'Cooling Tower (Dry, Natural Draught)', null, null, this.getTagsForStencil(gn, 'cooling_tower_(dry,_natural_draught)', dt).join(' ')),
  524. this.createVertexTemplateEntry(s2 + 'cooling_tower_(wet,_forced_draught);',
  525. 100, 120, '', 'Cooling Tower (Wet, Forced Draught)', null, null, this.getTagsForStencil(gn, 'cooling_tower_(wet,_forced_draught)', dt).join(' ')),
  526. this.createVertexTemplateEntry(s2 + 'cooling_tower_(wet,_induced_draught);',
  527. 100, 120, '', 'Cooling Tower (Wet, Induced Draught)', null, null, this.getTagsForStencil(gn, 'cooling_tower_(wet,_induced_draught)', dt).join(' ')),
  528. this.createVertexTemplateEntry(s2 + 'cooling_tower_(wet,_natural_draught);',
  529. 100, 120, '', 'Cooling Tower (Wet, Natural Draught)', null, null, this.getTagsForStencil(gn, 'cooling_tower_(wet,_natural_draught)', dt).join(' ')),
  530. this.createVertexTemplateEntry(s2 + 'cooling_tower_(wet-dry,_natural_draught);',
  531. 100, 120, '', 'Cooling Tower (Wet-Dry, Natural Draught)', null, null, this.getTagsForStencil(gn, 'cooling_tower_(wet-dry,_natural_draught)', dt).join(' ')),
  532. this.createVertexTemplateEntry(s2 + 'covered_gas_vent;pointerEvents=1;',
  533. 80, 100, '', 'Covered Gas Vent', null, null, this.getTagsForStencil(gn, 'covered_gas_vent', dt).join(' ')),
  534. this.createVertexTemplateEntry(s2 + 'crane;',
  535. 100, 100, '', 'Crane', null, null, this.getTagsForStencil(gn, 'crane', dt).join(' ')),
  536. this.createVertexTemplateEntry(s2 + 'curved_gas_vent;pointerEvents=1;',
  537. 30, 70, '', 'Curved Gas Vent', null, null, this.getTagsForStencil(gn, 'curved_gas_vent', dt).join(' ')),
  538. this.createVertexTemplateEntry(s2 + 'cyclone;',
  539. 100, 80, '', 'Cyclone', null, null, this.getTagsForStencil(gn, 'cyclone', dt).join(' ')),
  540. this.createVertexTemplateEntry(s2 + 'dryer;',
  541. 80, 100, '', 'Dryer', null, null, this.getTagsForStencil(gn, 'dryer', dt).join(' ')),
  542. this.createVertexTemplateEntry(s2 + 'elevator_(bucket);',
  543. 160, 250, '', 'Elevator (Bucket)', null, null, this.getTagsForStencil(gn, 'elevator_(bucket)', dt).join(' ')),
  544. this.createVertexTemplateEntry(s2 + 'elevator_(bucket,_z-form);',
  545. 430, 250, '', 'Elevator (Bucket, Z-Form)', null, null, this.getTagsForStencil(gn, 'elevator_(bucket,_z-form)', dt).join(' ')),
  546. this.createVertexTemplateEntry(s2 + 'fan;',
  547. 100, 100, '', 'Fan', null, null, this.getTagsForStencil(gn, 'fan', dt).join(' ')),
  548. this.createVertexTemplateEntry(s2 + 'fan_2;',
  549. 58, 8, '', 'Fan 2', null, null, this.getTagsForStencil(gn, 'fan_2', dt).join(' ')),
  550. this.createVertexTemplateEntry(s2 + 'filter;',
  551. 100, 100, '', 'Filter', null, null, this.getTagsForStencil(gn, 'filter', dt).join(' ')),
  552. this.createVertexTemplateEntry(s2 + 'filter_2;',
  553. 100, 100, '', 'Filter 2', null, null, this.getTagsForStencil(gn, 'filter_2', dt).join(' ')),
  554. this.createVertexTemplateEntry(s2 + 'firing_system,_burner;',
  555. 100, 100, '', 'Firing System, Burner', null, null, this.getTagsForStencil(gn, 'firing_system,_burner', dt).join(' ')),
  556. this.createVertexTemplateEntry(s2 + 'flame_arrestor;',
  557. 100, 40, '', 'Flame Arrestor', null, null, this.getTagsForStencil(gn, 'flame_arrestor', dt).join(' ')),
  558. this.createVertexTemplateEntry(s2 + 'flexible_pipe;pointerEvents=1;',
  559. 60, 16, '', 'Flexible Pipe', null, null, this.getTagsForStencil(gn, 'flexible_pipe', dt).join(' ')),
  560. this.createVertexTemplateEntry(s2 + 'forced_flow_air_cooler;',
  561. 70, 30, '', 'Forced Flow Air Cooler', null, null, this.getTagsForStencil(gn, 'forced_flow_air_cooler', dt).join(' ')),
  562. this.createVertexTemplateEntry(s2 + 'forklift_(manual);',
  563. 140, 100, '', 'Forklift (Manual)', null, null, this.getTagsForStencil(gn, 'forklift_(manual)', dt).join(' ')),
  564. this.createVertexTemplateEntry(s2 + 'forklift_(truck);',
  565. 140, 100, '', 'Forklift (Truck)', null, null, this.getTagsForStencil(gn, 'forklift_(truck)', dt).join(' ')),
  566. this.createVertexTemplateEntry(s2 + 'funnel;pointerEvents=1;',
  567. 40, 80, '', 'Funnel', null, null, this.getTagsForStencil(gn, 'funnel', dt).join(' ')),
  568. this.createVertexTemplateEntry(s2 + 'gas_flare;',
  569. 60, 100, '', 'Gas Flare', null, null, this.getTagsForStencil(gn, 'gas_flare', dt).join(' ')),
  570. this.createVertexTemplateEntry(s2 + 'induced_flow_air_cooler;',
  571. 93, 30, '', 'Induced Flow Air Cooler', null, null, this.getTagsForStencil(gn, 'induced_flow_air_cooler', dt).join(' ')),
  572. this.createVertexTemplateEntry(s2 + 'industrial_truck;pointerEvents=1;',
  573. 120, 20, '', 'Industrial Truck', null, null, this.getTagsForStencil(gn, 'industrial_truck', dt).join(' ')),
  574. this.createVertexTemplateEntry(s2 + 'lift;',
  575. 100, 100, '', 'Lift', null, null, this.getTagsForStencil(gn, 'lift', dt).join(' ')),
  576. this.createVertexTemplateEntry(s2 + 'loading_arm;pointerEvents=1;',
  577. 120, 80, '', 'Loading Arm', null, null, this.getTagsForStencil(gn, 'loading_arm', dt).join(' ')),
  578. this.createVertexTemplateEntry(s2 + 'mixer;',
  579. 80, 100, '', 'Mixer', null, null, this.getTagsForStencil(gn, 'mixer', dt).join(' ')),
  580. this.createVertexTemplateEntry(s2 + 'palletizer2;',
  581. 80, 100, '', 'Palletizer', null, null, this.getTagsForStencil(gn, 'palletizer', dt).join(' ')),
  582. this.createVertexTemplateEntry(s2 + 'protective_palette_covering;',
  583. 80, 100, '', 'Protective Palette Covering', null, null, this.getTagsForStencil(gn, 'protective_palette_covering', dt).join(' ')),
  584. this.createVertexTemplateEntry(s2 + 'roller_conveyor;',
  585. 160, 20, '', 'Roller Conveyor', null, null, this.getTagsForStencil(gn, 'roller_conveyor', dt).join(' ')),
  586. this.createVertexTemplateEntry(s2 + 'rolling_bin;',
  587. 100, 65, '', 'Rolling Bin', null, null, this.getTagsForStencil(gn, 'rolling_bin', dt).join(' ')),
  588. this.createVertexTemplateEntry(s2 + 'rotary_screen;',
  589. 100, 65, '', 'Rotary Screen', null, null, this.getTagsForStencil(gn, 'rotary_screen', dt).join(' ')),
  590. this.createVertexTemplateEntry(s2 + 'screening_device,_sieve,_strainer;',
  591. 80, 120, '', 'Screening Device, Sieve, Strainer', null, null, this.getTagsForStencil(gn, 'screening_device,_sieve,_strainer', dt).join(' ')),
  592. this.createVertexTemplateEntry(s2 + 'screening_device,_sieve,_strainer_(basket_reel);',
  593. 80, 180, '', 'Screening Device, Sieve, Strainer (Basket Reel)', null, null, this.getTagsForStencil(gn, 'screening_device,_sieve,_strainer_(basket_reel)', dt).join(' ')),
  594. this.createVertexTemplateEntry(s2 + 'screening_device,_sieve,_strainer_(coarse_and_fine_screens);',
  595. 80, 120, '', 'Screening Device, Sieve, Strainer (Coarse and Fine Screens)', null, null, this.getTagsForStencil(gn, 'screening_device,_sieve,_strainer_(coarse_and_fine_screens)', dt).join(' ')),
  596. this.createVertexTemplateEntry(s2 + 'screening_device,_sieve,_strainer_(coarse_rake);',
  597. 80, 120, '', 'Screening Device, Sieve, Strainer (Coarse Rake)', null, null, this.getTagsForStencil(gn, 'screening_device,_sieve,_strainer_(coarse_rake)', dt).join(' ')),
  598. this.createVertexTemplateEntry(s2 + 'screening_device,_sieve,_strainer_(fine_rake);',
  599. 80, 120, '', 'Screening Device, Sieve, Strainer (Fine Rake)', null, null, this.getTagsForStencil(gn, 'screening_device,_sieve,_strainer_(fine_rake)', dt).join(' ')),
  600. this.createVertexTemplateEntry(s2 + 'screening_device,_sieve,_strainer_(rotating_drum)',
  601. 80, 120, '', 'Screening Device, Sieve, Strainer (Rotating Drum)', null, null, this.getTagsForStencil(gn, 'screening_device,_sieve,_strainer_(rotating_drum)', dt).join(' ')),
  602. this.createVertexTemplateEntry(s2 + 'screening_device,_sieve,_strainer_(vibrating)2;',
  603. 80, 120, '', 'Screening Device, Sieve, Strainer (Vibrating)', null, null, this.getTagsForStencil(gn, 'screening_device,_sieve,_strainer_(vibrating)', dt).join(' ')),
  604. this.createVertexTemplateEntry(s2 + 'ship',
  605. 105, 60, '', 'Ship', null, null, this.getTagsForStencil(gn, 'ship', dt).join(' ')),
  606. this.createVertexTemplateEntry(s2 + 'silencer;',
  607. 100, 30, '', 'Silencer', null, null, this.getTagsForStencil(gn, 'silencer', dt).join(' ')),
  608. this.createVertexTemplateEntry(s2 + 'spraying_device;pointerEvents=1;',
  609. 60, 20, '', 'Spraying Device', null, null, this.getTagsForStencil(gn, 'spraying_device', dt).join(' ')),
  610. this.createVertexTemplateEntry(s2 + 'spray_cooler;',
  611. 100, 120, '', 'Spray Cooler', null, null, this.getTagsForStencil(gn, 'spray_cooler', dt).join(' ')),
  612. this.createVertexTemplateEntry(s2 + 'stack,_chimney;',
  613. 60, 100, '', 'Stack, Chimney', null, null, this.getTagsForStencil(gn, 'stack,_chimney', dt).join(' ')),
  614. this.createVertexTemplateEntry(s2 + 'steam_trap2;',
  615. 53, 53, '', 'Steam Trap', null, null, this.getTagsForStencil(gn, 'steam_trap', dt).join(' ')),
  616. this.createVertexTemplateEntry(s2 + 'tank_car,_tank_wagon;',
  617. 127, 80, '', 'Tank Car, Tank Wagon', null, null, this.getTagsForStencil(gn, 'tank_car,_tank_wagon', dt).join(' ')),
  618. this.createVertexTemplateEntry(s2 + 'viewing_glass;',
  619. 80, 50, '', 'Viewing Glass', null, null, this.getTagsForStencil(gn, 'viewing_glass', dt).join(' '))
  620. ]);
  621. };
  622. })();