<?xml version="1.0" encoding="UTF-8"?>
<xsi_file type="CompoundNode" name="Spring Force" formatversion="1.4" compoundversion="1.0" constructionmode="Modeling" backgroundcolor="7965823">
	<description><![CDATA[Springs the particles current position back to its original position]]></description>
	<definition>
		<nodes>
			<node type="IfNode" index="0">
				<param name="condition" type="11" value="true"></param>
				<param name="iftrue.iftrue_x" type="4" value="0.000000"></param>
				<param name="iftrue.iftrue_y" type="4" value="0.000000"></param>
				<param name="iftrue.iftrue_z" type="4" value="0.000000"></param>
				<param name="iffalse.iffalse_x" type="4" value="0.000000"></param>
				<param name="iffalse.iffalse_y" type="4" value="0.000000"></param>
				<param name="iffalse.iffalse_z" type="4" value="0.000000"></param>
				<portdef name="condition" type="1" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="iftrue" type="16" structure="1" group="0" instance="0" port="1"></portdef>
				<portdef name="iffalse" type="16" structure="1" group="0" instance="0" port="2"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-592</prop>
					<prop name="posy">335</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="GetDataNode" index="1">
				<param name="reference" type="31" value="this.orig_position_tips"></param>
				<param_ext name="reference" type="31" value="this.orig_position_tips"></param_ext>
				<portdef name="source" type="2048" structure="1" group="1" instance="0" port="0"></portdef>
				<portdef name="inname" type="8192" structure="1" group="3" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-1195</prop>
					<prop name="posy">124</prop>
					<prop name="state">Normal</prop>
				</datablob>
				<comment type="node" state="maximized" wordwrap="true" autoresize="true" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="-13" offsety="-95" sizex="205" sizey="71"><![CDATA[Rest Postion for Spring - make sure you have a GET Pointposition > SET pointposition on a new attribute called orig_Position
]]></comment>
			</node>
			<node type="GetDataNode" index="2">
				<param name="reference" type="31" value="Self.Force"></param>
				<param_ext name="reference" type="31" value="Self.Force"></param_ext>
				<portdef name="source" type="2048" structure="1" group="1" instance="0" port="0"></portdef>
				<portdef name="inname" type="8192" structure="1" group="3" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-655</prop>
					<prop name="posy">-31</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="MultiplyByScalarNode" index="3">
				<param name="value.value_x" type="4" value="0.000000"></param>
				<param name="value.value_y" type="4" value="0.000000"></param>
				<param name="value.value_z" type="4" value="0.000000"></param>
				<param name="factor" type="4" value="1.000000"></param>
				<portdef name="value" type="16" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="factor" type="4" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-684</prop>
					<prop name="posy">100</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="NegateNode" index="4">
				<param name="value" type="4" value="0.000000"></param>
				<portdef name="value" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-1122</prop>
					<prop name="posy">408</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="ScalarNode" index="5">
				<param name="value" type="4" value="1.000000"></param>
				<portdef name="value" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-913</prop>
					<prop name="posy">269</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
				<comment type="node" state="maximized" wordwrap="false" autoresize="false" background="0" background_alpha="0.000000" title="14876671" title_text="0" offsetx="10" offsety="-32" sizex="66" sizey="19"><![CDATA[Spring K]]></comment>
			</node>
			<node type="SubtractNode" index="6">
				<param name="first.first_x" type="4" value="0.000000"></param>
				<param name="first.first_y" type="4" value="0.000000"></param>
				<param name="first.first_z" type="4" value="0.000000"></param>
				<param name="second.second_x" type="4" value="0.000000"></param>
				<param name="second.second_y" type="4" value="0.000000"></param>
				<param name="second.second_z" type="4" value="0.000000"></param>
				<portdef name="first" type="16" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="second" type="16" structure="1" group="0" instance="0" port="1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-890</prop>
					<prop name="posy">144</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="ScalarNode" index="7">
				<param name="value" type="4" value="0.100000"></param>
				<portdef name="value" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-750</prop>
					<prop name="posy">245</prop>
					<prop name="state">ConnectedOnly</prop>
				</datablob>
			</node>
			<node type="AddNode" index="8">
				<param name="value1.value1_x" type="4" value="0.000000"></param>
				<param name="value1.value1_y" type="4" value="0.000000"></param>
				<param name="value1.value1_z" type="4" value="0.000000"></param>
				<param name="value2.value2_x" type="4" value="0.000000"></param>
				<param name="value2.value2_y" type="4" value="0.000000"></param>
				<param name="value2.value2_z" type="4" value="0.000000"></param>
				<param name="value3.value3_x" type="4" value="0.000000"></param>
				<param name="value3.value3_y" type="4" value="0.000000"></param>
				<param name="value3.value3_z" type="4" value="0.000000"></param>
				<param name="value4.value4_x" type="4" value="0.000000"></param>
				<param name="value4.value4_y" type="4" value="0.000000"></param>
				<param name="value4.value4_z" type="4" value="0.000000"></param>
				<portdef name="value1" type="16" structure="1" group="0" instance="0" port="0"></portdef>
				<portdef name="value2" type="16" structure="1" group="0" instance="1" port="0"></portdef>
				<portdef name="value3" type="16" structure="1" group="0" instance="2" port="0"></portdef>
				<portdef name="value4" type="16" structure="1" group="0" instance="3" port="0"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-448</prop>
					<prop name="posy">103</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="PassThroughNode" index="9">
				<param name="in" type="4" value="25.000000"></param>
				<portdef name="in" type="4" structure="1" group="0" instance="0" port="0"></portdef>
				<datablob category="passthrough">
					<prop name="private">true</prop>
				</datablob>
				<datablob category="ui_infos">
					<prop name="posx">-1290</prop>
					<prop name="posy">327</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="Drag Force" version="1.0" index="10">
				<param name="Select_Drag_Type" type="3" value="1"></param>
				<param name="Strength" type="4" value="0.100000"></param>
				<portdef name="Select_Drag_Type" type="2" structure="1" group="-1" instance="-1" port="-1"></portdef>
				<portdef name="Strength" type="4" structure="1" group="-1" instance="-1" port="-1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-640</prop>
					<prop name="posy">213</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="Neighboring Particles Force" version="1.0" index="11">
				<param name="Strength_over_Distance_Profile" type="buffer">2 20 1 1.65817E-202 -1.79769E+308 1.79769E+308 3 0
0 0.000000 1.000000 0.457900 0.000000 -0.333333 0.000000 5 3
0 1.000000 0.000000 0.333333 0.000000 -0.333333 0.000000 5 3
</param>
				<param name="Cutoff_Distance" type="4" value="0.500000"></param>
				<param name="Attraction_Strength" type="4" value="-25.000000"></param>
				<param name="Display_Debugging" type="11" value="false"></param>
				<portdef name="Display_Debugging" type="1" structure="1" group="-1" instance="-1" port="-1"></portdef>
				<portdef name="Attraction_Strength" type="4" structure="1" group="-1" instance="-1" port="-1"></portdef>
				<portdef name="Cutoff_Distance" type="4" structure="1" group="-1" instance="-1" port="-1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-954</prop>
					<prop name="posy">403</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="Get Point Position" version="1.0" index="12">
				<param name="Reference" type="31" value="Self.PointPosition"></param>
				<param_ext name="Reference" type="31" value="Self.PointPosition"></param_ext>
				<datablob category="ui_infos">
					<prop name="posx">-1158</prop>
					<prop name="posy">261</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
			<node type="Set Data" version="1.0" index="13">
				<param name="Reference" type="31" value="Self.Force"></param>
				<param name="Value.Value_x" type="4" value="0.000000"></param>
				<param name="Value.Value_y" type="4" value="0.000000"></param>
				<param name="Value.Value_z" type="4" value="0.000000"></param>
				<param_ext name="Reference" type="31" value="Self.Force"></param_ext>
				<portdef name="Value" type="16" structure="1" group="2" instance="0" port="0" groupname="Value"></portdef>
				<portdef name="In_Name" type="8192" structure="1" group="-1" instance="-1" port="-1"></portdef>
				<datablob category="ui_infos">
					<prop name="posx">-198</prop>
					<prop name="posy">180</prop>
					<prop name="state">Normal</prop>
				</datablob>
			</node>
		</nodes>
		<exposed_ports>
			<port index="0" portname="condition" username="Enable_Neighbouring_Force" basename="Enable Neighbouring Force" portlabel="Enable Neighbouring Force" exposetype="single"> </port>
			<port index="5" portname="value" username="Spring_K" basename="Spring K" portlabel="Spring K" exposetype="single"> </port>
			<port index="7" portname="value" username="Drag" basename="Drag" portlabel="Drag" exposetype="single"> </port>
			<port index="9" portname="in" username="Repel_Strength" basename="Repel Strength" portlabel="Repel Strength" exposetype="single"> </port>
			<port index="13" portname="Execute" username="Execute" basename="Execute" portlabel="Execute" exposetype="single"> </port>
		</exposed_ports>
		<connections>
			<cnx from_node="0" from_port="result" to_node="8" to_port="value4"> </cnx>
			<cnx from_node="3" from_port="result" to_node="8" to_port="value2"> </cnx>
			<cnx from_node="4" from_port="result" to_node="11" to_port="Attraction_Strength"> </cnx>
			<cnx from_node="10" from_port="Force" to_node="8" to_port="value3"> </cnx>
			<cnx from_node="11" from_port="Force" to_node="0" to_port="iftrue"> </cnx>
			<cnx from_node="12" from_port="Value" to_node="6" to_port="second"> </cnx>
			<cnx from_node="5" from_port="result" to_node="3" to_port="factor"> </cnx>
			<cnx from_node="6" from_port="result" to_node="3" to_port="value"> </cnx>
			<cnx from_node="7" from_port="result" to_node="10" to_port="Strength"> </cnx>
			<cnx from_node="8" from_port="result" to_node="13" to_port="Value"> </cnx>
			<cnx from_node="9" from_port="out" to_node="4" to_port="value"> </cnx>
			<cnx from_node="1" from_port="value" to_node="6" to_port="first"> </cnx>
			<cnx from_node="2" from_port="value" to_node="8" to_port="value1"> </cnx>
		</connections>
		<layout>
			<item type="input" name="Spring_K"> </item>
			<item type="input" name="Drag"> </item>
			<item type="input" name="Enable_Neighbouring_Force"> </item>
			<item type="input" name="Repel_Strength"> </item>
			<item type="output" name="Execute"> </item>
		</layout>
		<blob_dictionary>
		</blob_dictionary>
	</definition>
</xsi_file>
