diff options
-rw-r--r-- | src/main/python/shapes/shapes.py | 99 | ||||
-rw-r--r-- | src/main/resources/base/config/items.json | 82 | ||||
-rw-r--r-- | src/main/resources/base/svg/Furnaces and Boilers/Oil Gas or Pulverized Fuel Furnace.svg | 55 |
3 files changed, 218 insertions, 18 deletions
diff --git a/src/main/python/shapes/shapes.py b/src/main/python/shapes/shapes.py index 8225a12..5446e98 100644 --- a/src/main/python/shapes/shapes.py +++ b/src/main/python/shapes/shapes.py @@ -942,3 +942,102 @@ class SeparatorsForLiquidsDecanter(NodeItem): [100, 50, "right", 100], [50, 0, "bottom", 100] ] + +class GateValve(NodeItem): + def __init__(self): + super(GateValve, self).__init__("svg/Valves/Gate Valve") + self.grips = [ + [0, 50, "left"], + [100, 50, "right"] + ] + +class CentrifugalPump(NodeItem): + def __init__(self): + super(CentrifugalPump, self).__init__("svg/Pumps/Centrifugal Pump") + self.grips = [ + [100, 97.2, "right"], + [0, 58.78, "left"] + ] + + +class OneCellFiredHeaterFurnace(NodeItem): + def __init__(self): + super(OneCellFiredHeaterFurnace, self).__init__("svg/Furnaces and Boilers/One Cell Fired Heater, Furnace") + self.grips = [ + [50, 100, "top"], + [0, 25, "left", 50], + [25, 87.5, "left", 25], + [100, 25, "right", 50], + [75, 87.5, "right", 25], + [50, 0, "bottom", 100] + ] + + +class TwoCellFiredHeaterFurnace(NodeItem): + def __init__(self): + super(TwoCellFiredHeaterFurnace, self).__init__("svg/Furnaces and Boilers/Two Cell Fired Heater, Furnace") + self.grips = [ + [50, 100, "top"], + [0, 33.33, "left", 66.66], + [33.33, 91.66, "left", 16.66], + [100, 33.33, "right", 66.66], + [66.66, 91.66, "right", 16.66], + [16.67, 0, "bottom", 33.33], + [83.33, 0, "bottom", 33.33] + ] + + +class ReducerExpander(NodeItem): + def __init__(self): + super(ReducerExpander, self).__init__("svg/Fittings/Reducer, Expander") + self.grips = [ + [100, 50, "right"], + [0, 50, "left"] + ] + + +class Filter(NodeItem): + def __init__(self): + super(Filter, self).__init__("svg/Fittings/Filter") + self.grips = [ + [0, 50, "left"], + [100, 50, "right"] + ] + + +class ContinuousDryer(NodeItem): + def __init__(self): + super(ContinuousDryer, self).__init__("svg/Dryers/Continuous Dryer") + self.grips = [ + [8.13, 35.2, "top"], + [98.9, 28, "bottom"], + [50, 100, "top", 60.13] + ] + + +class JawCrusher(NodeItem): + def __init__(self): + super(JawCrusher, self).__init__("svg/Size Reduction Equipements/Jaw Crusher") + self.grips = [ + [79.65, 100, "top"], + [0, 0, "bottom"] + ] + + +class RollerCrusher(NodeItem): + def __init__(self): + super(RollerCrusher, self).__init__("svg/Size Reduction Equipements/Roller Crusher") + self.grips = [ + [50, 100, "top"], + [50, 0, "bottom"] + ] + + +class GeneralSymbol(NodeItem): + def __init__(self): + super(GeneralSymbol, self).__init__("svg/Feeders/General Symbol") + self.grips = [ + [20, 100, "top"], + [80, 0, "bottom"] + ] + diff --git a/src/main/resources/base/config/items.json b/src/main/resources/base/config/items.json index 6753a8f..5080c48 100644 --- a/src/main/resources/base/config/items.json +++ b/src/main/resources/base/config/items.json @@ -57,6 +57,20 @@ "class": "Furnaces and Boilers", "object": "SolidFuelFurnace", "args": [] + }, + "One Cell Fired Heater, Furnace": { + "name": "One Cell Fired Heater, Furnace", + "icon": ".\\Furnaces and Boilers\\One Cell Fired Heater, Furnace.png", + "class": "Furnaces and Boilers", + "object": "OneCellFiredHeater,Furnace", + "args": [] + }, + "Two Cell Fired Heater, Furnace": { + "name": "Two Cell Fired Heater, Furnace", + "icon": ".\\Furnaces and Boilers\\Two Cell Fired Heater, Furnace.png", + "class": "Furnaces and Boilers", + "object": "TwoCellFiredHeater,Furnace", + "args": [] } }, "Heating or Cooling Arrangements": { @@ -119,6 +133,22 @@ "args": [] } }, + "Fittings": { + "Reducer, Expander": { + "name": "Reducer, Expander", + "icon": ".\\Fittings\\Reducer, Expander.png", + "class": "Fittings", + "object": "ReducerExpander", + "args": [] + }, + "Filter": { + "name": "Filter", + "icon": ".\\Fittings\\Filter.png", + "class": "Filter", + "object": "Filter", + "args": [] + } + }, "Process Vessels": { "Horizontal Vessel": { "name": "Horizontal Vessel", @@ -198,6 +228,13 @@ "class": "Pumps", "object": "ReciprocatingPump", "args": [] + }, + "Centrifugal Pump": { + "name": "Centrifugal Pump", + "icon": ".\\Pumps\\Centrifugal Pump.png", + "class": "Pumps", + "object": "CentrifugalPump", + "args": [] } }, "Separators": { @@ -224,5 +261,50 @@ "object": "FloatingRoofTank", "args": [] } + }, + "Valves": { + "Gate Valve": { + "name": "Gate Valve", + "icon": ".\\Valves\\Gate Valve.png", + "class": "Valves", + "object": "GateValve", + "args": [] + } + + }, + "Dryers": { + "Continuos Dryer": { + "name": "Continuos Dryer", + "icon": ".\\Dryers\\Continuous Dryer.png", + "class": "Dryers", + "object": "ContinuousDryer", + "args": [] + } + + }, + "Size Reduction Equipements": { + "Jaw Crusher": { + "name": "Jaw Crusher", + "icon": ".\\Size Reduction Equipements\\Jaw Crusher.png", + "class": "Size Reduction Equipements", + "object": "JawCrusher", + "args": [] + }, + "Roller Crusher": { + "name": "Roller Crusher", + "icon": ".\\Size Reduction Equipements\\Roller Crusher.png", + "class": "Size Reduction Equipements", + "object": "RollerCrusher", + "args": [] + } + }, + "Feeders": { + "General Symbol": { + "name": "General Symbol", + "icon": ".\\Feeders\\General Symbol.png", + "class": "Feeders", + "object": "GeneralSymbol", + "args": [] + } } }
\ No newline at end of file diff --git a/src/main/resources/base/svg/Furnaces and Boilers/Oil Gas or Pulverized Fuel Furnace.svg b/src/main/resources/base/svg/Furnaces and Boilers/Oil Gas or Pulverized Fuel Furnace.svg index ce0906b..d91b75c 100644 --- a/src/main/resources/base/svg/Furnaces and Boilers/Oil Gas or Pulverized Fuel Furnace.svg +++ b/src/main/resources/base/svg/Furnaces and Boilers/Oil Gas or Pulverized Fuel Furnace.svg @@ -1,19 +1,19 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" sodipodi:docname="Oil Gas or Pulverized Fuel Furnace.svg" - inkscape:version="1.0 (4035a4fb49, 2020-05-01)" + inkscape:version="1.1 (c68e22c387, 2021-05-23)" id="svg1687" version="1.1" viewBox="0 0 30.883684 19.98234" height="19.98234mm" - width="30.883684mm"> + width="30.883684mm" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> <defs id="defs1681"> <marker @@ -127,21 +127,22 @@ inkscape:window-maximized="1" inkscape:window-y="-11" inkscape:window-x="-11" - inkscape:window-height="986" + inkscape:window-height="1046" inkscape:window-width="1920" showgrid="false" inkscape:document-rotation="0" inkscape:current-layer="layer1" inkscape:document-units="mm" - inkscape:cy="-58.158225" - inkscape:cx="84.543508" - inkscape:zoom="1.979899" + inkscape:cy="53.75" + inkscape:cx="60.803571" + inkscape:zoom="5.6" inkscape:pageshadow="2" inkscape:pageopacity="0.0" borderopacity="1.0" bordercolor="#666666" pagecolor="#ffffff" - id="base" /> + id="base" + inkscape:pagecheckerboard="0" /> <metadata id="metadata1684"> <rdf:RDF> @@ -150,7 +151,7 @@ <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> + <dc:title /> </cc:Work> </rdf:RDF> </metadata> @@ -160,10 +161,10 @@ inkscape:groupmode="layer" inkscape:label="Layer 1"> <g - id="g2884"> + id="g908"> <g style="fill:none;stroke-width:0.8;stroke-miterlimit:4;stroke-dasharray:none" - transform="translate(-413.46972,55.400034)" + transform="translate(-413.99889,55.400034)" id="g5243"> <g style="fill:none;stroke-width:0.8;stroke-miterlimit:4;stroke-dasharray:none" @@ -191,7 +192,7 @@ inkscape:connector-curvature="0" id="path3859" d="m 114.74084,185.21659 h 7.77888" - style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker2798)" + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:" sodipodi:nodetypes="cc" /> <path style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" @@ -199,6 +200,24 @@ id="path4954" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccccc" /> + <path + sodipodi:type="star" + style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:3.02362" + id="path1574" + inkscape:flatsided="true" + sodipodi:sides="3" + sodipodi:cx="64.697227" + sodipodi:cy="9.1444845" + sodipodi:r1="9.2156496" + sodipodi:r2="4.6078248" + sodipodi:arg1="2.6224465" + sodipodi:arg2="3.6696441" + inkscape:rounded="0" + inkscape:randomized="0" + transform="matrix(0.00222676,0.16198748,-0.18257445,0.00712948,124.1947,174.63204)" + inkscape:transform-center-x="-0.4150097" + inkscape:transform-center-y="0.02953919" + d="M 56.695803,13.716727 64.738261,-0.07107373 72.657618,13.7878 Z" /> </g> </g> </svg> |